simplify sample allocation