initial commit, rev1 to fab

This commit is contained in:
2025-11-11 22:11:13 -08:00
commit 9511d916ee
17 changed files with 381047 additions and 0 deletions

6
.gitignore vendored Normal file
View File

@@ -0,0 +1,6 @@
outputs
.cache/
.config/
.local/
*-bak
*.lck

104238
fp-info-cache Normal file

File diff suppressed because it is too large Load Diff

4
fp-lib-table Normal file
View File

@@ -0,0 +1,4 @@
(fp_lib_table
(version 7)
(lib (name "projlib")(type "KiCad")(uri "${KIPRJMOD}/projlib.pretty")(options "")(descr ""))
)

1001
gnss-da.kibot.yaml Normal file

File diff suppressed because it is too large Load Diff

24646
gnss-da.kicad_pcb Normal file

File diff suppressed because it is too large Load Diff

137
gnss-da.kicad_prl Normal file
View File

@@ -0,0 +1,137 @@
{
"board": {
"active_layer": 0,
"active_layer_preset": "",
"auto_track_width": true,
"hidden_netclasses": [],
"hidden_nets": [],
"high_contrast_mode": 0,
"net_color_mode": 1,
"opacity": {
"images": 0.6,
"pads": 1.0,
"shapes": 1.0,
"tracks": 1.0,
"vias": 1.0,
"zones": 0.6
},
"selection_filter": {
"dimensions": true,
"footprints": true,
"graphics": true,
"keepouts": true,
"lockedItems": false,
"otherItems": true,
"pads": true,
"text": true,
"tracks": true,
"vias": true,
"zones": true
},
"visible_items": [
"vias",
"footprint_text",
"footprint_anchors",
"ratsnest",
"grid",
"footprints_front",
"footprints_back",
"footprint_values",
"footprint_references",
"tracks",
"drc_errors",
"drawing_sheet",
"bitmaps",
"pads",
"zones",
"drc_warnings",
"drc_exclusions",
"locked_item_shadows",
"conflict_shadows",
"shapes"
],
"visible_layers": "ffffffff_ffffffff_fffffff7_ffffffff",
"zone_display_mode": 0
},
"git": {
"repo_type": "",
"repo_username": "",
"ssh_key": ""
},
"meta": {
"filename": "gnss-da.kicad_prl",
"version": 5
},
"net_inspector_panel": {
"col_hidden": [
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false,
false
],
"col_order": [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11
],
"col_widths": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"custom_group_rules": [],
"expanded_rows": [],
"filter_by_net_name": true,
"filter_by_netclass": true,
"filter_text": "",
"group_by_constraint": false,
"group_by_netclass": false,
"show_unconnected_nets": false,
"show_zero_pad_nets": false,
"sort_ascending": true,
"sorting_column": 0
},
"open_jobsets": [],
"project": {
"files": []
},
"schematic": {
"selection_filter": {
"graphics": true,
"images": true,
"labels": true,
"lockedItems": false,
"otherItems": true,
"pins": true,
"symbols": true,
"text": true,
"wires": true
}
}
}

634
gnss-da.kicad_pro Normal file
View File

@@ -0,0 +1,634 @@
{
"board": {
"3dviewports": [],
"design_settings": {
"defaults": {
"apply_defaults_to_fp_fields": false,
"apply_defaults_to_fp_shapes": false,
"apply_defaults_to_fp_text": false,
"board_outline_line_width": 0.05,
"copper_line_width": 0.2,
"copper_text_italic": false,
"copper_text_size_h": 1.5,
"copper_text_size_v": 1.5,
"copper_text_thickness": 0.3,
"copper_text_upright": false,
"courtyard_line_width": 0.05,
"dimension_precision": 4,
"dimension_units": 3,
"dimensions": {
"arrow_length": 1270000,
"extension_offset": 500000,
"keep_text_aligned": true,
"suppress_zeroes": true,
"text_position": 0,
"units_format": 0
},
"fab_line_width": 0.1,
"fab_text_italic": false,
"fab_text_size_h": 1.0,
"fab_text_size_v": 1.0,
"fab_text_thickness": 0.15,
"fab_text_upright": false,
"other_line_width": 0.1,
"other_text_italic": false,
"other_text_size_h": 1.0,
"other_text_size_v": 1.0,
"other_text_thickness": 0.15,
"other_text_upright": false,
"pads": {
"drill": 3.2,
"height": 3.6,
"width": 3.6
},
"silk_line_width": 0.1,
"silk_text_italic": false,
"silk_text_size_h": 1.0,
"silk_text_size_v": 1.0,
"silk_text_thickness": 0.1,
"silk_text_upright": false,
"zones": {
"min_clearance": 0.5
}
},
"diff_pair_dimensions": [
{
"gap": 0.0,
"via_gap": 0.0,
"width": 0.0
}
],
"drc_exclusions": [],
"meta": {
"version": 2
},
"rule_severities": {
"annular_width": "error",
"clearance": "error",
"connection_width": "warning",
"copper_edge_clearance": "error",
"copper_sliver": "warning",
"courtyards_overlap": "error",
"creepage": "error",
"diff_pair_gap_out_of_range": "error",
"diff_pair_uncoupled_length_too_long": "error",
"drill_out_of_range": "error",
"duplicate_footprints": "warning",
"extra_footprint": "warning",
"footprint": "error",
"footprint_filters_mismatch": "ignore",
"footprint_symbol_mismatch": "warning",
"footprint_type_mismatch": "ignore",
"hole_clearance": "error",
"hole_to_hole": "warning",
"holes_co_located": "warning",
"invalid_outline": "error",
"isolated_copper": "warning",
"item_on_disabled_layer": "error",
"items_not_allowed": "error",
"length_out_of_range": "error",
"lib_footprint_issues": "warning",
"lib_footprint_mismatch": "warning",
"malformed_courtyard": "error",
"microvia_drill_out_of_range": "error",
"mirrored_text_on_front_layer": "warning",
"missing_courtyard": "ignore",
"missing_footprint": "warning",
"net_conflict": "warning",
"nonmirrored_text_on_back_layer": "warning",
"npth_inside_courtyard": "ignore",
"padstack": "warning",
"pth_inside_courtyard": "ignore",
"shorting_items": "error",
"silk_edge_clearance": "warning",
"silk_over_copper": "warning",
"silk_overlap": "warning",
"skew_out_of_range": "error",
"solder_mask_bridge": "error",
"starved_thermal": "error",
"text_height": "warning",
"text_on_edge_cuts": "error",
"text_thickness": "warning",
"through_hole_pad_without_hole": "error",
"too_many_vias": "error",
"track_angle": "error",
"track_dangling": "warning",
"track_segment_length": "error",
"track_width": "error",
"tracks_crossing": "error",
"unconnected_items": "error",
"unresolved_variable": "error",
"via_dangling": "warning",
"zones_intersect": "error"
},
"rules": {
"max_error": 0.005,
"min_clearance": 0.09,
"min_connection": 0.0,
"min_copper_edge_clearance": 0.0,
"min_groove_width": 0.0,
"min_hole_clearance": 0.2,
"min_hole_to_hole": 0.2,
"min_microvia_diameter": 0.2,
"min_microvia_drill": 0.1,
"min_resolved_spokes": 2,
"min_silk_clearance": 0.0,
"min_text_height": 0.8,
"min_text_thickness": 0.08,
"min_through_hole_diameter": 0.15,
"min_track_width": 0.09,
"min_via_annular_width": 0.15,
"min_via_diameter": 0.25,
"solder_mask_to_copper_clearance": 0.0,
"use_height_for_length_calcs": true
},
"teardrop_options": [
{
"td_onpthpad": true,
"td_onroundshapesonly": false,
"td_onsmdpad": true,
"td_ontrackend": false,
"td_onvia": true
}
],
"teardrop_parameters": [
{
"td_allow_use_two_tracks": true,
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_on_pad_in_zone": false,
"td_target_name": "td_round_shape",
"td_width_to_size_filter_ratio": 0.9
},
{
"td_allow_use_two_tracks": true,
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_on_pad_in_zone": false,
"td_target_name": "td_rect_shape",
"td_width_to_size_filter_ratio": 0.9
},
{
"td_allow_use_two_tracks": true,
"td_curve_segcount": 0,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 1.0,
"td_on_pad_in_zone": false,
"td_target_name": "td_track_end",
"td_width_to_size_filter_ratio": 0.9
}
],
"track_widths": [
0.0,
0.3421,
1.0
],
"tuning_pattern_settings": {
"diff_pair_defaults": {
"corner_radius_percentage": 80,
"corner_style": 1,
"max_amplitude": 1.0,
"min_amplitude": 0.2,
"single_sided": false,
"spacing": 1.0
},
"diff_pair_skew_defaults": {
"corner_radius_percentage": 80,
"corner_style": 1,
"max_amplitude": 1.0,
"min_amplitude": 0.2,
"single_sided": false,
"spacing": 0.6
},
"single_track_defaults": {
"corner_radius_percentage": 80,
"corner_style": 1,
"max_amplitude": 1.0,
"min_amplitude": 0.2,
"single_sided": false,
"spacing": 0.6
}
},
"via_dimensions": [
{
"diameter": 0.0,
"drill": 0.0
}
],
"zones_allow_external_fillets": false
},
"ipc2581": {
"dist": "",
"distpn": "",
"internal_id": "",
"mfg": "",
"mpn": ""
},
"layer_pairs": [],
"layer_presets": [],
"viewports": []
},
"boards": [],
"cvpcb": {
"equivalence_files": []
},
"erc": {
"erc_exclusions": [],
"meta": {
"version": 0
},
"pin_map": [
[
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
2,
0,
1,
0,
0,
1,
0,
2,
2,
2,
2
],
[
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
1,
2
],
[
0,
1,
0,
0,
0,
0,
1,
1,
2,
1,
1,
2
],
[
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2
],
[
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
2
],
[
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
2,
1,
2,
0,
0,
1,
0,
2,
2,
2,
2
],
[
0,
2,
0,
1,
0,
0,
1,
0,
2,
0,
0,
2
],
[
0,
2,
1,
1,
0,
0,
1,
0,
2,
0,
0,
2
],
[
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2
]
],
"rule_severities": {
"bus_definition_conflict": "error",
"bus_entry_needed": "error",
"bus_to_bus_conflict": "error",
"bus_to_net_conflict": "error",
"different_unit_footprint": "error",
"different_unit_net": "error",
"duplicate_reference": "error",
"duplicate_sheet_names": "error",
"endpoint_off_grid": "warning",
"extra_units": "error",
"footprint_filter": "ignore",
"footprint_link_issues": "warning",
"four_way_junction": "ignore",
"global_label_dangling": "warning",
"hier_label_mismatch": "error",
"label_dangling": "error",
"label_multiple_wires": "warning",
"lib_symbol_issues": "warning",
"lib_symbol_mismatch": "warning",
"missing_bidi_pin": "warning",
"missing_input_pin": "warning",
"missing_power_pin": "error",
"missing_unit": "warning",
"multiple_net_names": "warning",
"net_not_bus_member": "warning",
"no_connect_connected": "warning",
"no_connect_dangling": "warning",
"pin_not_connected": "error",
"pin_not_driven": "error",
"pin_to_pin": "warning",
"power_pin_not_driven": "error",
"same_local_global_label": "warning",
"similar_label_and_power": "warning",
"similar_labels": "warning",
"similar_power": "warning",
"simulation_model_issue": "ignore",
"single_global_label": "ignore",
"unannotated": "error",
"unconnected_wire_endpoint": "warning",
"undefined_netclass": "error",
"unit_value_mismatch": "error",
"unresolved_variable": "error",
"wire_dangling": "error"
}
},
"libraries": {
"pinned_footprint_libs": [],
"pinned_symbol_libs": []
},
"meta": {
"filename": "gnss-da.kicad_pro",
"version": 3
},
"net_settings": {
"classes": [
{
"bus_width": 12,
"clearance": 0.2,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "Default",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"priority": 2147483647,
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.2,
"via_diameter": 0.6,
"via_drill": 0.3,
"wire_width": 6
}
],
"meta": {
"version": 4
},
"net_colors": null,
"netclass_assignments": null,
"netclass_patterns": []
},
"pcbnew": {
"last_paths": {
"gencad": "",
"idf": "",
"netlist": "",
"plot": "",
"pos_files": "",
"specctra_dsn": "",
"step": "",
"svg": "",
"vrml": ""
},
"page_layout_descr_file": ""
},
"schematic": {
"annotate_start_num": 0,
"bom_export_filename": "${PROJECTNAME}.csv",
"bom_fmt_presets": [],
"bom_fmt_settings": {
"field_delimiter": ",",
"keep_line_breaks": false,
"keep_tabs": false,
"name": "CSV",
"ref_delimiter": ",",
"ref_range_delimiter": "",
"string_delimiter": "\""
},
"bom_presets": [],
"bom_settings": {
"exclude_dnp": false,
"fields_ordered": [
{
"group_by": false,
"label": "Reference",
"name": "Reference",
"show": true
},
{
"group_by": false,
"label": "Qty",
"name": "${QUANTITY}",
"show": true
},
{
"group_by": true,
"label": "Value",
"name": "Value",
"show": true
},
{
"group_by": true,
"label": "DNP",
"name": "${DNP}",
"show": true
},
{
"group_by": true,
"label": "Exclude from BOM",
"name": "${EXCLUDE_FROM_BOM}",
"show": true
},
{
"group_by": true,
"label": "Exclude from Board",
"name": "${EXCLUDE_FROM_BOARD}",
"show": true
},
{
"group_by": true,
"label": "Footprint",
"name": "Footprint",
"show": true
},
{
"group_by": false,
"label": "Datasheet",
"name": "Datasheet",
"show": true
}
],
"filter_string": "",
"group_symbols": true,
"include_excluded_from_bom": true,
"name": "Default Editing",
"sort_asc": true,
"sort_field": "Reference"
},
"connection_grid_size": 50.0,
"drawing": {
"dashed_lines_dash_length_ratio": 12.0,
"dashed_lines_gap_length_ratio": 3.0,
"default_line_thickness": 6.0,
"default_text_size": 50.0,
"field_names": [],
"intersheets_ref_own_page": false,
"intersheets_ref_prefix": "",
"intersheets_ref_short": false,
"intersheets_ref_show": false,
"intersheets_ref_suffix": "",
"junction_size_choice": 3,
"label_size_ratio": 0.375,
"operating_point_overlay_i_precision": 3,
"operating_point_overlay_i_range": "~A",
"operating_point_overlay_v_precision": 3,
"operating_point_overlay_v_range": "~V",
"overbar_offset_ratio": 1.23,
"pin_symbol_size": 25.0,
"text_offset_ratio": 0.15
},
"legacy_lib_dir": "",
"legacy_lib_list": [],
"meta": {
"version": 1
},
"net_format_name": "",
"page_layout_descr_file": "",
"plot_directory": "",
"space_save_all_events": true,
"spice_current_sheet_as_root": false,
"spice_external_command": "spice \"%I\"",
"spice_model_current_sheet_as_root": true,
"spice_save_all_currents": false,
"spice_save_all_dissipations": false,
"spice_save_all_voltages": false,
"subpart_first_id": 65,
"subpart_id_separator": 0
},
"sheets": [
[
"480e2a68-32b5-413a-966c-c317a33cc161",
"Root"
]
],
"text_variables": {}
}

8957
gnss-da.kicad_sch Normal file

File diff suppressed because it is too large Load Diff

15
kibot.sh Executable file
View File

@@ -0,0 +1,15 @@
#!/bin/sh
export USER_ID=$(id -u)
export GROUP_ID=$(id -g)
podman run --rm -it \
--user $USER_ID:$GROUP_ID \
--userns=keep-id \
--env NO_AT_BRIDGE=1 \
--env DISPLAY=$DISPLAY \
--workdir="/home/$USER" \
--volume=/tmp/.X11-unix:/tmp/.X11-unix \
--volume="/etc/group:/etc/group:ro" \
--volume="/etc/passwd:/etc/passwd:ro" \
--volume="/etc/shadow:/etc/shadow:ro" \
--volume="$PWD:/home/$USER:U" \
ghcr.io/inti-cmnb/kicad9_auto_full:latest kibot -d outputs

826
projlib.kicad_sym Normal file
View File

@@ -0,0 +1,826 @@
(kicad_symbol_lib
(version 20241209)
(generator "kicad_symbol_editor")
(generator_version "9.0")
(symbol "BGA524N6"
(exclude_from_sim no)
(in_bom yes)
(on_board yes)
(property "Reference" "U"
(at 1.524 -3.302 0)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Value" "BGA524N6"
(at 5.588 -5.08 0)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Footprint" ""
(at -2.54 -15.24 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Datasheet" "https://www.infineon.com/assets/row/public/documents/24/49/infineon-bga524n6-datasheet-en.pdf?fileId=db3a304344e406b50144e44dfad302b9"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Description" "GPS/GNSS Ultra-Low Current Low-Noise Amplifier, +19dB @ 1.57GHz, TSNP-6-2"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC" "C6752883"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "ki_keywords" "RF GAIN BLOCK"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "ki_fp_filters" "WLP*0.83x0.83mm*P0.4mm*"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(symbol "BGA524N6_0_1"
(polyline
(pts
(xy 0 2.54) (xy 2.54 5.08)
)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
(polyline
(pts
(xy 2.54 5.08) (xy 2.54 5.08)
)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
(polyline
(pts
(xy 5.08 0) (xy -5.08 5.08) (xy -5.08 -5.08) (xy 5.08 0)
)
(stroke
(width 0.254)
(type default)
)
(fill
(type background)
)
)
)
(symbol "BGA524N6_1_1"
(pin input line
(at -7.62 0 0)
(length 2.54)
(name "~"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "5"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin power_in line
(at -2.54 7.62 270)
(length 3.81)
(name "Vcc"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "2"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin power_in line
(at -2.54 -7.62 90)
(length 3.81)
(name "G"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "1"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin power_in line
(at -2.54 -7.62 90)
(length 2.54)
(hide yes)
(name "GND"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "4"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin input line
(at 5.08 5.08 180)
(length 2.54)
(name "PON"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "6"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin output line
(at 7.62 0 180)
(length 2.54)
(name "~"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "3"
(effects
(font
(size 1.27 1.27)
)
)
)
)
)
(embedded_fonts no)
)
(symbol "MPD1020W2"
(exclude_from_sim no)
(in_bom yes)
(on_board yes)
(property "Reference" "U"
(at -6.35 7.62 0)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Value" "MPD1020W2"
(at 6.35 7.62 0)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Footprint" "projlib:DFN-6-1EP_2x2mm_P0.65mm_EP0.6x1.37mm"
(at -3.81 -11.43 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Datasheet" "https://www.lcsc.com/datasheet/C42431993.pdf"
(at -1.27 -8.89 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Description" "Power splitter combiner, 1 to 2 GHz, 2 way, 50 ohm, 1W"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC" "C42431993"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "ki_keywords" "splitter combiner"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "ki_fp_filters" "Mini?Circuits*CD636*"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(symbol "MPD1020W2_0_1"
(rectangle
(start -6.35 6.35)
(end 6.35 -6.35)
(stroke
(width 0.254)
(type default)
)
(fill
(type background)
)
)
(polyline
(pts
(xy -5.08 0) (xy 0 0) (xy 5.08 5.08)
)
(stroke
(width 0.508)
(type default)
)
(fill
(type none)
)
)
(polyline
(pts
(xy 0 0) (xy 5.08 -5.08)
)
(stroke
(width 0.508)
(type default)
)
(fill
(type none)
)
)
)
(symbol "MPD1020W2_1_1"
(pin passive line
(at -10.16 0 0)
(length 5.08)
(name "SUM"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "2"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at -5.08 -10.16 90)
(length 3.81)
(name "GND"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "1"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at -5.08 -10.16 90)
(length 3.81)
(hide yes)
(name "GND"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "3"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at -5.08 -10.16 90)
(length 3.81)
(hide yes)
(name "GND"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "5"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at -5.08 -10.16 90)
(length 3.81)
(hide yes)
(name "GND"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "7"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at 10.16 5.08 180)
(length 5.08)
(name "PORT1"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "4"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at 10.16 -5.08 180)
(length 5.08)
(name "PORT2"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "6"
(effects
(font
(size 1.27 1.27)
)
)
)
)
)
(embedded_fonts no)
)
(symbol "TA2247A"
(pin_names
(offset 1.016)
)
(exclude_from_sim no)
(in_bom yes)
(on_board yes)
(property "Reference" "FL"
(at 2.54 -6.35 0)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Value" "TA2247A"
(at 0 6.35 0)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Footprint" ""
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Datasheet" "https://www.taisaw.com/assets/PDF/TA2247A%20_Rev.1.0_.pdf"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Description" "1565.5MHz 81MHz BW SMD 3.0 x 3.0mm SAW RF Filter"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "ki_keywords" "SAW filter"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "ki_fp_filters" "Filter*1411*1.4x1.1mm*"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(symbol "TA2247A_0_1"
(rectangle
(start -5.08 5.08)
(end 5.08 -5.08)
(stroke
(width 0.254)
(type default)
)
(fill
(type background)
)
)
(polyline
(pts
(xy -1.524 -0.762) (xy -1.27 -0.762)
)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
(polyline
(pts
(xy -1.524 -1.27) (xy -2.032 -1.27) (xy -2.032 0) (xy 2.286 0)
)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
(arc
(start 0 2.794)
(mid -0.1994 2.05)
(end -0.762 1.524)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
(arc
(start 0.762 1.524)
(mid 0.2071 2.0547)
(end 0 2.794)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
(polyline
(pts
(xy 1.524 -0.762) (xy -1.27 -0.762)
)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
(polyline
(pts
(xy 1.524 -0.762) (xy 2.032 -0.762) (xy 2.032 -2.032) (xy -2.286 -2.032)
)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
(polyline
(pts
(xy 1.524 -1.27) (xy -1.524 -1.27)
)
(stroke
(width 0)
(type default)
)
(fill
(type none)
)
)
)
(symbol "TA2247A_1_1"
(pin passive line
(at -7.62 2.54 0)
(length 2.54)
(name "~"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "2"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at -7.62 -2.54 0)
(length 2.54)
(name "~"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "1"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at -7.62 -2.54 0)
(length 2.54)
(hide yes)
(name "~"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "3"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at 7.62 2.54 180)
(length 2.54)
(name "~"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "5"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at 7.62 -2.54 180)
(length 2.54)
(name "~"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "4"
(effects
(font
(size 1.27 1.27)
)
)
)
)
(pin passive line
(at 7.62 -2.54 180)
(length 2.54)
(hide yes)
(name "~"
(effects
(font
(size 1.27 1.27)
)
)
)
(number "6"
(effects
(font
(size 1.27 1.27)
)
)
)
)
)
(embedded_fonts no)
)
(symbol "BGA824N6"
(extends "BGA524N6")
(property "Reference" "U"
(at 1.524 -3.302 0)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Value" "BGA824N6"
(at 5.588 -5.08 0)
(effects
(font
(size 1.27 1.27)
)
)
)
(property "Footprint" ""
(at -2.54 -15.24 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Datasheet" "https://www.infineon.com/assets/row/public/documents/24/49/infineon-bga824n6-datasheet-en.pdf"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "Description" "GPS/GNSS Ultra-Low Current Low-Noise Amplifier, +17dB @ 1.57GHz, TSNP-6-2"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "LCSC" "C3191827"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "ki_keywords" "RF GAIN BLOCK"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
(property "ki_fp_filters" "WLP*0.83x0.83mm*P0.4mm*"
(at 0 0 0)
(effects
(font
(size 1.27 1.27)
)
(hide yes)
)
)
)
)

View File

@@ -0,0 +1,339 @@
(footprint "DFN-6-1EP_2x2mm_P0.65mm_EP0.6x1.37mm"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(descr "DFN, 6 Pin (https://www.diodes.com/assets/Package-Files/U-DFN2020-6%20(Type%20C).pdf), generated with kicad-footprint-generator ipc_noLead_generator.py")
(tags "DFN NoLead")
(property "Reference" "REF**"
(at 0 -1.95 0)
(layer "F.SilkS")
(uuid "3a847146-07d3-4259-822b-8207b9e67c28")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Value" "DFN-6-1EP_2x2mm_P0.65mm_EP0.6x1.37mm"
(at 0 1.95 0)
(layer "F.Fab")
(uuid "e02f4068-2bba-485a-8d82-678c76ccc4e0")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "b87d72bd-cdce-410d-a793-0389cd80845f")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(property "Description" ""
(at 0 0 0)
(layer "F.Fab")
(hide yes)
(uuid "935aa1e5-90ec-4cc5-9229-9c95ec5988db")
(effects
(font
(size 1.27 1.27)
(thickness 0.15)
)
)
)
(attr smd)
(fp_line
(start -1.11 1.11)
(end -1.11 1.06)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "ed6b2b52-fff0-4aeb-b8ff-8706d83e58cc")
)
(fp_line
(start -0.925042 -1.11)
(end 1.11 -1.11)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "090cf12b-305a-458e-9bdc-7669f3b38df1")
)
(fp_line
(start 1.11 -1.11)
(end 1.11 -1.06)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "96a4a88c-83d5-4945-9817-618cc3412813")
)
(fp_line
(start 1.11 1.06)
(end 1.11 1.11)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "0f4c8d0f-a2e6-4411-b332-083fa82eba01")
)
(fp_line
(start 1.11 1.11)
(end -1.11 1.11)
(stroke
(width 0.12)
(type solid)
)
(layer "F.SilkS")
(uuid "990aaf40-42b8-488d-bcd6-bf65f25049a2")
)
(fp_poly
(pts
(xy -1.26 -1.06) (xy -1.4 -1.25) (xy -1.12 -1.25)
)
(stroke
(width 0.12)
(type solid)
)
(fill yes)
(layer "F.SilkS")
(uuid "329652a3-1689-43c3-9f9a-f16a08215e11")
)
(fp_line
(start -1.6 -1.05)
(end -1.25 -1.05)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "113f4b0d-25b3-4c9f-af49-031cf1cab92b")
)
(fp_line
(start -1.6 1.05)
(end -1.6 -1.05)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "3a9de090-d86a-41eb-b662-42f7b41e307e")
)
(fp_line
(start -1.25 -1.25)
(end 1.25 -1.25)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "994df4f5-48bc-4d14-a793-9c7c9994029c")
)
(fp_line
(start -1.25 -1.05)
(end -1.25 -1.25)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "d0141ed3-bb33-4d8d-923c-bc3bd7039ef5")
)
(fp_line
(start -1.25 1.05)
(end -1.6 1.05)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "2b28bb1a-a385-4906-8938-a20fe24e7fb6")
)
(fp_line
(start -1.25 1.25)
(end -1.25 1.05)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "59397485-6a61-408d-89aa-de9974e88f5f")
)
(fp_line
(start 1.25 -1.25)
(end 1.25 -1.05)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "7ad76c26-c525-41f3-9a0d-2065a6035201")
)
(fp_line
(start 1.25 -1.05)
(end 1.6 -1.05)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "ecd5e5b6-3252-4153-badd-f66dc9c99f15")
)
(fp_line
(start 1.25 1.05)
(end 1.25 1.25)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "876bd629-b0aa-49d5-b616-718eeda391ca")
)
(fp_line
(start 1.25 1.25)
(end -1.25 1.25)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "a93802d4-aff5-4f39-8ccd-5fdf4aebe25f")
)
(fp_line
(start 1.6 -1.05)
(end 1.6 1.05)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "12a03192-33f6-4380-a4d9-8c5ae38ab032")
)
(fp_line
(start 1.6 1.05)
(end 1.25 1.05)
(stroke
(width 0.05)
(type solid)
)
(layer "F.CrtYd")
(uuid "10a6e8c2-cc22-4aab-bdfb-85db98f912cc")
)
(fp_poly
(pts
(xy -1 -0.5) (xy -1 1) (xy 1 1) (xy 1 -1) (xy -0.5 -1)
)
(stroke
(width 0.1)
(type solid)
)
(fill no)
(layer "F.Fab")
(uuid "a2941dab-f816-4f41-89dd-b865eff7a883")
)
(fp_text user "${REFERENCE}"
(at 0 0 0)
(layer "F.Fab")
(uuid "aa18be2f-d0a1-44d1-8669-54274aa173c4")
(effects
(font
(size 0.5 0.5)
(thickness 0.08)
)
)
)
(pad "" smd roundrect
(at 0 -0.325)
(size 0.4 0.6)
(layers "F.Paste")
(roundrect_rratio 0.25)
(uuid "37e25d74-591e-49e9-924e-4519eaf540d4")
)
(pad "" smd roundrect
(at 0 0.325)
(size 0.4 0.6)
(layers "F.Paste")
(roundrect_rratio 0.25)
(uuid "7004156b-4647-4bef-924a-7ed6a81db882")
)
(pad "1" smd roundrect
(at -0.925 -0.65)
(size 0.7 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "bdde3a8d-8d33-4937-b0ad-0d50e86ccb8c")
)
(pad "2" smd roundrect
(at -0.925 0)
(size 0.7 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "dd9083dc-d20f-4a14-b0f9-0697aea1b0b7")
)
(pad "3" smd roundrect
(at -0.925 0.65)
(size 0.7 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "dbad49e6-e04c-4d00-8076-80f33204e2ae")
)
(pad "4" smd roundrect
(at 0.925 0.65)
(size 0.7 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "c641c7a6-bd7d-405a-9515-62ad178df088")
)
(pad "5" smd roundrect
(at 0.925 0)
(size 0.7 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "e27e4065-c41b-4607-a09b-467fab78503e")
)
(pad "6" smd roundrect
(at 0.925 -0.65)
(size 0.7 0.25)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.25)
(uuid "a4ef7aa4-d314-4065-83f7-4a5c6759b350")
)
(pad "7" smd roundrect
(at 0 0)
(size 0.6 1.37)
(property pad_prop_heatsink)
(layers "F.Cu" "F.Mask")
(roundrect_rratio 0.1666666667)
(chamfer_ratio 0.33)
(chamfer top_left)
(zone_connect 2)
(uuid "e517a4b1-f447-439a-8031-faec2a576488")
)
(embedded_fonts no)
(model "${KICAD9_3DMODEL_DIR}/Package_DFN_QFN.3dshapes/DFN-6-1EP_2x2mm_P0.65mm_EP1x1.6mm.step"
(offset
(xyz 0 0 0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz 0 0 0)
)
)
)

View File

@@ -0,0 +1,158 @@
(footprint "Filter_3030-6_3x3mm"
(version 20241229)
(generator "pcbnew")
(generator_version "9.0")
(layer "F.Cu")
(descr "3x3mm SAW Filter")
(property "Reference" "REF**"
(at 0.75 3 0)
(unlocked yes)
(layer "F.SilkS")
(uuid "213d894d-6ec2-4fab-97dd-736e6b6bb77f")
(effects
(font
(size 1 1)
(thickness 0.1)
)
)
)
(property "Value" "Untitled"
(at 0 1 0)
(unlocked yes)
(layer "F.Fab")
(uuid "7376e2db-fb7a-44c1-8a2d-a373d6cf2f7e")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Datasheet" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "32d85f8e-cc8e-4372-ac73-45070c8048cf")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(property "Description" ""
(at 0 0 0)
(unlocked yes)
(layer "F.Fab")
(hide yes)
(uuid "0130f194-5e66-4295-bc36-1da1720427fc")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(attr smd)
(fp_rect
(start -1.75 -1.75)
(end 1.75 1.75)
(stroke
(width 0.1)
(type default)
)
(fill no)
(layer "F.SilkS")
(uuid "be0a00ae-2de0-4b4a-bb28-5476d17cf852")
)
(fp_poly
(pts
(xy -1.9 1.925) (xy -1.9 2.205) (xy -2.18 1.925) (xy -1.9 1.925)
)
(stroke
(width 0.12)
(type solid)
)
(fill yes)
(layer "F.SilkS")
(uuid "e25390ab-15f0-4b7a-8398-1f2cbc79c8ce")
)
(fp_rect
(start -2 -2)
(end 2 2)
(stroke
(width 0.05)
(type default)
)
(fill no)
(layer "F.CrtYd")
(uuid "1b9282b5-6bf1-4cdd-8a69-cae292b76c49")
)
(fp_text user "${REFERENCE}"
(at 0 2.5 0)
(unlocked yes)
(layer "F.Fab")
(uuid "d3425d63-7a98-4398-876a-2f0467c12bf6")
(effects
(font
(size 1 1)
(thickness 0.15)
)
)
)
(pad "1" smd roundrect
(at -1.195 0.745)
(size 0.81 1.7)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.15)
(uuid "b12f8af5-6efb-483e-b775-ab69528471fb")
)
(pad "2" smd roundrect
(at 0 1.07)
(size 0.81 1.05)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.15)
(uuid "9ad8c276-4ac4-4f26-a30d-d3cd27d002ad")
)
(pad "3" smd roundrect
(at 1.195 1.07)
(size 0.81 1.05)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.15)
(uuid "e9e658b7-e92d-48ac-9e8a-4c4b1122253d")
)
(pad "4" smd roundrect
(at 1.195 -1.07)
(size 0.81 1.05)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.15)
(uuid "9d58f9fb-3d20-4d8c-b20d-a0dae3e99ebc")
)
(pad "5" smd roundrect
(at 0 -1.07)
(size 0.81 1.05)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.15)
(uuid "f2ffa158-ca34-4486-9f9c-2bfa47b1c1f1")
)
(pad "6" smd roundrect
(at -1.195 -1.07)
(size 0.81 1.05)
(layers "F.Cu" "F.Mask" "F.Paste")
(roundrect_rratio 0.15)
(uuid "3e3421ba-9e71-4915-8f09-411d4411067c")
)
(embedded_fonts no)
(model "${KIPRJMOD}/shapes3d/User Library-TA0676A SAW Filter 1592_5MHz SMD.step"
(offset
(xyz 0 0 0)
)
(scale
(xyz 1 1 1)
)
(rotate
(xyz -90 -0 90)
)
)
)

341
projurl.svg Normal file
View File

@@ -0,0 +1,341 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1000" height="1000" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000">
<g transform="translate(0,0) scale(1.0,1.0)">
<svg width="1000" height="1000" viewBox="0 0 740 740" enable-background="new 0 0 1000 1000">
<rect x="240" y="80" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="80" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="80" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="80" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="80" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="80" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="100" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="100" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="100" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="100" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="100" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="100" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="120" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="120" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="120" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="120" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="120" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="120" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="140" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="140" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="140" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="140" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="160" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="160" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="160" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="160" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="180" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="200" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="200" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="200" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="200" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="200" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="200" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="200" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="220" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="220" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="220" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="220" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="220" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="80" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="200" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="220" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="640" y="240" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="80" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="100" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="180" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="220" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="260" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="80" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="100" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="120" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="140" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="180" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="200" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="640" y="280" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="180" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="220" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="300" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="180" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="200" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="320" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="100" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="140" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="340" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="80" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="100" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="200" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="220" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="360" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="100" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="120" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="140" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="380" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="100" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="180" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="200" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="400" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="80" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="100" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="180" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="420" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="120" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="200" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="640" y="440" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="220" y="460" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="460" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="460" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="460" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="460" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="460" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="460" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="460" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="80" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="100" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="140" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="160" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="180" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="200" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="220" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="480" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="500" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="640" y="520" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="540" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="540" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="540" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="540" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="540" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="540" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="540" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="640" y="560" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="340" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="380" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="580" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="300" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="320" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="460" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="640" y="600" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="260" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="540" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="580" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="600" y="620" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="240" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="280" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="360" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="400" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="420" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="440" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="480" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="500" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="520" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="620" y="640" width="20" height="20" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<path d="M80,80 h140 v140 h-140 Z M100.0,100.0 h100.0 v100.0 h-100.0 Z" fill-rule="evenodd" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<path d="M520,80 h140 v140 h-140 Z M540.0,100.0 h100.0 v100.0 h-100.0 Z" fill-rule="evenodd" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="120" y="120" width="60" height="60" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="560" y="120" width="60" height="60" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<path d="M80,520 h140 v140 h-140 Z M100.0,540.0 h100.0 v100.0 h-100.0 Z" fill-rule="evenodd" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
<rect x="120" y="560" width="60" height="60" fill="rgb(0,0,0)" opacity="1.0" shape-rendering="crispEdges"/>
</svg>
</g>
</svg>

After

Width:  |  Height:  |  Size: 38 KiB

2505
shapes3d/0530470210.stp Normal file

File diff suppressed because it is too large Load Diff

234214
shapes3d/BWSMA-KWE-Z001.step Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

4
sym-lib-table Normal file
View File

@@ -0,0 +1,4 @@
(sym_lib_table
(version 7)
(lib (name "projlib")(type "KiCad")(uri "${KIPRJMOD}/projlib.kicad_sym")(options "")(descr ""))
)