added both horizontal and vertical positioning