    (key-wall-brace 0 0 0 1 web-post-tl 0 0 -1 0 web-post-tl)
    (key-wall-brace 5 0 0 1 web-post-tr 5 0 1 0 web-post-tr)
    ; right wall
-   (for [y (range 0 3)] (key-wall-brace 5 y 1 0 web-post-tr 5 y       1 0 web-post-br))
-   (for [y (range 1 3)] (key-wall-brace 5 (dec y) 1 0 web-post-br 5 y 1 0 web-post-tr))
-   (key-wall-brace 5 2 0 -1 web-post-br 5 2 1 0 web-post-br)
+   (for [y (range 0 lastrow)] (key-wall-brace 5 y 1 0 web-post-tr 5 y       1 0 web-post-br))
+   (for [y (range 1 lastrow)] (key-wall-brace 5 (dec y) 1 0 web-post-br 5 y 1 0 web-post-tr))
+   (key-wall-brace 5 cornerrow 0 -1 web-post-br 5 cornerrow 1 0 web-post-br)
    ; left wall
-   (for [y (range 0 3)] (key-wall-brace 0 y -1 0 web-post-tl 0 y       -1 0 web-post-bl))
-   (for [y (range 1 3)] (key-wall-brace 0 (dec y) -1 0 web-post-bl 0 y -1 0 web-post-tl))
+   (for [y (range 0 lastrow)] (key-wall-brace 0 y -1 0 web-post-tl 0 y       -1 0 web-post-bl))
+   (for [y (range 1 lastrow)] (key-wall-brace 0 (dec y) -1 0 web-post-bl 0 y -1 0 web-post-tl))
    ; front wall
-   (key-wall-brace 3 3 0 -1 web-post-bl 3 3 0.5 -1 web-post-br)
-   (key-wall-brace 4 2 0 -1 web-post-bl 4 2 0 -1 web-post-br)
-   (key-wall-brace 5 2 0 -1 web-post-bl 5 2 0 -1 web-post-br)
-   (key-wall-brace 3 3 0.5 -1 web-post-br 4 2 1 -1 web-post-bl)
-   (key-wall-brace 4 2 0 -1 web-post-br 5 2 0 -1 web-post-bl)
+   (key-wall-brace 3 lastrow   0 -1 web-post-bl 3 lastrow 0.5 -1 web-post-br)
+   (key-wall-brace 4 cornerrow 0 -1 web-post-bl 4 cornerrow 0 -1 web-post-br)
+   (key-wall-brace 5 cornerrow 0 -1 web-post-bl 5 cornerrow 0 -1 web-post-br)
+   (key-wall-brace 3 lastrow 0.5 -1 web-post-br 4 cornerrow 1 -1 web-post-bl)
+   (key-wall-brace 4 cornerrow 0 -1 web-post-br 5 cornerrow 0 -1 web-post-bl)
    ; thumb walls
    (wall-brace thumb-mr-place  0 -1 web-post-br thumb-tr-place  0 -1 thumb-post-br)
    (wall-brace thumb-mr-place  0 -1 web-post-br thumb-mr-place  0 -1 web-post-bl)

(def ncols 6)
(def lastrow (dec nrows))
(def cornerrow (dec lastrow))

;;;;;;;;;;;;;;;;;
;; Switch Hole ;;

(defn key-place [column row shape]
  (let [row-placed-shape (->> shape
                              (translate [0 0 (- row-radius)])
                              (rotate (* α 
                                        (- cornerrow row 1) ; controls front-back tilt
                                      ) [1 0 0])      
                              (translate [0 0 row-radius]))
        column-offset (cond
                        (= column 2) [0 2.82 -4.5]
                        (>= column 4) [0 -5.8 5.64]
                        :else [0 0 0])
        column-angle (* β (- 3 column))                      ; controls left-right tilt / tenting
        placed-shape (->> row-placed-shape
                          (translate [0 0 (- column-radius)])
                          (rotate column-angle [0 1 0])
