hash and range support