#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1050;
int n;
char arr[MAXN];
int main() {
  int i, j, k, num, len;
  bool flag, tmp;
  scanf("%d", &n);
  while (n--) {
    scanf("%s", arr);
    len = strlen(arr);
    for (i = num = 0; i < len; i++) {
      if (arr[i] == ':' && (i > 0 && arr[i - 1] != ':')) num++;
    }
    if (arr[len - 1] != ':') num++;
    num = 8 - num;
    if (len == 2) {
      printf("0000");
      for (i = 0; i < 7; i++) printf(":0000");
      puts("");
      continue;
    }
    tmp = true;
    for (i = 0, j = -1; i < len; i++) {
      if (arr[i] == ':') {
        if (i - j == 1 && j != -1) {
          if (j == 0) {
            printf("0000");
          } else
            printf(":0000");
          for (k = 1; k < num; k++) printf(":0000");
        } else if (i - j != 1) {
          if (!tmp) printf(":");
          for (k = 0; k < 5 + j - i; k++) printf("0");
          for (k = i - j - 1; k > 0; k--) printf("%c", arr[i - k]);
        }
        j = i;
        if (j == len - 1) j = len + 10;
        tmp = false;
      }
    }
    if (i - j == 1) {
      for (k = 0; k < num; k++) printf(":0000");
    } else if (i - j > 1) {
      if (!tmp) printf(":");
      for (k = 0; k < 5 + j - i; k++) printf("0");
      for (k = i - j - 1; k > 0; k--) printf("%c", arr[i - k]);
    }
    puts("");
  }
  return 0;
}
