@@define IP4ADDRESS (25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(\\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}
@@define IP6ADDRESS ((:(:[0-9A-Fa-f]{1,4}){1,7}|::|[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4}){1,6}|::|:[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4}){1,5}|::|:[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4}){1,4}|::|:[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4}){1,3}|::|:[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4}){1,2}|::|:[0-9A-Fa-f]{1,4}(::[0-9A-Fa-f]{1,4}|::|:[0-9A-Fa-f]{1,4}(::|:[0-9A-Fa-f]{1,4}))))))))|(:(:[0-9A-Fa-f]{1,4}){0,5}|[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4}){0,4}|:[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4}){0,3}|:[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4}){0,2}|:[0-9A-Fa-f]{1,4}(:(:[0-9A-Fa-f]{1,4})?|:[0-9A-Fa-f]{1,4}(:|:[0-9A-Fa-f]{1,4})))))):(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(\\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3})
@@define IP6ADDRESSU ((_(_[0-9A-Fa-f]{1,4}){1,7}|__|[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4}){1,6}|__|_[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4}){1,5}|__|_[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4}){1,4}|__|_[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4}){1,3}|__|_[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4}){1,2}|__|_[0-9A-Fa-f]{1,4}(__[0-9A-Fa-f]{1,4}|__|_[0-9A-Fa-f]{1,4}(__|_[0-9A-Fa-f]{1,4}))))))))|(_(_[0-9A-Fa-f]{1,4}){0,5}|[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4}){0,4}|_[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4}){0,3}|_[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4}){0,2}|_[0-9A-Fa-f]{1,4}(_(_[0-9A-Fa-f]{1,4})?|_[0-9A-Fa-f]{1,4}(_|_[0-9A-Fa-f]{1,4}))))))_(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(\\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3})
@@define PORTNUMBER  (6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{0,3}|0)

