#include <iostream>
#include<vector>
using namespace std;
#define SIZE (100)
std:: pair < int ,int > longest( vector< vector< int >> & E, vector< pair< int ,int >> & R, int n) {
if ( E[ n] .size ( ) == 0 )
return make_pair( 0 ,n) ;
if ( R[ n] .first ! = - 1 )
return R[ n] ;
for ( auto & e : E[ n] ) {
std:: pair < int ,int > p = longest( E,R,e) ;
if ( p.first + 1 > R[ n] .first || ( p.first + 1 == R[ n] .first && p.second < R[ n] .second ) ) {
R[ n] .first = p.first + 1 ;
R[ n] .second = p.second ;
}
}
return R[ n] ;
}
int main( ) {
int n; cin >> n;
int T= 0 ;
while ( n > 0 ) {
n++ ;
vector< vector< int >> E( n,vector< int > ( ) ) ;
vector< pair< int ,int >> R( n,pair< int ,int > ( - 1 ,- 1 ) ) ;
int s; cin >> s;
int a,b; cin >> a>> b;
while ( a! = 0 && b! = 0 ) {
E[ a] .push_back ( b) ;
cin >> a>> b;
}
auto p = longest( E,R,s) ;
cout << "Case " << ++ T<< ": The longest path from " << s<< " has length " << p.first << ", finishing at " << p.second << "." << endl<< endl;
cin >> n;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTx2ZWN0b3I+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKCiNkZWZpbmUgU0laRSAoMTAwKQoKc3RkOjpwYWlyPGludCxpbnQ+IGxvbmdlc3QodmVjdG9yPHZlY3RvcjxpbnQ+PiYgRSwgdmVjdG9yPHBhaXI8aW50LGludD4+JiBSLCBpbnQgbikgewogICAgaWYoRVtuXS5zaXplKCkgPT0gMCkKICAgICAgICByZXR1cm4gbWFrZV9wYWlyKDAsbik7CgogICAgaWYoUltuXS5maXJzdCAhPSAtMSkKICAgICAgICByZXR1cm4gUltuXTsKCiAgICBmb3IoYXV0byYgZSA6IEVbbl0pIHsKICAgICAgICBzdGQ6OnBhaXI8aW50LGludD4gcCA9IGxvbmdlc3QoRSxSLGUpOwogICAgICAgIGlmKHAuZmlyc3QgKyAxID4gIFJbbl0uZmlyc3QgfHwgKHAuZmlyc3QrMT09UltuXS5maXJzdCAmJiBwLnNlY29uZCA8IFJbbl0uc2Vjb25kKSkgewogICAgICAgICAgICBSW25dLmZpcnN0ID0gcC5maXJzdCsxOwogICAgICAgICAgICBSW25dLnNlY29uZD1wLnNlY29uZDsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gUltuXTsKCn0KCgppbnQgbWFpbigpIHsKICAgIGludCBuOyBjaW4+Pm47CiAgICBpbnQgVD0wOwogICAgd2hpbGUobiA+IDApIHsKICAgICAgICBuKys7CiAgICAgICAgdmVjdG9yPHZlY3RvcjxpbnQ+PiBFKG4sdmVjdG9yPGludD4oKSk7CiAgICAgICAgdmVjdG9yPHBhaXI8aW50LGludD4+IFIobixwYWlyPGludCxpbnQ+KC0xLC0xKSk7CiAgICAgICAgaW50IHM7IGNpbj4+czsKICAgICAgICBpbnQgYSxiOyBjaW4+PmE+PmI7CiAgICAgICAgd2hpbGUoYSE9MCAmJiBiIT0wKSB7CiAgICAgICAgICAgIEVbYV0ucHVzaF9iYWNrKGIpOwogICAgICAgICAgICBjaW4+PmE+PmI7CiAgICAgICAgfQogICAgICAgIGF1dG8gcCA9IGxvbmdlc3QoRSxSLHMpOwogICAgICAgIGNvdXQ8PCJDYXNlICI8PCsrVDw8IjogVGhlIGxvbmdlc3QgcGF0aCBmcm9tICI8PHM8PCIgaGFzIGxlbmd0aCAiPDxwLmZpcnN0PDwiLCBmaW5pc2hpbmcgYXQgIjw8cC5zZWNvbmQ8PCIuIjw8ZW5kbDw8ZW5kbDsKICAgICAgICBjaW4+Pm47CiAgICB9Cn0KCg==
stdin
MiAKMSAKMSAyIAowIDAgCjUgCjMgCjEgMiAKMyA1IAozIDEgCjIgNCAKNCA1IAowIDAgCjUgCjUgCjUgNCAKNSAzIAo1IDIgCjUgMSAKNCAxIAo0IDIgCjAgMCAKOCAKMSAKNyAxIAo4IDEgCjEgMyAKMiAzIAo0IDMgCjMgNSAKNiAyIAowIDAgCjYgCjEgCjEgMiAKMSA1IAoyIDMgCjMgNCAKNCA1IAo1IDYgCjAgMCAKMiAKMSAKMSAyIAowIDAKMTAKNgoxIDIKMyA0CjQgNQo1IDYKNiA3CjcgOAo4IDkKOSAxMAo0IDEwCjcgMgoyIDgKMCAwCjIKMQowIDAKMgoyCjAgMAoyCjIKMSAyCjAgMAoyCjEKMSAyCjAgMAoyCjEKMiAxCjAgMAoyCjIKMiAxCjAgMAo3CjEKMSAyCjEgNAoyIDcKMiA1CjQgMwo0IDYKMiA0CjMgNgozIDcKMCAwCjAg
2
1
1 2
0 0
5
3
1 2
3 5
3 1
2 4
4 5
0 0
5
5
5 4
5 3
5 2
5 1
4 1
4 2
0 0
8
1
7 1
8 1
1 3
2 3
4 3
3 5
6 2
0 0
6
1
1 2
1 5
2 3
3 4
4 5
5 6
0 0
2
1
1 2
0 0
10
6
1 2
3 4
4 5
5 6
6 7
7 8
8 9
9 10
4 10
7 2
2 8
0 0
2
1
0 0
2
2
0 0
2
2
1 2
0 0
2
1
1 2
0 0
2
1
2 1
0 0
2
2
2 1
0 0
7
1
1 2
1 4
2 7
2 5
4 3
4 6
2 4
3 6
3 7
0 0
0
stdout
Case 1: The longest path from 1 has length 1, finishing at 2.
Case 2: The longest path from 3 has length 4, finishing at 5.
Case 3: The longest path from 5 has length 2, finishing at 1.
Case 4: The longest path from 1 has length 2, finishing at 5.
Case 5: The longest path from 1 has length 5, finishing at 6.
Case 6: The longest path from 1 has length 1, finishing at 2.
Case 7: The longest path from 6 has length 5, finishing at 10.
Case 8: The longest path from 1 has length 0, finishing at 1.
Case 9: The longest path from 2 has length 0, finishing at 2.
Case 10: The longest path from 2 has length 0, finishing at 2.
Case 11: The longest path from 1 has length 1, finishing at 2.
Case 12: The longest path from 1 has length 0, finishing at 1.
Case 13: The longest path from 2 has length 1, finishing at 1.
Case 14: The longest path from 1 has length 4, finishing at 6.