func_code_string: #include <bits/stdc++.h>   using namespace std;   int T;   int a, b;   int x[6], y[6];   bool check30(int a, int b) {     a -= 75;     x[1] = x[2] = x[3] = 25;     y[1] = y[2] = y[3] = 0;     if (a < 0) return 0;     if (a > 0) {       x[1] += a;       y[1] = 23 + a;       b -= 23 + a;     }     if (b < 0) return 0;     for (int i = 1; i <= 3; i++) {       if (y[i] != 0) continue;       if (b < 24) {         y[i] = b;         b = 0;       } else {         y[i] = 23;         b -= 23;       }     }     if (b > 0) return 0;     printf( 3:0 n );     for (int i = 1; i <= 3; i++) {       printf( %d:%d , x[i], y[i]);       if (i != 3)         printf(   );       else         printf(  n );     }     return 1;   }   bool check31(int a, int b) {     a -= 75;     b -= 25;     y[1] = x[2] = x[3] = x[4] = 25;     if (a < 0 || b < 0) return 0;     if (a < 24) {       x[1] = a;       a = 0;     } else {       x[1] = 23;       a -= 23;     }     if (a > b) return 0;     if (a) {       b -= a;       x[1] += a;       y[1] += a;       a = 0;     }     for (int i = 2; i <= 4; i++)       if (b < 24) {         y[i] = b;         b = 0;       } else {         y[i] = 23;         b -= 23;       }     if (b) {       if (y[1] > 25) {         int t = y[1] - 25;         y[1] -= t;         x[1] -= t;         y[2] += t;         x[2] += t;       }       if (b > x[1]) return 0;       x[1] -= b;       x[2] += b;       y[2] += b;       b = 0;     }     printf( 3:1 n );     for (int i = 1; i <= 4; i++) {       printf( %d:%d , x[i], y[i]);       if (i != 4)         printf(   );       else         printf(  n );     }     return 1;   }   bool check32(int a, int b) {     a -= 65;     b -= 50;     y[1] = y[2] = x[3] = x[4] = 25;     x[5] = 15;     if (a < 0 || b < 0) return 0;     for (int i = 1; i <= 2; i++)       if (a < 24) {         x[i] = a;         a = 0;       } else {         x[i] = 23;         a -= 23;       }     for (int i = 3; i <= 4; i++)       if (b < 24) {         y[i] = b;         b = 0;       } else {         y[i] = 23;         b -= 23;       }     if (b < 14) {       y[5] = b;       b = 0;     } else {       y[5] = 13;       b -= 13;     }     if (a > b) {       x[1] += b;       y[1] += b;       a -= b;       b = 0;       for (int i = 3; i <= 5; i++) {         if (y[i] > a) {           y[i] -= a;           x[1] += a;           y[1] += a;           a = 0;         } else {           x[1] += y[i];           y[1] += y[i];           a -= y[i];           y[i] = 0;         }       }       if (a > 0) return 0;     } else if (a < b) {       x[5] += a;       y[5] += a;       b -= a;       a = 0;       for (int i = 1; i <= 2; i++) {         if (x[i] > b) {           x[i] -= b;           x[5] += b;           y[5] += b;           b = 0;         } else {           x[5] += x[i];           y[5] += x[i];           b -= x[i];           x[i] = 0;         }       }       if (b > 0) return 0;     }     printf( 3:2 n );     for (int i = 1; i <= 5; i++) {       printf( %d:%d , x[i], y[i]);       if (i != 5)         printf(   );       else         printf(  n );     }     return 1;   }   bool check23(int a, int b) {     swap(a, b);     a -= 65;     b -= 50;     y[1] = y[2] = x[3] = x[4] = 25;     x[5] = 15;     if (a < 0 || b < 0) return 0;     for (int i = 1; i <= 2; i++)       if (a < 24) {         x[i] = a;         a = 0;       } else {         x[i] = 23;         a -= 23;       }     for (int i = 3; i <= 4; i++)       if (b < 24) {         y[i] = b;         b = 0;       } else {         y[i] = 23;         b -= 23;       }     if (b < 14) {       y[5] = b;       b = 0;     } else {       y[5] = 13;       b -= 13;     }     if (a > b) {       x[1] += b;       y[1] += b;       a -= b;       b = 0;       for (int i = 3; i <= 5; i++) {         if (y[i] > a) {           y[i] -= a;           x[1] += a;           y[1] += a;           a = 0;         } else {           x[1] += y[i];           y[1] += y[i];           a -= y[i];           y[i] = 0;         }       }       if (a > 0) return 0;     } else if (a < b) {       x[5] += a;       y[5] += a;       b -= a;       a = 0;       for (int i = 1; i <= 2; i++) {         if (x[i] > b) {           x[i] -= b;           x[5] += b;           y[5] += b;           b = 0;         } else {           x[5] += x[i];           y[5] += x[i];           b -= x[i];           x[i] = 0;         }       }       if (b > 0) return 0;     }     printf( 2:3 n );     for (int i = 1; i <= 5; i++) {       printf( %d:%d , y[i], x[i]);       if (i != 5)         printf(   );       else         printf(  n );     }     return 1;   }   bool check13(int a, int b) {     swap(a, b);     a -= 75;     b -= 25;     y[1] = x[2] = x[3] = x[4] = 25;     if (a < 0 || b < 0) return 0;     if (a < 24) {       x[1] = a;       a = 0;     } else {       x[1] = 23;       a -= 23;     }     if (a > b) return 0;     if (a) {       b -= a;       x[1] += a;       y[1] += a;       a = 0;     }     for (int i = 2; i <= 4; i++)       if (b < 24) {         y[i] = b;         b = 0;       } else {         y[i] = 23;         b -= 23;       }     if (b) {       if (y[1] > 25) {         int t = y[1] - 25;         y[1] -= t;         x[1] -= t;         y[2] += t;         x[2] += t;       }       if (b > x[1]) return 0;       x[1] -= b;       x[2] += b;       y[2] += b;       b = 0;     }     printf( 1:3 n );     for (int i = 1; i <= 4; i++) {       printf( %d:%d , y[i], x[i]);       if (i != 4)         printf(   );       else         printf(  n );     }     return 1;   }   bool check03(int a, int b) {     swap(a, b);     a -= 75;     x[1] = x[2] = x[3] = 25;     y[1] = y[2] = y[3] = 0;     if (a < 0) return 0;     if (a > 0) {       x[1] += a;       y[1] = 23 + a;       b -= 23 + a;     }     if (b < 0) return 0;     for (int i = 1; i <= 3; i++) {       if (y[i] != 0) continue;       if (b < 24) {         y[i] = b;         b = 0;       } else {         y[i] = 23;         b -= 23;       }     }     if (b > 0) return 0;     printf( 0:3 n );     for (int i = 1; i <= 3; i++) {       printf( %d:%d , y[i], x[i]);       if (i != 3)         printf(   );       else         printf(  n );     }     return 1;   }   int main() {     scanf( %d , &T);     while (T--) {       scanf( %d%d , &a, &b);       if (check30(a, b)) continue;       if (check31(a, b)) continue;       if (check32(a, b)) continue;       if (check23(a, b)) continue;       if (check13(a, b)) continue;       if (check03(a, b)) continue;       printf( Impossible n );     }     return 0;   }   