#include <bits/stdc++.h>
using namespace std;
int main() {
  long long n, i, j, k, co = 0;
  scanf("%lld", &n);
  char a[n];
  scanf("%s", a);
  if (n % 2 == 0) {
    for (i = 0; i < n; i++) {
      if (co == 2) {
        co = 0;
        printf("-");
      }
      printf("%d", a[i] - 48);
      co++;
    }
  } else if (n > 3) {
    for (i = 0; i < n - 3; i++) {
      if (co != 0 && co % 2 == 0) printf("-");
      printf("%d", a[i] - 48);
      co++;
    }
    printf("-");
    for (i = n - 3; i < n; i++) {
      printf("%d", a[i] - 48);
    }
  } else
    printf("%s", a);
  return 0;
}

### Prompt

Develop a solution in Cpp to the problem described below:

Phone number in Berland is a sequence of n digits. Often, to make it easier to memorize the number, it is divided into groups of two or three digits. For example, the phone number 1198733 is easier to remember as 11-987-33. Your task is to find for a given phone number any of its divisions into groups of two or three digits.

Input

The first line contains integer n (2 ≤ n ≤ 100) — amount of digits in the phone number. The second line contains n digits — the phone number to divide into groups.

Output

Output any of divisions of the given phone number into groups of two or three digits. Separate groups by single character -. If the answer is not unique, output any.

Examples

Input

6
549871


Output

54-98-71

Input

7
1198733


Output

11-987-33

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
int main() {
  long long n, i, j, k, co = 0;
  scanf("%lld", &n);
  char a[n];
  scanf("%s", a);
  if (n % 2 == 0) {
    for (i = 0; i < n; i++) {
      if (co == 2) {
        co = 0;
        printf("-");
      }
      printf("%d", a[i] - 48);
      co++;
    }
  } else if (n > 3) {
    for (i = 0; i < n - 3; i++) {
      if (co != 0 && co % 2 == 0) printf("-");
      printf("%d", a[i] - 48);
      co++;
    }
    printf("-");
    for (i = n - 3; i < n; i++) {
      printf("%d", a[i] - 48);
    }
  } else
    printf("%s", a);
  return 0;
}

```