use size_t for parse depth