1.6.3 add zrank, redesign iterator