catch allocation