first commit of slab_extend,just the basic form