From 48fe9a8b6972f2babf12a5ec7e77bccae9282205 Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 31 May 2024 11:45:55 -0500 Subject: [PATCH 1/2] Add Actions workflows --- .allspice/columns.json | 6 + .allspice/utils/generate_netlist.py | 104 ++++++++++++++++++ .allspice/utils/hello-world.py | 1 + .allspice/utils/py-allspice-BIST.py | 57 ++++++++++ .allspice/utils/requirements.txt | 2 + .../workflows/02-Running-common-Actions.yml | 47 ++++++++ .allspice/workflows/03-Python-py-allspice.yml | 54 +++++++++ 7 files changed, 271 insertions(+) create mode 100644 .allspice/columns.json create mode 100644 .allspice/utils/generate_netlist.py create mode 100644 .allspice/utils/hello-world.py create mode 100644 .allspice/utils/py-allspice-BIST.py create mode 100644 .allspice/utils/requirements.txt create mode 100644 .allspice/workflows/02-Running-common-Actions.yml create mode 100644 .allspice/workflows/03-Python-py-allspice.yml diff --git a/.allspice/columns.json b/.allspice/columns.json new file mode 100644 index 0000000..25761fe --- /dev/null +++ b/.allspice/columns.json @@ -0,0 +1,6 @@ +{ + "Part Number": ["PART", "MANUFACTURER #", "_part_id"], + "Manufacturer": ["Manufacturer", "MANUFACTURER"], + "Designator": ["Designator"], + "Description": ["PART DESCRIPTION"] +} \ No newline at end of file diff --git a/.allspice/utils/generate_netlist.py b/.allspice/utils/generate_netlist.py new file mode 100644 index 0000000..767e39c --- /dev/null +++ b/.allspice/utils/generate_netlist.py @@ -0,0 +1,104 @@ +#! /usr/bin/env python3 + +# Generate a Netlist from a PcbDoc file. +# For more information, read the README file in this directory. + +import argparse +import os +import sys +from contextlib import ExitStack + +from allspice import AllSpice +from allspice.utils.netlist_generation import generate_netlist + + +if __name__ == "__main__": + print("Hello World") + # Parse command line arguments. If you're writing a special purpose script, + # you can hardcode these values instead of using command line arguments. + parser = argparse.ArgumentParser( + prog="generate_pcb_netlist", description="Generate a netlist from a PCB file." + ) + parser.add_argument("repository", help="The repo containing the project") + parser.add_argument( + "pcb_file", + help="The path to the PCB file in the source repo.", + ) + parser.add_argument( + "--source_ref", + help="The git reference the netlist should be generated for (eg. branch name, tag name, commit SHA). Defaults to main.", + default="main", + ) + parser.add_argument( + "--allspice_hub_url", + help="The URL of your AllSpice Hub instance. Defaults to https://hub.allspice.io.", + ) + parser.add_argument( + "--output_file", + help="The path to the output file. If absent, the output will direct to the command line.", + ) + + args = parser.parse_args() + + # Use Environment Variables to store your auth token. This keeps your token + # secure when sharing code. + auth_token = os.environ.get("ALLSPICE_AUTH_TOKEN") + if auth_token is None: + print("Please set the environment variable ALLSPICE_AUTH_TOKEN") + exit(1) + + if args.allspice_hub_url is None: + allspice = AllSpice(token_text=auth_token) + else: + allspice = AllSpice( + token_text=auth_token, allspice_hub_url=args.allspice_hub_url + ) + + try: + # Test connection and key + print("AllSpice Version: " + allspice.get_version()) + + # Test private API call + print("API-Token belongs to user: " + allspice.get_user().username) + + except Exception as e: + print(f"Could not connect to AllSpice Hub: {e}") + exit(1) + + repo_owner, repo_name = args.repository.split("/") + try: + print(f"repo_owner={repo_owner}, repo_name={repo_name}") + repository = allspice.get_repository(repo_owner, repo_name) + except Exception as e: + print(f"Could not find repository {args.repository}: {e}") + exit(1) + pcb_file = args.pcb_file + + print("Generating PCB Netlist...🏃", file=sys.stderr) + + netlist_rows = generate_netlist( + allspice, + repository, + pcb_file, + args.source_ref, + ) + + with ExitStack() as stack: + if args.output_file is not None: + writer = stack.enter_context(open(args.output_file, "w")) + else: + writer = sys.stdout + + nets = list(netlist_rows.keys()) + + # It's helpful to sort here to generate repeatable netlist files + nets.sort() + + # You can change formatting here + for net in nets: + writer.write(net + "\n") + pins_on_net = netlist_rows[net] + pins_on_net.sort() + writer.write(" " + " ".join(pins_on_net) + "\n") + + print("Generated PCB netlist.", file=sys.stderr) diff --git a/.allspice/utils/hello-world.py b/.allspice/utils/hello-world.py new file mode 100644 index 0000000..1dc45ac --- /dev/null +++ b/.allspice/utils/hello-world.py @@ -0,0 +1 @@ +print("Hello World!") \ No newline at end of file diff --git a/.allspice/utils/py-allspice-BIST.py b/.allspice/utils/py-allspice-BIST.py new file mode 100644 index 0000000..b431803 --- /dev/null +++ b/.allspice/utils/py-allspice-BIST.py @@ -0,0 +1,57 @@ +# HelloWorld.py + +# If you're new to scripting, this is a great place to start. + +# Hello World starts you out easy with some simple server requests. +# This will help you troubleshoot your connection and show you the basics of making an api request +# +# For more information read our README.md +from allspice import AllSpice +import argparse, sys + + + + +print("Starting Test") + +parser = argparse.ArgumentParser( + prog="Allspice_API_BIST", description="Test connection and execution of API actions" + ) + +parser.add_argument( + "--allspice_hub_url", + help="The URL of your AllSpice Hub instance. Defaults to https://hub.allspice.io.", +) +parser.add_argument( + "--allspice_token", + help="Your AllSpice application token. Generate a token: https://hub.allspice.io/user/settings/applications", +) + +print("Parsing args") +args = parser.parse_args() + +auth_token = args.allspice_token +if auth_token is None: + print("Please supply a token with --allspice_token Generate a token: https://hub.allspice.io/user/settings/applications") + sys.exit(1) +print(f"Auth token {auth_token}") + +if args.allspice_hub_url is None: + allspice = AllSpice(token_text="https://hub.allspice.io") +else: + try: + allspice = AllSpice( + token_text=auth_token, allspice_hub_url=args.allspice_hub_url + ) + except Exception as e: + print("Error") + sys.exit(1) + +print("Finish making connection") +# Test connection and key +print("AllSpice Version: " + allspice.get_version()) + +# Test private API call +print("API-Token belongs to user: " + allspice.get_user().username) + +print("End test") \ No newline at end of file diff --git a/.allspice/utils/requirements.txt b/.allspice/utils/requirements.txt new file mode 100644 index 0000000..c7124bd --- /dev/null +++ b/.allspice/utils/requirements.txt @@ -0,0 +1,2 @@ +py-allspice~=3.0 +rich~=13.0 diff --git a/.allspice/workflows/02-Running-common-Actions.yml b/.allspice/workflows/02-Running-common-Actions.yml new file mode 100644 index 0000000..cd0efc6 --- /dev/null +++ b/.allspice/workflows/02-Running-common-Actions.yml @@ -0,0 +1,47 @@ +# AllSpice Running common Actions workflow +# Action triggers on push and issues +# Action runs "generate-bom-altium" action +# .allspice/workflows/generate_bom.yml +name: Generate BOM +on: + push: + issues: + types: [opened, closed, reopened] + +jobs: + Generate_BOM: + runs-on: ubuntu-latest + steps: + # Checkout is only needed if columns.json is committed in your Altium project repo. + - name: Checkout + uses: actions/checkout@v3 + + - name: Generate BOM + uses: https://hub.allspice.io/Actions/generate-bom@v0.3 + with: + # The path to the project file in your repo (.PrjPcb for Altium, .DSN for OrCad). + source_path: Archimajor.PrjPcb + # [optional] A path to a JSON file mapping columns to the component attributes + # they are from. This file must be provided. + # Default: 'columns.json' + columns: .allspice/columns.json + # [optional] The path to the output file that will be generated. + # Default: 'bom.csv' + output_file_name: bom.csv + # [optional] A comma-separated list of columns to group the BOM by. If empty + # or not present, the BOM will be flat. + # Default: '' + group_by: 'Part Number' + # [optional] The variant of the project to generate the BOM for. If empty + # or not present, the BOM will be generated for the default variant. + # Default: '' + variant: '' + # Print bom.csv to terminal + - name: Show BOM + run: cat bom.csv + + - name: Upload file as artifact + uses: actions/upload-artifact@v3 + with: + name: BOM.csv + path: bom.csv \ No newline at end of file diff --git a/.allspice/workflows/03-Python-py-allspice.yml b/.allspice/workflows/03-Python-py-allspice.yml new file mode 100644 index 0000000..a6626d8 --- /dev/null +++ b/.allspice/workflows/03-Python-py-allspice.yml @@ -0,0 +1,54 @@ + +# Python-py-allspice demo repository +# This workflow demonstrates how to use Python and py-allspice to interact with the AllSpice API +# AllSpice Actions documentation: https://learn.allspice.io/docs/actions-cicd +name: Python-py-allspice +on: + push: + issues: + types: [opened, closed, reopened] + +jobs: + py-allspice test: + runs-on: ubuntu-latest + steps: + # Check out repository code + - name: "[📚->🖥️] Check out repository code" + uses: actions/checkout@v3 + + - name: "[🔎->📂] List files in repo 🔎" + run: | + ls -la ${{ github.workspace }} + + # Installs python requirements from the requirements.txt file + - name: "[🤼->🖥️] Install python requirements" + run: pip install -r .allspice/utils/requirements.txt + + # Call a python script from the .allspice/utils directory + - name: "[🏃->🐍] Run .allspice/utils/hello-world.py 🔎" + run: python .allspice/utils/hello-world.py + + # Run the py-allspice self-test script, this will ping the server and verify the API is working + # Parameters: ${github.server_url} and ${github.token} are automatic Workflow variables and are used to authenticate the AllSpice API + - name: "[🔑->🕸️] Test AllSpice API with py-allspice 🔎" + run: python .allspice/utils/py-allspice-BIST.py --allspice_hub_url ${{ github.server_url }} --allspice_token ${{ github.token }} + + # Generate a netlist from Altium .PcbDoc file + # Run the generate_netlist.py script from the .allspice/utils directory + - name: Generate Netlist + run: | + echo -e "repo ${{ github.repository }}" + ALLSPICE_AUTH_TOKEN=${{ github.token }} python .allspice/utils/generate_netlist.py "${{ github.repository }}" "Archimajor.PcbDoc" --allspice_hub_url "${{ github.server_url }}" --output_file Archimajor.pcbdoc.netlist.txt + + + # Print the netlist file to the terminal + - name: Show Netlist 🔎 + run: cat Archimajor.pcbdoc.netlist.txt + + # Archive the netlist file as an artifact file + - name: Archive code coverage results + uses: actions/upload-artifact@v3 + with: + name: Archimajor.PcbDoc.netlist.txt + path: Archimajor.pcbdoc.netlist.txt + -- 2.45.2 From 18cd157c139b3ca8a792bd1a4d6282d82191652c Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 31 May 2024 12:01:23 -0500 Subject: [PATCH 2/2] Add golden DRC rule file --- Archimajor.RUL | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 Archimajor.RUL diff --git a/Archimajor.RUL b/Archimajor.RUL new file mode 100644 index 0000000..252ffc8 --- /dev/null +++ b/Archimajor.RUL @@ -0,0 +1,67 @@ +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=Clearance|NETSCOPE=DifferentNets|LAYERKIND=SameLayer|SCOPE1EXPRESSION=OnLayer('Mid1')|SCOPE2EXPRESSION=All|NAME=Internal Positive Layer|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=IRRHXPIM|DEFINEDBYLOGICALDOCUMENT=FALSE|GAP=10mil|GENERICCLEARANCE=10mil|IGNOREPADTOPADCLEARANCEINFOOTPRINT=FALSE|OBJECTCLEARANCES=ClearanceObj_Arc-ClearanceObj_Arc:70000;ClearanceObj_Arc-ClearanceObj_Track:70000;ClearanceObj_Arc-ClearanceObj_SMDPad:70000;ClearanceObj_Arc-ClearanceObj_THPad:70000;ClearanceObj_Arc-ClearanceObj_Via:70000;ClearanceObj_Track-ClearanceObj_Track:70000;ClearanceObj_Track-ClearanceObj_SMDPad:70000;ClearanceObj_Track-ClearanceObj_THPad:70000;ClearanceObj_Track-ClearanceObj_Via:70000;ClearanceObj_SMDPad-ClearanceObj_SMDPad:70000;ClearanceObj_SMDPad-ClearanceObj_THPad:70000;ClearanceObj_SMDPad-ClearanceObj_Via:70000;ClearanceObj_THPad-ClearanceObj_THPad:70000;ClearanceObj_THPad-ClearanceObj_Via:70000;ClearanceObj_Via-ClearanceObj_Via:70000 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=Clearance|NETSCOPE=DifferentNets|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InPolygon|SCOPE2EXPRESSION=All|NAME=Polygon|ENABLED=TRUE|PRIORITY=2|COMMENT= |UNIQUEID=UUTBXGTA|DEFINEDBYLOGICALDOCUMENT=FALSE|GAP=8mil|GENERICCLEARANCE=8mil|IGNOREPADTOPADCLEARANCEINFOOTPRINT=FALSE|OBJECTCLEARANCES=ClearanceObj_Fill-ClearanceObj_Fill:100000;ClearanceObj_Fill-ClearanceObj_Poly:100000;ClearanceObj_Fill-ClearanceObj_Region:100000;ClearanceObj_Poly-ClearanceObj_Poly:100000;ClearanceObj_Poly-ClearanceObj_Region:100000;ClearanceObj_Region-ClearanceObj_Region:100000 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=Clearance|NETSCOPE=DifferentNets|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InPolygon and InNetClass('PWR_INPUT')|SCOPE2EXPRESSION=All|NAME=Clearance_PWR_INPUT_POLYGONS|ENABLED=FALSE|PRIORITY=3|COMMENT= |UNIQUEID=BWXFTLNA|DEFINEDBYLOGICALDOCUMENT=FALSE|GAP=10mil|GENERICCLEARANCE=10mil|IGNOREPADTOPADCLEARANCEINFOOTPRINT=FALSE|OBJECTCLEARANCES=ClearanceObj_Arc-ClearanceObj_Hole:0;ClearanceObj_Track-ClearanceObj_Hole:0;ClearanceObj_SMDPad-ClearanceObj_Hole:0;ClearanceObj_THPad-ClearanceObj_Hole:0;ClearanceObj_Via-ClearanceObj_Hole:0;ClearanceObj_Fill-ClearanceObj_Hole:0;ClearanceObj_Poly-ClearanceObj_Hole:0;ClearanceObj_Region-ClearanceObj_Hole:0;ClearanceObj_Text-ClearanceObj_Hole:0 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=Clearance|NETSCOPE=DifferentNets|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=Clearance|ENABLED=TRUE|PRIORITY=4|COMMENT= |UNIQUEID=MQBIHWCT|DEFINEDBYLOGICALDOCUMENT=FALSE|GAP=8mil|GENERICCLEARANCE=8mil|IGNOREPADTOPADCLEARANCEINFOOTPRINT=FALSE|OBJECTCLEARANCES= +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=Width|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InNet(UMCU_N) Or InNet(UMCU_P) Or InNet('NetD27_1') Or InNet('NetD27_3') Or InNet('NetD27_4') Or InNet('NetD27_6') Or InNet('NetL5_4') Or InNet('NetL5_1') Or InNet('UD_P') Or InNet('UD_N') Or InNet('NetR42_1') Or InNet('UMCU_N') OR InNet('UMCU_P') Or InNet('NetR48_1')|SCOPE2EXPRESSION=All|NAME=Width_USB|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=UXSBYLPY|DEFINEDBYLOGICALDOCUMENT=FALSE|MAXLIMIT=8mil|MINLIMIT=6mil|PREFEREDWIDTH=8mil|TOPLAYER_MAXWIDTH=6mil|TOPLAYER_PREFWIDTH=6mil|MIDLAYER1_MINWIDTH=8mil|MIDLAYER2_MINWIDTH=8mil|MIDLAYER3_MINWIDTH=8mil|MIDLAYER4_MINWIDTH=8mil|MIDLAYER5_MINWIDTH=8mil|MIDLAYER6_MINWIDTH=8mil|MIDLAYER7_MINWIDTH=8mil|MIDLAYER8_MINWIDTH=8mil|MIDLAYER9_MINWIDTH=8mil|MIDLAYER10_MINWIDTH=8mil|MIDLAYER11_MINWIDTH=8mil|MIDLAYER12_MINWIDTH=8mil|MIDLAYER13_MINWIDTH=8mil|MIDLAYER14_MINWIDTH=8mil|MIDLAYER15_MINWIDTH=8mil|MIDLAYER16_MINWIDTH=8mil|MIDLAYER17_MINWIDTH=8mil|MIDLAYER18_MINWIDTH=8mil|MIDLAYER19_MINWIDTH=8mil|MIDLAYER20_MINWIDTH=8mil|MIDLAYER21_MINWIDTH=8mil|MIDLAYER22_MINWIDTH=8mil|MIDLAYER23_MINWIDTH=8mil|MIDLAYER24_MINWIDTH=8mil|MIDLAYER25_MINWIDTH=8mil|MIDLAYER26_MINWIDTH=8mil|MIDLAYER27_MINWIDTH=8mil|MIDLAYER28_MINWIDTH=8mil|MIDLAYER29_MINWIDTH=8mil|MIDLAYER30_MINWIDTH=8mil|BOTTOMLAYER_MAXWIDTH=6mil|BOTTOMLAYER_PREFWIDTH=6mil|MINIMP=50.000000|MAXIMP=50.000000|FAVIMP=50.000000 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=Width|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=Width|ENABLED=TRUE|PRIORITY=2|COMMENT= |UNIQUEID=FRUTRIRB|DEFINEDBYLOGICALDOCUMENT=FALSE|MAXLIMIT=380mil|MINLIMIT=6mil|PREFEREDWIDTH=8mil|TOPLAYER_MAXWIDTH=200mil|MIDLAYER1_MAXWIDTH=200mil|MIDLAYER2_MAXWIDTH=200mil|MIDLAYER3_MAXWIDTH=50mil|MIDLAYER4_MAXWIDTH=50mil|MIDLAYER5_MAXWIDTH=50mil|MIDLAYER6_MAXWIDTH=50mil|MIDLAYER7_MAXWIDTH=50mil|MIDLAYER8_MAXWIDTH=50mil|MIDLAYER9_MAXWIDTH=50mil|MIDLAYER10_MAXWIDTH=50mil|MIDLAYER11_MAXWIDTH=50mil|MIDLAYER12_MAXWIDTH=50mil|MIDLAYER13_MAXWIDTH=50mil|MIDLAYER14_MAXWIDTH=50mil|MIDLAYER15_MAXWIDTH=50mil|MIDLAYER16_MAXWIDTH=50mil|MIDLAYER17_MAXWIDTH=50mil|MIDLAYER18_MAXWIDTH=50mil|MIDLAYER19_MAXWIDTH=50mil|MIDLAYER20_MAXWIDTH=50mil|MIDLAYER21_MAXWIDTH=50mil|MIDLAYER22_MAXWIDTH=50mil|MIDLAYER23_MAXWIDTH=50mil|MIDLAYER24_MAXWIDTH=50mil|MIDLAYER25_MAXWIDTH=50mil|MIDLAYER26_MAXWIDTH=50mil|MIDLAYER27_MAXWIDTH=50mil|MIDLAYER28_MAXWIDTH=50mil|MIDLAYER29_MAXWIDTH=50mil|MIDLAYER30_MAXWIDTH=50mil|MINIMP=50.000000|MAXIMP=50.000000|FAVIMP=50.000000 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PlaneConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponent('J3')|SCOPE2EXPRESSION=All|NAME=Do Not Connect|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=QMVODAUD|DEFINEDBYLOGICALDOCUMENT=FALSE|PLANECONNECTSTYLE=NoConnect|RELIEFEXPANSION=20mil|RELIEFENTRIES=4|RELIEFCONDUCTORWIDTH=10mil|RELIEFAIRGAP=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PlaneConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsVia|SCOPE2EXPRESSION=All|NAME=PlaneConnect_Via|ENABLED=TRUE|PRIORITY=2|COMMENT= |UNIQUEID=YNGNVDLB|DEFINEDBYLOGICALDOCUMENT=FALSE|PLANECONNECTSTYLE=Direct|RELIEFEXPANSION=35mil|RELIEFENTRIES=4|RELIEFCONDUCTORWIDTH=50mil|RELIEFAIRGAP=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PlaneConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=PlaneConnect|ENABLED=TRUE|PRIORITY=3|COMMENT= |UNIQUEID=AVBFEXGG|DEFINEDBYLOGICALDOCUMENT=FALSE|PLANECONNECTSTYLE=Relief|RELIEFEXPANSION=12mil|RELIEFENTRIES=4|RELIEFCONDUCTORWIDTH=14mil|RELIEFAIRGAP=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoutingTopology|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=RoutingTopology|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=HHJGCLJI|DEFINEDBYLOGICALDOCUMENT=FALSE|TOPOLOGY=Shortest +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoutingPriority|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=RoutingPriority|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=CKCJHDKN|DEFINEDBYLOGICALDOCUMENT=FALSE|ROUTINGPRIORITY=0 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoutingLayers|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=RoutingLayers|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=OWGQVBJE|DEFINEDBYLOGICALDOCUMENT=FALSE|TOP LAYER_V5=TRUE|MID LAYER 1_V5=TRUE|MID LAYER 2_V5=TRUE|MID LAYER 3_V5=TRUE|MID LAYER 4_V5=TRUE|MID LAYER 5_V5=TRUE|MID LAYER 6_V5=TRUE|MID LAYER 7_V5=TRUE|MID LAYER 8_V5=TRUE|MID LAYER 9_V5=TRUE|MID LAYER 10_V5=TRUE|MID LAYER 11_V5=TRUE|MID LAYER 12_V5=TRUE|MID LAYER 13_V5=TRUE|MID LAYER 14_V5=TRUE|MID LAYER 15_V5=TRUE|MID LAYER 16_V5=TRUE|MID LAYER 17_V5=TRUE|MID LAYER 18_V5=TRUE|MID LAYER 19_V5=TRUE|MID LAYER 20_V5=TRUE|MID LAYER 21_V5=TRUE|MID LAYER 22_V5=TRUE|MID LAYER 23_V5=TRUE|MID LAYER 24_V5=TRUE|MID LAYER 25_V5=TRUE|MID LAYER 26_V5=TRUE|MID LAYER 27_V5=TRUE|MID LAYER 28_V5=TRUE|MID LAYER 29_V5=TRUE|MID LAYER 30_V5=TRUE|BOTTOM LAYER_V5=TRUE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoutingCorners|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=RoutingCorners|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=XGRUNROO|DEFINEDBYLOGICALDOCUMENT=FALSE|CORNERSTYLE=45-Degree|MINSETBACK=100mil|MAXSETBACK=100mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoutingVias|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=HoleSize < '15'|SCOPE2EXPRESSION=All|NAME=RoutingVias_<15mil|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=IXPAORBA|DEFINEDBYLOGICALDOCUMENT=FALSE|HOLEWIDTH=15mil|WIDTH=30mil|VIASTYLE=Through Hole|MINHOLEWIDTH=10mil|MINWIDTH=22mil|MAXHOLEWIDTH=15mil|MAXWIDTH=30mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoutingVias|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=RoutingVias|ENABLED=TRUE|PRIORITY=2|COMMENT= |UNIQUEID=HFQDTFAH|DEFINEDBYLOGICALDOCUMENT=FALSE|HOLEWIDTH=15mil|WIDTH=28mil|VIASTYLE=Through Hole|MINHOLEWIDTH=10mil|MINWIDTH=28mil|MAXHOLEWIDTH=50mil|MAXWIDTH=70mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PlaneClearance|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=PlaneClearance|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=CKQOKLCO|DEFINEDBYLOGICALDOCUMENT=FALSE|CLEARANCE=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=SolderMaskExpansion|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsVia|SCOPE2EXPRESSION=All|NAME=Via SolderMask|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=FBKQRWWL|DEFINEDBYLOGICALDOCUMENT=FALSE|EXPANSION=-15mil|ISTENTINGTOP=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=SolderMaskExpansion|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=Global SolderMaskExpansion|ENABLED=TRUE|PRIORITY=2|COMMENT= |UNIQUEID=SJDEOFNJ|DEFINEDBYLOGICALDOCUMENT=FALSE|EXPANSION=2mil|ISTENTINGTOP=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PasteMaskExpansion|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=PasteMaskExpansion|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=YNEIKKER|DEFINEDBYLOGICALDOCUMENT=FALSE|EXPANSION=-1mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=ShortCircuit|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=ShortCircuit|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=CDXDWPFB|DEFINEDBYLOGICALDOCUMENT=FALSE|ALLOWED=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=UnRoutedNet|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=UnRoutedNet|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=LCRMXNQO|DEFINEDBYLOGICALDOCUMENT=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=MinimumAnnularRing|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=MinimumAnnularRing|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=QKOGCNCD|DEFINEDBYLOGICALDOCUMENT=FALSE|MINIMUMRING=6mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsVia|SCOPE2EXPRESSION=All|NAME=Vias|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=QWTOLSWJ|DEFINEDBYLOGICALDOCUMENT=FALSE|CONNECTSTYLE=Direct|RELIEFCONDUCTORWIDTH=10mil|RELIEFENTRIES=4|POLYGONRELIEFANGLE=90 Angle|AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponent('F1') or InComponent('F2') or InComponent('F3') or InComponent('J3')|SCOPE2EXPRESSION=OnLayer('Mid1')|NAME=Internal No Connect|ENABLED=TRUE|PRIORITY=2|COMMENT= |UNIQUEID=JUFUMKAH|DEFINEDBYLOGICALDOCUMENT=FALSE|CONNECTSTYLE=NoConnect|RELIEFCONDUCTORWIDTH=10mil|RELIEFENTRIES=4|POLYGONRELIEFANGLE=90 Angle|AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsNamedPolygon('24milConnect')|SCOPE2EXPRESSION=All|NAME=24mil Connect|ENABLED=TRUE|PRIORITY=3|COMMENT= |UNIQUEID=RQXWPWAK|DEFINEDBYLOGICALDOCUMENT=FALSE|THPAD.CONNECTSTYLE=Relief|THPAD.RELIEFCONDUCTORWIDTH=24mil|THPAD.RELIEFENTRIES=4|THPAD.POLYGONRELIEFANGLE=90 Angle|THPAD.AIRGAPWIDTH=10mil|SMDPAD.CONNECTSTYLE=Relief|SMDPAD.RELIEFCONDUCTORWIDTH=12mil|SMDPAD.RELIEFENTRIES=4|SMDPAD.POLYGONRELIEFANGLE=90 Angle|SMDPAD.AIRGAPWIDTH=10mil|VIA.CONNECTSTYLE=Relief|VIA.RELIEFCONDUCTORWIDTH=12mil|VIA.RELIEFENTRIES=4|VIA.POLYGONRELIEFANGLE=90 Angle|VIA.AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsNamedPolygon('Connect')|SCOPE2EXPRESSION=All|NAME=12mil Connect|ENABLED=TRUE|PRIORITY=4|COMMENT= |UNIQUEID=URROECRP|DEFINEDBYLOGICALDOCUMENT=FALSE|THPAD.CONNECTSTYLE=Relief|THPAD.RELIEFCONDUCTORWIDTH=24mil|THPAD.RELIEFENTRIES=4|THPAD.POLYGONRELIEFANGLE=90 Angle|THPAD.AIRGAPWIDTH=10mil|SMDPAD.CONNECTSTYLE=Relief|SMDPAD.RELIEFCONDUCTORWIDTH=12mil|SMDPAD.RELIEFENTRIES=4|SMDPAD.POLYGONRELIEFANGLE=90 Angle|SMDPAD.AIRGAPWIDTH=10mil|VIA.CONNECTSTYLE=Relief|VIA.RELIEFCONDUCTORWIDTH=12mil|VIA.RELIEFENTRIES=4|VIA.POLYGONRELIEFANGLE=90 Angle|VIA.AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponent('F1') or InComponent('F2') or InComponent('F3') or InComponent('J3')|SCOPE2EXPRESSION=OnLayer('Top Layer')|NAME=Top 12mil|ENABLED=TRUE|PRIORITY=5|COMMENT= |UNIQUEID=XFQLHFJB|DEFINEDBYLOGICALDOCUMENT=FALSE|CONNECTSTYLE=Relief|RELIEFCONDUCTORWIDTH=12mil|RELIEFENTRIES=4|POLYGONRELIEFANGLE=90 Angle|AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponent('J3')|SCOPE2EXPRESSION=OnLayer('Bottom Layer')|NAME=Bottom 50mil|ENABLED=TRUE|PRIORITY=6|COMMENT= |UNIQUEID=VDUQSGWW|DEFINEDBYLOGICALDOCUMENT=FALSE|CONNECTSTYLE=Relief|RELIEFCONDUCTORWIDTH=50mil|RELIEFENTRIES=4|POLYGONRELIEFANGLE=90 Angle|AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponent('F3') or InComponent('F2') or InComponent('F3')|SCOPE2EXPRESSION=OnLayer('Bottom Layer')|NAME=Bottom Fuses|ENABLED=TRUE|PRIORITY=7|COMMENT= |UNIQUEID=WGQUEIYY|DEFINEDBYLOGICALDOCUMENT=FALSE|CONNECTSTYLE=Direct|RELIEFCONDUCTORWIDTH=50mil|RELIEFENTRIES=4|POLYGONRELIEFANGLE=90 Angle|AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsNamedPolygon('Solid') Or IsNamedPolygon('Direct Connect') Or IsNamedPolygon('DirectConnect')|SCOPE2EXPRESSION=All|NAME=Direct Connect|ENABLED=TRUE|PRIORITY=8|COMMENT= |UNIQUEID=IPEWWHDV|DEFINEDBYLOGICALDOCUMENT=FALSE|CONNECTSTYLE=Direct|RELIEFCONDUCTORWIDTH=10mil|RELIEFENTRIES=4|POLYGONRELIEFANGLE=90 Angle|AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=PolygonConnect|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=PolygonConnect|ENABLED=TRUE|PRIORITY=9|COMMENT= |UNIQUEID=VMGKTRNK|DEFINEDBYLOGICALDOCUMENT=FALSE|CONNECTSTYLE=Relief|RELIEFCONDUCTORWIDTH=10mil|RELIEFENTRIES=4|POLYGONRELIEFANGLE=90 Angle|AIRGAPWIDTH=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=AcuteAngle|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=AcuteAngle|ENABLED=FALSE|PRIORITY=1|COMMENT= |UNIQUEID=LVPJLIIS|DEFINEDBYLOGICALDOCUMENT=FALSE|MINIMUM=6.00000000000000E+0001|CHECKTRACKSONLY=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('TA')|SCOPE2EXPRESSION=All|NAME=TA|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=EQWVHCMX|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=3905mil|VY0=4916.4409mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=4281.9981mil|VY1=4916.4409mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=4281.9981mil|VY2=5833.4409mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=3905mil|VY3=5833.4409mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=3905mil|VY4=4916.4409mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=FALSE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('MD')|SCOPE2EXPRESSION=All|NAME=MD|ENABLED=TRUE|PRIORITY=2|COMMENT= |UNIQUEID=MIRSXFDV|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=4029.2323mil|VY0=3375.9783mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=4029.2323mil|VY1=3187.3791mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=4018.7323mil|VY2=3187.3791mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=4018.7323mil|VY3=3186.1693mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=3939.2323mil|VY4=3186.1693mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|KIND5=0|VX5=3939.2323mil|VY5=3012.6193mil|CX5=0mil|CY5=0mil|SA5=0.00000000000000E+0000|EA5=0.00000000000000E+0000|R5=0mil|KIND6=0|VX6=4051.4811mil|VY6=2876.8148mil|CX6=0mil|CY6=0mil|SA6=0.00000000000000E+0000|EA6=0.00000000000000E+0000|R6=0mil|KIND7=0|VX7=4051.4811mil|VY7=2871.3063mil|CX7=0mil|CY7=0mil|SA7=0.00000000000000E+0000|EA7=0.00000000000000E+0000|R7=0mil|KIND8=0|VX8=4051.481mil|VY8=499.9999mil|CX8=0mil|CY8=0mil|SA8=0.00000000000000E+0000|EA8=0.00000000000000E+0000|R8=0mil|KIND9=0|VX9=4869.3308mil|VY9=500.4233mil|CX9=0mil|CY9=0mil|SA9=0.00000000000000E+0000|EA9=0.00000000000000E+0000|R9=0mil|KIND10=0|VX10=4869.3308mil|VY10=2864.229mil|CX10=0mil|CY10=0mil|SA10=0.00000000000000E+0000|EA10=0.00000000000000E+0000|R10=0mil|KIND11=0|VX11=4759.2323mil|VY11=2997.4321mil|CX11=0mil|CY11=0mil|SA11=0.00000000000000E+0000|EA11=0.00000000000000E+0000|R11=0mil|KIND12=0|VX12=4759.2323mil|VY12=3194.0333mil|CX12=0mil|CY12=0mil|SA12=0.00000000000000E+0000|EA12=0.00000000000000E+0000|R12=0mil|KIND13=0|VX13=4847.2323mil|VY13=3194.0333mil|CX13=0mil|CY13=0mil|SA13=0.00000000000000E+0000|EA13=0.00000000000000E+0000|R13=0mil|KIND14=0|VX14=4847.2323mil|VY14=3428.1496mil|CX14=0mil|CY14=0mil|SA14=0.00000000000000E+0000|EA14=0.00000000000000E+0000|R14=0mil|KIND15=0|VX15=4064.289mil|VY15=3428.1492mil|CX15=0mil|CY15=0mil|SA15=0.00000000000000E+0000|EA15=0.00000000000000E+0000|R15=0mil|KIND16=0|VX16=4029.2323mil|VY16=3375.9783mil|CX16=0mil|CY16=0mil|SA16=0.00000000000000E+0000|EA16=0.00000000000000E+0000|R16=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('TE')|SCOPE2EXPRESSION=All|NAME=TE|ENABLED=TRUE|PRIORITY=3|COMMENT= |UNIQUEID=UBFEKWKO|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=5412.9924mil|VY0=4916.4409mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=5789.9905mil|VY1=4916.4409mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=5789.9905mil|VY2=5833.4409mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=5412.9924mil|VY3=5833.4409mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=5412.9924mil|VY4=4916.4409mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('TD')|SCOPE2EXPRESSION=All|NAME=TD|ENABLED=TRUE|PRIORITY=4|COMMENT= |UNIQUEID=CUMHHUSV|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=5035.9943mil|VY0=4916.4409mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=5412.9924mil|VY1=4916.4409mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=5412.9924mil|VY2=5833.4409mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=5035.9943mil|VY3=5833.4409mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=5035.9943mil|VY4=4916.4409mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('TC')|SCOPE2EXPRESSION=All|NAME=TC|ENABLED=TRUE|PRIORITY=5|COMMENT= |UNIQUEID=RVJYSKCK|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=4658.9962mil|VY0=4916.4409mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=5035.9943mil|VY1=4916.4409mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=5035.9943mil|VY2=5833.4409mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=4658.9962mil|VY3=5833.4409mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=4658.9962mil|VY4=4916.4409mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('TB')|SCOPE2EXPRESSION=All|NAME=TB|ENABLED=TRUE|PRIORITY=6|COMMENT= |UNIQUEID=TQEHAABN|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=4281.9981mil|VY0=4916.4409mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=4658.9962mil|VY1=4916.4409mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=4658.9962mil|VY2=5833.4409mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=4281.9981mil|VY3=5833.4409mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=4281.9981mil|VY4=4916.4409mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('MA')|SCOPE2EXPRESSION=All|NAME=MA|ENABLED=TRUE|PRIORITY=7|COMMENT= |UNIQUEID=NYENIBON|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=1683.1909mil|VY0=499.9999mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=2352.2098mil|VY1=499.9999mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=2415.5906mil|VY2=579.3819mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=2415.5906mil|VY3=3428.1496mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=1683.1909mil|VY4=3428.1496mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|KIND5=0|VX5=1597.6772mil|VY5=3300.8387mil|CX5=0mil|CY5=0mil|SA5=0.00000000000000E+0000|EA5=0.00000000000000E+0000|R5=0mil|KIND6=0|VX6=1597.6772mil|VY6=643.7862mil|CX6=0mil|CY6=0mil|SA6=0.00000000000000E+0000|EA6=0.00000000000000E+0000|R6=0mil|KIND7=0|VX7=1683.1909mil|VY7=499.9999mil|CX7=0mil|CY7=0mil|SA7=0.00000000000000E+0000|EA7=0.00000000000000E+0000|R7=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=FALSE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('MH')|SCOPE2EXPRESSION=All|NAME=MH|ENABLED=TRUE|PRIORITY=8|COMMENT= |UNIQUEID=FPPJWTNO|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=7398.7579mil|VY0=499.9999mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=8067.7768mil|VY1=499.9999mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=8131.1576mil|VY2=579.3819mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=8131.1576mil|VY3=3428.1496mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=7398.7579mil|VY4=3428.1496mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|KIND5=0|VX5=7313.2442mil|VY5=3300.8387mil|CX5=0mil|CY5=0mil|SA5=0.00000000000000E+0000|EA5=0.00000000000000E+0000|R5=0mil|KIND6=0|VX6=7313.2442mil|VY6=643.7862mil|CX6=0mil|CY6=0mil|SA6=0.00000000000000E+0000|EA6=0.00000000000000E+0000|R6=0mil|KIND7=0|VX7=7398.7579mil|VY7=499.9999mil|CX7=0mil|CY7=0mil|SA7=0.00000000000000E+0000|EA7=0.00000000000000E+0000|R7=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('MG')|SCOPE2EXPRESSION=All|NAME=MG|ENABLED=TRUE|PRIORITY=9|COMMENT= |UNIQUEID=QJMANENN|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=6585.7579mil|VY0=499.9999mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=7254.7768mil|VY1=499.9999mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=7318.1576mil|VY2=579.3819mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=7318.1576mil|VY3=3428.1496mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=6585.7579mil|VY4=3428.1496mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|KIND5=0|VX5=6500.2442mil|VY5=3300.8387mil|CX5=0mil|CY5=0mil|SA5=0.00000000000000E+0000|EA5=0.00000000000000E+0000|R5=0mil|KIND6=0|VX6=6500.2442mil|VY6=643.7862mil|CX6=0mil|CY6=0mil|SA6=0.00000000000000E+0000|EA6=0.00000000000000E+0000|R6=0mil|KIND7=0|VX7=6585.7579mil|VY7=499.9999mil|CX7=0mil|CY7=0mil|SA7=0.00000000000000E+0000|EA7=0.00000000000000E+0000|R7=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('MF')|SCOPE2EXPRESSION=All|NAME=MF|ENABLED=TRUE|PRIORITY=10|COMMENT= |UNIQUEID=YDVTUKSO|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=5772.7579mil|VY0=499.9999mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=6441.7768mil|VY1=499.9999mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=6505.1576mil|VY2=579.3819mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=6505.1576mil|VY3=3428.1496mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=5772.7579mil|VY4=3428.1496mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|KIND5=0|VX5=5687.2442mil|VY5=3300.8387mil|CX5=0mil|CY5=0mil|SA5=0.00000000000000E+0000|EA5=0.00000000000000E+0000|R5=0mil|KIND6=0|VX6=5687.2442mil|VY6=643.7862mil|CX6=0mil|CY6=0mil|SA6=0.00000000000000E+0000|EA6=0.00000000000000E+0000|R6=0mil|KIND7=0|VX7=5772.7579mil|VY7=499.9999mil|CX7=0mil|CY7=0mil|SA7=0.00000000000000E+0000|EA7=0.00000000000000E+0000|R7=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('ME')|SCOPE2EXPRESSION=All|NAME=ME|ENABLED=TRUE|PRIORITY=11|COMMENT= |UNIQUEID=WXOTCYUY|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=4834.0033mil|VY0=3183.4383mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=4761.13mil|VY1=3183.4383mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=4761.13mil|VY2=3002.0555mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=4866.7521mil|VY3=2874.3983mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=4866.7521mil|VY4=2868.8954mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|KIND5=0|VX5=4866.752mil|VY5=499.9999mil|CX5=0mil|CY5=0mil|SA5=0.00000000000000E+0000|EA5=0.00000000000000E+0000|R5=0mil|KIND6=0|VX6=5684.6018mil|VY6=500.4229mil|CX6=0mil|CY6=0mil|SA6=0.00000000000000E+0000|EA6=0.00000000000000E+0000|R6=0mil|KIND7=0|VX7=5684.6018mil|VY7=2861.8253mil|CX7=0mil|CY7=0mil|SA7=0.00000000000000E+0000|EA7=0.00000000000000E+0000|R7=0mil|KIND8=0|VX8=5574.5033mil|VY8=2994.893mil|CX8=0mil|CY8=0mil|SA8=0.00000000000000E+0000|EA8=0.00000000000000E+0000|R8=0mil|KIND9=0|VX9=5574.5033mil|VY9=3191.2944mil|CX9=0mil|CY9=0mil|SA9=0.00000000000000E+0000|EA9=0.00000000000000E+0000|R9=0mil|KIND10=0|VX10=5662.5033mil|VY10=3191.2944mil|CX10=0mil|CY10=0mil|SA10=0.00000000000000E+0000|EA10=0.00000000000000E+0000|R10=0mil|KIND11=0|VX11=5662.5033mil|VY11=3425.1726mil|CX11=0mil|CY11=0mil|SA11=0.00000000000000E+0000|EA11=0.00000000000000E+0000|R11=0mil|KIND12=0|VX12=4879.56mil|VY12=3425.1722mil|CX12=0mil|CY12=0mil|SA12=0.00000000000000E+0000|EA12=0.00000000000000E+0000|R12=0mil|KIND13=0|VX13=4844.5033mil|VY13=3373.0543mil|CX13=0mil|CY13=0mil|SA13=0.00000000000000E+0000|EA13=0.00000000000000E+0000|R13=0mil|KIND14=0|VX14=4844.5033mil|VY14=3184.6469mil|CX14=0mil|CY14=0mil|SA14=0.00000000000000E+0000|EA14=0.00000000000000E+0000|R14=0mil|KIND15=0|VX15=4834.0033mil|VY15=3184.6469mil|CX15=0mil|CY15=0mil|SA15=0.00000000000000E+0000|EA15=0.00000000000000E+0000|R15=0mil|KIND16=0|VX16=4834.0033mil|VY16=3183.4383mil|CX16=0mil|CY16=0mil|SA16=0.00000000000000E+0000|EA16=0.00000000000000E+0000|R16=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('MC')|SCOPE2EXPRESSION=All|NAME=MC|ENABLED=TRUE|PRIORITY=12|COMMENT= |UNIQUEID=DDHQYURJ|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=3208.677mil|VY0=3376.9204mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=3208.677mil|VY1=3188.2595mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=3198.177mil|VY2=3188.2595mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=3198.177mil|VY3=3187.0492mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=3118.677mil|VY4=3187.0492mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|KIND5=0|VX5=3118.677mil|VY5=3013.4424mil|CX5=0mil|CY5=0mil|SA5=0.00000000000000E+0000|EA5=0.00000000000000E+0000|R5=0mil|KIND6=0|VX6=3230.9258mil|VY6=2877.5934mil|CX6=0mil|CY6=0mil|SA6=0.00000000000000E+0000|EA6=0.00000000000000E+0000|R6=0mil|KIND7=0|VX7=3230.9258mil|VY7=2872.0831mil|CX7=0mil|CY7=0mil|SA7=0.00000000000000E+0000|EA7=0.00000000000000E+0000|R7=0mil|KIND8=0|VX8=3230.9257mil|VY8=499.9999mil|CX8=0mil|CY8=0mil|SA8=0.00000000000000E+0000|EA8=0.00000000000000E+0000|R8=0mil|KIND9=0|VX9=4048.7755mil|VY9=500.4235mil|CX9=0mil|CY9=0mil|SA9=0.00000000000000E+0000|EA9=0.00000000000000E+0000|R9=0mil|KIND10=0|VX10=4048.7755mil|VY10=2865.0035mil|CX10=0mil|CY10=0mil|SA10=0.00000000000000E+0000|EA10=0.00000000000000E+0000|R10=0mil|KIND11=0|VX11=3938.677mil|VY11=2998.2502mil|CX11=0mil|CY11=0mil|SA11=0.00000000000000E+0000|EA11=0.00000000000000E+0000|R11=0mil|KIND12=0|VX12=3938.677mil|VY12=3194.9158mil|CX12=0mil|CY12=0mil|SA12=0.00000000000000E+0000|EA12=0.00000000000000E+0000|R12=0mil|KIND13=0|VX13=4026.677mil|VY13=3194.9158mil|CX13=0mil|CY13=0mil|SA13=0.00000000000000E+0000|EA13=0.00000000000000E+0000|R13=0mil|KIND14=0|VX14=4026.677mil|VY14=3429.1088mil|CX14=0mil|CY14=0mil|SA14=0.00000000000000E+0000|EA14=0.00000000000000E+0000|R14=0mil|KIND15=0|VX15=3243.7337mil|VY15=3429.1084mil|CX15=0mil|CY15=0mil|SA15=0.00000000000000E+0000|EA15=0.00000000000000E+0000|R15=0mil|KIND16=0|VX16=3208.677mil|VY16=3376.9204mil|CX16=0mil|CY16=0mil|SA16=0.00000000000000E+0000|EA16=0.00000000000000E+0000|R16=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=TRUE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=TRUE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=RoomDefinition|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=InComponentClass('MB')|SCOPE2EXPRESSION=All|NAME=MB|ENABLED=TRUE|PRIORITY=13|COMMENT= |UNIQUEID=BVNVOUVH|DEFINEDBYLOGICALDOCUMENT=FALSE|KIND0=0|VX0=2501.1043mil|VY0=499.9999mil|CX0=0mil|CY0=0mil|SA0=0.00000000000000E+0000|EA0=0.00000000000000E+0000|R0=0mil|KIND1=0|VX1=3170.1232mil|VY1=499.9999mil|CX1=0mil|CY1=0mil|SA1=0.00000000000000E+0000|EA1=0.00000000000000E+0000|R1=0mil|KIND2=0|VX2=3233.504mil|VY2=579.3819mil|CX2=0mil|CY2=0mil|SA2=0.00000000000000E+0000|EA2=0.00000000000000E+0000|R2=0mil|KIND3=0|VX3=3233.504mil|VY3=3428.1496mil|CX3=0mil|CY3=0mil|SA3=0.00000000000000E+0000|EA3=0.00000000000000E+0000|R3=0mil|KIND4=0|VX4=2501.1043mil|VY4=3428.1496mil|CX4=0mil|CY4=0mil|SA4=0.00000000000000E+0000|EA4=0.00000000000000E+0000|R4=0mil|KIND5=0|VX5=2415.5906mil|VY5=3300.8387mil|CX5=0mil|CY5=0mil|SA5=0.00000000000000E+0000|EA5=0.00000000000000E+0000|R5=0mil|KIND6=0|VX6=2415.5906mil|VY6=643.7862mil|CX6=0mil|CY6=0mil|SA6=0.00000000000000E+0000|EA6=0.00000000000000E+0000|R6=0mil|KIND7=0|VX7=2501.1043mil|VY7=499.9999mil|CX7=0mil|CY7=0mil|SA7=0.00000000000000E+0000|EA7=0.00000000000000E+0000|R7=0mil|CONFINEMENTSTYLE=ConfineIn|FORMATCOPY=FALSE|LOCKCOMPONENTS=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=SMDToCorner|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=SMDToCorner|ENABLED=FALSE|PRIORITY=1|COMMENT= |UNIQUEID=EAFMKMHC|DEFINEDBYLOGICALDOCUMENT=FALSE|DISTANCE=30000 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=ComponentClearance|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=GlobalComponentClearance|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=ONLXCLIN|DEFINEDBYLOGICALDOCUMENT=FALSE|GAP=10mil|COLLISIONCHECKMODE=3|VERTICALGAP=10mil|SHOWDISTANCES=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=HoleSize|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=HoleSize|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=IJOQWIES|DEFINEDBYLOGICALDOCUMENT=FALSE|ABSOLUTEVALUES=TRUE|MAXLIMIT=200mil|MINLIMIT=10mil|MAXPERCENT=80.000|MINPERCENT=20.000 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=FabricationTestpoint|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=FabricationTestpoint|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=HJINGVPJ|DEFINEDBYLOGICALDOCUMENT=FALSE|SIDE=3|TESTPOINTUNDERCOMPONENT=TRUE|MINSIZE=40mil|MAXSIZE=100mil|PREFEREDSIZE=60mil|MINHOLESIZE=0mil|MAXHOLESIZE=40mil|PREFEREDHOLESIZE=32mil|TESTPOINTGRID=1mil|ALLOWSIDETOP=TRUE|ALLOWSIDEBOTTOM=TRUE|USEGRID=FALSE|GRIDTOLERANCE=0.01mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=FabricationTestPointUsage|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=FabricationTestPointUsage|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=OGSILXEH|DEFINEDBYLOGICALDOCUMENT=FALSE|VALID=2|ALLOWMULTIPLE=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=LayerPairs|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=LayerPairs|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=QUYEENCK|DEFINEDBYLOGICALDOCUMENT=FALSE|ENFORCE=TRUE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=FanoutControl|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsBGA|SCOPE2EXPRESSION=All|NAME=Fanout_BGA|ENABLED=TRUE|PRIORITY=1|COMMENT=Fanout_BGA (Default Rule)|UNIQUEID=CGUNPMJH|DEFINEDBYLOGICALDOCUMENT=FALSE|BGADIR=Out|BGAVIAMODE=Centered|FANOUTSTYLE=Auto|FANOUTDIRECTION=Alternating|VIAGRID=1mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=FanoutControl|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsLCC|SCOPE2EXPRESSION=All|NAME=Fanout_LCC|ENABLED=TRUE|PRIORITY=2|COMMENT=Fanout_LCC (Default Rule)|UNIQUEID=MMAXQQYB|DEFINEDBYLOGICALDOCUMENT=FALSE|BGADIR=Out|BGAVIAMODE=Centered|FANOUTSTYLE=Auto|FANOUTDIRECTION=Alternating|VIAGRID=1mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=FanoutControl|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=(InComponent('U8') AND InComponent('U7'))|SCOPE2EXPRESSION=All|NAME=Fanout_SOIC|ENABLED=TRUE|PRIORITY=3|COMMENT=Fanout_SOIC (Default Rule)|UNIQUEID=PLJUIFYL|DEFINEDBYLOGICALDOCUMENT=FALSE|BGADIR=Out|BGAVIAMODE=Centered|FANOUTSTYLE=Staggered|FANOUTDIRECTION=Alternating|VIAGRID=1mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=FanoutControl|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=Fanout_Small|ENABLED=TRUE|PRIORITY=4|COMMENT=Fanout_Small (Default Rule)|UNIQUEID=HDYUDFWB|DEFINEDBYLOGICALDOCUMENT=FALSE|BGADIR=Out|BGAVIAMODE=Centered|FANOUTSTYLE=Auto|FANOUTDIRECTION=Alternating|VIAGRID=1mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=FanoutControl|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=Fanout_Default|ENABLED=TRUE|PRIORITY=5|COMMENT=Fanout_Default (Default Rule)|UNIQUEID=SSGIRGKT|DEFINEDBYLOGICALDOCUMENT=FALSE|BGADIR=Out|BGAVIAMODE=Centered|FANOUTSTYLE=Auto|FANOUTDIRECTION=Alternating|VIAGRID=1mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=Height|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=Height|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=FUSFIQLH|DEFINEDBYLOGICALDOCUMENT=FALSE|MINHEIGHT=0mil|MAXHEIGHT=1000mil|PREFHEIGHT=500mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=DiffPairsRouting|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=DiffPairsRouting|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=FXMWEALF|DEFINEDBYLOGICALDOCUMENT=FALSE|MAXLIMIT=10mil|MINLIMIT=7mil|MOSTFREQGAP=10mil|TOPLAYER_PREFGAP=8mil|TOPLAYER_MINWIDTH=7mil|TOPLAYER_MAXWIDTH=15mil|TOPLAYER_PREFWIDTH=8mil|MIDLAYER1_MINGAP=10mil|MIDLAYER1_MINWIDTH=15mil|MIDLAYER1_MAXWIDTH=15mil|MIDLAYER1_PREFWIDTH=15mil|MIDLAYER2_MINGAP=10mil|MIDLAYER2_MINWIDTH=15mil|MIDLAYER2_MAXWIDTH=15mil|MIDLAYER2_PREFWIDTH=15mil|MIDLAYER3_MINGAP=10mil|MIDLAYER3_MINWIDTH=15mil|MIDLAYER3_MAXWIDTH=15mil|MIDLAYER3_PREFWIDTH=15mil|MIDLAYER4_MINGAP=10mil|MIDLAYER4_MINWIDTH=15mil|MIDLAYER4_MAXWIDTH=15mil|MIDLAYER4_PREFWIDTH=15mil|MIDLAYER5_MINGAP=10mil|MIDLAYER5_MINWIDTH=15mil|MIDLAYER5_MAXWIDTH=15mil|MIDLAYER5_PREFWIDTH=15mil|MIDLAYER6_MINGAP=10mil|MIDLAYER6_MINWIDTH=15mil|MIDLAYER6_MAXWIDTH=15mil|MIDLAYER6_PREFWIDTH=15mil|MIDLAYER7_MINGAP=10mil|MIDLAYER7_MINWIDTH=15mil|MIDLAYER7_MAXWIDTH=15mil|MIDLAYER7_PREFWIDTH=15mil|MIDLAYER8_MINGAP=10mil|MIDLAYER8_MINWIDTH=15mil|MIDLAYER8_MAXWIDTH=15mil|MIDLAYER8_PREFWIDTH=15mil|MIDLAYER9_MINGAP=10mil|MIDLAYER9_MINWIDTH=15mil|MIDLAYER9_MAXWIDTH=15mil|MIDLAYER9_PREFWIDTH=15mil|MIDLAYER10_MINGAP=10mil|MIDLAYER10_MINWIDTH=15mil|MIDLAYER10_MAXWIDTH=15mil|MIDLAYER10_PREFWIDTH=15mil|MIDLAYER11_MINGAP=10mil|MIDLAYER11_MINWIDTH=15mil|MIDLAYER11_MAXWIDTH=15mil|MIDLAYER11_PREFWIDTH=15mil|MIDLAYER12_MINGAP=10mil|MIDLAYER12_MINWIDTH=15mil|MIDLAYER12_MAXWIDTH=15mil|MIDLAYER12_PREFWIDTH=15mil|MIDLAYER13_MINGAP=10mil|MIDLAYER13_MINWIDTH=15mil|MIDLAYER13_MAXWIDTH=15mil|MIDLAYER13_PREFWIDTH=15mil|MIDLAYER14_MINGAP=10mil|MIDLAYER14_MINWIDTH=15mil|MIDLAYER14_MAXWIDTH=15mil|MIDLAYER14_PREFWIDTH=15mil|MIDLAYER15_MINGAP=10mil|MIDLAYER15_MINWIDTH=15mil|MIDLAYER15_MAXWIDTH=15mil|MIDLAYER15_PREFWIDTH=15mil|MIDLAYER16_MINGAP=10mil|MIDLAYER16_MINWIDTH=15mil|MIDLAYER16_MAXWIDTH=15mil|MIDLAYER16_PREFWIDTH=15mil|MIDLAYER17_MINGAP=10mil|MIDLAYER17_MINWIDTH=15mil|MIDLAYER17_MAXWIDTH=15mil|MIDLAYER17_PREFWIDTH=15mil|MIDLAYER18_MINGAP=10mil|MIDLAYER18_MINWIDTH=15mil|MIDLAYER18_MAXWIDTH=15mil|MIDLAYER18_PREFWIDTH=15mil|MIDLAYER19_MINGAP=10mil|MIDLAYER19_MINWIDTH=15mil|MIDLAYER19_MAXWIDTH=15mil|MIDLAYER19_PREFWIDTH=15mil|MIDLAYER20_MINGAP=10mil|MIDLAYER20_MINWIDTH=15mil|MIDLAYER20_MAXWIDTH=15mil|MIDLAYER20_PREFWIDTH=15mil|MIDLAYER21_MINGAP=10mil|MIDLAYER21_MINWIDTH=15mil|MIDLAYER21_MAXWIDTH=15mil|MIDLAYER21_PREFWIDTH=15mil|MIDLAYER22_MINGAP=10mil|MIDLAYER22_MINWIDTH=15mil|MIDLAYER22_MAXWIDTH=15mil|MIDLAYER22_PREFWIDTH=15mil|MIDLAYER23_MINGAP=10mil|MIDLAYER23_MINWIDTH=15mil|MIDLAYER23_MAXWIDTH=15mil|MIDLAYER23_PREFWIDTH=15mil|MIDLAYER24_MINGAP=10mil|MIDLAYER24_MINWIDTH=15mil|MIDLAYER24_MAXWIDTH=15mil|MIDLAYER24_PREFWIDTH=15mil|MIDLAYER25_MINGAP=10mil|MIDLAYER25_MINWIDTH=15mil|MIDLAYER25_MAXWIDTH=15mil|MIDLAYER25_PREFWIDTH=15mil|MIDLAYER26_MINGAP=10mil|MIDLAYER26_MINWIDTH=15mil|MIDLAYER26_MAXWIDTH=15mil|MIDLAYER26_PREFWIDTH=15mil|MIDLAYER27_MINGAP=10mil|MIDLAYER27_MINWIDTH=15mil|MIDLAYER27_MAXWIDTH=15mil|MIDLAYER27_PREFWIDTH=15mil|MIDLAYER28_MINGAP=10mil|MIDLAYER28_MINWIDTH=15mil|MIDLAYER28_MAXWIDTH=15mil|MIDLAYER28_PREFWIDTH=15mil|MIDLAYER29_MINGAP=10mil|MIDLAYER29_MINWIDTH=15mil|MIDLAYER29_MAXWIDTH=15mil|MIDLAYER29_PREFWIDTH=15mil|MIDLAYER30_MINGAP=10mil|MIDLAYER30_MINWIDTH=15mil|MIDLAYER30_MAXWIDTH=15mil|MIDLAYER30_PREFWIDTH=15mil|BOTTOMLAYER_PREFGAP=8mil|BOTTOMLAYER_MINWIDTH=7mil|BOTTOMLAYER_MAXWIDTH=15mil|BOTTOMLAYER_PREFWIDTH=8mil|MAXUNCOUPLEDLENGTH=200mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=HoleToHoleClearance|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=HoleToHoleClearance|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=QOBCONRH|DEFINEDBYLOGICALDOCUMENT=FALSE|GAP=10mil|ALLOWSTACKEDMICROVIAS=TRUE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=MinimumSolderMaskSliver|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=MinimumSolderMaskSliver|ENABLED=FALSE|PRIORITY=1|COMMENT= |UNIQUEID=MVJMPEOO|DEFINEDBYLOGICALDOCUMENT=FALSE|MINSOLDERMASKWIDTH=4mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=SilkToSolderMaskClearance|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=IsPad|SCOPE2EXPRESSION=All|NAME=SilkscreenOverComponentPads|ENABLED=FALSE|PRIORITY=1|COMMENT= |UNIQUEID=OKWEWTXU|DEFINEDBYLOGICALDOCUMENT=FALSE|MINSILKSCREENTOMASKGAP=10mil|CLEARANCETOEXPOSEDCOPPER=TRUE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=SilkToSilkClearance|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=SilkToSilkClearance|ENABLED=FALSE|PRIORITY=1|COMMENT= |UNIQUEID=ADFJYLCH|DEFINEDBYLOGICALDOCUMENT=FALSE|SILKTOSILKCLEARANCE=10mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=NetAntennae|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=NetAntennae|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=TEAJUGGR|DEFINEDBYLOGICALDOCUMENT=FALSE|NETANTENNAETOLERANCE=0mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=AssemblyTestpoint|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=AssemblyTestpoint|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=KNPRDARH|DEFINEDBYLOGICALDOCUMENT=FALSE|TESTPOINTUNDERCOMPONENT=FALSE|MINSIZE=40mil|MAXSIZE=100mil|PREFEREDSIZE=60mil|MINHOLESIZE=0mil|MAXHOLESIZE=40mil|PREFEREDHOLESIZE=32mil|TESTPOINTGRID=1mil|USEGRID=FALSE|GRIDTOLERANCE=0.01mil|ALLOWSIDETOP=TRUE|ALLOWSIDEBOTTOM=TRUE|MINSPACING=100mil|COMPBODYCLEARANCE=140mil +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=AssemblyTestPointUsage|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=AssemblyTestPointUsage|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=NNUPNKAY|DEFINEDBYLOGICALDOCUMENT=FALSE|VALID=2 +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=UnpouredPolygon|NETSCOPE=AnyNet|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=UnpouredPolygon|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=AAGUSEHU|DEFINEDBYLOGICALDOCUMENT=FALSE +SELECTION=FALSE|LAYER=TOP|LOCKED=FALSE|POLYGONOUTLINE=FALSE|USERROUTED=TRUE|KEEPOUT=FALSE|UNIONINDEX=0|RULEKIND=BoardOutlineClearance|NETSCOPE=DifferentNets|LAYERKIND=SameLayer|SCOPE1EXPRESSION=All|SCOPE2EXPRESSION=All|NAME=BoardOutlineClearance|ENABLED=TRUE|PRIORITY=1|COMMENT= |UNIQUEID=MGGOXJHY|DEFINEDBYLOGICALDOCUMENT=FALSE|GAP=20mil|GENERICCLEARANCE=20mil|IGNOREPADTOPADCLEARANCEINFOOTPRINT=FALSE|OBJECTCLEARANCES= -- 2.45.2