Reading file /home/krishna/Z_submit/gds/user_analog_project_wrapper.gds for cell user_analog_project_wrapper
dbu=0.001
cell user_analog_project_wrapper dbu-bbox(ll;ur)=(-4000,-4000;2924000,3524000)
cell user_analog_project_wrapper dbu-bbox(left,bottom,right,top)=(-4000,-4000,2924000,3524000)
cell user_analog_project_wrapper dbu-size(width,height)=(2928000,3528000)
cell user_analog_project_wrapper micron-bbox(left,bottom,right,top)=(-4.0,-4.0,2924.0,3524.0)
cell user_analog_project_wrapper micron-size(width,height)=(2928.0,3528.0)
Done.

Magic 8.3 revision 274 - Compiled on Fri Mar  4 22:54:15 UTC 2022.
Starting magic under Tcl interpreter
Using the terminal as the console.
Using NULL graphics device.
Processing system .magicrc file
Loading "/home/krishna/mpw_precheck/checks/xor_check/erase_box.tcl" from command line.
"sky130(vendor)" is not one of the CIF input styles Magic knows.
Error: No style is set
The CIF input styles are: .
Don't know how to read GDS-II:
Nothing in "cifinput" section of tech file.
File user_analog_project_wrapper.mag couldn't be read
No such file or directory
Creating new cell
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )  area (units^2)

microns:  43.000 x 3520.000  (-43.000,  0.000), ( 0.000,  3520.000)  151360.000
lambda:       43 x 3520    (   -43,  0    ), (     0,  3520 )  151360    
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )  area (units^2)

microns:  43.000 x 3520.000  ( 2920.000,  0.000), ( 2963.000,  3520.000)  151360.000
lambda:       43 x 3520    (  2920,  0    ), (  2963,  3520 )  151360    
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )  area (units^2)

microns:  3006.000 x 38.000  (-43.000, -38.000), ( 2963.000,  0.000)  114228.000
lambda:     3006 x 38      (   -43, -38   ), (  2963,  0    )  114228    
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )  area (units^2)

microns:  3006.000 x 37.000  (-43.000,  3520.000), ( 2963.000,  3557.000)  111222.000
lambda:     3006 x 37      (   -43,  3520 ), (  2963,  3557 )  111222    
Unrecognized layer: metal5
Layer names are:
    mag or magnet
    f or fence
    r or rotate
    $
    *
    errors
    labels
    subcell
    connect
Unrecognized layer: metal4
Layer names are:
    mag or magnet
    f or fence
    r or rotate
    $
    *
    errors
    labels
    subcell
    connect
Unrecognized layer: metal5
Layer names are:
    mag or magnet
    f or fence
    r or rotate
    $
    *
    errors
    labels
    subcell
    connect
Unrecognized layer: metal4
Layer names are:
    mag or magnet
    f or fence
    r or rotate
    $
    *
    errors
    labels
    subcell
    connect
No CIF/GDS output style set!
I/O error in writing file /home/krishna/Z_submit/precheck_results/18_MAR_2022___04_34_25/outputs/user_analog_project_wrapper_erased.gds.
File may be incompletely written.

Magic 8.3 revision 274 - Compiled on Fri Mar  4 22:54:15 UTC 2022.
Starting magic under Tcl interpreter
Using the terminal as the console.
Using NULL graphics device.
Processing system .magicrc file
Loading "/home/krishna/mpw_precheck/checks/xor_check/erase_box.tcl" from command line.
"sky130(vendor)" is not one of the CIF input styles Magic knows.
Error: No style is set
The CIF input styles are: .
Don't know how to read GDS-II:
Nothing in "cifinput" section of tech file.
File user_analog_project_wrapper.mag couldn't be read
No such file or directory
Creating new cell
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )  area (units^2)

microns:  43.000 x 3520.000  (-43.000,  0.000), ( 0.000,  3520.000)  151360.000
lambda:       43 x 3520    (   -43,  0    ), (     0,  3520 )  151360    
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )  area (units^2)

microns:  43.000 x 3520.000  ( 2920.000,  0.000), ( 2963.000,  3520.000)  151360.000
lambda:       43 x 3520    (  2920,  0    ), (  2963,  3520 )  151360    
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )  area (units^2)

microns:  3006.000 x 38.000  (-43.000, -38.000), ( 2963.000,  0.000)  114228.000
lambda:     3006 x 38      (   -43, -38   ), (  2963,  0    )  114228    
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )  area (units^2)

microns:  3006.000 x 37.000  (-43.000,  3520.000), ( 2963.000,  3557.000)  111222.000
lambda:     3006 x 37      (   -43,  3520 ), (  2963,  3557 )  111222    
Unrecognized layer: metal5
Layer names are:
    mag or magnet
    f or fence
    r or rotate
    $
    *
    errors
    labels
    subcell
    connect
Unrecognized layer: metal4
Layer names are:
    mag or magnet
    f or fence
    r or rotate
    $
    *
    errors
    labels
    subcell
    connect
Unrecognized layer: metal5
Layer names are:
    mag or magnet
    f or fence
    r or rotate
    $
    *
    errors
    labels
    subcell
    connect
Unrecognized layer: metal4
Layer names are:
    mag or magnet
    f or fence
    r or rotate
    $
    *
    errors
    labels
    subcell
    connect
No CIF/GDS output style set!
I/O error in writing file /home/krishna/Z_submit/precheck_results/18_MAR_2022___04_34_25/outputs/user_analog_project_wrapper_empty_erased.gds.
File may be incompletely written.
Reading /home/krishna/Z_submit/precheck_results/18_MAR_2022___04_34_25/outputs/user_analog_project_wrapper_erased.gds ..
ERROR: In /home/krishna/mpw_precheck/checks/xor_check/xor.rb.drc: 'source': Stream has unknown format: /home/krishna/Z_submit/precheck_results/18_MAR_2022___04_34_25/outputs/user_analog_project_wrapper_erased.gds in Layout::read
Total elapsed: 0.000s  Memory: 521.00M
ERROR: 'source': Stream has unknown format: /home/krishna/Z_submit/precheck_results/18_MAR_2022___04_34_25/outputs/user_analog_project_wrapper_erased.gds in Layout::read in Executable::execute
  /home/krishna/mpw_precheck/checks/xor_check/xor.rb.drc:15:in `execute'
  :/built-in-macros/drc_interpreters.lym:27:in `instance_eval'
  :/built-in-macros/drc_interpreters.lym:27:in `execute'
