#include <bits/stdc++.h>
using namespace std;
string substr(int a, int b, string str) {
  string tmp;
  for (int i = a; i < b; i++) {
    tmp.push_back(str[i]);
  }
  return tmp;
}
int main() {
  int n;
  cin >> n;
  for (int i = 0; i < n; i++) {
    string str;
    cin >> str;
    int jam = 0;
    vector<int> andis;
    andis.push_back(-1);
    for (int i = 0; i < str.size(); i++)
      if (str[i] == ':') {
        andis.push_back(i);
        jam++;
      }
    andis.push_back(str.size());
    if (jam == 7) {
      for (int i = 1; i < andis.size(); i++) {
        string m = substr(andis[i - 1] + 1, andis[i], str);
        if (m.size() != 4) {
          string tmp;
          for (int ii = 0; ii < 4 - m.size(); ii++) tmp.push_back('0');
          for (int ii = 0; ii < m.size(); ii++) tmp.push_back(m[ii]);
          cout << tmp;
          if (i != andis.size() - 1) cout << ":";
        } else {
          if (i != andis.size() - 1)
            cout << m << ":";
          else
            cout << m;
        }
      }
    } else {
      int mm = 0;
      for (int i = 1; i < andis.size(); i++) {
        if (andis[i] - andis[i - 1] == 1) {
          mm = i - 1;
          break;
        }
      }
      for (int i = 1; i <= mm; i++) {
        string m = substr(andis[i - 1] + 1, andis[i], str);
        if (m.size() != 4) {
          string tmp;
          for (int ii = 0; ii < 4 - m.size(); ii++) tmp.push_back('0');
          for (int ii = 0; ii < m.size(); ii++) tmp.push_back(m[ii]);
          cout << tmp;
          if (i != andis.size() - 1) cout << ":";
        } else {
          if (i != andis.size() - 1)
            cout << m << ":";
          else
            cout << m;
        }
      }
      for (int i = 0; i < 8 - (andis.size() - 2); i++) {
        cout << "0000";
        if (i != 7) cout << ":";
      }
      for (int i = mm + 2; i < andis.size(); i++) {
        string m = substr(andis[i - 1] + 1, andis[i], str);
        if (m.size() != 4) {
          string tmp;
          for (int ii = 0; ii < 4 - m.size(); ii++) tmp.push_back('0');
          for (int ii = 0; ii < m.size(); ii++) tmp.push_back(m[ii]);
          cout << tmp;
          if (i != andis.size() - 1) cout << ":";
        } else {
          if (i != andis.size() - 1)
            cout << m << ":";
          else
            cout << m;
        }
      }
    }
    cout << endl;
  }
}
