ugly implementation of intrusive lists