half-dynamic size