special allocator added