Code Duplication    Length = 11-11 lines in 2 locations

src/Russian/FirstNamesInflection.php 2 locations

@@ 271-281 (lines=11) @@
268
                static::TVORIT => RussianLanguage::isHissingConsonant(S::slice($name, -1)) || S::slice($name, -1) == 'ц' ? $prefix.'ем' : $prefix.'ом',
269
                static::PREDLOJ => $prefix.'е',
270
            ];
271
        } elseif (S::slice($name, -1) == 'ь' && static::isConsonant(S::slice($name, -2, -1))) { // soft consonant
272
            $prefix = S::name(S::slice($name, 0, -1));
273
            return [
274
                static::IMENIT => $prefix.'ь',
275
                static::RODIT => $prefix.'я',
276
                static::DAT => $prefix.'ю',
277
                static::VINIT => $prefix.'я',
278
                static::TVORIT => $prefix.'ем',
279
                static::PREDLOJ => $prefix.'е',
280
            ];
281
        } elseif (in_array(S::slice($name, -2), ['ай', 'ей', 'ой', 'уй', 'яй', 'юй', 'ий'], true)) {
282
            $prefix = S::name(S::slice($name, 0, -1));
283
            $postfix = S::slice($name, -2) == 'ий' ? 'и' : 'е';
284
            return [
@@ 348-358 (lines=11) @@
345
                    static::PREDLOJ => $prefix.'е',
346
                ];
347
            }
348
        } elseif (S::slice($name, -1) == 'ь' && static::isConsonant(S::slice($name, -2, -1))) {
349
            $prefix = S::name(S::slice($name, 0, -1));
350
            return [
351
                static::IMENIT => $prefix.'ь',
352
                static::RODIT => $prefix.'и',
353
                static::DAT => $prefix.'и',
354
                static::VINIT => $prefix.'ь',
355
                static::TVORIT => $prefix.'ью',
356
                static::PREDLOJ => $prefix.'и',
357
            ];
358
        } elseif (RussianLanguage::isHissingConsonant(S::slice($name, -1))) {
359
            $prefix = S::name($name);
360
            return [
361
                static::IMENIT => $prefix,