update add CANCAN function