protected static String pwdElaborate( String p ){
        String[] words;
        String   answer;
        int      numLenght = 10;
        
        if ( p.equals( "-an" ) ) {
            charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
            numLenght = 62;
        } else if ( p.equals( "-a" ) ) {
            charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
            numLenght = 52;
        } else if ( p.equals( "-n" ) ) {
            charset = "1234567890";
            numLenght = 10;
        } else if ( p.equals( "-ans" ) ) {
            charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!£()*+@#[]£$%&/=?^'|";
            numLenght = 82;
        }
        
        System.out.print( "Please insert the length of the password: " );
        n = inputInt();
        words = new String[n];
        System.out.println( "\n" );
            
        if (n > 25) {
            System.out.println( "Warning: as the password is longer, it uses more system resources!" );
            System.out.print( "Do you want to continue? " );
            
            answer = inputStr();
            
            System.out.println( "\r\n" );
            
            if ( answer.equals( "yes") || answer.equals( "y" ) ) {
                for( int j = 0 ; j < n ; j++ ){
                    int a = (int)( Math.random() * numLenght );
                    words[j] = charset.substring( a, a + 1 );
                    buffer += words[j];
                }
            } else 
                buffer = "\r\nError: too many characters!\r\n";
        }
        else {
            for( int j = 0 ; j < n ; j++ ) {
                int a = (int)( Math.random() * numLenght );
                words[j] = charset.substring( a, a + 1 );
                buffer += words[j];
            }
        }
        
        return buffer;
    }