// Runs in 0.28 sec
#include <cstdint>
#include <iostream>
#include <unordered_map>
#include <algorithm>
using namespace std;
int main();
typedef uint_fast32_t number;
typedef uint_fast32_t sequencelength;
unordered_map<number, sequencelength> t;
void arrange(number&, number&);
sequencelength getlength(number);
int main()
{
ios_base::sync_with_stdio(false);
number i, j;
while(cin >> i >> j)
{
cout << i << ' ' << j << ' ';
sequencelength maxlength = 0;
for(arrange(i, j); i<=j; ++i)
if(getlength(i) > maxlength)
maxlength = getlength(i);
cout << maxlength << '\n';
}
return 0;
}
sequencelength getlength(number i)
{
if(!t.count(i))
t.insert
(make_pair(i, i == 1 ? 1 : getlength(i%2 == 0 ? i/2 : 3*i+1) + 1));
return t[i];
}
void arrange(number &i, number &j)
{
if(i > j)
swap(i, j);
}
Ly8gUnVucyBpbiAwLjI4IHNlYwoKI2luY2x1ZGUgPGNzdGRpbnQ+CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPHVub3JkZXJlZF9tYXA+CiNpbmNsdWRlIDxhbGdvcml0aG0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpOwoKdHlwZWRlZiB1aW50X2Zhc3QzMl90IG51bWJlcjsKdHlwZWRlZiB1aW50X2Zhc3QzMl90IHNlcXVlbmNlbGVuZ3RoOwoKdW5vcmRlcmVkX21hcDxudW1iZXIsIHNlcXVlbmNlbGVuZ3RoPiB0OwoKdm9pZCBhcnJhbmdlKG51bWJlciYsIG51bWJlciYpOwoKc2VxdWVuY2VsZW5ndGggZ2V0bGVuZ3RoKG51bWJlcik7CgppbnQgbWFpbigpCnsKICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAKICBudW1iZXIgaSwgajsKICB3aGlsZShjaW4gPj4gaSA+PiBqKQogIHsKICAgIGNvdXQgPDwgaSA8PCAnICcgPDwgaiA8PCAnICc7CiAgICAKICAgIHNlcXVlbmNlbGVuZ3RoIG1heGxlbmd0aCA9IDA7CiAgICBmb3IoYXJyYW5nZShpLCBqKTsgaTw9ajsgKytpKQogICAgICBpZihnZXRsZW5ndGgoaSkgPiBtYXhsZW5ndGgpCiAgICAgICAgbWF4bGVuZ3RoID0gZ2V0bGVuZ3RoKGkpOwogICAgCiAgICBjb3V0IDw8IG1heGxlbmd0aCA8PCAnXG4nOwogIH0KICAKICByZXR1cm4gMDsKfQoKc2VxdWVuY2VsZW5ndGggZ2V0bGVuZ3RoKG51bWJlciBpKQp7CiAgaWYoIXQuY291bnQoaSkpCiAgICB0Lmluc2VydAogICAgICAobWFrZV9wYWlyKGksIGkgPT0gMSA/IDEgOiBnZXRsZW5ndGgoaSUyID09IDAgPyBpLzIgOiAzKmkrMSkgKyAxKSk7CiAgCiAgcmV0dXJuIHRbaV07Cn0KCnZvaWQgYXJyYW5nZShudW1iZXIgJmksIG51bWJlciAmaikKewogIGlmKGkgPiBqKQogICAgc3dhcChpLCBqKTsKfQ==