allocate desc slot once per class