diff --git a/resources/profiles/PrusaResearch.idx b/resources/profiles/PrusaResearch.idx
index 407883544..a6f9deb28 100644
--- a/resources/profiles/PrusaResearch.idx
+++ b/resources/profiles/PrusaResearch.idx
@@ -1,14 +1,22 @@
 min_slic3r_version = 1.42.0-alpha6
-0.8.0-alpha7
-0.8.0-alpha6
+0.8.0-beta Updated SLA profiles
+0.8.0-alpha9 Updated SLA and FFF profiles
+0.8.0-alpha8 Updated SLA profiles
+0.8.0-alpha7 Updated SLA profiles
+0.8.0-alpha6 Updated SLA profiles
 min_slic3r_version = 1.42.0-alpha
-0.8.0-alpha
+0.8.0-alpha Updated SLA profiles
 0.4.0-alpha4 Updated SLA profiles
 0.4.0-alpha3 Update of SLA profiles
 0.4.0-alpha2 First SLA profiles
 min_slic3r_version = 1.41.3-alpha
+0.4.4 Changelog: https://github.com/prusa3d/Slic3r-settings/blob/master/live/PrusaResearch/changelog.txt
+0.4.3 Changelog: https://github.com/prusa3d/Slic3r-settings/blob/master/live/PrusaResearch/changelog.txt
+0.4.2 Changelog: https://github.com/prusa3d/Slic3r-settings/blob/master/live/PrusaResearch/changelog.txt
+0.4.1 New MK2.5S and MK3S FW versions
 0.4.0 Changelog: https://github.com/prusa3d/Slic3r-settings/blob/master/live/PrusaResearch/changelog.txt 
 min_slic3r_version = 1.41.1
+0.3.5 New MK2.5 and MK3 FW versions
 0.3.4 Changelog: https://github.com/prusa3d/Slic3r-settings/blob/master/live/PrusaResearch/changelog.txt 
 0.3.3 Prusament PETG released
 0.3.2 New MK2.5 and MK3 FW versions
@@ -41,6 +49,7 @@ min_slic3r_version = 1.41.0-alpha
 0.2.0-alpha1 added initial profiles for the i3 MK3 Multi Material Upgrade 2.0
 0.2.0-alpha moved machine limits from the start G-code to the new print profile parameters
 min_slic3r_version = 1.40.0
+0.1.13 New MK2.5 and MK3 FW versions
 0.1.12 New MK2.5 and MK3 FW versions
 0.1.11 fw version changed to 3.3.1
 0.1.10 MK3 jerk and acceleration update
diff --git a/resources/profiles/PrusaResearch.ini b/resources/profiles/PrusaResearch.ini
index a471700fb..35916377b 100644
--- a/resources/profiles/PrusaResearch.ini
+++ b/resources/profiles/PrusaResearch.ini
@@ -5,7 +5,7 @@
 name = Prusa Research
 # Configuration version of this file. Config file will only be installed, if the config_version differs.
 # This means, the server may force the Slic3r configuration to be downgraded.
-config_version = 0.8.0-alpha7
+config_version = 0.8.0-beta
 # Where to get the updates from?
 config_update_url = https://raw.githubusercontent.com/prusa3d/Slic3r-settings/master/live/PrusaResearch/
 
@@ -190,6 +190,14 @@ travel_speed = 180
 wipe_tower_x = 170
 wipe_tower_y = 125
 
+[print:*MK306*]
+fill_pattern = gyroid
+fill_density = 15%
+single_extruder_multi_material_priming = 0
+travel_speed = 180
+wipe_tower_x = 170
+wipe_tower_y = 125
+
 # Print parameters common to a 0.25mm diameter nozzle.
 [print:*0.25nozzle*]
 external_perimeter_extrusion_width = 0.25
@@ -205,6 +213,38 @@ support_material_interface_spacing = 0.15
 support_material_spacing = 1
 support_material_xy_spacing = 150%
 
+[print:*0.25nozzleMK3*]
+external_perimeter_extrusion_width = 0.25
+extrusion_width = 0.25
+first_layer_extrusion_width = 0.35
+infill_extrusion_width = 0.25
+perimeter_extrusion_width = 0.25
+solid_infill_extrusion_width = 0.25
+top_infill_extrusion_width = 0.25
+support_material_extrusion_width = 0.2
+support_material_interface_layers = 0
+support_material_interface_spacing = 0.15
+support_material_spacing = 1
+support_material_xy_spacing = 150%
+perimeter_speed = 30
+external_perimeter_speed = 20
+small_perimeter_speed = 20
+infill_speed = 45
+solid_infill_speed = 45
+top_solid_infill_speed = 30
+support_material_speed = 40
+bridge_speed = 20
+gap_fill_speed = 30
+perimeter_acceleration = 500
+infill_acceleration = 1000
+bridge_acceleration = 500
+first_layer_acceleration = 500
+default_acceleration = 1000
+max_print_speed = 80
+perimeters = 3
+fill_pattern = grid
+fill_density = 20%
+
 # Print parameters common to a 0.6mm diameter nozzle.
 [print:*0.6nozzle*]
 external_perimeter_extrusion_width = 0.61
@@ -216,6 +256,18 @@ solid_infill_extrusion_width = 0.65
 top_infill_extrusion_width = 0.6
 support_material_extrusion_width = 0.55
 
+[print:*0.6nozzleMK3*]
+external_perimeter_extrusion_width = 0.65
+extrusion_width = 0.65
+first_layer_extrusion_width = 0.65
+infill_extrusion_width = 0.7
+perimeter_extrusion_width = 0.65
+solid_infill_extrusion_width = 0.7
+top_infill_extrusion_width = 0.6
+support_material_extrusion_width = 0.55
+bridge_flow_ratio = 0.95
+bridge_speed = 25
+
 [print:*soluble_support*]
 overhangs = 1
 skirts = 0
@@ -288,6 +340,9 @@ support_material_speed = 20
 [print:0.05mm ULTRADETAIL 0.25 nozzle MK3]
 inherits = *0.05mm*; *0.25nozzle*; *MK3*
 compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.25 and num_extruders==1
+fill_pattern = grid
+fill_density = 20%
+first_layer_extrusion_width = 0.35
 
 # XXXXXXXXXXXXXXXXXXXX
 # XXX--- 0.07mm ---XXX
@@ -326,6 +381,17 @@ fill_pattern = gyroid
 compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/  and nozzle_diameter[0]==0.4 and ! single_extruder_multi_material
 top_infill_extrusion_width = 0.4
 
+[print:0.07mm ULTRADETAIL 0.25 nozzle MK3]
+inherits = *0.07mm*; *0.25nozzle*; *MK3*
+compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.25 and num_extruders==1
+infill_speed = 30
+solid_infill_speed = 30
+support_material_speed = 30
+top_solid_infill_speed = 20
+fill_pattern = grid
+fill_density = 20%
+first_layer_extrusion_width = 0.35
+
 # XXXXXXXXXXXXXXXXXXXX
 # XXX--- 0.10mm ---XXX
 # XXXXXXXXXXXXXXXXXXXX
@@ -382,29 +448,10 @@ top_solid_infill_speed = 30
 
 # MK3 #
 [print:0.10mm DETAIL 0.25 nozzle MK3]
-inherits = *0.10mm*; *0.25nozzle*; *MK3*
-bridge_speed = 30
+inherits = *0.10mm*; *0.25nozzleMK3*; *MK3*
 compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.25
-external_perimeter_speed = 35
-infill_acceleration = 1250
-infill_speed = 200
-max_print_speed = 200
-perimeter_speed = 45
-solid_infill_speed = 200
-top_solid_infill_speed = 50
-
-# MK3 #
-[print:0.10mm DETAIL 0.6 nozzle MK3]
-inherits = *0.10mm*; *0.6nozzle*; *MK3*
-bridge_speed = 30
-compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.6
-external_perimeter_speed = 35
-infill_acceleration = 1250
-infill_speed = 200
-max_print_speed = 200
-perimeter_speed = 45
-solid_infill_speed = 200
-top_solid_infill_speed = 50
+fill_pattern = grid
+fill_density = 20%
 
 # XXXXXXXXXXXXXXXXXXXX
 # XXX--- 0.15mm ---XXX
@@ -531,17 +578,27 @@ support_material_with_sheath = 0
 support_material_xy_spacing = 80%
 
 # MK3 #
-[print:0.15mm OPTIMAL 0.25 nozzle MK3]
-inherits = *0.15mm*; *0.25nozzle*; *MK3*
-bridge_speed = 30
+[print:0.15mm QUALITY 0.25 nozzle MK3]
+inherits = *0.15mm*; *0.25nozzleMK3*; *MK3*
 compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.25
+fill_pattern = grid
+fill_density = 20%
+
+# MK3 #
+[print:0.15mm DETAIL 0.6 nozzle MK3]
+inherits = *0.15mm*; *0.6nozzleMK3*; *MK306*
+compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.6
 external_perimeter_speed = 35
 infill_acceleration = 1250
-infill_speed = 200
-max_print_speed = 200
+infill_speed = 70
+max_print_speed = 100
 perimeter_speed = 45
-solid_infill_speed = 200
-top_solid_infill_speed = 50
+solid_infill_speed = 70
+top_solid_infill_speed = 45
+
+# XXXXXXXXXXXXXXXXXXXX
+# XXX--- 0.20mm ---XXX
+# XXXXXXXXXXXXXXXXXXXX
 
 [print:*0.20mm*]
 inherits = *common*
@@ -557,23 +614,6 @@ solid_infill_speed = 50
 top_infill_extrusion_width = 0.4
 top_solid_layers = 5
 
-# MK3 #
-[print:0.15mm OPTIMAL 0.6 nozzle MK3]
-inherits = *0.15mm*; *0.6nozzle*; *MK3*
-bridge_speed = 30
-compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.6
-external_perimeter_speed = 35
-infill_acceleration = 1250
-infill_speed = 200
-max_print_speed = 200
-perimeter_speed = 45
-solid_infill_speed = 200
-top_solid_infill_speed = 50
-
-# XXXXXXXXXXXXXXXXXXXX
-# XXX--- 0.20mm ---XXX
-# XXXXXXXXXXXXXXXXXXXX
-
 # MK2 #
 [print:0.20mm 100mms Linear Advance]
 inherits = *0.20mm*
@@ -664,17 +704,68 @@ support_material_with_sheath = 0
 support_material_xy_spacing = 80%
 
 # MK3 #
-[print:0.20mm FAST 0.6 nozzle MK3]
-inherits = *0.20mm*; *0.6nozzle*; *MK3*
-bridge_speed = 30
+[print:0.20mm DETAIL 0.6 nozzle MK3]
+inherits = *0.20mm*; *0.6nozzleMK3*; *MK306*
 compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.6
 external_perimeter_speed = 35
 infill_acceleration = 1250
-infill_speed = 200
-max_print_speed = 200
+infill_speed = 70
+max_print_speed = 100
 perimeter_speed = 45
-solid_infill_speed = 200
-top_solid_infill_speed = 50
+solid_infill_speed = 70
+top_solid_infill_speed = 45
+
+# XXXXXXXXXXXXXXXXXXXX
+# XXX--- 0.30mm ---XXX
+# XXXXXXXXXXXXXXXXXXXX
+
+[print:*0.30mm*]
+inherits = *common*
+bottom_solid_layers = 4
+bridge_flow_ratio = 0.95
+external_perimeter_speed = 40
+infill_acceleration = 2000
+infill_speed = 60
+layer_height = 0.3
+perimeter_acceleration = 800
+perimeter_speed = 50
+solid_infill_speed = 50
+top_infill_extrusion_width = 0.4
+top_solid_layers = 4
+
+[print:0.30mm QUALITY 0.6 nozzle MK3]
+inherits = *0.30mm*; *0.6nozzleMK3*; *MK306*
+compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.6
+external_perimeter_speed = 35
+infill_acceleration = 1250
+infill_speed = 70
+max_print_speed = 100
+perimeter_speed = 45
+solid_infill_speed = 70
+top_solid_infill_speed = 45
+
+[print:0.30mm DRAFT MK3]
+inherits = *0.30mm*; *MK3*
+bottom_solid_layers = 3
+bridge_speed = 30
+compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.4
+external_perimeter_speed = 35
+infill_acceleration = 1250
+infill_speed = 85
+max_print_speed = 200
+perimeter_speed = 50
+small_perimeter_speed = 30
+solid_infill_speed = 80
+top_solid_infill_speed = 40
+support_material_speed = 45
+external_perimeter_extrusion_width = 0.6
+extrusion_width = 0.5
+first_layer_extrusion_width = 0.42
+infill_extrusion_width = 0.5
+perimeter_extrusion_width = 0.5
+solid_infill_extrusion_width = 0.5
+top_infill_extrusion_width = 0.45
+support_material_extrusion_width = 0.35
 
 # XXXXXXXXXXXXXXXXXXXX
 # XXX--- 0.35mm ---XXX
@@ -732,6 +823,57 @@ support_material_interface_layers = 2
 support_material_with_sheath = 0
 support_material_xy_spacing = 150%
 
+# MK3 #
+[print:0.35mm SPEED 0.6 nozzle MK3]
+inherits = *0.35mm*; *0.6nozzleMK3*; *MK306*
+compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.6
+external_perimeter_speed = 35
+infill_acceleration = 1250
+infill_speed = 70
+max_print_speed = 100
+perimeter_speed = 45
+solid_infill_speed = 70
+top_solid_infill_speed = 45
+external_perimeter_extrusion_width = 0.68
+perimeter_extrusion_width = 0.68
+
+# XXXXXXXXXXXXXXXXXXXX
+# XXX--- 0.40mm ---XXX
+# XXXXXXXXXXXXXXXXXXXX
+
+[print:*0.40mm*]
+inherits = *common*
+bottom_solid_layers = 3
+external_perimeter_extrusion_width = 0.6
+external_perimeter_speed = 40
+first_layer_extrusion_width = 0.65
+infill_acceleration = 2000
+infill_speed = 60
+layer_height = 0.4
+perimeter_acceleration = 800
+perimeter_extrusion_width = 0.65
+perimeter_speed = 50
+solid_infill_extrusion_width = 0.65
+solid_infill_speed = 60
+top_solid_infill_speed = 40
+top_solid_layers = 4
+
+# MK3 #
+[print:0.40mm DRAFT 0.6 nozzle MK3]
+inherits = *0.40mm*; *0.6nozzleMK3*; *MK306*
+compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK3.*/ and nozzle_diameter[0]==0.6
+external_perimeter_speed = 35
+infill_acceleration = 1250
+infill_speed = 70
+max_print_speed = 100
+perimeter_speed = 45
+solid_infill_speed = 70
+top_solid_infill_speed = 45
+external_perimeter_extrusion_width = 0.7
+perimeter_extrusion_width = 0.7
+infill_extrusion_width = 0.72
+solid_infill_extrusion_width = 0.72
+
 # XXXXXXXXXXXXXXXXXXXXXX
 # XXX----- MK2.5 ----XXX
 # XXXXXXXXXXXXXXXXXXXXXX
@@ -827,7 +969,7 @@ filament_settings_id = ""
 filament_soluble = 0
 min_print_speed = 15
 slowdown_below_layer_time = 20
-start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{else}30{endif}; Filament gcode"
+start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{else}30{endif} ; Filament gcode"
 
 [filament:*PLA*]
 inherits = *common*
@@ -844,6 +986,7 @@ first_layer_temperature = 215
 max_fan_speed = 100
 min_fan_speed = 100
 temperature = 210
+start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{elsif nozzle_diameter[0]==0.6}15{else}30{endif} ; Filament gcode"
 
 [filament:*PET*]
 inherits = *common*
@@ -859,9 +1002,14 @@ first_layer_bed_temperature = 85
 first_layer_temperature = 230
 max_fan_speed = 50
 min_fan_speed = 30
-start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{else}45{endif}; Filament gcode"
+start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{elsif nozzle_diameter[0]==0.6}22{else}45{endif} ; Filament gcode"
 temperature = 240
 
+[filament:*PET06*]
+inherits = *PET*
+compatible_printers_condition = nozzle_diameter[0]==0.6 and ! (printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK(2.5|3).*/ and single_extruder_multi_material)
+filament_max_volumetric_speed = 15
+
 [filament:*ABS*]
 inherits = *common*
 bed_temperature = 110
@@ -879,6 +1027,7 @@ first_layer_temperature = 255
 max_fan_speed = 30
 min_fan_speed = 20
 temperature = 255
+start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{elsif nozzle_diameter[0]==0.6}15{else}30{endif} ; Filament gcode"
 
 [filament:*FLEX*]
 inherits = *common*
@@ -906,10 +1055,11 @@ inherits = *PLA*
 # For now, all but selected filaments are disabled for the MMU 2.0
 compatible_printers_condition = nozzle_diameter[0]>0.35 and ! (printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK(2.5|3).*/ and single_extruder_multi_material)
 extrusion_multiplier = 1.2
-filament_cost = 80.65
-filament_density = 4
+filament_cost = 56.64
+filament_density = 3.9
 filament_colour = #804040
-filament_max_volumetric_speed = 10
+filament_max_volumetric_speed = 9
+filament_notes = "List of materials tested with standard print settings:\n\nColorFabb bronzeFill\nColorFabb brassFill\nColorFabb steelFill\nColorFabb copperFill"
 
 [filament:ColorFabb HT]
 inherits = *PET*
@@ -933,19 +1083,31 @@ inherits = *PLA*
 filament_cost = 55.5
 filament_density = 1.24
 
-[filament:ColorFabb Woodfil]
+[filament:ColorFabb woodFill]
 inherits = *PLA*
 # For now, all but selected filaments are disabled for the MMU 2.0
 compatible_printers_condition = nozzle_diameter[0]>0.35 and ! (printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK(2.5|3).*/ and single_extruder_multi_material)
 extrusion_multiplier = 1.2
 filament_cost = 62.9
 filament_density = 1.15
-filament_colour = #804040
+filament_colour = #dfc287
 filament_max_volumetric_speed = 10
 first_layer_temperature = 200
 start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{else}10{endif}; Filament gcode"
 temperature = 200
 
+[filament:ColorFabb corkFill]
+inherits = *PLA*
+compatible_printers_condition = nozzle_diameter[0]>0.35 and ! (printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK(2.5|3).*/ and single_extruder_multi_material)
+extrusion_multiplier = 1.2
+filament_cost = 45.45
+filament_density = 1.18
+filament_colour = #634d33
+filament_max_volumetric_speed = 6
+first_layer_temperature = 220
+start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{else}10{endif}; Filament gcode"
+temperature = 220
+
 [filament:ColorFabb XT]
 inherits = *PET*
 filament_type = PET
@@ -1001,7 +1163,7 @@ temperature = 260
 inherits = *PET*
 filament_cost = 56.9
 filament_density = 1.26
-filament_notes = "List of manufacturers tested with standart PET print settings:\n\nE3D Edge\nFillamentum CPE GH100\nPlasty Mladec PETG"
+filament_notes = "List of manufacturers tested with standard PET print settings:\n\nE3D Edge\nFillamentum CPE GH100\nPlasty Mladec PETG"
 
 [filament:E3D PC-ABS]
 inherits = *ABS*
@@ -1036,7 +1198,7 @@ max_fan_speed = 50
 min_fan_speed = 50
 temperature = 275
 
-[filament:Fillamentum Timberfil]
+[filament:Fillamentum Timberfill]
 inherits = *PLA*
 # For now, all but selected filaments are disabled for the MMU 2.0
 compatible_printers_condition = nozzle_diameter[0]>0.35 and ! (printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK(2.5|3).*/ and single_extruder_multi_material)
@@ -1053,19 +1215,19 @@ temperature = 190
 inherits = *ABS*
 filament_cost = 27.82
 filament_density = 1.04
-filament_notes = "List of materials tested with standart ABS print settings:\n\nEsun ABS\nFil-A-Gehr ABS\nHatchboxABS\nPlasty Mladec ABS"
+filament_notes = "List of materials tested with standard ABS print settings:\n\nEsun ABS\nFil-A-Gehr ABS\nHatchboxABS\nPlasty Mladec ABS"
 
 [filament:Generic PET]
 inherits = *PET*
 filament_cost = 27.82
 filament_density = 1.27
-filament_notes = "List of manufacturers tested with standart PET print settings:\n\nE3D Edge\nFillamentum CPE GH100\nPlasty Mladec PETG"
+filament_notes = "List of manufacturers tested with standard PET print settings:\n\nE3D Edge\nFillamentum CPE GH100\nPlasty Mladec PETG"
 
 [filament:Generic PLA]
 inherits = *PLA*
 filament_cost = 25.4
 filament_density = 1.24
-filament_notes = "List of materials tested with standart PLA print settings:\n\nDas Filament\nEsun PLA\nEUMAKERS PLA\nFiberlogy HD-PLA\nFillamentum PLA\nFloreon3D\nHatchbox PLA\nPlasty Mladec PLA\nPrimavalue PLA\nProto pasta Matte Fiber\nVerbatim PLA\nVerbatim BVOH"
+filament_notes = "List of materials tested with standard PLA print settings:\n\nDas Filament\nEsun PLA\nEUMAKERS PLA\nFiberlogy HD-PLA\nFillamentum PLA\nFloreon3D\nHatchbox PLA\nPlasty Mladec PLA\nPrimavalue PLA\nProto pasta Matte Fiber\nVerbatim PLA\nVerbatim BVOH"
 
 [filament:Polymaker PC-Max]
 inherits = *ABS*
@@ -1084,11 +1246,11 @@ filament_density = 1.23
 cooling = 0
 fan_always_on = 0
 filament_colour = #FFFFD7
-filament_max_volumetric_speed = 10
-filament_notes = "List of materials tested with standart PVA print settings:\n\nPrimaSelect PVA+\nICE FILAMENTS PVA 'NAUGHTY NATURAL'\nVerbatim BVOH"
+filament_max_volumetric_speed = 4
+filament_notes = "List of materials tested with standard PVA print settings:\n\nPrimaSelect PVA+\nICE FILAMENTS PVA 'NAUGHTY NATURAL'"
 filament_ramming_parameters = "120 100 8.3871 8.6129 8.93548 9.22581 9.48387 9.70968 9.87097 10.0323 10.2258 10.4194 10.6452 10.8065| 0.05 8.34193 0.45 8.73548 0.95 9.34836 1.45 9.78385 1.95 10.0871 2.45 10.5161 2.95 10.8903 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6"
 filament_soluble = 1
-filament_type = PVA
+filament_type = PLA
 first_layer_temperature = 195
 start_filament_gcode = "M900 K{if printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}200{else}10{endif}; Filament gcode"
 temperature = 195
@@ -1097,7 +1259,7 @@ temperature = 195
 inherits = *ABS*
 filament_cost = 27.82
 filament_density = 1.08
-filament_notes = "List of materials tested with standart ABS print settings:\n\nEsun ABS\nFil-A-Gehr ABS\nHatchboxABS\nPlasty Mladec ABS"
+filament_notes = "List of materials tested with standard ABS print settings:\n\nEsun ABS\nFil-A-Gehr ABS\nHatchboxABS\nPlasty Mladec ABS"
 
 [filament:*ABS MMU2*]
 inherits = Prusa ABS
@@ -1140,7 +1302,8 @@ temperature = 220
 inherits = *PET*
 filament_cost = 27.82
 filament_density = 1.27
-filament_notes = "List of manufacturers tested with standart PET print settings:\n\nE3D Edge\nFillamentum CPE GH100\nPlasty Mladec PETG"
+filament_notes = "List of manufacturers tested with standard PET print settings:\n\nE3D Edge\nFillamentum CPE GH100\nPlasty Mladec PETG"
+compatible_printers_condition = nozzle_diameter[0]!=0.6 and ! (printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK(2.5|3).*/ and single_extruder_multi_material)
 
 [filament:Prusament PETG]
 inherits = *PET*
@@ -1148,6 +1311,20 @@ first_layer_temperature = 240
 temperature = 250
 filament_cost = 24.99
 filament_density = 1.27
+compatible_printers_condition = nozzle_diameter[0]!=0.6 and ! (printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK(2.5|3).*/ and single_extruder_multi_material)
+
+[filament:Prusa PET 0.6 nozzle]
+inherits = *PET06*
+filament_cost = 27.82
+filament_density = 1.27
+filament_notes = "List of manufacturers tested with standard PET print settings:\n\nE3D Edge\nFillamentum CPE GH100\nPlasty Mladec PETG"
+
+[filament:Prusament PETG 0.6 nozzle]
+inherits = *PET06*
+first_layer_temperature = 240
+temperature = 250
+filament_cost = 24.99
+filament_density = 1.27
 
 [filament:*PET MMU2*]
 inherits = Prusa PET
@@ -1179,7 +1356,7 @@ inherits = *PET MMU2*
 inherits = *PLA*
 filament_cost = 25.4
 filament_density = 1.24
-filament_notes = "List of materials tested with standart PLA print settings:\n\nDas Filament\nEsun PLA\nEUMAKERS PLA\nFiberlogy HD-PLA\nFillamentum PLA\nFloreon3D\nHatchbox PLA\nPlasty Mladec PLA\nPrimavalue PLA\nProto pasta Matte Fiber\nVerbatim PLA\nVerbatim BVOH"
+filament_notes = "List of materials tested with standard PLA print settings:\n\nDas Filament\nEsun PLA\nEUMAKERS PLA\nFiberlogy HD-PLA\nFillamentum PLA\nFloreon3D\nHatchbox PLA\nPlasty Mladec PLA\nPrimavalue PLA\nProto pasta Matte Fiber\nVerbatim PLA\nVerbatim BVOH"
 
 [filament:Prusament PLA]
 inherits = *PLA*
@@ -1265,7 +1442,7 @@ fan_always_on = 0
 fan_below_layer_time = 100
 filament_colour = #FFFFD7
 filament_max_volumetric_speed = 4
-filament_notes = "List of materials tested with standart PLA print settings:\n\nDas Filament\nEsun PLA\nEUMAKERS PLA\nFiberlogy HD-PLA\nFillamentum PLA\nFloreon3D\nHatchbox PLA\nPlasty Mladec PLA\nPrimavalue PLA\nProto pasta Matte Fiber\nVerbatim PLA\nVerbatim BVOH"
+filament_notes = "List of materials tested with standard PVA print settings:\n\nVerbatim BVOH"
 filament_soluble = 1
 filament_type = PLA
 first_layer_bed_temperature = 60
@@ -1279,7 +1456,6 @@ temperature = 210
 inherits = Verbatim BVOH
 compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_MK(2.5|3).*/ and single_extruder_multi_material
 temperature = 195
-filament_notes = BVOH
 fan_always_on = 1
 first_layer_temperature = 200
 filament_cooling_final_speed = 1
@@ -1316,7 +1492,7 @@ filament_loading_speed = 14
 filament_loading_speed_start = 19
 filament_max_volumetric_speed = 4
 filament_minimal_purge_on_wipe_tower = 5
-filament_notes = PVA
+filament_notes = "List of materials tested with standard PVA print settings:\n\nPrimaSelect PVA+"
 filament_ramming_parameters = "120 110 3.83871 3.90323 3.96774 4.03226 4.09677 4.19355 4.3871 4.83871 5.67742 6.93548 8.54839 10.3226 11.9677 13.2581 14.129 14.5806| 0.05 3.8258 0.45 3.89676 0.95 4.05807 1.45 4.23548 1.95 5.18386 2.45 7.80651 2.95 11.5356 3.45 13.9872 3.95 14.7613 4.45 7.6 4.95 7.6"
 filament_soluble = 1
 filament_toolchange_delay = 0
@@ -1346,7 +1522,7 @@ fan_always_on = 1
 fan_below_layer_time = 100
 filament_colour = #DEE0E6
 filament_max_volumetric_speed = 5
-filament_notes = "List of materials tested with standart PLA print settings:\n\nEsun PLA\nFiberlogy HD-PLA\nFillamentum PLA\nFloreon3D\nHatchbox PLA\nPlasty Mladec PLA\nPrimavalue PLA\nProto pasta Matte Fiber\nEUMAKERS PLA"
+filament_notes = "List of materials tested with standard PLA print settings:\n\nEsun PLA\nFiberlogy HD-PLA\nFillamentum PLA\nFloreon3D\nHatchbox PLA\nPlasty Mladec PLA\nPrimavalue PLA\nProto pasta Matte Fiber\nEUMAKERS PLA"
 filament_type = PLA
 first_layer_bed_temperature = 100
 first_layer_temperature = 220
@@ -1358,14 +1534,15 @@ temperature = 220
 [sla_print:*common*]
 compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_PRUSA3D.*/ and printer_notes=~/.*PRINTER_MODEL_SL1.*/
 layer_height = 0.05
-output_filename_format = [input_filename_base].dwz
+output_filename_format = [input_filename_base].sl1
 pad_edge_radius = 0.5
 pad_enable = 1
 pad_max_merge_distance = 50
-pad_wall_height = 3
+pad_wall_height = 0
 pad_wall_thickness = 1
+pad_wall_slope = 90
 support_base_diameter = 3
-support_base_height = 0.5
+support_base_height = 1
 support_critical_angle = 45
 support_density_at_45 = 250
 support_density_at_horizontal = 500
@@ -1376,6 +1553,7 @@ support_max_bridge_length = 10
 support_minimal_z = 0
 support_object_elevation = 5
 support_pillar_diameter = 1
+support_pillar_connection_mode = zigzag
 support_pillar_widening_factor = 0
 supports_enable = 1
 
@@ -1441,6 +1619,11 @@ inherits = *common 0.025*
 exposure_time = 5
 initial_exposure_time = 35
 
+[sla_material:SL1 Orange solid 0.025]
+inherits = *common 0.025*
+exposure_time = 5
+initial_exposure_time = 35
+
 ########### Materials 0.05
 
 [sla_material:3DM-HTR140 (high temperature) 0.05]
@@ -1458,11 +1641,31 @@ inherits = *common 0.05*
 exposure_time = 8
 initial_exposure_time = 45
 
+[sla_material:Bluecast Keramaster Dental 0.05]
+inherits = *common 0.05*
+exposure_time = 7
+initial_exposure_time = 45
+
+[sla_material:Bluecast LCD-DLP Original 0.05]
+inherits = *common 0.05*
+exposure_time = 10
+initial_exposure_time = 60
+
 [sla_material:Bluecast Phrozen Wax 0.05]
 inherits = *common 0.05*
 exposure_time = 10
 initial_exposure_time = 55
 
+[sla_material:Bluecast S+ 0.05]
+inherits = *common 0.05*
+exposure_time = 9
+initial_exposure_time = 45
+
+[sla_material:Bluecast X2 0.05]
+inherits = *common 0.05*
+exposure_time = 10
+initial_exposure_time = 60
+
 [sla_material:Jamg He PJHC-00 Yellow 0.05]
 inherits = *common 0.05*
 exposure_time = 7
@@ -1475,7 +1678,7 @@ initial_exposure_time = 45
 
 [sla_material:Jamg He PJHC-30 Orange 0.05]
 inherits = *common 0.05*
-exposure_time = 7
+exposure_time = 7.5
 initial_exposure_time = 45
 
 [sla_material:Jamg He PJHC-60 Gray 0.05]
@@ -1513,8 +1716,6 @@ inherits = *common 0.05*
 exposure_time = 7
 initial_exposure_time = 40
 
-# v2
-
 [sla_material:3DM-ABS 0.05]
 inherits = *common 0.05*
 exposure_time = 9
@@ -1560,11 +1761,101 @@ inherits = *common 0.05*
 exposure_time = 6.5
 initial_exposure_time = 40
 
+[sla_material:Harz Labs Model Resin Cherry 0.05]
+inherits = *common 0.05*
+exposure_time = 8
+initial_exposure_time = 45
+
+[sla_material:Jamg He CRX-70C High Tenacity Black 0.05]
+inherits = *common 0.05*
+exposure_time = 7
+initial_exposure_time = 40
+
+[sla_material:Jamg He MC-2000 Casting Green 0.05]
+inherits = *common 0.05*
+exposure_time = 13
+initial_exposure_time = 40
+
+[sla_material:Jamg He PJHC-00 Solid Yellow 0.05]
+inherits = *common 0.05*
+exposure_time = 7
+initial_exposure_time = 40
+
+[sla_material:Jamg He PJHC-20 White 0.05]
+inherits = *common 0.05*
+exposure_time = 7
+initial_exposure_time = 45
+
+[sla_material:Jamg He PJHC-80 Transparent Green 0.05]
+inherits = *common 0.05*
+exposure_time = 8
+initial_exposure_time = 45
+
+[sla_material:Jamg He PJHC-80 Transparent Red 0.05]
+inherits = *common 0.05*
+exposure_time = 7
+initial_exposure_time = 45
+
+[sla_material:Jamg He PJHC-81 Solid Maroon 0.05]
+inherits = *common 0.05*
+exposure_time = 9
+initial_exposure_time = 45
+
+[sla_material:Jamg He PJHC-90 Solid Pink 0.05]
+inherits = *common 0.05*
+exposure_time = 7
+initial_exposure_time = 40
+
+[sla_material:Jamg He RJHC-00 Yellow Flexible 0.05]
+inherits = *common 0.05*
+exposure_time = 9
+initial_exposure_time = 40
+
+[sla_material:Jamg He RJHC-10 Clear Flexible 0.05]
+inherits = *common 0.05*
+exposure_time = 9
+initial_exposure_time = 40
+
+[sla_material:Jamg He RJHC-20 White Flexible 0.05]
+inherits = *common 0.05*
+exposure_time = 9
+initial_exposure_time = 40
+
+[sla_material:Jamg He RJHC-50 Blue Flexible 0.05]
+inherits = *common 0.05*
+exposure_time = 9
+initial_exposure_time = 40
+
+[sla_material:Jamg He RJHC-70 Black Flexible 0.05]
+inherits = *common 0.05*
+exposure_time = 9
+initial_exposure_time = 40
+
+[sla_material:Jamg He RJHC-81 Red Flexible 0.05]
+inherits = *common 0.05*
+exposure_time = 9
+initial_exposure_time = 40
+
+[sla_material:SL1 Orange solid 0.05]
+inherits = *common 0.05*
+exposure_time = 7.5
+initial_exposure_time = 45
+
+[sla_material:SL1 Red transparent 0.05]
+inherits = *common 0.05*
+exposure_time = 7.5
+initial_exposure_time = 45
+
 ########### Materials 0.035
 
 [sla_material:Jamg He PJHC-30 Orange 0.035]
 inherits = *common 0.035*
-exposure_time = 9
+exposure_time = 6
+initial_exposure_time = 35
+
+[sla_material:SL1 Orange solid 0.035]
+inherits = *common 0.035*
+exposure_time = 6
 initial_exposure_time = 35
 
 ########### Materials 0.1
@@ -1574,6 +1865,11 @@ inherits = *common 0.1*
 exposure_time = 10
 initial_exposure_time = 45
 
+[sla_material:SL1 Orange solid 0.1]
+inherits = *common 0.1*
+exposure_time = 10
+initial_exposure_time = 45
+
 [printer:*common*]
 printer_technology = FFF
 bed_shape = 0x0,250x0,250x210,0x210
@@ -1740,19 +2036,19 @@ min_layer_height = 0.1
 inherits = Original Prusa i3 MK2S
 printer_model = MK2.5
 remaining_times = 1
-start_gcode = M115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
 
 [printer:Original Prusa i3 MK2.5 0.25 nozzle]
 inherits = Original Prusa i3 MK2S 0.25 nozzle
 printer_model = MK2.5
 remaining_times = 1
-start_gcode = M115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
 
 [printer:Original Prusa i3 MK2.5 0.6 nozzle]
 inherits = Original Prusa i3 MK2S 0.6 nozzle
 printer_model = MK2.5
 remaining_times = 1
-start_gcode = M115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
 
 [printer:Original Prusa i3 MK2.5 MMU2 Single]
 inherits = Original Prusa i3 MK2.5; *mm2*
@@ -1781,7 +2077,7 @@ machine_min_travel_rate = 0
 default_print_profile = 0.15mm OPTIMAL MK2.5
 default_filament_profile = Prusament PLA
 printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_MK2.5\n
-start_gcode = M107\nM115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nTx\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n\nG21 ; set units to millimeters\n\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nTc\n; purge line\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
+start_gcode = M107\nM115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nTx\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n\nG21 ; set units to millimeters\n\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nTc\n; purge line\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
 end_gcode = G1 X0 Y210 F7200\nG1 E2 F5000\nG1 E2 F5500\nG1 E2 F6000\nG1 E-15.0000 F5800\nG1 E-20.0000 F5500\nG1 E10.0000 F3000\nG1 E-10.0000 F3100\nG1 E10.0000 F3150\nG1 E-10.0000 F3250\nG1 E10.0000 F3300\n\nM702 C\n\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nG1 X0 Y200; home X axis\nM84 ; disable motors
 
 [printer:Original Prusa i3 MK2.5 MMU2]
@@ -1815,20 +2111,23 @@ single_extruder_multi_material = 1
 # to be defined explicitely.
 nozzle_diameter = 0.4,0.4,0.4,0.4,0.4
 extruder_colour = #FF8000;#DB5182;#00FFFF;#FF4F4F;#9FFF9F
-start_gcode = M107\nM115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG21 ; set units to millimeters\n\n; Send the filament type to the MMU2.0 unit.\n; E stands for extruder number, F stands for filament type (0: default; 1:flex; 2: PVA)\nM403 E0 F{"" + ((filament_type[0]=="FLEX") ? 1 : ((filament_type[0]=="PVA") ? 2 : 0))}\nM403 E1 F{"" + ((filament_type[1]=="FLEX") ? 1 : ((filament_type[1]=="PVA") ? 2 : 0))}\nM403 E2 F{"" + ((filament_type[2]=="FLEX") ? 1 : ((filament_type[2]=="PVA") ? 2 : 0))}\nM403 E3 F{"" + ((filament_type[3]=="FLEX") ? 1 : ((filament_type[3]=="PVA") ? 2 : 0))}\nM403 E4 F{"" + ((filament_type[4]=="FLEX") ? 1 : ((filament_type[4]=="PVA") ? 2 : 0))}\n\n{if not has_single_extruder_multi_material_priming}\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nT[initial_tool]\n; initial load\nG1 X55.0 E32.0 F1073.0\nG1 X5.0 E32.0 F1800.0\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG92 E0.0\n{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
+start_gcode = M107\nM115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG21 ; set units to millimeters\n\n; Send the filament type to the MMU2.0 unit.\n; E stands for extruder number, F stands for filament type (0: default; 1:flex; 2: PVA)\nM403 E0 F{"" + ((filament_type[0]=="FLEX") ? 1 : ((filament_type[0]=="PVA") ? 2 : 0))}\nM403 E1 F{"" + ((filament_type[1]=="FLEX") ? 1 : ((filament_type[1]=="PVA") ? 2 : 0))}\nM403 E2 F{"" + ((filament_type[2]=="FLEX") ? 1 : ((filament_type[2]=="PVA") ? 2 : 0))}\nM403 E3 F{"" + ((filament_type[3]=="FLEX") ? 1 : ((filament_type[3]=="PVA") ? 2 : 0))}\nM403 E4 F{"" + ((filament_type[4]=="FLEX") ? 1 : ((filament_type[4]=="PVA") ? 2 : 0))}\n\n{if not has_single_extruder_multi_material_priming}\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nT[initial_tool]\n; initial load\nG1 X55.0 E32.0 F1073.0\nG1 X5.0 E32.0 F1800.0\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG92 E0.0\n{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
 end_gcode = {if has_wipe_tower}\nG1 E-15.0000 F3000\n{else}\nG1 X0 Y210 F7200\nG1 E2 F5000\nG1 E2 F5500\nG1 E2 F6000\nG1 E-15.0000 F5800\nG1 E-20.0000 F5500\nG1 E10.0000 F3000\nG1 E-10.0000 F3100\nG1 E10.0000 F3150\nG1 E-10.0000 F3250\nG1 E10.0000 F3300\n{endif}\n\n; Unload filament\nM702 C\n\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n; Lift print head a bit\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+30, max_print_height)}{endif} ; Move print head up\nG1 X0 Y200; home X axis\nM84 ; disable motors\n
 
 [printer:Original Prusa i3 MK2.5S]
 inherits = Original Prusa i3 MK2.5
 printer_model = MK2.5S
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
 
 [printer:Original Prusa i3 MK2.5S 0.25 nozzle]
 inherits = Original Prusa i3 MK2.5 0.25 nozzle
 printer_model = MK2.5S
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
 
 [printer:Original Prusa i3 MK2.5S 0.6 nozzle]
 inherits = Original Prusa i3 MK2.5 0.6 nozzle
 printer_model = MK2.5S
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0
 
 [printer:Original Prusa i3 MK2.5S MMU2S Single]
 inherits = Original Prusa i3 MK2.5; *mm2s*
@@ -1857,7 +2156,7 @@ machine_min_travel_rate = 0
 default_print_profile = 0.15mm OPTIMAL MK2.5
 default_filament_profile = Prusament PLA
 printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_MK2.5\n
-start_gcode = M107\nM115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nTx\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n\nG21 ; set units to millimeters\n\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nTc\n; purge line\nG1 X55.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
+start_gcode = M107\nM115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nTx\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n\nG21 ; set units to millimeters\n\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nTc\n; purge line\nG1 X55.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
 end_gcode = G1 X0 Y210 F7200\nG1 E2 F5000\nG1 E2 F5500\nG1 E2 F6000\nG1 E-15.0000 F5800\nG1 E-20.0000 F5500\nG1 E10.0000 F3000\nG1 E-10.0000 F3100\nG1 E10.0000 F3150\nG1 E-10.0000 F3250\nG1 E10.0000 F3300\n\nM702 C\n\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nG1 X0 Y200; home X axis\nM84 ; disable motors
 
 [printer:Original Prusa i3 MK2.5S MMU2S]
@@ -1891,7 +2190,7 @@ single_extruder_multi_material = 1
 # to be defined explicitely.
 nozzle_diameter = 0.4,0.4,0.4,0.4,0.4
 extruder_colour = #FF8000;#DB5182;#00FFFF;#FF4F4F;#9FFF9F
-start_gcode = M107\nM115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG21 ; set units to millimeters\n\n; Send the filament type to the MMU2.0 unit.\n; E stands for extruder number, F stands for filament type (0: default; 1:flex; 2: PVA)\nM403 E0 F{"" + ((filament_type[0]=="FLEX") ? 1 : ((filament_type[0]=="PVA") ? 2 : 0))}\nM403 E1 F{"" + ((filament_type[1]=="FLEX") ? 1 : ((filament_type[1]=="PVA") ? 2 : 0))}\nM403 E2 F{"" + ((filament_type[2]=="FLEX") ? 1 : ((filament_type[2]=="PVA") ? 2 : 0))}\nM403 E3 F{"" + ((filament_type[3]=="FLEX") ? 1 : ((filament_type[3]=="PVA") ? 2 : 0))}\nM403 E4 F{"" + ((filament_type[4]=="FLEX") ? 1 : ((filament_type[4]=="PVA") ? 2 : 0))}\n\n{if not has_single_extruder_multi_material_priming}\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nT[initial_tool]\n; initial load\nG1 X55.0 E29.0 F1073.0\nG1 X5.0 E29.0 F1800.0\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG92 E0.0\n{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
+start_gcode = M107\nM115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG21 ; set units to millimeters\n\n; Send the filament type to the MMU2.0 unit.\n; E stands for extruder number, F stands for filament type (0: default; 1:flex; 2: PVA)\nM403 E0 F{"" + ((filament_type[0]=="FLEX") ? 1 : ((filament_type[0]=="PVA") ? 2 : 0))}\nM403 E1 F{"" + ((filament_type[1]=="FLEX") ? 1 : ((filament_type[1]=="PVA") ? 2 : 0))}\nM403 E2 F{"" + ((filament_type[2]=="FLEX") ? 1 : ((filament_type[2]=="PVA") ? 2 : 0))}\nM403 E3 F{"" + ((filament_type[3]=="FLEX") ? 1 : ((filament_type[3]=="PVA") ? 2 : 0))}\nM403 E4 F{"" + ((filament_type[4]=="FLEX") ? 1 : ((filament_type[4]=="PVA") ? 2 : 0))}\n\n{if not has_single_extruder_multi_material_priming}\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nT[initial_tool]\n; initial load\nG1 X55.0 E29.0 F1073.0\nG1 X5.0 E29.0 F1800.0\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG92 E0.0\n{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
 end_gcode = {if has_wipe_tower}\nG1 E-15.0000 F3000\n{else}\nG1 X0 Y210 F7200\nG1 E2 F5000\nG1 E2 F5500\nG1 E2 F6000\nG1 E-15.0000 F5800\nG1 E-20.0000 F5500\nG1 E10.0000 F3000\nG1 E-10.0000 F3100\nG1 E10.0000 F3150\nG1 E-10.0000 F3250\nG1 E10.0000 F3300\n{endif}\n\n; Unload filament\nM702 C\n\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n; Lift print head a bit\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+30, max_print_height)}{endif} ; Move print head up\nG1 X0 Y200; home X axis\nM84 ; disable motors\n
 
 
@@ -1923,7 +2222,7 @@ remaining_times = 1
 printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_PRUSA3D\nPRINTER_MODEL_MK3\n
 retract_lift_below = 209
 max_print_height = 210
-start_gcode = M115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0\nM221 S{if layer_height<0.075}100{else}95{endif}
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0\nM221 S{if layer_height<0.075}100{else}95{endif}
 printer_model = MK3
 default_print_profile = 0.15mm QUALITY MK3
 
@@ -1933,27 +2232,31 @@ nozzle_diameter = 0.25
 max_layer_height = 0.15
 min_layer_height = 0.05
 printer_variant = 0.25
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E8.0 F700.0 ; intro line\nG1 X100.0 E12.5 F700.0 ; intro line\nG92 E0.0\nM221 S{if layer_height<0.075}100{else}95{endif}
 default_print_profile = 0.10mm DETAIL 0.25 nozzle MK3
 
 [printer:Original Prusa i3 MK3 0.6 nozzle]
 inherits = Original Prusa i3 MK3
 nozzle_diameter = 0.6
-max_layer_height = 0.35
-min_layer_height = 0.1
+max_layer_height = 0.40
+min_layer_height = 0.15
 printer_variant = 0.6
-default_print_profile = 0.15mm OPTIMAL 0.6 nozzle MK3
+default_print_profile = 0.30mm QUALITY 0.6 nozzle MK3
 
 [printer:Original Prusa i3 MK3S]
 inherits = Original Prusa i3 MK3
 printer_model = MK3S
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0\nM221 S{if layer_height<0.075}100{else}95{endif}
 
 [printer:Original Prusa i3 MK3S 0.25 nozzle]
 inherits = Original Prusa i3 MK3 0.25 nozzle
 printer_model = MK3S
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E8.0 F700.0 ; intro line\nG1 X100.0 E12.5 F700.0 ; intro line\nG92 E0.0\nM221 S{if layer_height<0.075}100{else}95{endif}
 
 [printer:Original Prusa i3 MK3S 0.6 nozzle]
 inherits = Original Prusa i3 MK3 0.6 nozzle
 printer_model = MK3S
+start_gcode = M115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG1 Y-3.0 F1000.0 ; go outside print area\nG92 E0.0\nG1 X60.0 E9.0  F1000.0 ; intro line\nG1 X100.0 E12.5  F1000.0 ; intro line\nG92 E0.0\nM221 S{if layer_height<0.075}100{else}95{endif}
 
 [printer:*mm2*]
 inherits = Original Prusa i3 MK3
@@ -1983,7 +2286,7 @@ default_filament_profile = Prusament PLA MMU2
 inherits = *mm2*
 single_extruder_multi_material = 0
 default_filament_profile = Prusament PLA
-start_gcode = M107\nM115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nTx\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n\nG21 ; set units to millimeters\n\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nTc\n; purge line\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\n\nM221 S{if layer_height<0.075}100{else}95{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
+start_gcode = M107\nM115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nTx\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n\nG21 ; set units to millimeters\n\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nTc\n; purge line\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\n\nM221 S{if layer_height<0.075}100{else}95{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
 end_gcode = G1 X0 Y210 F7200\nG1 E2 F5000\nG1 E2 F5500\nG1 E2 F6000\nG1 E-15.0000 F5800\nG1 E-20.0000 F5500\nG1 E10.0000 F3000\nG1 E-10.0000 F3100\nG1 E10.0000 F3150\nG1 E-10.0000 F3250\nG1 E10.0000 F3300\n\nM702 C\n\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nG1 X0 Y200; home X axis\nM84 ; disable motors
 
 [printer:Original Prusa i3 MK3 MMU2]
@@ -1994,14 +2297,14 @@ inherits = *mm2*
 machine_max_acceleration_e = 8000,8000
 nozzle_diameter = 0.4,0.4,0.4,0.4,0.4
 extruder_colour = #FF8000;#DB5182;#00FFFF;#FF4F4F;#9FFF9F
-start_gcode = M107\nM115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG21 ; set units to millimeters\n\n; Send the filament type to the MMU2.0 unit.\n; E stands for extruder number, F stands for filament type (0: default; 1:flex; 2: PVA)\nM403 E0 F{"" + ((filament_type[0]=="FLEX") ? 1 : ((filament_type[0]=="PVA") ? 2 : 0))}\nM403 E1 F{"" + ((filament_type[1]=="FLEX") ? 1 : ((filament_type[1]=="PVA") ? 2 : 0))}\nM403 E2 F{"" + ((filament_type[2]=="FLEX") ? 1 : ((filament_type[2]=="PVA") ? 2 : 0))}\nM403 E3 F{"" + ((filament_type[3]=="FLEX") ? 1 : ((filament_type[3]=="PVA") ? 2 : 0))}\nM403 E4 F{"" + ((filament_type[4]=="FLEX") ? 1 : ((filament_type[4]=="PVA") ? 2 : 0))}\n\n{if not has_single_extruder_multi_material_priming}\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nT[initial_tool]\n; initial load\nG1 X55.0 E32.0 F1073.0\nG1 X5.0 E32.0 F1800.0\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG92 E0.0\n{endif}\n\nM221 S{if layer_height<0.075}100{else}95{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
+start_gcode = M107\nM115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG21 ; set units to millimeters\n\n; Send the filament type to the MMU2.0 unit.\n; E stands for extruder number, F stands for filament type (0: default; 1:flex; 2: PVA)\nM403 E0 F{"" + ((filament_type[0]=="FLEX") ? 1 : ((filament_type[0]=="PVA") ? 2 : 0))}\nM403 E1 F{"" + ((filament_type[1]=="FLEX") ? 1 : ((filament_type[1]=="PVA") ? 2 : 0))}\nM403 E2 F{"" + ((filament_type[2]=="FLEX") ? 1 : ((filament_type[2]=="PVA") ? 2 : 0))}\nM403 E3 F{"" + ((filament_type[3]=="FLEX") ? 1 : ((filament_type[3]=="PVA") ? 2 : 0))}\nM403 E4 F{"" + ((filament_type[4]=="FLEX") ? 1 : ((filament_type[4]=="PVA") ? 2 : 0))}\n\n{if not has_single_extruder_multi_material_priming}\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nT[initial_tool]\n; initial load\nG1 X55.0 E32.0 F1073.0\nG1 X5.0 E32.0 F1800.0\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG92 E0.0\n{endif}\n\nM221 S{if layer_height<0.075}100{else}95{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
 end_gcode = {if has_wipe_tower}\nG1 E-15.0000 F3000\n{else}\nG1 X0 Y210 F7200\nG1 E2 F5000\nG1 E2 F5500\nG1 E2 F6000\nG1 E-15.0000 F5800\nG1 E-20.0000 F5500\nG1 E10.0000 F3000\nG1 E-10.0000 F3100\nG1 E10.0000 F3150\nG1 E-10.0000 F3250\nG1 E10.0000 F3300\n{endif}\n\n; Unload filament\nM702 C\n\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n; Lift print head a bit\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+30, max_print_height)}{endif} ; Move print head up\nG1 X0 Y200; home X axis\nM84 ; disable motors\n
 
 [printer:Original Prusa i3 MK3S MMU2S Single]
 inherits = *mm2s*
 single_extruder_multi_material = 0
 default_filament_profile = Prusament PLA
-start_gcode = M107\nM115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nTx\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n\nG21 ; set units to millimeters\n\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nTc\n; purge line\nG1 X55.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\n\nM221 S{if layer_height<0.075}100{else}95{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
+start_gcode = M107\nM115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nTx\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n\nG21 ; set units to millimeters\n\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nTc\n; purge line\nG1 X55.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\n\nM221 S{if layer_height<0.075}100{else}95{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
 end_gcode = G1 X0 Y210 F7200\nG1 E2 F5000\nG1 E2 F5500\nG1 E2 F6000\nG1 E-15.0000 F5800\nG1 E-20.0000 F5500\nG1 E10.0000 F3000\nG1 E-10.0000 F3100\nG1 E10.0000 F3150\nG1 E-10.0000 F3250\nG1 E10.0000 F3300\n\nM702 C\n\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nG1 X0 Y200; home X axis\nM84 ; disable motors
 
 [printer:Original Prusa i3 MK3S MMU2S]
@@ -2009,14 +2312,14 @@ inherits = *mm2s*
 machine_max_acceleration_e = 8000,8000
 nozzle_diameter = 0.4,0.4,0.4,0.4,0.4
 extruder_colour = #FF8000;#DB5182;#00FFFF;#FF4F4F;#9FFF9F
-start_gcode = M107\nM115 U3.5.1 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG21 ; set units to millimeters\n\n; Send the filament type to the MMU2.0 unit.\n; E stands for extruder number, F stands for filament type (0: default; 1:flex; 2: PVA)\nM403 E0 F{"" + ((filament_type[0]=="FLEX") ? 1 : ((filament_type[0]=="PVA") ? 2 : 0))}\nM403 E1 F{"" + ((filament_type[1]=="FLEX") ? 1 : ((filament_type[1]=="PVA") ? 2 : 0))}\nM403 E2 F{"" + ((filament_type[2]=="FLEX") ? 1 : ((filament_type[2]=="PVA") ? 2 : 0))}\nM403 E3 F{"" + ((filament_type[3]=="FLEX") ? 1 : ((filament_type[3]=="PVA") ? 2 : 0))}\nM403 E4 F{"" + ((filament_type[4]=="FLEX") ? 1 : ((filament_type[4]=="PVA") ? 2 : 0))}\n\n{if not has_single_extruder_multi_material_priming}\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nT[initial_tool]\n; initial load\nG1 X55.0 E29.0 F1073.0\nG1 X5.0 E29.0 F1800.0\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG92 E0.0\n{endif}\n\nM221 S{if layer_height<0.075}100{else}95{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
+start_gcode = M107\nM115 U3.6.0 ; tell printer latest fw version\nM83  ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\nG21 ; set units to millimeters\n\n; Send the filament type to the MMU2.0 unit.\n; E stands for extruder number, F stands for filament type (0: default; 1:flex; 2: PVA)\nM403 E0 F{"" + ((filament_type[0]=="FLEX") ? 1 : ((filament_type[0]=="PVA") ? 2 : 0))}\nM403 E1 F{"" + ((filament_type[1]=="FLEX") ? 1 : ((filament_type[1]=="PVA") ? 2 : 0))}\nM403 E2 F{"" + ((filament_type[2]=="FLEX") ? 1 : ((filament_type[2]=="PVA") ? 2 : 0))}\nM403 E3 F{"" + ((filament_type[3]=="FLEX") ? 1 : ((filament_type[3]=="PVA") ? 2 : 0))}\nM403 E4 F{"" + ((filament_type[4]=="FLEX") ? 1 : ((filament_type[4]=="PVA") ? 2 : 0))}\n\n{if not has_single_extruder_multi_material_priming}\n;go outside print area\nG1 Y-3.0 F1000.0\nG1 Z0.4 F1000.0\n; select extruder\nT[initial_tool]\n; initial load\nG1 X55.0 E29.0 F1073.0\nG1 X5.0 E29.0 F1800.0\nG1 X55.0 E8.0 F2000.0\nG1 Z0.3 F1000.0\nG92 E0.0\nG1 X240.0 E25.0  F2200.0\nG1 Y-2.0 F1000.0\nG1 X55.0 E25 F1400.0\nG1 Z0.20 F1000.0\nG1 X5.0 E4.0 F1000.0\nG92 E0.0\n{endif}\n\nM221 S{if layer_height<0.075}100{else}95{endif}\nG90 ; use absolute coordinates\nM83 ; use relative distances for extrusion\nG92 E0.0\n
 end_gcode = {if has_wipe_tower}\nG1 E-15.0000 F3000\n{else}\nG1 X0 Y210 F7200\nG1 E2 F5000\nG1 E2 F5500\nG1 E2 F6000\nG1 E-15.0000 F5800\nG1 E-20.0000 F5500\nG1 E10.0000 F3000\nG1 E-10.0000 F3100\nG1 E10.0000 F3150\nG1 E-10.0000 F3250\nG1 E10.0000 F3300\n{endif}\n\n; Unload filament\nM702 C\n\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n; Lift print head a bit\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+30, max_print_height)}{endif} ; Move print head up\nG1 X0 Y200; home X axis\nM84 ; disable motors\n
 
 [printer:Original Prusa SL1]
 printer_technology = SLA
 printer_model = SL1
 printer_variant = default
-default_sla_material_profile = Jamg He Transparent Green 0.05
+default_sla_material_profile = Jamg He PJHC-30 Orange 0.05
 default_sla_print_profile = 0.05 Normal
 bed_shape = 0.98x1.02,119.98x1.02,119.98x68.02,0.98x68.02
 display_height = 68.04
diff --git a/src/libslic3r/Config.cpp b/src/libslic3r/Config.cpp
index 037bd3500..a7db29b8e 100644
--- a/src/libslic3r/Config.cpp
+++ b/src/libslic3r/Config.cpp
@@ -15,6 +15,7 @@
 #include <boost/foreach.hpp>
 #include <boost/lexical_cast.hpp>
 #include <boost/nowide/cenv.hpp>
+#include <boost/nowide/iostream.hpp>
 #include <boost/nowide/fstream.hpp>
 #include <boost/property_tree/ini_parser.hpp>
 #include <boost/format.hpp>
@@ -713,11 +714,8 @@ bool DynamicConfig::read_cli(int argc, char** argv, t_config_option_keys* extra,
         // Look for the cli -> option mapping.
         const auto it = opts.find(token);
         if (it == opts.end()) {
-            printf("Warning: unknown option --%s\n", token.c_str());
-            // instead of continuing, return false to caller
-            // to stop execution and print usage
-            return false;
-            //continue;
+			boost::nowide::cerr << "Unknown option --" << token.c_str() << std::endl;
+			return false;
         }
         const t_config_option_key opt_key = it->second;
         const ConfigOptionDef &optdef = this->def()->options.at(opt_key);
@@ -725,8 +723,8 @@ bool DynamicConfig::read_cli(int argc, char** argv, t_config_option_keys* extra,
         // look for it in the next token.
         if (optdef.type != coBool && optdef.type != coBools && value.empty()) {
             if (i == (argc-1)) {
-                printf("No value supplied for --%s\n", token.c_str());
-                continue;
+				boost::nowide::cerr << "No value supplied for --" << token.c_str() << std::endl;
+                return false;
             }
             value = argv[++ i];
         }
@@ -759,7 +757,10 @@ bool DynamicConfig::read_cli(int argc, char** argv, t_config_option_keys* extra,
             static_cast<ConfigOptionString*>(opt_base)->value = value;
         } else {
             // Any scalar value of a type different from Bool and String.
-            this->set_deserialize(opt_key, value, false);
+            if (! this->set_deserialize(opt_key, value, false)) {
+				boost::nowide::cerr << "Invalid value supplied for --" << token.c_str() << std::endl;
+				return false;
+			}
         }
     }
     return true;
diff --git a/src/libslic3r/SLA/SLASupportTree.cpp b/src/libslic3r/SLA/SLASupportTree.cpp
index 9f2575036..437f07fcb 100644
--- a/src/libslic3r/SLA/SLASupportTree.cpp
+++ b/src/libslic3r/SLA/SLASupportTree.cpp
@@ -716,7 +716,7 @@ public:
         assert(it != m_heads.end());
         const Head& h = it->second;
         assert(h.pillar_id >= 0 && h.pillar_id < long(m_pillars.size()));
-        return m_pillars[size_t(h.pillar_id)];
+        return pillar(h.pillar_id);
     }
 
     template<class...Args> const Junction& add_junction(Args&&... args) {
@@ -755,6 +755,10 @@ public:
         return m_compact_bridges;
     }
 
+    template<class T> inline
+    typename std::enable_if<std::is_integral<T>::value, const Pillar&>::type
+    pillar(T id) const { assert(id >= 0); return m_pillars.at(size_t(id)); }
+
     const Pad& create_pad(const TriangleMesh& object_supports,
                           const ExPolygons& baseplate,
                           const PoolConfig& cfg) {
@@ -1242,12 +1246,14 @@ class SLASupportTree::Algorithm {
     }
 
     // For connecting a head to a nearby pillar.
-    bool connect_to_nearpillar(const Head& head, const Pillar& nearpillar) {
-        if(nearpillar.bridges > m_cfg.max_bridges_on_pillar) return false;
+    bool connect_to_nearpillar(const Head& head, long nearpillar_id) {
+
+        auto nearpillar = [this, nearpillar_id]() { return m_result.pillar(nearpillar_id); };
+        if(nearpillar().bridges > m_cfg.max_bridges_on_pillar) return false;
 
         Vec3d headjp = head.junction_point();
-        Vec3d nearjp_u = nearpillar.startpoint();
-        Vec3d nearjp_l = nearpillar.endpoint();
+        Vec3d nearjp_u = nearpillar().startpoint();
+        Vec3d nearjp_l = nearpillar().endpoint();
 
         double r = head.r_back_mm;
         double d2d = distance(to_2d(headjp), to_2d(nearjp_u));
@@ -1308,7 +1314,7 @@ class SLASupportTree::Algorithm {
         }
 
         m_result.add_bridge(bridgestart, bridgeend, r);
-        m_result.increment_bridges(nearpillar);
+        m_result.increment_bridges(nearpillar());
 
         return true;
     }
@@ -1336,8 +1342,7 @@ class SLASupportTree::Algorithm {
             if(nearest_id >= 0) {
                 auto nearpillarID = unsigned(nearest_id);
                 if(nearpillarID < m_result.pillars().size()) {
-                    const Pillar& nearpillar = m_result.pillars()[nearpillarID];
-                    if(!connect_to_nearpillar(head, nearpillar)) {
+                    if(!connect_to_nearpillar(head, nearpillarID)) {
                         nearest_id = -1;    // continue searching
                         spindex.remove(ne); // without the current pillar
                     }
@@ -1649,7 +1654,7 @@ public:
             // central position where the pillar can be placed. this way
             // the weight is distributed more effectively on the pillar.
 
-            const Pillar& centerpillar = m_result.head_pillar(cidx);
+            auto centerpillarID = m_result.head_pillar(cidx).id;
 
             for(auto c : cl) { m_thr();
                 if(c == cidx) continue;
@@ -1657,7 +1662,7 @@ public:
                 auto& sidehead = m_result.head(c);
                 sidehead.transform();
 
-                if(!connect_to_nearpillar(sidehead, centerpillar) &&
+                if(!connect_to_nearpillar(sidehead, centerpillarID) &&
                    !search_pillar_and_connect(sidehead))
                 {
                     Vec3d pstart = sidehead.junction_point();
@@ -1859,7 +1864,7 @@ public:
         }
 
         for(auto pillid : modelpillars) {
-            auto& pillar = m_result.pillars()[pillid];
+            auto& pillar = m_result.pillar(pillid);
             m_pillar_index.insert(pillar.endpoint(), pillid);
         }
     }
@@ -1886,7 +1891,7 @@ public:
         {
             Vec3d qp = el.first;
 
-            const Pillar& pillar = m_result.pillars()[el.second];
+            const Pillar& pillar = m_result.pillar(el.second);
 
             unsigned neighbors = m_cfg.pillar_cascade_neighbors;
 
@@ -1946,15 +1951,15 @@ public:
         size_t pillarcount = m_result.pillars().size();
 
         for(size_t pid = 0; pid < pillarcount; pid++) {
-            const Pillar& pillar = m_result.pillars()[pid];
+            auto pillar = [this, pid]() { return m_result.pillar(pid); };
 
             unsigned needpillars = 0;
-            if(pillar.bridges > m_cfg.max_bridges_on_pillar) needpillars = 3;
-            else if(pillar.links < 2 && pillar.height > H2) {
+            if(pillar().bridges > m_cfg.max_bridges_on_pillar) needpillars = 3;
+            else if(pillar().links < 2 && pillar().height > H2) {
                 // Not enough neighbors to support this pillar
-                needpillars = 2 - pillar.links;
+                needpillars = 2 - pillar().links;
             }
-            else if(pillar.links < 1 && pillar.height > H1) {
+            else if(pillar().links < 1 && pillar().height > H1) {
                 // No neighbors could be found and the pillar is too long.
                 needpillars = 1;
             }
@@ -1963,7 +1968,7 @@ public:
             bool found = false;
             double alpha = 0; // goes to 2Pi
             double r = 2 * m_cfg.base_radius_mm;
-            Vec3d pillarsp = pillar.startpoint();
+            Vec3d pillarsp = pillar().startpoint();
             Vec3d sp(pillarsp(X), pillarsp(Y), pillarsp(Z) - r);
             std::vector<bool> tv(needpillars, false);
             std::vector<Vec3d> spts(needpillars);
@@ -1976,7 +1981,7 @@ public:
                     s(X) += std::cos(a) * r;
                     s(Y) += std::sin(a) * r;
                     spts[n] = s;
-                    auto hr = bridge_mesh_intersect(s, {0, 0, -1}, pillar.r);
+                    auto hr = bridge_mesh_intersect(s, {0, 0, -1}, pillar().r);
                     tv[n] = std::isinf(hr.distance());
                 }
 
@@ -1991,33 +1996,33 @@ public:
 
             if(found) for(unsigned n = 0; n < needpillars; n++) {
                 Vec3d s = spts[n]; double gnd = m_result.ground_level;
-                Pillar p(s, Vec3d(s(X), s(Y), gnd), pillar.r);
+                Pillar p(s, Vec3d(s(X), s(Y), gnd), pillar().r);
                 p.add_base(m_cfg.base_height_mm, m_cfg.base_radius_mm);
 
-                if(interconnect(pillar, p)) {
+                if(interconnect(pillar(), p)) {
                     Pillar& pp = m_result.add_pillar(p);
                     m_pillar_index.insert(pp.endpoint(), unsigned(pp.id));
 
-                    m_result.add_junction(s, pillar.r);
+                    m_result.add_junction(s, pillar().r);
                     double t = bridge_mesh_intersect(pillarsp,
                                                      dirv(pillarsp, s),
-                                                     pillar.r);
+                                                     pillar().r);
                     if(distance(pillarsp, s) < t)
-                        m_result.add_bridge(pillarsp, s, pillar.r);
+                        m_result.add_bridge(pillarsp, s, pillar().r);
 
-                    if(pillar.endpoint()(Z) > m_result.ground_level)
-                        m_result.add_junction(pillar.endpoint(), pillar.r);
+                    if(pillar().endpoint()(Z) > m_result.ground_level)
+                        m_result.add_junction(pillar().endpoint(), pillar().r);
 
                     newpills.emplace_back(pp.id);
-                    m_result.increment_links(pillar);
+                    m_result.increment_links(pillar());
                 }
             }
 
             if(!newpills.empty()) {
                 for(auto it = newpills.begin(), nx = std::next(it);
                     nx != newpills.end(); ++it, ++nx) {
-                    const Pillar& itpll = m_result.pillars()[size_t(*it)];
-                    const Pillar& nxpll = m_result.pillars()[size_t(*nx)];
+                    const Pillar& itpll = m_result.pillar(*it);
+                    const Pillar& nxpll = m_result.pillar(*nx);
                     if(interconnect(itpll, nxpll)) {
                         m_result.increment_links(itpll);
                         m_result.increment_links(nxpll);
diff --git a/src/slic3r.cpp b/src/slic3r.cpp
index b60c5b1dd..3b301ec2a 100644
--- a/src/slic3r.cpp
+++ b/src/slic3r.cpp
@@ -523,6 +523,8 @@ bool CLI::setup(int argc, char **argv)
     // If any option is unsupported, print usage and abort immediately.
     t_config_option_keys opt_order;
     if (! m_config.read_cli(argc, argv, &m_input_files, &opt_order)) {
+		// Separate error message reported by the CLI parser from the help.
+		boost::nowide::cerr << std::endl;
         this->print_help();
 		return false;
     }
@@ -615,7 +617,7 @@ std::string CLI::output_filepath(const Model &model, IO::ExportFormat format) co
     };
     auto proposed_path = boost::filesystem::path(model.propose_export_file_name_and_path(ext));
     // use --output when available
-	std::string cmdline_param = m_config.opt_string("output", false);
+	std::string cmdline_param = m_config.opt_string("output");
     if (! cmdline_param.empty()) {
         // if we were supplied a directory, use it and append our automatically generated filename
         boost::filesystem::path cmdline_path(cmdline_param);
diff --git a/src/slic3r/GUI/ConfigSnapshotDialog.cpp b/src/slic3r/GUI/ConfigSnapshotDialog.cpp
index 422f683b3..205e84f57 100644
--- a/src/slic3r/GUI/ConfigSnapshotDialog.cpp
+++ b/src/slic3r/GUI/ConfigSnapshotDialog.cpp
@@ -38,7 +38,7 @@ static wxString generate_html_row(const Config::Snapshot &snapshot, bool row_eve
     text += wxString("<font size=\"5\"><b>") + (snapshot_active ? _(L("Active: ")) : "") + 
         Utils::format_local_date_time(snapshot.time_captured) + ": " + format_reason(snapshot.reason);
     if (! snapshot.comment.empty())
-        text += " (" + snapshot.comment + ")";
+        text += " (" + wxString::FromUTF8(snapshot.comment.data()) + ")";
     text += "</b></font><br>";
     // End of row header.
     text += _(L("slic3r version")) + ": " + snapshot.slic3r_version_captured.to_string() + "<br>";
diff --git a/src/slic3r/GUI/GLGizmo.cpp b/src/slic3r/GUI/GLGizmo.cpp
index 6ab2f46ab..34d0c746a 100644
--- a/src/slic3r/GUI/GLGizmo.cpp
+++ b/src/slic3r/GUI/GLGizmo.cpp
@@ -1954,7 +1954,8 @@ void GLGizmoSlaSupports::render_points(const GLCanvas3D::Selection& selection, b
 
 bool GLGizmoSlaSupports::is_mesh_update_necessary() const
 {
-    return (m_state == On) && (m_model_object != m_old_model_object) && (m_model_object != nullptr) && !m_model_object->instances.empty();
+    return ((m_state == On) && (m_model_object != nullptr) && !m_model_object->instances.empty())
+        && ((m_model_object != m_old_model_object) || m_V.size()==0);
 
     //if (m_state != On || !m_model_object || m_model_object->instances.empty() || ! m_instance_matrix.isApprox(m_source_data.matrix))
     //    return false;
diff --git a/src/slic3r/GUI/GUI.cpp b/src/slic3r/GUI/GUI.cpp
index 11e94f2ca..4a3ccc356 100644
--- a/src/slic3r/GUI/GUI.cpp
+++ b/src/slic3r/GUI/GUI.cpp
@@ -148,9 +148,6 @@ void config_wizard(int reason)
             _(L("Please check and fix your object list.")),
             _(L("Attention!")));
     }
-       
-    // Load the currently selected preset into the GUI, update the preset selection box.
-    // 	wxGetApp().load_current_presets(); // #ys_FIXME_to_delete presets are loaded now in select_preset function
 }
 
 // opt_index = 0, by the reason of zero-index in ConfigOptionVector by default (in case only one element)
diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp
index 7d448fbe4..1cf2ca17c 100644
--- a/src/slic3r/GUI/GUI_App.cpp
+++ b/src/slic3r/GUI/GUI_App.cpp
@@ -95,7 +95,7 @@ bool GUI_App::OnInit()
     wxCHECK_MSG(m_imgui->init(), false, "Failed to initialize ImGui");
 #endif // ENABLE_IMGUI
 
-    SetAppName("Slic3rPE-alpha");
+    SetAppName("Slic3rPE-beta");
     SetAppDisplayName("Slic3r Prusa Edition");
 
 //     Slic3r::debugf "wxWidgets version %s, Wx version %s\n", wxVERSION_STRING, wxVERSION;
diff --git a/src/slic3r/GUI/Plater.hpp b/src/slic3r/GUI/Plater.hpp
index b8bd7d907..eede860ca 100644
--- a/src/slic3r/GUI/Plater.hpp
+++ b/src/slic3r/GUI/Plater.hpp
@@ -51,8 +51,6 @@ public:
     int  get_extruder_idx() const               { return extruder_idx; }
     void check_selection();
 
-    std::string     selected_preset_name;
-
 private:
     typedef std::size_t Marker;
     enum { LABEL_ITEM_MARKER = 0x4d };
diff --git a/src/slic3r/GUI/Preset.cpp b/src/slic3r/GUI/Preset.cpp
index 86fdde44b..656658b0b 100644
--- a/src/slic3r/GUI/Preset.cpp
+++ b/src/slic3r/GUI/Preset.cpp
@@ -879,8 +879,7 @@ size_t PresetCollection::update_compatible_internal(const Preset &active_printer
 // Hide the 
 void PresetCollection::update_platter_ui(GUI::PresetComboBox *ui)
 {
-    if (ui == nullptr || 
-        ui->selected_preset_name == this->get_selected_preset().name)
+    if (ui == nullptr)
         return;
 
     // Otherwise fill in the list from scratch.
@@ -951,8 +950,6 @@ void PresetCollection::update_platter_ui(GUI::PresetComboBox *ui)
 	ui->SetSelection(selected_preset_item);
 	ui->SetToolTip(ui->GetString(selected_preset_item));
 	ui->Thaw();
-
-    ui->selected_preset_name = this->get_selected_preset().name;
 }
 
 size_t PresetCollection::update_tab_ui(wxBitmapComboBox *ui, bool show_incompatible)
diff --git a/src/slic3r/GUI/PresetBundle.cpp b/src/slic3r/GUI/PresetBundle.cpp
index 52421fafa..f0bb4de01 100644
--- a/src/slic3r/GUI/PresetBundle.cpp
+++ b/src/slic3r/GUI/PresetBundle.cpp
@@ -1436,8 +1436,7 @@ bool PresetBundle::parse_color(const std::string &scolor, unsigned char *rgb_out
 void PresetBundle::update_platter_filament_ui(unsigned int idx_extruder, GUI::PresetComboBox *ui)
 {
     if (ui == nullptr || this->printers.get_edited_preset().printer_technology() == ptSLA ||
-        this->filament_presets.size() <= idx_extruder ||
-        ui->selected_preset_name == this->filaments.find_preset(this->filament_presets[idx_extruder])->name)
+        this->filament_presets.size() <= idx_extruder )
         return;
 
     unsigned char rgb[3];
@@ -1526,8 +1525,6 @@ void PresetBundle::update_platter_filament_ui(unsigned int idx_extruder, GUI::Pr
 	ui->SetSelection(selected_preset_item);
 	ui->SetToolTip(ui->GetString(selected_preset_item));
     ui->Thaw();
-
-    ui->selected_preset_name = this->filaments.find_preset(this->filament_presets[idx_extruder])->name;
 }
 
 void PresetBundle::set_default_suppressed(bool default_suppressed)
diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
index ae33443c3..b23becaae 100644
--- a/src/slic3r/GUI/Tab.cpp
+++ b/src/slic3r/GUI/Tab.cpp
@@ -2594,7 +2594,7 @@ void Tab::select_preset(std::string preset_name)
 	} else {
 		if (current_dirty)
 			m_presets->discard_current_changes();
-		m_presets->select_preset_by_name(preset_name, false);
+		const bool is_selected = m_presets->select_preset_by_name(preset_name, false);
 		// Mark the print & filament enabled if they are compatible with the currently selected preset.
 		// The following method should not discard changes of current print or filament presets on change of a printer profile,
 		// if they are compatible with the current printer.
@@ -2603,6 +2603,28 @@ void Tab::select_preset(std::string preset_name)
 		// Initialize the UI from the current preset.
         if (printer_tab)
             static_cast<TabPrinter*>(this)->update_pages();
+
+        if (!is_selected && printer_tab)
+        {
+            /* There is a case, when :
+             * after Config Wizard applying we try to select previously selected preset, but 
+             * in a current configuration this one:
+             *  1. doesn't exist now,
+             *  2. have another printer_technology
+             * So, it is necessary to update list of dependent tabs 
+             * to the corresponding printer_technology
+             */
+            const PrinterTechnology printer_technology = m_presets->get_edited_preset().printer_technology();
+            if (printer_technology == ptFFF && m_dependent_tabs.front() != Preset::Type::TYPE_PRINT ||
+                printer_technology == ptSLA && m_dependent_tabs.front() != Preset::Type::TYPE_SLA_PRINT )
+            {
+                m_dependent_tabs.clear();
+                if (printer_technology == ptFFF)
+                    m_dependent_tabs = { Preset::Type::TYPE_PRINT, Preset::Type::TYPE_FILAMENT };
+                else
+                    m_dependent_tabs = { Preset::Type::TYPE_SLA_PRINT, Preset::Type::TYPE_SLA_MATERIAL };                
+            }
+        }
 		load_current_preset();
 	}
 }
diff --git a/version.inc b/version.inc
index 0e84a48a2..18ac508b2 100644
--- a/version.inc
+++ b/version.inc
@@ -2,7 +2,7 @@
 # (the version numbers are generated by the build script from the git current label)
 
 set(SLIC3R_FORK_NAME "Slic3r Prusa Edition")
-set(SLIC3R_VERSION "1.42.0-alpha7")
+set(SLIC3R_VERSION "1.42.0-beta")
 set(SLIC3R_BUILD "${SLIC3R_VERSION}+UNKNOWN")
 set(SLIC3R_BUILD_ID "${SLIC3R_BUILD_ID}")
 set(SLIC3R_RC_VERSION "1,42,0,0")