layout and half-functionality