Write a Python script that extracts IP addresses from given data based on specified conditions. Implement def extract_ip_addresses(data, conditions):, where data is a string and conditions contains optional version, private, and unique fields. Return a list of valid IP addresses in their canonical form, preserving input order and ignoring invalid candidates.
def extract_ip_addresses(data, conditions):