#include <bits/stdc++.h>
using namespace std;
void RD(int &x) { scanf("%d", &x); }
void RD(double &x) { scanf("%lf", &x); }
void RD(int &x, int &y) { scanf("%d%d", &x, &y); }
void RD(double &x, double &y) { scanf("%lf%lf", &x, &y); }
void RD(int &x, int &y, int &z) { scanf("%d%d%d", &x, &y, &z); }
void RD(double &x, double &y, double &z) { scanf("%lf%lf%lf", &x, &y, &z); }
void RD(char *s) { scanf("%s", s); }
void PR(int x) { printf("%d\n", x); }
void PR(int x, int y) { printf("%d %d\n", x, y); }
void PR(double x) { printf("%.6lf\n", x); }
void PR(char x) { printf("%c\n", x); }
void PR(char x[]) { printf("%s\n", x); }
void PRI(char x[]) { printf("%s", x); }
char str[1000001];
int rem[] = {1869, 1968, 1689, 6198, 1698, 1986, 1896, 1869};
int main() {
  RD(str);
  int cnt[10] = {0};
  int i, j, len = strlen(str);
  for (i = 0; i < (len); ++i) cnt[str[i] - '0']++;
  cnt[1]--;
  cnt[6]--;
  cnt[8]--;
  cnt[9]--;
  int top = 0;
  for (i = 1; i < 10; i++)
    for (j = 0; j < cnt[i]; j++, top++) str[top] = i + '0';
  for (i = 0; i < (4); ++i) str[top++] = '0';
  str[top] = '\0';
  int tmp = 0;
  len = strlen(str);
  for (i = 0; i < (len); ++i) {
    tmp *= 10;
    tmp += str[i] - '0';
    tmp %= 7;
  }
  str[len - 4] = '\0';
  PRI(str);
  printf("%d", rem[7 - tmp]);
  for (i = 0; i < (cnt[0]); ++i) PRI("0");
  PR("");
  return 0;
}
