location is top-left, not bottom-right