Wonder Room

The start of the new academic year brought about the problem of accommodation students into dormitories. One of such dormitories has a a × b square meter wonder room. The caretaker wants to accommodate exactly n students there. But the law says that there must be at least 6 square meters per student in a room (that is, the room for n students must have the area of at least 6n square meters). The caretaker can enlarge any (possibly both) side of the room by an arbitrary positive integer of meters. Help him change the room so as all n students could live in it and the total area of the room was as small as possible.

Input

The first line contains three space-separated integers na and b (1 ≤ n, a, b ≤ 109) — the number of students and the sizes of the room.

Output

Print three integers sa 1 and b 1 (a ≤ a 1b ≤ b 1) — the final area of the room and its sizes. If there are multiple optimal solutions, print any of them.

Examples

input

3 3 5

output

18
3 6

input

2 4 4

output

16
4 4

Solution:

#include <cstring>
#include <vector>
#include <list>
#include <map>
#include <set>
#include <deque>
#include <stack>
#include <bitset>
#include <algorithm>
#include <functional>
#include <numeric>
#include <utility>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <memory.h>
#include <cassert>

using namespace std;

int main() {
long long n, a, b;
cin >> n >> a >> b;
n *= 6;
bool flag = false;
if (a > b) {
swap(a, b);
flag = true;
}
long long ans = (long long)9e18;
long long ax = -1, ay = -1;
for (long long xx = 1; xx <= n; xx++) {
    long long x = xx;
    long long y = (n + x - 1) / x;
    if (y < x) {
      break;
    }
    if (x < a) x = a;
    if (y < b) y = b;
    if (x * y < ans) {
      ans = x * y;
      ax = x;
      ay = y;
    }
  }
  if (flag) {
    swap(ax, ay);
  }
  cout << ans << endl;
  cout << ax << " " << ay << endl;
  return 0;
}