(edif LowPowerOpenCellLibrary
	(edifVersion 2 0 0)
	(edifLevel 0)
	(keywordMap
		(keywordLevel 0)
	)
	(external NangateSchematicElements
		(edifLevel 0)
		(technology
			(numberDefinition
				(scale 1
					(e 1 -12)
					(unit CAPACITANCE)
				)
			(scale (e 5000000 0) (e 1270000 -4) (unit DISTANCE))
			)
		)
		(cell Vss
			(cellType GENERIC)
			(view Main
				(viewType SCHEMATIC)
				(interface
					(port VSS
						(property GLOBAL
							(boolean
								(true)
							)
						)
					)
					(symbol)
				)
			)
		)
		(cell Vdd
			(cellType GENERIC)
			(view Main
				(viewType SCHEMATIC)
				(interface
					(port VDD
						(property GLOBAL
							(boolean
								(true)
							)
						)
					)
					(symbol)
				)
			)
		)
		(cell PMOS
			(cellType GENERIC)
			(view PMOS4
				(viewType SCHEMATIC)
				(interface
					(port D)
					(port G
						(direction INPUT)
					)
					(port S)
					(port B)
					(symbol)
				)
			)
			(view PMOS4HUP
				(viewType SCHEMATIC)
				(interface
					(port D)
					(port G
						(direction INPUT)
					)
					(port S)
					(port B)
					(symbol)
				)
			)
			(view PMOS4HDN
				(viewType SCHEMATIC)
				(interface
					(port D)
					(port G
						(direction INPUT)
					)
					(port S)
					(port B)
					(symbol)
				)
			)
			(view PMOS3
				(viewType SCHEMATIC)
				(interface
					(port D)
					(port G
						(direction INPUT)
					)
					(port S)
					(symbol)
				)
			)
		)
		(cell NMOS
			(cellType GENERIC)
			(view NMOS4
				(viewType SCHEMATIC)
				(interface
					(port D)
					(port G
						(direction INPUT)
					)
					(port S)
					(port B)
					(symbol)
				)
			)
			(view NMOS4HUP
				(viewType SCHEMATIC)
				(interface
					(port D)
					(port G
						(direction INPUT)
					)
					(port S)
					(port B)
					(symbol)
				)
			)
			(view NMOS4HDN
				(viewType SCHEMATIC)
				(interface
					(port D)
					(port G
						(direction INPUT)
					)
					(port S)
					(port B)
					(symbol)
				)
			)
			(view NMOS3
				(viewType SCHEMATIC)
				(interface
					(port D)
					(port G
						(direction INPUT)
					)
					(port S)
					(symbol)
				)
			)
		)
	)
	(library LowPowerOpenCellLibrary
		(edifLevel 0)
		(technology
			(numberDefinition
				(scale 1
					(e 1 -12)
					(unit CAPACITANCE)
				)
			(scale (e 5000000 0) (e 1270000 -4) (unit DISTANCE))
			)
			(figureGroup background
				(visible
					(true)
				)
				(color 0 0 0)
				(pathWidth 0)
			)
			(figureGroup cellname
				(visible
					(true)
				)
				(color 0 80 40)
				(pathWidth 0)
			)
			(figureGroup device
				(visible
					(true)
				)
				(color 0 80 0)
				(pathWidth 0)
			)
			(figureGroup graphic
				(visible
					(true)
				)
				(color 0 80 0)
				(pathWidth 0)
			)
			(figureGroup instance
				(visible
					(true)
				)
				(color 85 80 0)
				(pathWidth 0)
			)
			(figureGroup instancename
				(visible
					(true)
				)
				(color 255 204 0)
				(pathWidth 0)
			)
			(figureGroup netlabel
				(visible
					(true)
				)
				(color 0 33 255)
				(pathWidth 0)
			)
			(figureGroup pin
				(visible
					(true)
				)
				(color 0 33 255)
				(pathWidth 0)
			)
			(figureGroup portshape
				(visible
					(true)
				)
				(color 0 33 255)
				(pathWidth 0)
			)
			(figureGroup porttext
				(visible
					(true)
				)
				(color 0 33 255)
				(pathWidth 0)
			)
			(figureGroup property
				(visible
					(true)
				)
				(color 75 75 75)
				(pathWidth 0)
			)
			(figureGroup text
				(visible
					(true)
				)
				(color 100 0 0)
				(pathWidth 0)
			)
			(figureGroup wire
				(visible
					(true)
				)
				(color 0 80 0)
				(pathWidth 0)
			)
		)
		(cell AON_BUF_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell AON_BUF_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell AON_BUF_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell AON_INV_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 645 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 645 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
						(figure device
							(circle
								(pt 645 0)
								(pt 751 0)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 3125 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 3125 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 3125 -1125)
									(pt 3125 -1125)
								)
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell AON_INV_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 645 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 645 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
						(figure device
							(circle
								(pt 645 0)
								(pt 751 0)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 3125 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 3125 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 3125 -1125)
									(pt 3125 -1125)
								)
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell AON_INV_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 645 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 645 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
						(figure device
							(circle
								(pt 645 0)
								(pt 751 0)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 3125 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 3125 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 3125 -1125)
									(pt 3125 -1125)
								)
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell HEADER_OE_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port SLEEP
						(direction INPUT)
					)
					(port SLEEPOUT
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name SLEEP
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name SLEEPOUT
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name SLEEP
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name SLEEPOUT
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 13375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 13375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 13375 -1125)
									(pt 13375 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 12875 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 12875 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3750 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3750 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -2125)
								)
							)
						)
						(net SLEEP
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef SLEEP)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEP"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEP"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 0)
										(pt 13500 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 0)
										(pt 13500 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -2125)
										(pt 3750 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -2125)
										(pt 3750 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -2125)
										(pt 13500 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -2125)
										(pt 13500 -2125)
									)
								)
							)
						)
						(net SLEEPOUT_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 4250 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4280 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 12750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 13500 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 12750 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 13500 -1625)
											)
										)
									)
								)
							)
						)
						(net SLEEPOUT
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef SLEEPOUT)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1000)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1000)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 14000 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14030 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell HEADER_OE_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port SLEEP
						(direction INPUT)
					)
					(port SLEEPOUT
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name SLEEP
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name SLEEPOUT
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name SLEEP
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name SLEEPOUT
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 13375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 13375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 13375 -1125)
									(pt 13375 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 12875 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 12875 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3750 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3750 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -2125)
								)
							)
						)
						(net SLEEP
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef SLEEP)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEP"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEP"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 0)
										(pt 13500 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 0)
										(pt 13500 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -2125)
										(pt 3750 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -2125)
										(pt 3750 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -2125)
										(pt 13500 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -2125)
										(pt 13500 -2125)
									)
								)
							)
						)
						(net SLEEPOUT_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 4250 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4280 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 12750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 13500 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 12750 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 13500 -1625)
											)
										)
									)
								)
							)
						)
						(net SLEEPOUT
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef SLEEPOUT)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1000)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1000)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 14000 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14030 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell HEADER_OE_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port SLEEP
						(direction INPUT)
					)
					(port SLEEPOUT
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name SLEEP
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name SLEEPOUT
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name SLEEP
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name SLEEPOUT
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 13375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 13375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 13375 -1125)
									(pt 13375 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 12875 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 12875 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3750 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3750 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -2125)
								)
							)
						)
						(net SLEEP
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef SLEEP)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEP"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEP"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 0)
										(pt 13500 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 0)
										(pt 13500 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -2125)
										(pt 3750 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -2125)
										(pt 3750 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -2125)
										(pt 13500 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -2125)
										(pt 13500 -2125)
									)
								)
							)
						)
						(net SLEEPOUT_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 4250 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4280 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 12750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 13500 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 12750 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 13500 -1625)
											)
										)
									)
								)
							)
						)
						(net SLEEPOUT
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef SLEEPOUT)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1000)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1000)
										(pt 13500 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 13500 -1125)
										(pt 14000 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "SLEEPOUT"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14030 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE0N_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 14000 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 14000 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 14000 -1125)
									(pt 14000 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 0)
										(pt 14125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 0)
										(pt 14125 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1125)
										(pt 4875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1125)
										(pt 7125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1000)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1000)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14655 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE0N_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 14000 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 14000 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 14000 -1125)
									(pt 14000 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 0)
										(pt 14125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 0)
										(pt 14125 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1125)
										(pt 4875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1125)
										(pt 7125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1000)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1000)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14655 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE0N_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 14000 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 14000 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 14000 -1125)
									(pt 14000 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 0)
										(pt 14125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 0)
										(pt 14125 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1125)
										(pt 4875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1125)
										(pt 7125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1000)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1000)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14655 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE0_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 75 -475)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 475 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -150)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -204)
									(pt 4 -196)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 404 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 71 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -169)
									(pt 891 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 -206)
									(pt 854 -169)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 -244)
									(pt 821 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 -277)
									(pt 783 -244)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 -310)
									(pt 746 -277)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 -334)
									(pt 699 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 -352)
									(pt 657 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 -371)
									(pt 615 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 -385)
									(pt 563 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 -394)
									(pt 507 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 -400)
									(pt 450 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -29)
									(pt 891 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 8)
									(pt 854 -29)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 46)
									(pt 821 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 79)
									(pt 783 46)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 112)
									(pt 746 79)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 136)
									(pt 699 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 154)
									(pt 657 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 173)
									(pt 615 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 187)
									(pt 563 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 196)
									(pt 507 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 200)
									(pt 450 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 404 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 381 200)
									(pt 408 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -122)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -175)
									(pt 150 -122)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 -206)
									(pt 146 -175)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 -250)
									(pt 141 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 -281)
									(pt 132 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 -310)
									(pt 123 -281)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 -334)
									(pt 113 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 -352)
									(pt 104 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 -371)
									(pt 95 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 -400)
									(pt 86 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 -200)
									(pt 0 -200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -76)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -25)
									(pt 150 -76)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 8)
									(pt 146 -25)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 50)
									(pt 141 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 83)
									(pt 132 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 112)
									(pt 123 83)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 136)
									(pt 113 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 154)
									(pt 104 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 173)
									(pt 95 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 200)
									(pt 86 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 71 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 1050 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(circle
								(pt 900 -100)
								(pt 1050 -100)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 6625 -2125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 6625 -2125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 6625 -2125)
									(pt 6625 -2125)
								)
							)
						)
						(instance Mi_2
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -2750)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 3125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 6625 -3125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 7125 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -2125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1000)
										(pt 4875 -1125)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE0_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 75 -475)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 475 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -150)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -204)
									(pt 4 -196)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 404 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 71 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -169)
									(pt 891 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 -206)
									(pt 854 -169)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 -244)
									(pt 821 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 -277)
									(pt 783 -244)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 -310)
									(pt 746 -277)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 -334)
									(pt 699 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 -352)
									(pt 657 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 -371)
									(pt 615 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 -385)
									(pt 563 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 -394)
									(pt 507 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 -400)
									(pt 450 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -29)
									(pt 891 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 8)
									(pt 854 -29)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 46)
									(pt 821 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 79)
									(pt 783 46)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 112)
									(pt 746 79)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 136)
									(pt 699 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 154)
									(pt 657 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 173)
									(pt 615 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 187)
									(pt 563 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 196)
									(pt 507 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 200)
									(pt 450 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 404 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 381 200)
									(pt 408 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -122)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -175)
									(pt 150 -122)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 -206)
									(pt 146 -175)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 -250)
									(pt 141 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 -281)
									(pt 132 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 -310)
									(pt 123 -281)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 -334)
									(pt 113 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 -352)
									(pt 104 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 -371)
									(pt 95 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 -400)
									(pt 86 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 -200)
									(pt 0 -200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -76)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -25)
									(pt 150 -76)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 8)
									(pt 146 -25)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 50)
									(pt 141 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 83)
									(pt 132 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 112)
									(pt 123 83)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 136)
									(pt 113 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 154)
									(pt 104 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 173)
									(pt 95 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 200)
									(pt 86 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 71 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 1050 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(circle
								(pt 900 -100)
								(pt 1050 -100)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 6625 -2125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 6625 -2125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 6625 -2125)
									(pt 6625 -2125)
								)
							)
						)
						(instance Mi_2
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -2750)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 3125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 6625 -3125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 7125 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -2125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1000)
										(pt 4875 -1125)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE0_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 75 -475)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 475 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -150)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -204)
									(pt 4 -196)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 404 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 71 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -169)
									(pt 891 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 -206)
									(pt 854 -169)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 -244)
									(pt 821 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 -277)
									(pt 783 -244)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 -310)
									(pt 746 -277)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 -334)
									(pt 699 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 -352)
									(pt 657 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 -371)
									(pt 615 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 -385)
									(pt 563 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 -394)
									(pt 507 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 -400)
									(pt 450 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -29)
									(pt 891 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 8)
									(pt 854 -29)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 46)
									(pt 821 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 79)
									(pt 783 46)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 112)
									(pt 746 79)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 136)
									(pt 699 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 154)
									(pt 657 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 173)
									(pt 615 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 187)
									(pt 563 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 196)
									(pt 507 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 200)
									(pt 450 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 404 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 381 200)
									(pt 408 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -122)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -175)
									(pt 150 -122)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 -206)
									(pt 146 -175)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 -250)
									(pt 141 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 -281)
									(pt 132 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 -310)
									(pt 123 -281)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 -334)
									(pt 113 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 -352)
									(pt 104 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 -371)
									(pt 95 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 -400)
									(pt 86 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 -200)
									(pt 0 -200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -76)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -25)
									(pt 150 -76)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 8)
									(pt 146 -25)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 50)
									(pt 141 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 83)
									(pt 132 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 112)
									(pt 123 83)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 136)
									(pt 113 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 154)
									(pt 104 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 173)
									(pt 95 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 200)
									(pt 86 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 71 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 1050 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(circle
								(pt 900 -100)
								(pt 1050 -100)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 6625 -2125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 6625 -2125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 6625 -2125)
									(pt 6625 -2125)
								)
							)
						)
						(instance Mi_2
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "259.20fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "259.20fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "1.4400um")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "1.4400um")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "259.20fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "259.20fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "1.4400um")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "1.4400um")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -2750)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 3125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 6625 -3125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 7125 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -2125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1000)
										(pt 4875 -1125)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE1N_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 1050 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
						(figure device
							(circle
								(pt 900 -100)
								(pt 1050 -100)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 6625 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 6625 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 6625 -1125)
									(pt 6625 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 6625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1125)
										(pt 4875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1125)
										(pt 7125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef S
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE1N_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 1050 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
						(figure device
							(circle
								(pt 900 -100)
								(pt 1050 -100)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 6625 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 6625 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 6625 -1125)
									(pt 6625 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 6625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1125)
										(pt 4875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1125)
										(pt 7125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef S
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE1N_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 1050 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
						(figure device
							(circle
								(pt 900 -100)
								(pt 1050 -100)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 6625 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 6625 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 6625 -1125)
									(pt 6625 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "259.20fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "259.20fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "1.4400um")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "1.4400um")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "259.20fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "259.20fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "1.4400um")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "1.4400um")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_0)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 0)
										(pt 6625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 6625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -3125)
										(pt 4875 -3125)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1125)
										(pt 4875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1000)
										(pt 6625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -1125)
										(pt 7125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef S
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE1_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 75 -475)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 475 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -150)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -204)
									(pt 4 -196)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 404 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 71 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -169)
									(pt 891 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 -206)
									(pt 854 -169)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 -244)
									(pt 821 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 -277)
									(pt 783 -244)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 -310)
									(pt 746 -277)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 -334)
									(pt 699 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 -352)
									(pt 657 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 -371)
									(pt 615 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 -385)
									(pt 563 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 -394)
									(pt 507 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 -400)
									(pt 450 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -29)
									(pt 891 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 8)
									(pt 854 -29)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 46)
									(pt 821 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 79)
									(pt 783 46)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 112)
									(pt 746 79)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 136)
									(pt 699 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 154)
									(pt 657 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 173)
									(pt 615 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 187)
									(pt 563 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 196)
									(pt 507 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 200)
									(pt 450 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 404 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 381 200)
									(pt 408 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -122)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -175)
									(pt 150 -122)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 -206)
									(pt 146 -175)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 -250)
									(pt 141 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 -281)
									(pt 132 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 -310)
									(pt 123 -281)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 -334)
									(pt 113 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 -352)
									(pt 104 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 -371)
									(pt 95 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 -400)
									(pt 86 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 -200)
									(pt 0 -200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -76)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -25)
									(pt 150 -76)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 8)
									(pt 146 -25)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 50)
									(pt 141 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 83)
									(pt 132 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 112)
									(pt 123 83)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 136)
									(pt 113 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 154)
									(pt 104 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 173)
									(pt 95 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 200)
									(pt 86 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 71 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 0)
									(pt 0 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 14000 -2125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 14000 -2125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 14000 -2125)
									(pt 14000 -2125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -1125)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -2750)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 3125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -3125)
										(pt 14125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -3125)
										(pt 14125 -3125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 7125 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -2125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -2750)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14625 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14655 -2125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1000)
										(pt 4875 -1125)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE1_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 75 -475)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 475 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -150)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -204)
									(pt 4 -196)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 404 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 71 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -169)
									(pt 891 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 -206)
									(pt 854 -169)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 -244)
									(pt 821 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 -277)
									(pt 783 -244)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 -310)
									(pt 746 -277)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 -334)
									(pt 699 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 -352)
									(pt 657 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 -371)
									(pt 615 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 -385)
									(pt 563 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 -394)
									(pt 507 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 -400)
									(pt 450 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -29)
									(pt 891 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 8)
									(pt 854 -29)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 46)
									(pt 821 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 79)
									(pt 783 46)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 112)
									(pt 746 79)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 136)
									(pt 699 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 154)
									(pt 657 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 173)
									(pt 615 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 187)
									(pt 563 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 196)
									(pt 507 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 200)
									(pt 450 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 404 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 381 200)
									(pt 408 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -122)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -175)
									(pt 150 -122)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 -206)
									(pt 146 -175)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 -250)
									(pt 141 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 -281)
									(pt 132 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 -310)
									(pt 123 -281)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 -334)
									(pt 113 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 -352)
									(pt 104 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 -371)
									(pt 95 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 -400)
									(pt 86 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 -200)
									(pt 0 -200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -76)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -25)
									(pt 150 -76)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 8)
									(pt 146 -25)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 50)
									(pt 141 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 83)
									(pt 132 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 112)
									(pt 123 83)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 136)
									(pt 113 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 154)
									(pt 104 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 173)
									(pt 95 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 200)
									(pt 86 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 71 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 0)
									(pt 0 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 14000 -2125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 14000 -2125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 14000 -2125)
									(pt 14000 -2125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -1125)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -2750)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 3125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -3125)
										(pt 14125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -3125)
										(pt 14125 -3125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 7125 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -2125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -2750)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14625 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14655 -2125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1000)
										(pt 4875 -1125)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell ISO_FENCE1_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port EN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 75 -475)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 475 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -150)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -204)
									(pt 4 -196)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 404 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 -400)
									(pt 71 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -169)
									(pt 891 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 -206)
									(pt 854 -169)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 -244)
									(pt 821 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 -277)
									(pt 783 -244)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 -310)
									(pt 746 -277)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 -334)
									(pt 699 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 -352)
									(pt 657 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 -371)
									(pt 615 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 -385)
									(pt 563 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 -394)
									(pt 507 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 -400)
									(pt 450 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 891 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -29)
									(pt 891 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 821 8)
									(pt 854 -29)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 783 46)
									(pt 821 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 746 79)
									(pt 783 46)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 699 112)
									(pt 746 79)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 657 136)
									(pt 699 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 615 154)
									(pt 657 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 563 173)
									(pt 615 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 507 187)
									(pt 563 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 450 196)
									(pt 507 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 404 200)
									(pt 450 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 404 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 381 200)
									(pt 408 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -122)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -175)
									(pt 150 -122)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 -206)
									(pt 146 -175)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 -250)
									(pt 141 -206)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 -281)
									(pt 132 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 -310)
									(pt 123 -281)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 -334)
									(pt 113 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 -352)
									(pt 104 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 -371)
									(pt 95 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 -400)
									(pt 86 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 -200)
									(pt 0 -200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -76)
									(pt 150 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 146 -25)
									(pt 150 -76)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 141 8)
									(pt 146 -25)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 132 50)
									(pt 141 8)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 123 83)
									(pt 132 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 113 112)
									(pt 123 83)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 104 136)
									(pt 113 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 95 154)
									(pt 104 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 86 173)
									(pt 95 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 71 200)
									(pt 86 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 375 200)
									(pt 71 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 142 0)
									(pt 0 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name EN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 14000 -2125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 14000 -2125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 14000 -2125)
									(pt 14000 -2125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 6000 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 13500 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 4875 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -1125)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14125 -3125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -2750)
											)
										)
									)
								)
							)
						)
						(net EN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef EN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 4125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 4875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "EN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 6625 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 0)
										(pt 4875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -1125)
										(pt 14125 -1125)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 3125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -3125)
										(pt 6625 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -3125)
										(pt 14125 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -3125)
										(pt 14125 -3125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -2125)
										(pt 4875 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 6625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 6625 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 6625 -2125)
										(pt 7125 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7155 -2125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 13375 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14125 -2750)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14125 -2250)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 14125 -2125)
										(pt 14625 -2125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 14655 -2125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 4875 -1000)
										(pt 4875 -1125)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_HLEN_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port ISOLN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 15375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 15375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 15375 -1125)
									(pt 15375 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 7250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5750 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -1625)
											)
										)
									)
								)
							)
						)
						(net ISOLN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef ISOLN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 7125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -1125)
										(pt 5750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1125)
										(pt 8375 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 8405 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15875 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15905 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -2125)
										(pt 5750 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_HLEN_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port ISOLN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 15375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 15375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 15375 -1125)
									(pt 15375 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 7250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5750 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -1625)
											)
										)
									)
								)
							)
						)
						(net ISOLN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef ISOLN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 7125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -1125)
										(pt 5750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1125)
										(pt 8375 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 8405 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15875 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15905 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -2125)
										(pt 5750 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_HLEN_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port ISOLN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 15375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 15375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 15375 -1125)
									(pt 15375 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 7250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5750 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -1625)
											)
										)
									)
								)
							)
						)
						(net ISOLN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef ISOLN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 7125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -1125)
										(pt 5750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1125)
										(pt 8375 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 8405 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15875 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15905 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -2125)
										(pt 5750 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_HL_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_HL_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_HL_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_LHEN_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port ISOLN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 15375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 15375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 15375 -1125)
									(pt 15375 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 7250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5750 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -1625)
											)
										)
									)
								)
							)
						)
						(net ISOLN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef ISOLN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 7125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -1125)
										(pt 5750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1125)
										(pt 8375 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 8405 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15875 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15905 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -2125)
										(pt 5750 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_LHEN_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port ISOLN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 15375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 15375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 15375 -1125)
									(pt 15375 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 7250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5750 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -1625)
											)
										)
									)
								)
							)
						)
						(net ISOLN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef ISOLN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 7125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -1125)
										(pt 5750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1125)
										(pt 8375 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 8405 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15875 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15905 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -2125)
										(pt 5750 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_LHEN_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port ISOLN
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -400)
								(pt 1200 200)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -450)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(justify CENTERCENTER)
								(origin
									(pt 500 -100)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 100)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 50)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 46)
									(pt 4 54)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 -250)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -254)
									(pt 4 -246)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 1150 -50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 1200 -100)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 1196 -104)
									(pt 1204 -96)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -100)
									(pt 1200 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 200)
									(pt 600 200)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 600 -400)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -85)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -47)
									(pt 900 -85)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -10)
									(pt 896 -47)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 28)
									(pt 887 -10)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 61)
									(pt 873 28)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 88)
									(pt 854 61)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 112)
									(pt 836 88)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 136)
									(pt 812 112)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 154)
									(pt 788 136)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 173)
									(pt 761 154)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 187)
									(pt 728 173)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 196)
									(pt 690 187)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 200)
									(pt 653 196)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 900 -113)
									(pt 900 -100)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 896 -151)
									(pt 900 -113)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 887 -188)
									(pt 896 -151)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 873 -226)
									(pt 887 -188)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 854 -259)
									(pt 873 -226)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 836 -287)
									(pt 854 -259)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 812 -310)
									(pt 836 -287)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 788 -334)
									(pt 812 -310)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 761 -352)
									(pt 788 -334)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 728 -371)
									(pt 761 -352)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 690 -385)
									(pt 728 -371)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 653 -394)
									(pt 690 -385)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 600 -400)
									(pt 653 -394)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 0 50)
									(pt 150 50)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -250)
									(pt 0 -250)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -400)
									(pt 150 200)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name ISOLN
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -800)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -800)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -796)
									(pt -396 -804)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 15375 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 15375 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 15375 -1125)
									(pt 15375 -1125)
								)
							)
						)
						(instance Mi_4
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_5
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 7250 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_3
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5125 -2500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 14750 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5875 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 5750 -3125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 15375 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_4)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 3000 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3750 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -1625)
											)
										)
									)
								)
							)
						)
						(net ISOLN
							(joined
								(portRef G
									(instanceRef Mi_5)
								)
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef ISOLN)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 7125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 7875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "ISOLN"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 5125 -2750)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 5875 -2750)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef S
									(instanceRef Mi_4)
								)
								(portRef D
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 3750 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 0)
										(pt 7875 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 0)
										(pt 15375 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -3125)
										(pt 5750 -3125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -2125)
										(pt 15375 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef D
									(instanceRef Mi_4)
								)
								(portRef S
									(instanceRef Mi_5)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -1125)
										(pt 5750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1125)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3750 -1000)
										(pt 3750 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1000)
										(pt 7875 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 7875 -1125)
										(pt 8375 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 8405 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 14625 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15375 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1000)
										(pt 15375 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 15375 -1125)
										(pt 15875 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 15905 -1125)
											)
										)
									)
								)
							)
						)
						(net net_0
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_3)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 5750 -2125)
										(pt 5750 -2250)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_LH_X1
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_LH_X2
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "180.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "16.200fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
		(cell LS_LH_X4
			(cellType GENERIC)
			(view symbol
				(viewType SCHEMATIC)
				(interface
					(port A
						(direction INPUT)
					)
					(port Z
						(direction OUTPUT)
					)
					(symbol
						(boundingBox
							(rectangle
								(pt 0 -300)
								(pt 900 300)
							)
						)
						(keywordDisplay instance
							(display
								(figureGroupOverride instance
									(textHeight 42)
								)
								(origin
									(pt 150 -350)
								)
							)
						)
						(keywordDisplay cell
							(display
								(figureGroupOverride cellname
									(visible
										(true)
									)
									(textHeight 97)
								)
								(origin
									(pt 450 -225)
								)
							)
						)
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERRIGHT)
									(origin
										(pt 50 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 0 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -4 -4)
									(pt 4 4)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(visible
											(true)
										)
										(textHeight 42)
									)
									(justify CENTERLEFT)
									(origin
										(pt 850 50)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 900 0)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 896 -4)
									(pt 904 4)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 -300)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 751 0)
									(pt 150 -300)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 150 0)
									(pt 0 0)
								)
							)
						)
						(figure device
							(path
								(pointList
									(pt 750 0)
									(pt 900 0)
								)
							)
						)
					)
				)
				(contents
					(page Page0
						(portImplementation
							(name A
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERRIGHT)
									(origin
										(pt -400 -200)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt -400 -200)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt -404 -196)
									(pt -396 -204)
								)
							)
						)
						(portImplementation
							(name Z
								(display
									(figureGroupOverride pin
										(textHeight 111)
									)
									(justify CENTERLEFT)
									(origin
										(pt 10500 -1125)
									)
								)
							)
							(connectLocation
								(figure portshape
									(dot
										(pt 10500 -1125)
									)
								)
							)
							(figure portshape
								(rectangle
									(pt 10500 -1125)
									(pt 10500 -1125)
								)
							)
						)
						(instance Mi_3
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_2
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 2500 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "95.000nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "4.5125fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "190.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance Mi_1
							(viewRef PMOS4
								(cellRef PMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -375)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "PMOS_VTL")
							)
						)
						(instance Mi_0
							(viewRef NMOS4
								(cellRef NMOS
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10000 -1500)
								)
							)
							(property L
								(string "50.000nm")
								(property Type
									(string "Double")
								)
							)
							(property W
								(string "360.00nm")
								(property Type
									(string "Double")
								)
							)
							(property AS
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property AD
								(string "64.800fm")
								(property Type
									(string "Double")
								)
							)
							(property PS
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property PD
								(string "720.00nm")
								(property Type
									(string "Double")
								)
							)
							(property Model
								(string "NMOS_VTL")
							)
						)
						(instance vdd0
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 0)
								)
							)
						)
						(instance gnd0
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 3125 -2125)
								)
							)
						)
						(instance vdd1
							(viewRef Main
								(cellRef Vdd
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 0)
								)
							)
						)
						(instance gnd1
							(viewRef Main
								(cellRef Vss
									(libraryRef NangateSchematicElements)
								)
							)
							(transform
								(origin
									(pt 10625 -2125)
								)
							)
						)
						(net A
							(joined
								(portRef G
									(instanceRef Mi_3)
								)
								(portRef G
									(instanceRef Mi_2)
								)
								(portRef A)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "A"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 2375 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3125 -1625)
											)
										)
									)
								)
							)
						)
						(net VDD
							(joined
								(portRef D
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_1)
								)
								(portRef VDD
									(instanceRef vdd0)
								)
								(portRef VDD
									(instanceRef vdd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 0)
										(pt 3125 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 0)
										(pt 10625 0)
									)
								)
							)
						)
						(net VSS
							(joined
								(portRef D
									(instanceRef Mi_2)
								)
								(portRef S
									(instanceRef Mi_0)
								)
								(portRef VSS
									(instanceRef gnd0)
								)
								(portRef VSS
									(instanceRef gnd1)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -2125)
										(pt 3125 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -2125)
										(pt 10625 -2125)
									)
								)
							)
						)
						(net Z_neg
							(joined
								(portRef S
									(instanceRef Mi_3)
								)
								(portRef S
									(instanceRef Mi_2)
								)
								(portRef G
									(instanceRef Mi_1)
								)
								(portRef G
									(instanceRef Mi_0)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1000)
										(pt 3125 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 3125 -1125)
										(pt 3625 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 3655 -1125)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VDD"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -500)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z_neg"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERRIGHT)
											(origin
												(pt 9875 -1625)
											)
										)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "VSS"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 10625 -1625)
											)
										)
									)
								)
							)
						)
						(net Z
							(joined
								(portRef D
									(instanceRef Mi_1)
								)
								(portRef D
									(instanceRef Mi_0)
								)
								(portRef Z)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1000)
										(pt 10625 -1125)
									)
								)
							)
							(figure wire
								(path
									(pointList
										(pt 10625 -1125)
										(pt 11125 -1125)
									)
								)
							)
							(commentGraphics
								(annotate
									(stringDisplay "Z"
										(display
											(figureGroupOverride netlabel
												(textHeight 97)
											)
											(justify CENTERLEFT)
											(origin
												(pt 11155 -1125)
											)
										)
									)
								)
							)
						)
					)
				)
			)
		)
	)
)
