| 
					
				 | 
			
			
				@@ -0,0 +1,244 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/* Copyright (c) 2015, The Linux Foundation. All rights reserved. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Copyright (c) 2017, Sven Eckelmann <[email protected]> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * Permission to use, copy, modify, and/or distribute this software for any 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * purpose with or without fee is hereby granted, provided that the above 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * copyright notice and this permission notice appear in all copies. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include "qcom-ipq4019.dtsi" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include "qcom-ipq4019-bus.dtsi" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include <dt-bindings/gpio/gpio.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include <dt-bindings/input/input.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#include <dt-bindings/soc/qcom,tcsr.h> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/ { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	model = "OpenMesh A42"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	compatible = "openmesh,a42", "qcom,ipq4019"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	reserved-memory { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		#address-cells = <0x1>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		#size-cells = <0x1>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		ranges; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		rsvd1@87000000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			reg = <0x87000000 0x500000>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			no-map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		wifi_dump@87500000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			reg = <0x87500000 0x600000>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			no-map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		rsvd2@87B00000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			reg = <0x87b00000 0x500000>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			no-map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	soc { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		tcsr@194b000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			/* select hostmode */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			compatible = "qcom,tcsr"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			reg = <0x194b000 0x100>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		ess_tcsr@1953000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			compatible = "qcom,tcsr"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			reg = <0x1953000 0x1000>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			qcom,ess-interface-select = <TCSR_ESS_PSGMII>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		tcsr@1949000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			compatible = "qcom,tcsr"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			reg = <0x1949000 0x100>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		tcsr@1957000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			compatible = "qcom,tcsr"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			reg = <0x1957000 0x100>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		pinctrl@1000000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			serial_pins: serial_pinmux { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				mux { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					pins = "gpio60", "gpio61"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					function = "blsp_uart0"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					bias-disable; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			spi_0_pins: spi_0_pinmux { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				pinmux { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					function = "blsp_spi0"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					pins = "gpio55", "gpio56", "gpio57"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				pinmux_cs { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					function = "gpio"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					pins = "gpio54"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				pinconf { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					pins = "gpio55", "gpio56", "gpio57"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					drive-strength = <12>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					bias-disable; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				pinconf_cs { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					pins = "gpio54"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					drive-strength = <2>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					bias-disable; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+					output-high; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		blsp_dma: dma@7884000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		spi_0: spi@78b5000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			pinctrl-0 = <&spi_0_pins>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			pinctrl-names = "default"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			cs-gpios = <&tlmm 54 0>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			m25p80@0 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				#address-cells = <1>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				#size-cells = <1>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				compatible = "jedec,spi-nor"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				reg = <0>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				spi-max-frequency = <24000000>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				/* partitions are passed via bootloader */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		serial@78af000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			pinctrl-0 = <&serial_pins>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			pinctrl-names = "default"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		cryptobam: dma@8e04000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		crypto@8e3a000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		watchdog@b017000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		usb2_hs_phy: hsphy@a8000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		usb2: usb2@60f8800 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "ok"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		mdio@90000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "okay"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		ess-switch@c000000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "okay"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		ess-psgmii@98000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "okay"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		edma@c080000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "okay"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		wifi@a000000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "okay"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			qcom,ath10k-calibration-variant = "OM-A42"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		wifi@a800000 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			status = "okay"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			qcom,ath10k-calibration-variant = "OM-A42"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	gpio-keys { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		compatible = "gpio-keys"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		reset { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			label = "reset"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			gpios = <&tlmm 59 GPIO_ACTIVE_LOW>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			linux,code = <KEY_RESTART>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	aliases { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		led-boot = &power; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		led-failsafe = &power; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		led-running = &power; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		led-upgrade = &power; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	gpio-leds { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		compatible = "gpio-leds"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		red { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			label = "a42:red:status"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			linux,default-trigger = "default-off"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		power: green { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			label = "a42:green:status"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			gpios = <&tlmm 1 GPIO_ACTIVE_HIGH>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		blue { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			label = "a42:blue:status"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			linux,default-trigger = "default-off"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	watchdog { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		compatible = "linux,wdt-gpio"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		gpios = <&tlmm 5 GPIO_ACTIVE_LOW>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		hw_algo = "toggle"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		/* hw_margin_ms is actually 300s but driver limits it to 60s */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		hw_margin_ms = <60000>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		always-running; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+&gmac0 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	qcom,phy_mdio_addr = <4>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	qcom,poll_required = <1>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	qcom,forced_speed = <1000>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	qcom,forced_duplex = <1>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	vlan_tag = <2 0x20>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+&gmac1 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	qcom,phy_mdio_addr = <3>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	qcom,poll_required = <1>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	qcom,forced_speed = <1000>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	qcom,forced_duplex = <1>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	vlan_tag = <1 0x10>; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 |