def _generate_non_lastnames_variations(non_lastnames):
if not non_lastnames:<EOL><INDENT>return []<EOL><DEDENT>for idx, non_lastname in enumerate(non_lastnames):<EOL><INDENT>non_lastnames[idx] = (u'<STR_LIT>', non_lastname[<NUM_LIT:0>], non_lastname)<EOL><DEDENT>return [<EOL>(u'<STR_LIT:U+0020>'.join(var_elem for var_elem in variation if var_elem)).strip()<EOL>for variation in product(*non_lastnames)<EOL>]<EOL>
Generate variations for all non-lastnames.

    E.g. For 'John Richard', this method generates: [
        'John', 'J', 'Richard', 'R', 'John Richard', 'John R', 'J Richard', 'J R',
    ]