#!/bin/bash
#blubs
declare -A eth0MAC=(
["apu00"]="00:0d:b9:60:a7:14"
["apu01"]="00:0d:b9:60:ad:b8"
["apu02"]="00:0d:b9:60:a9:b0"
["apu03"]="00:0d:b9:60:a7:68"
["apu04"]="00:0d:b9:60:a7:2c"
["apu05"]="00:0d:b9:60:ab:9c"
["apu06"]="00:0d:b9:60:ae:bc"
["apu07"]="00:0d:b9:60:a8:f0"
["apu08"]="00:0d:b9:60:9e:40"
["apu09"]="00:0d:b9:60:99:f0"
["apu10"]="00:0d:b9:60:ae:60"
["apu11"]="00:0d:b9:60:a7:e8"
["apu12"]="00:0d:b9:60:a7:80"
["apu13"]="00:0d:b9:60:9a:ac"
["apu14"]="00:0d:b9:5f:95:70"
["apu15"]="00:0d:b9:60:a1:88"
["apu16"]="00:0d:b9:60:af:70"
["apu17"]="00:0d:b9:60:a7:74"
["apu18"]="00:0d:b9:60:a8:2c"
["apu19"]="00:0d:b9:60:aa:6c"
["apu20"]="00:0d:b9:60:a9:60"
["apu21"]="00:0d:b9:60:a9:74"
["apu22"]="00:0d:b9:60:aa:64"
["apu23"]="00:0d:b9:60:a8:68"
["apu24"]="00:0d:b9:60:9a:48"
["apu50"]="00:0d:b9:51:35:78"
["apu51"]="00:0d:b9:51:30:60"
["apu52"]="00:0d:b9:51:2f:d4"
["apu53"]="00:0d:b9:51:37:14"
["apu54"]="00:0d:b9:51:31:48"
)

declare -A phy0MAC=(
["apu00"]="04:f0:21:ac:33:ac"
["apu01"]="04:f0:21:ac:31:bd"
["apu02"]="04:f0:21:ac:44:20"
["apu03"]="04:f0:21:ac:32:f1"
["apu04"]="04:f0:21:ac:32:dc"
["apu05"]="04:f0:21:ac:31:c7"
["apu06"]="04:f0:21:ac:32:d5"
["apu07"]="04:f0:21:ac:33:d0"
["apu08"]="04:f0:21:ac:1d:14"
["apu09"]="04:f0:21:ac:32:d3"
["apu10"]="04:f0:21:ac:43:b2"
["apu11"]="04:f0:21:ac:43:ae"
["apu12"]="04:f0:21:ac:31:cb"
["apu13"]="04:f0:21:ac:31:d2"
["apu14"]="04:f0:21:ac:32:cc"
["apu15"]="04:f0:21:ac:33:a3"
["apu16"]="04:f0:21:ac:43:d8"
["apu17"]="04:f0:21:ac:32:d7"
["apu18"]="04:f0:21:ac:32:da"
["apu19"]="04:f0:21:ac:44:2e"
["apu20"]="04:f0:21:ac:32:c9"
["apu21"]="04:f0:21:ac:48:06"
["apu22"]="04:f0:21:ac:44:8e"
["apu23"]="04:f0:21:ac:44:2a"
["apu24"]="04:f0:21:ac:32:c8"
["apu50"]="04:f0:21:54:94:8a"
["apu51"]="04:f0:21:54:9b:03"
["apu52"]="04:f0:21:54:94:8e"
["apu53"]="04:f0:21:54:94:88"
["apu54"]="04:f0:21:54:94:89"
)

declare -A phy1MAC=(
["apu00"]="04:f0:21:ac:1b:63"
["apu01"]="04:f0:21:ac:42:ee"
["apu02"]="04:f0:21:ac:44:21"
["apu03"]="04:f0:21:ac:32:db"
["apu04"]="04:f0:21:ac:32:ce"
["apu05"]="04:f0:21:ac:31:bb"
["apu06"]="04:f0:21:ac:1d:08"
["apu07"]="04:f0:21:ac:32:dd"
["apu08"]="04:f0:21:ac:32:d6"
["apu09"]="04:f0:21:ac:33:af"
["apu10"]="04:f0:21:ac:1d:00"
["apu11"]="04:f0:21:ac:33:b1"
["apu12"]="04:f0:21:ac:1d:11"
["apu13"]="04:f0:21:ac:44:23"
["apu14"]="04:f0:21:ac:32:e8"
["apu15"]="04:f0:21:ac:43:af"
["apu16"]="04:f0:21:ac:1c:e2"
["apu17"]="04:f0:21:ac:29:95"
["apu18"]="04:f0:21:ac:1c:e4"
["apu19"]="04:f0:21:ac:31:d4"
["apu20"]="04:f0:21:ac:31:d1"
["apu21"]="04:f0:21:ac:1c:de"
["apu22"]="04:f0:21:ac:1d:89"
["apu23"]="04:f0:21:ac:43:b3"
["apu24"]="04:f0:21:ac:33:0a"
["apu50"]="04:f0:21:54:94:8d"
["apu51"]="04:f0:21:54:9b:07"
["apu52"]="04:f0:21:54:94:86"
["apu53"]="04:f0:21:54:94:8b"
["apu54"]="04:f0:21:54:94:8c"
)

declare -A eth0IP=(
["apu00"]="192.168.0.10"
["apu01"]="192.168.0.11"
["apu02"]="192.168.0.12"
["apu03"]="192.168.0.13"
["apu04"]="192.168.0.14"
["apu05"]="192.168.0.15"
["apu06"]="192.168.0.16"
["apu07"]="192.168.0.17"
["apu08"]="192.168.0.18"
["apu09"]="192.168.0.19"
["apu10"]="192.168.0.20"
["apu11"]="192.168.0.21"
["apu12"]="192.168.0.22"
["apu13"]="192.168.0.23"
["apu14"]="192.168.0.24"
["apu15"]="192.168.0.25"
["apu16"]="192.168.0.26"
["apu17"]="192.168.0.27"
["apu18"]="192.168.0.28"
["apu19"]="192.168.0.29"
["apu20"]="192.168.0.30"
["apu21"]="192.168.0.31"
["apu22"]="192.168.0.32"
["apu23"]="192.168.0.33"
["apu24"]="192.168.0.34"
["apu50"]="192.168.0.50"
["apu51"]="192.168.0.51"
["apu52"]="192.168.0.52"
["apu53"]="192.168.0.53"
["apu54"]="192.168.0.54"
)

declare -A phy0IP=(
["broadcast"]="192.168.10.255"
["apu00"]="192.168.10.10"
["apu01"]="192.168.10.11"
["apu02"]="192.168.10.12"
["apu03"]="192.168.10.13"
["apu04"]="192.168.10.14"
["apu05"]="192.168.10.15"
["apu06"]="192.168.10.16"
["apu07"]="192.168.10.17"
["apu08"]="192.168.10.18"
["apu09"]="192.168.10.19"
["apu10"]="192.168.10.20"
["apu11"]="192.168.10.21"
["apu12"]="192.168.10.22"
["apu13"]="192.168.10.23"
["apu14"]="192.168.10.24"
["apu15"]="192.168.10.25"
["apu16"]="192.168.10.26"
["apu17"]="192.168.10.27"
["apu18"]="192.168.10.28"
["apu19"]="192.168.10.29"
["apu20"]="192.168.10.30"
["apu21"]="192.168.10.31"
["apu22"]="192.168.10.32"
["apu23"]="192.168.10.33"
["apu24"]="192.168.10.34"
["apu50"]="192.168.10.50"
["apu51"]="192.168.10.51"
["apu52"]="192.168.10.52"
["apu53"]="192.168.10.53"
["apu54"]="192.168.10.54"
)

declare -A phy1IP=(
["broadcast"]="192.168.20.255"
["apu00"]="192.168.20.10"
["apu01"]="192.168.20.11"
["apu02"]="192.168.20.12"
["apu03"]="192.168.20.13"
["apu04"]="192.168.20.14"
["apu05"]="192.168.20.15"
["apu06"]="192.168.20.16"
["apu07"]="192.168.20.17"
["apu08"]="192.168.20.18"
["apu09"]="192.168.20.19"
["apu10"]="192.168.20.20"
["apu11"]="192.168.20.21"
["apu12"]="192.168.20.22"
["apu13"]="192.168.20.23"
["apu14"]="192.168.20.24"
["apu15"]="192.168.20.25"
["apu16"]="192.168.20.26"
["apu17"]="192.168.20.27"
["apu18"]="192.168.20.28"
["apu19"]="192.168.20.29"
["apu20"]="192.168.20.30"
["apu21"]="192.168.20.31"
["apu22"]="192.168.20.32"
["apu23"]="192.168.20.33"
["apu24"]="192.168.20.34"
["apu50"]="192.168.20.50"
["apu51"]="192.168.20.51"
["apu52"]="192.168.20.52"
["apu53"]="192.168.20.53"
["apu54"]="192.168.20.54"
)

declare -A neighbors=(
["all"]="apu00 apu01 apu02 apu03 apu04 apu05 apu06 apu07 apu08 apu09 apu10 apu11 apu12 apu13 apu14 apu15 apu16 apu17 apu18 apu19 apu20 apu21 apu22 apu23 apu24 apu50 apu51 apu52 apu53 apu54"
["apu00"]="apu01 apu05 apu06"
["apu01"]="apu00 apu02 apu05 apu06 apu07"
["apu02"]="apu01 apu03 apu06 apu07 apu08"
["apu03"]="apu02 apu04 apu07 apu08 apu09"
["apu04"]="apu03 apu08 apu09"
["apu05"]="apu00 apu01 apu06 apu10 apu11"
["apu06"]="apu00 apu01 apu02 apu05 apu07 apu10 apu11 apu12"
["apu07"]="apu01 apu02 apu03 apu06 apu08 apu11 apu12 apu13"
["apu08"]="apu02 apu03 apu04 apu07 apu09 apu12 apu13 apu14"
["apu09"]="apu03 apu04 apu08 apu13 apu14"
["apu10"]="apu05 apu06 apu11 apu15 apu16"
["apu11"]="apu05 apu06 apu07 apu10 apu12 apu15 apu16 apu17"
["apu12"]="apu06 apu07 apu08 apu11 apu13 apu16 apu17 apu18"
["apu13"]="apu07 apu08 apu09 apu12 apu14 apu17 apu18 apu19"
["apu14"]="apu08 apu09 apu13 apu18 apu19"
["apu15"]="apu10 apu11 apu16 apu20 apu21"
["apu16"]="apu10 apu11 apu12 apu15 apu17 apu20 apu21 apu22"
["apu17"]="apu11 apu12 apu13 apu16 apu18 apu21 apu22 apu23"
["apu18"]="apu12 apu13 apu14 apu17 apu19 apu22 apu23 apu24"
["apu19"]="apu13 apu14 apu18 apu23 apu24"
["apu20"]="apu15 apu16 apu21"
["apu21"]="apu15 apu16 apu17 apu20 apu22"
["apu22"]="apu16 apu17 apu18 apu21 apu23"
["apu23"]="apu17 apu18 apu19 apu22 apu24"
["apu24"]="apu18 apu19 apu23"
["apu50"]="apu00 apu01 apu02 apu03 apu04 apu05 apu06 apu07 apu08 apu09 apu10 apu11 apu12 apu13 apu14 apu15 apu16 apu17 apu18 apu19 apu20 apu21 apu22 apu23 apu24 apu51 apu52 apu53 apu54"
["apu51"]="apu00 apu01 apu02 apu03 apu04 apu05 apu06 apu07 apu08 apu09 apu10 apu11 apu12 apu13 apu14 apu15 apu16 apu17 apu18 apu19 apu20 apu21 apu22 apu23 apu24 apu50 apu52 apu53 apu54"
["apu52"]="apu00 apu01 apu02 apu03 apu04 apu05 apu06 apu07 apu08 apu09 apu10 apu11 apu12 apu13 apu14 apu15 apu16 apu17 apu18 apu19 apu20 apu21 apu22 apu23 apu24 apu50 apu51 apu53 apu54"
["apu53"]="apu00 apu01 apu02 apu03 apu04 apu05 apu06 apu07 apu08 apu09 apu10 apu11 apu12 apu13 apu14 apu15 apu16 apu17 apu18 apu19 apu20 apu21 apu22 apu23 apu24 apu50 apu51 apu52 apu54"
["apu54"]="apu00 apu01 apu02 apu03 apu04 apu05 apu06 apu07 apu08 apu09 apu10 apu11 apu12 apu13 apu14 apu15 apu16 apu17 apu18 apu19 apu20 apu21 apu22 apu23 apu24 apu50 apu51 apu52 apu53"
)