import  java.io.BufferedReader ; 
import  java.io.FileReader ; 
import  java.io.IOException ; 
import  java.util.ArrayList ; 
import  java.util.List ; 
import  java.util.Random ; 
 
class  LoginGenerator
{ 
    private  final  List< String>  words; 
    private  final  int  size; 
 
    { 
        { 
            words =  new  ArrayList< String> ( ) ; 
            while  ( ( line =  in.readLine ( ) )  !=  null ) 
            { 
                if  ( ! line.endsWith ( "'s" ) ) 
                { 
                    words.add ( line) ; 
                } 
            } 
            size =  words.size ( ) ; 
        } 
    } 
 
    { 
        int  randomIndex =  rng.nextInt ( size) ; 
        return  words.get ( randomIndex) ; 
    } 
 
    { 
        return  randomWord( )  +  "-"  +  randomWord( ) ; 
    } 
 
    public  static  void  main
( String [ ]  args
)      { 
        String  dictionary 
=  "/usr/share/dict/words" ;           try 
        { 
            LoginGenerator generator =  new  LoginGenerator( dictionary) ; 
            for  ( int  i =  0 ;  i <  100 ;  ++ i) 
            { 
                System .
out .
println ( generator.
randomLogin ( ) ) ;              } 
        } 
        { 
            System .
out .
println ( "error reading from "  +  dictionary
) ;              ex.printStackTrace ( ) ; 
        } 
    } 
} 
 
 
				aW1wb3J0IGphdmEuaW8uQnVmZmVyZWRSZWFkZXI7CmltcG9ydCBqYXZhLmlvLkZpbGVSZWFkZXI7CmltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOwppbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKaW1wb3J0IGphdmEudXRpbC5MaXN0OwppbXBvcnQgamF2YS51dGlsLlJhbmRvbTsKCmNsYXNzIExvZ2luR2VuZXJhdG9yCnsKICAgIHByaXZhdGUgZmluYWwgTGlzdDxTdHJpbmc+IHdvcmRzOwogICAgcHJpdmF0ZSBmaW5hbCBpbnQgc2l6ZTsKICAgIHByaXZhdGUgUmFuZG9tIHJuZyA9IG5ldyBSYW5kb20oKTsKCiAgICBwdWJsaWMgTG9naW5HZW5lcmF0b3IoU3RyaW5nIGRpY3Rpb25hcnkpIHRocm93cyBJT0V4Y2VwdGlvbgogICAgewogICAgICAgIHRyeSAoQnVmZmVyZWRSZWFkZXIgaW4gPSBuZXcgQnVmZmVyZWRSZWFkZXIobmV3IEZpbGVSZWFkZXIoZGljdGlvbmFyeSkpKQogICAgICAgIHsKICAgICAgICAgICAgd29yZHMgPSBuZXcgQXJyYXlMaXN0PFN0cmluZz4oKTsKICAgICAgICAgICAgU3RyaW5nIGxpbmU7CiAgICAgICAgICAgIHdoaWxlICgobGluZSA9IGluLnJlYWRMaW5lKCkpICE9IG51bGwpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGlmICghbGluZS5lbmRzV2l0aCgiJ3MiKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB3b3Jkcy5hZGQobGluZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgc2l6ZSA9IHdvcmRzLnNpemUoKTsKICAgICAgICB9CiAgICB9CgogICAgcHJpdmF0ZSBTdHJpbmcgcmFuZG9tV29yZCgpCiAgICB7CiAgICAgICAgaW50IHJhbmRvbUluZGV4ID0gcm5nLm5leHRJbnQoc2l6ZSk7CiAgICAgICAgcmV0dXJuIHdvcmRzLmdldChyYW5kb21JbmRleCk7CiAgICB9CiAgICAKICAgIHB1YmxpYyBTdHJpbmcgcmFuZG9tTG9naW4oKQogICAgewogICAgICAgIHJldHVybiByYW5kb21Xb3JkKCkgKyAiLSIgKyByYW5kb21Xb3JkKCk7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykKICAgIHsKICAgICAgICBTdHJpbmcgZGljdGlvbmFyeSA9ICIvdXNyL3NoYXJlL2RpY3Qvd29yZHMiOyAKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIExvZ2luR2VuZXJhdG9yIGdlbmVyYXRvciA9IG5ldyBMb2dpbkdlbmVyYXRvcihkaWN0aW9uYXJ5KTsKICAgICAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCAxMDA7ICsraSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGdlbmVyYXRvci5yYW5kb21Mb2dpbigpKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCAoSU9FeGNlcHRpb24gZXgpCiAgICAgICAgewogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oImVycm9yIHJlYWRpbmcgZnJvbSAiICsgZGljdGlvbmFyeSk7CiAgICAgICAgICAgIGV4LnByaW50U3RhY2tUcmFjZSgpOwogICAgICAgIH0KICAgIH0KfQo=