int(*compar) --> int (*compar)
int --> size_t  log2_boundary, random_depth