Validate IP address
Your task
Given a string query, classify it as a valid "IPv4" address, a valid "IPv6" address, or "Neither". An IPv4 address is four dot-separated decimal groups, each 0-255 with no leading zeros (so "192.168.01.1" is invalid). An IPv6 address is eight colon-separated groups, each 1 to 4 hexadecimal digits (case-insensitive); do not support :: compression. Return one of the exact strings "IPv4", "IPv6", or "Neither".
Examples
validate_ip(query: str) -> strExample 1
Input
validate_ip("172.16.254.1")Output
"IPv4"