test different state choosing methods
add xqx new methods subpath-n n-length