function uncompressIPv6(str) {
if (isIPv6(str)) {
str = str.toLowerCase();
str = str.replace('::', '*');
var n = substrCount(str, ':');
str = str.replace('*', new Array(8 - n).join(':'));
var parts = str.split(':'), length = parts.length, i = 0;
while (i < length) {
parts[i] = strPad(parts[i++], 4, '0', 'left');
}
return parts.join(':');
}
return null;
}