uses is_greater_than instead of contains_prefix