nit: either this method and the following one should use `horiz` and `vert`; or `horizontal` and `vertical`