Grammalecte  Check-in [3ebde2f15f]

Overview
Comment:merge trunk
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | dicfac
Files: files | file ages | folders
SHA3-256: 3ebde2f15fbd498dfaeb0ef092ae471e606f96e47b52d04195bd1e8e9d9375c0
User & Date: olr on 2020-05-28 18:21:15
Other Links: branch diff | manifest | tags
Context
2020-05-28
19:18
[fr] affixe: permettre les combinaisons pour le drapeau S. -> nécessaire pour Um check-in: 491532d554 user: olr tags: dicfac, fr
18:21
merge trunk check-in: 3ebde2f15f user: olr tags: dicfac
18:09
[fr] mise à jour du dictionnaire (dictionnaire avec affixes factorisés) check-in: 5a7f3c6402 user: olr tags: dicfac, fr
17:28
[graphspell][py] remove deprecated code check-in: 37ac74a3bb user: olr tags: graphspell, trunk
Changes

Modified compile_rules_graph.py from [449767f106] to [9c1cb5b65d].

35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
    if sCode[0:1] == "=":
        sCode = sCode[1:]
    sCode = sCode.replace("__also__", "bCondMemo")
    sCode = sCode.replace("__else__", "not bCondMemo")
    sCode = sCode.replace("sContext", "_sAppContext")
    sCode = re.sub(r"\b(morph|morphVC|analyse|value|tag|displayInfo)[(]\\(\d+)", 'g_\\1(lToken[nTokenOffset+\\2]', sCode)
    sCode = re.sub(r"\b(morph|morphVC|analyse|value|tag|displayInfo)[(]\\-(\d+)", 'g_\\1(lToken[nLastToken-\\2+1]', sCode)
    sCode = re.sub(r"\b(select|exclude|define|define_from|add_morph|change_meta)[(][\\](\d+)", 'g_\\1(lToken[nTokenOffset+\\2]', sCode)
    sCode = re.sub(r"\b(select|exclude|define|define_from|add_morph|change_meta)[(][\\]-(\d+)", 'g_\\1(lToken[nLastToken-\\2+1]', sCode)
    sCode = re.sub(r"\b(tag_before|tag_after)[(][\\](\d+)", 'g_\\1(lToken[nTokenOffset+\\2], dTags', sCode)
    sCode = re.sub(r"\b(tag_before|tag_after)[(][\\]-(\d+)", 'g_\\1(lToken[nLastToken-\\2+1], dTags', sCode)
    sCode = re.sub(r"\bspace_after[(][\\](\d+)", 'g_space_between_tokens(lToken[nTokenOffset+\\1], lToken[nTokenOffset+\\1+1]', sCode)
    sCode = re.sub(r"\bspace_after[(][\\]-(\d+)", 'g_space_between_tokens(lToken[nLastToken-\\1+1], lToken[nLastToken-\\1+2]', sCode)
    sCode = re.sub(r"\banalyse_with_next[(][\\](\d+)", 'g_merged_analyse(lToken[nTokenOffset+\\1], lToken[nTokenOffset+\\1+1]', sCode)
    sCode = re.sub(r"\banalyse_with_next[(][\\]-(\d+)", 'g_merged_analyse(lToken[nLastToken-\\1+1], lToken[nLastToken-\\1+2]', sCode)
    sCode = re.sub(r"\b(morph|analyse|tag|value)\(>1", 'g_\\1(lToken[nLastToken+1]', sCode)                       # next token







|
|







35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
    if sCode[0:1] == "=":
        sCode = sCode[1:]
    sCode = sCode.replace("__also__", "bCondMemo")
    sCode = sCode.replace("__else__", "not bCondMemo")
    sCode = sCode.replace("sContext", "_sAppContext")
    sCode = re.sub(r"\b(morph|morphVC|analyse|value|tag|displayInfo)[(]\\(\d+)", 'g_\\1(lToken[nTokenOffset+\\2]', sCode)
    sCode = re.sub(r"\b(morph|morphVC|analyse|value|tag|displayInfo)[(]\\-(\d+)", 'g_\\1(lToken[nLastToken-\\2+1]', sCode)
    sCode = re.sub(r"\b(select|exclude|define|define_from|rewrite|add_morph|change_meta)[(][\\](\d+)", 'g_\\1(lToken[nTokenOffset+\\2]', sCode)
    sCode = re.sub(r"\b(select|exclude|define|define_from|rewrite|add_morph|change_meta)[(][\\]-(\d+)", 'g_\\1(lToken[nLastToken-\\2+1]', sCode)
    sCode = re.sub(r"\b(tag_before|tag_after)[(][\\](\d+)", 'g_\\1(lToken[nTokenOffset+\\2], dTags', sCode)
    sCode = re.sub(r"\b(tag_before|tag_after)[(][\\]-(\d+)", 'g_\\1(lToken[nLastToken-\\2+1], dTags', sCode)
    sCode = re.sub(r"\bspace_after[(][\\](\d+)", 'g_space_between_tokens(lToken[nTokenOffset+\\1], lToken[nTokenOffset+\\1+1]', sCode)
    sCode = re.sub(r"\bspace_after[(][\\]-(\d+)", 'g_space_between_tokens(lToken[nLastToken-\\1+1], lToken[nLastToken-\\1+2]', sCode)
    sCode = re.sub(r"\banalyse_with_next[(][\\](\d+)", 'g_merged_analyse(lToken[nTokenOffset+\\1], lToken[nTokenOffset+\\1+1]', sCode)
    sCode = re.sub(r"\banalyse_with_next[(][\\]-(\d+)", 'g_merged_analyse(lToken[nLastToken-\\1+1], lToken[nLastToken-\\1+2]', sCode)
    sCode = re.sub(r"\b(morph|analyse|tag|value)\(>1", 'g_\\1(lToken[nLastToken+1]', sCode)                       # next token

Modified gc_core/js/lang_core/gc_engine.js from [942880b931] to [fd4f80b37d].

1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461







1462
1463
1464
1465
1466
1467
1468
    } else if (lDefault) {
        oToken["lMorph"] = lDefault;
    }
    return true;
}

function g_add_morph (oToken, sNewMorph) {
    "Disambiguation: add a morphology to a token"
    let lMorph = (oToken.hasOwnProperty("lMorph")) ? oToken["lMorph"] : _oSpellChecker.getMorph(oToken["sValue"]);
    lMorph.push(...sNewMorph.split("|"));
    oToken["lMorph"] = lMorph;
    return true;
}








function g_define (oToken, sMorphs) {
    // set morphologies of <oToken>, always return true
    oToken["lMorph"] = sMorphs.split("|");
    return true;
}








|





>
>
>
>
>
>
>







1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
    } else if (lDefault) {
        oToken["lMorph"] = lDefault;
    }
    return true;
}

function g_add_morph (oToken, sNewMorph) {
    // Disambiguation: add a morphology to a token
    let lMorph = (oToken.hasOwnProperty("lMorph")) ? oToken["lMorph"] : _oSpellChecker.getMorph(oToken["sValue"]);
    lMorph.push(...sNewMorph.split("|"));
    oToken["lMorph"] = lMorph;
    return true;
}

function g_rewrite (oToken, sToReplace, sReplace) {
    // Disambiguation: rewrite morphologies
    let lMorph = (oToken.hasOwnProperty("lMorph")) ? oToken["lMorph"] : _oSpellChecker.getMorph(oToken["sValue"]);
    oToken["lMorph"] = lMorph.map(s => s.replace(sToReplace, sReplace));
    return true;
}

function g_define (oToken, sMorphs) {
    // set morphologies of <oToken>, always return true
    oToken["lMorph"] = sMorphs.split("|");
    return true;
}

Modified gc_core/py/lang_core/gc_engine.py from [bf4b3815a5] to [73a9be1db8].

1239
1240
1241
1242
1243
1244
1245







1246
1247
1248
1249
1250
1251
1252
def g_add_morph (dToken, sNewMorph):
    "Disambiguation: add a morphology to a token"
    lMorph = dToken["lMorph"]  if "lMorph" in dToken  else _oSpellChecker.getMorph(dToken["sValue"])
    lMorph.extend(sNewMorph.split("|"))
    dToken["lMorph"] = lMorph
    return True









def g_define (dToken, sMorphs):
    "Disambiguation: set morphologies of <dToken>, always return True"
    dToken["lMorph"] = sMorphs.split("|")
    #echo("DA:", dToken["sValue"], lMorph)
    return True








>
>
>
>
>
>
>







1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
def g_add_morph (dToken, sNewMorph):
    "Disambiguation: add a morphology to a token"
    lMorph = dToken["lMorph"]  if "lMorph" in dToken  else _oSpellChecker.getMorph(dToken["sValue"])
    lMorph.extend(sNewMorph.split("|"))
    dToken["lMorph"] = lMorph
    return True


def g_rewrite (dToken, sToReplace, sReplace):
    "Disambiguation: rewrite morphologies"
    lMorph = dToken["lMorph"]  if "lMorph" in dToken  else _oSpellChecker.getMorph(dToken["sValue"])
    dToken["lMorph"] = [ sMorph.replace(sToReplace, sReplace)  for sMorph in lMorph ]
    return True


def g_define (dToken, sMorphs):
    "Disambiguation: set morphologies of <dToken>, always return True"
    dToken["lMorph"] = sMorphs.split("|")
    #echo("DA:", dToken["sValue"], lMorph)
    return True

Modified gc_lang/fr/rules.grx from [d656869eea] to [0a0fac0ab3].

412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
....
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
....
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
....
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
....
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
....
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
....
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
....
1937
1938
1939
1940
1941
1942
1943
1944



1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978



















1979
1980
1981
1982
1983
1984
1985
....
1986
1987
1988
1989
1990
1991
1992






1993
1994
1995
1996
1997
1998
1999
....
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
....
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
....
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
....
4305
4306
4307
4308
4309
4310
4311





4312
4313
4314
4315
4316
4317
4318
....
4320
4321
4322
4323
4324
4325
4326



4327
4328
4329
4330
4331
4332
4333
....
4483
4484
4485
4486
4487
4488
4489

4490
4491
4492
4493

4494
4495
4496
4497
4498
4499
4500
....
4540
4541
4542
4543
4544
4545
4546

4547
4548
















4549
4550
4551


4552
4553
4554
4555
4556
4557

4558
4559
4560
4561



4562
4563
4564

4565
4566

4567
4568
4569
4570
4571
4572
4573
....
4602
4603
4604
4605
4606
4607
4608




4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623



4624
4625
4626
4627
4628
4629
4630
4631
4632
4633




4634
4635
4636
4637
4638
4639
4640
....
4644
4645
4646
4647
4648
4649
4650

4651
4652
4653
4654
4655
4656
4657
4658

4659
4660
4661
4662
4663
4664
4665
....
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
....
6281
6282
6283
6284
6285
6286
6287

6288
6289
6290
6291
6292
6293
6294
6295
....
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910



7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926



7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939

7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951

7952
7953
7954
7955
7956
7957
7958
....
8284
8285
8286
8287
8288
8289
8290









8291
8292
8293
8294
8295
8296
8297
....
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
....
8394
8395
8396
8397
8398
8399
8400


8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
....
9065
9066
9067
9068
9069
9070
9071




9072
9073
9074
9075
9076
9077
9078
9079


9080
9081
9082
9083
9084
9085
9086
....
9163
9164
9165
9166
9167
9168
9169











9170
9171
9172
9173
9174
9175
9176
....
9745
9746
9747
9748
9749
9750
9751

9752
9753
9754
9755
9756
9757
9758
9759
....
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
.....
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
.....
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
.....
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377



10378
10379
10380
10381
10382
10383
10384

10385
10386
10387
10388
10389
10390
10391
10392
.....
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
.....
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
.....
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
.....
10761
10762
10763
10764
10765
10766
10767








10768
10769
10770
10771
10772
10773
10774
10775
.....
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856



10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
.....
10905
10906
10907
10908
10909
10910
10911













10912
10913
10914


10915
10916
10917
10918
10919
10920
10921
.....
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317




11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
.....
11333
11334
11335
11336
11337
11338
11339

11340
11341
11342
11343
11344
11345
11346
.....
11361
11362
11363
11364
11365
11366
11367

11368
11369
11370
11371
11372
11373
11374
.....
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439

11440
11441
11442
11443
11444
11445
11446
11447
11448
.....
11495
11496
11497
11498
11499
11500
11501









11502
11503
11504
11505
11506
11507
11508
.....
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
.....
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
.....
13687
13688
13689
13690
13691
13692
13693

13694
13695
13696
13697
13698
13699
13700
.....
13768
13769
13770
13771
13772
13773
13774

13775
13776
13777
13778
13779
13780
13781
.....
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
.....
13945
13946
13947
13948
13949
13950
13951

13952
13953
13954
13955
13956
13957
13958
.....
14082
14083
14084
14085
14086
14087
14088
14089

14090
14091
14092
14093
14094
14095
14096
.....
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270


14271
14272
14273
14274
14275
14276
14277
.....
14561
14562
14563
14564
14565
14566
14567
14568
14569
14570
14571
14572
14573
14574
14575
.....
14909
14910
14911
14912
14913
14914
14915

14916
14917
14918
14919
14920
14921
14922
.....
14992
14993
14994
14995
14996
14997
14998
14999

15000
15001
15002
15003
15004
15005
15006
.....
15042
15043
15044
15045
15046
15047
15048

15049
15050
15051
15052
15053
15054
15055
.....
15127
15128
15129
15130
15131
15132
15133

15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
.....
15184
15185
15186
15187
15188
15189
15190

15191
15192
15193
15194
15195
15196
15197
.....
15254
15255
15256
15257
15258
15259
15260

15261
15262
15263
15264
15265
15266
15267
.....
15297
15298
15299
15300
15301
15302
15303
15304
15305

15306
15307
15308
15309
15310
15311
15312
.....
15328
15329
15330
15331
15332
15333
15334
15335
15336
15337
15338
15339
15340
15341
15342
.....
15354
15355
15356
15357
15358
15359
15360
15361


15362
15363
15364
15365
15366
15367
15368
15369
15370

15371
15372
15373
15374
15375
15376
15377
.....
15384
15385
15386
15387
15388
15389
15390

15391
15392
15393
15394
15395
15396
15397
.....
15424
15425
15426
15427
15428
15429
15430
15431
15432
15433
15434
15435
15436
15437
15438
.....
15448
15449
15450
15451
15452
15453
15454

15455
15456
15457
15458
15459
15460
15461
.....
15497
15498
15499
15500
15501
15502
15503
15504
15505
15506
15507
15508
15509
15510
15511
.....
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043




16044
16045
16046
16047
16048
16049
16050
.....
16056
16057
16058
16059
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
.....
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182




16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194



16195
16196


16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209


16210
16211
16212
16213
16214
16215
16216
16217
16218
16219
16220
16221
16222
16223
16224
16225
16226
16227
16228
16229
16230
16231
16232
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
.....
16246
16247
16248
16249
16250
16251
16252
16253
16254
16255
16256
16257
16258
16259
16260
16261
16262
16263
16264
16265
16266
16267
16268
16269
16270
16271
16272
16273
16274
16275
16276
16277
.....
16334
16335
16336
16337
16338
16339
16340
16341
16342
16343
16344
16345
16346
16347
16348
16349
16350
16351
16352
16353
.....
16355
16356
16357
16358
16359
16360
16361

16362
16363
16364
16365
16366
16367
16368
16369
16370
16371
16372
16373
16374
16375
16376
16377
16378
16379
.....
16402
16403
16404
16405
16406
16407
16408
16409
16410
16411
16412
16413
16414
16415
16416
.....
16425
16426
16427
16428
16429
16430
16431
16432
16433
16434
16435
16436
16437
16438
16439
.....
16480
16481
16482
16483
16484
16485
16486













16487
16488
16489
16490
16491
16492
16493
.....
16681
16682
16683
16684
16685
16686
16687
16688




16689
16690
16691
16692
16693
16694
16695
.....
16771
16772
16773
16774
16775
16776
16777

16778
16779
16780
16781
16782
16783
16784
.....
16814
16815
16816
16817
16818
16819
16820
16821
16822
16823
16824
16825
16826
16827
16828
.....
16870
16871
16872
16873
16874
16875
16876




16877
16878
16879
16880
16881
16882
16883
.....
17256
17257
17258
17259
17260
17261
17262
17263
17264
17265
17266
17267
17268
17269
17270
17271
17272
17273
17274
17275
17276
17277
17278
17279
17280
17281
17282
17283
17284
17285
17286
17287
17288
17289
.....
17334
17335
17336
17337
17338
17339
17340







































17341
17342
17343
17344
17345
17346
17347
.....
17386
17387
17388
17389
17390
17391
17392

17393
17394
17395
17396
17397
17398
17399
.....
17757
17758
17759
17760
17761
17762
17763
17764
17765



17766
17767
17768
17769
17770
17771
17772
.....
17786
17787
17788
17789
17790
17791
17792

17793
17794
17795
17796
17797
17798
17799
17800
17801








17802
17803
17804
17805
17806
17807
17808
.....
18027
18028
18029
18030
18031
18032
18033




18034
18035
18036
18037
18038

18039
18040
18041
18042
18043
18044
18045
.....
18072
18073
18074
18075
18076
18077
18078
18079

18080
18081
18082
18083
18084
18085
18086
18087
18088
18089
18090
18091
18092
18093
18094
18095
18096
.....
18223
18224
18225
18226
18227
18228
18229









18230
18231
18232
18233
18234
18235
18236
.....
18887
18888
18889
18890
18891
18892
18893
18894
18895
18896
18897
18898























18899







18900
18901
18902
18903
18904
18905
18906
.....
19207
19208
19209
19210
19211
19212
19213

19214
19215
19216
19217
19218
19219
19220
.....
19249
19250
19251
19252
19253
19254
19255
19256
19257
19258
19259
19260
19261
19262
19263
19264
19265
19266
19267
19268
19269
19270
.....
19303
19304
19305
19306
19307
19308
19309



19310
19311
19312
19313
19314
19315
19316
19317
19318
19319
19320
19321
19322
19323
19324
19325
19326
19327
19328
19329
19330
19331
19332
.....
19352
19353
19354
19355
19356
19357
19358
19359
19360
19361
19362
19363
19364
19365
19366
19367
19368
19369
19370
19371
19372
19373
19374
19375
19376
.....
19508
19509
19510
19511
19512
19513
19514
19515
19516
19517
19518
19519
19520
19521
19522
19523
19524
19525
19526
19527
19528
19529
.....
19531
19532
19533
19534
19535
19536
19537
19538
19539
19540
19541
19542
19543
19544
19545
19546
19547
19548
19549
19550
19551
19552
.....
19622
19623
19624
19625
19626
19627
19628
19629
19630
19631
19632
19633
19634
19635
19636
19637
19638
19639
19640
19641
19642
19643
.....
19655
19656
19657
19658
19659
19660
19661
19662
19663
19664
19665
19666
19667
19668
19669
19670
19671
19672
19673
19674
19675
19676
19677
19678
.....
19696
19697
19698
19699
19700
19701
19702
19703
19704
19705
19706
19707
19708
19709
19710
19711
19712
19713
19714
19715
19716
19717
.....
19733
19734
19735
19736
19737
19738
19739
19740
19741
19742
19743
19744
19745
19746
19747
19748
19749
19750
19751
19752
19753
19754
19755
19756
.....
19799
19800
19801
19802
19803
19804
19805
19806
19807
19808
19809
19810
19811
19812
19813
19814
19815
19816
19817
19818
19819
19820
19821
19822
.....
19871
19872
19873
19874
19875
19876
19877
19878
19879
19880
19881
19882
19883
19884
19885
19886
19887
19888
19889
19890
19891
19892
19893
19894
19895
19896
19897
19898
19899
19900
.....
19964
19965
19966
19967
19968
19969
19970
19971
19972
19973
19974
19975
19976
19977
19978
19979
19980
19981
19982
19983
.....
20187
20188
20189
20190
20191
20192
20193
20194
20195
20196
20197
20198
20199
20200
20201
20202
20203
20204
20205
20206
20207
20208
20209
20210
20211
20212
20213
20214
20215
20216
20217
20218
20219
20220
20221
20222
20223
20224
20225
20226
20227
20228
20229
20230
20231
20232
20233
20234
20235
20236
20237
.....
22019
22020
22021
22022
22023
22024
22025
22026
22027
22028
22029
22030
22031
22032
22033
22034
22035
22036
.....
22051
22052
22053
22054
22055
22056
22057

22058
22059
22060
22061
22062
22063
22064
.....
22446
22447
22448
22449
22450
22451
22452
22453
22454
22455
22456
22457
22458
22459
22460
22461
22462
22463
22464
22465
22466
22467
22468
22469
.....
22546
22547
22548
22549
22550
22551
22552
22553
22554
22555
22556
22557
22558
22559
22560
22561
22562
22563
22564
22565
22566
22567
22568
22569
22570
22571
22572
22573
22574
22575
22576
22577
22578
22579
22580
22581
22582
.....
22600
22601
22602
22603
22604
22605
22606






22607
22608
22609
22610
22611
22612
22613
.....
22695
22696
22697
22698
22699
22700
22701
22702

22703
22704






22705
























22706
22707
22708
22709
22710
22711
22712
22713
22714
22715
22716
22717
22718
22719
22720
22721
22722
22723
22724
22725
22726
22727
22728
22729
22730
22731
22732
22733
22734
22735
22736
22737
22738
22739
22740
22741
22742
22743
22744
22745
22746
22747
22748
22749
22750
22751
22752

22753
22754
22755
22756
22757

22758















22759
22760
22761
22762
22763
22764
22765
.....
22779
22780
22781
22782
22783
22784
22785






22786
22787
22788
22789
22790
22791
22792
22793
22794
22795
22796
22797
22798
22799
22800
22801
22802
22803










22804
22805
22806
22807
22808
22809
22810
22811
22812
22813
22814
22815
.....
23339
23340
23341
23342
23343
23344
23345
23346
23347
23348
23349
23350
23351
23352
23353
23354
23355
23356
23357
23358
23359
23360
23361
23362
23363
23364
.....
23401
23402
23403
23404
23405
23406
23407
23408
23409
23410
23411
23412
23413
23414
23415
23416
23417
23418
23419
23420
23421
23422
23423
23424
23425
23426
23427
23428
23429
23430
23431

23432
23433
23434
23435
23436
23437
23438
23439
23440
23441
23442
23443

23444
23445
23446
23447
23448
23449
23450
23451
23452
23453
23454
23455
23456
23457
23458
23459
23460
23461
23462
23463
23464
23465
23466
23467
23468
23469
23470
23471
23472
23473
23474
23475
23476
23477
23478
23479
23480
23481
23482
23483
23484
23485
23486
23487
23488
23489
23490
23491
23492
23493
23494
23495
23496
23497
23498












23499
23500
23501
23502
23503
23504
23505
.....
23527
23528
23529
23530
23531
23532
23533
23534


23535
23536
23537
23538
23539
23540
23541
.....
23542
23543
23544
23545
23546
23547
23548




23549
23550
23551
23552
23553
23554
23555
.....
23558
23559
23560
23561
23562
23563
23564
23565
23566
23567
23568
23569
23570
23571
23572
23573
23574
23575
23576
23577
23578
23579
23580
23581
23582
23583
23584
23585
23586
23587
23588
23589
23590
23591
23592
23593
23594
23595
23596
23597
23598
23599
23600
23601
23602
23603
23604











23605
23606
23607
23608
23609
23610
23611
.....
23623
23624
23625
23626
23627
23628
23629




23630
23631
23632
23633
23634
23635
23636
23637
23638
23639
23640
23641
23642
23643
23644
23645
23646
23647
23648
23649
23650
23651
23652
.....
23658
23659
23660
23661
23662
23663
23664
23665
23666
23667
23668
23669
23670
23671
23672
23673
23674
23675
23676
23677
23678
23679
23680
23681
23682
23683
23684
.....
23690
23691
23692
23693
23694
23695
23696
23697
23698
23699
23700
23701
23702
23703
23704
23705
23706
23707
23708
23709
23710
23711
23712
23713
23714
23715
23716
23717
23718
23719
23720
23721
23722
23723
23724
23725
23726
23727
23728
23729
23730
23731
23732
23733
23734
23735
23736
23737

23738
23739
23740
23741
23742
23743
23744
23745
23746
23747
23748
23749
23750
23751
23752
23753
23754
23755
23756
23757
23758
23759
.....
23781
23782
23783
23784
23785
23786
23787
23788
23789
23790
23791
23792
23793
23794
23795
23796
23797
23798

23799
23800
23801
23802
23803
23804
23805
23806
23807
23808
23809
23810
23811
23812
23813

23814
23815
23816
23817
23818
23819
23820
23821
23822
23823
23824
23825
23826
23827
23828
23829
23830
23831
23832
23833
23834
23835
.....
23848
23849
23850
23851
23852
23853
23854
23855
23856
23857
23858
23859
23860
23861
23862
23863
23864
23865
23866
23867
23868
23869
23870
23871
23872
23873
23874
23875
23876
.....
23904
23905
23906
23907
23908
23909
23910
23911
23912
23913
23914
23915
23916
23917
23918
23919
23920
23921
23922
23923
23924
23925
23926
23927
23928
23929
23930
23931
23932
23933
23934
23935
23936
23937
23938
23939
23940
23941
23942
23943
23944
23945

23946
23947
23948
23949
23950
23951
23952
23953
23954
23955
23956
23957
23958
23959
23960
23961
23962
23963
23964
23965
23966
23967
23968
23969
23970
23971
23972
23973
23974
23975

23976
23977
23978
23979
23980
23981
23982
23983
23984
23985
23986
23987
23988
23989
























23990
23991
23992
23993
23994
23995
23996
23997
23998
23999
24000
24001
24002
24003
24004
24005
24006
24007
24008
24009
24010
24011
24012
24013
24014
24015
24016
24017
24018
24019
24020
24021
24022
24023
24024
24025
24026
24027
24028
24029
24030
24031
24032
24033
24034
24035
24036
24037
24038
24039
24040
24041
24042
24043
24044
24045
24046
24047
24048
24049
24050
24051
24052
24053
24054
24055
24056
.....
24057
24058
24059
24060
24061
24062
24063

24064
















































24065
24066
24067
24068
24069










24070
24071
24072
24073
24074
24075
24076
24077
24078
24079
24080
24081
24082
24083
24084
24085
24086
24087
24088
24089
24090
24091
24092
24093
24094
24095
24096
24097
24098
24099
24100
24101
24102
24103
24104
24105
.....
24125
24126
24127
24128
24129
24130
24131
24132
24133
24134
24135
24136
24137
24138
24139
24140
24141
24142
24143
24144
24145
24146
24147
24148
24149
24150
24151
24152
24153
24154
24155
24156
24157
24158
24159
24160
24161
24162
24163
24164
24165
24166
24167
24168
24169
24170
24171
24172
.....
24176
24177
24178
24179
24180
24181
24182
24183
24184
24185
24186
24187
24188
24189
24190
24191
24192
24193
24194
24195
24196
24197
24198
24199
24200
24201
24202
24203
24204
24205
24206
24207
24208
24209
24210
24211
24212
24213
24214
24215
24216
24217
24218
24219
24220
24221
24222
24223
24224
24225
24226
24227
24228
24229
24230
24231
.....
24240
24241
24242
24243
24244
24245
24246
24247
24248
24249
24250
24251
24252
24253
24254
24255
24256
24257
24258
24259
24260
24261
24262
24263
24264
24265
24266
24267
24268
24269
24270
24271
24272
24273
24274
24275
24276
24277
24278
24279
24280
24281
24282
24283
24284
24285
24286
24287
24288
24289
24290
24291
24292
24293
24294
24295
24296
24297
24298
24299
24300
24301
24302
.....
24311
24312
24313
24314
24315
24316
24317

24318
24319
24320
24321
24322
24323
24324
.....
25177
25178
25179
25180
25181
25182
25183
25184
25185
25186
25187
25188
25189
25190
25191
25192
.....
27303
27304
27305
27306
27307
27308
27309
27310
27311
27312
27313
27314
27315
27316
27317
27318
27319
27320
27321
27322
27323
27324
27325
27326
27327
27328
27329
27330
27331
27332
27333
27334
27335
27336
27337
27338
27339
27340
27341
.....
27455
27456
27457
27458
27459
27460
27461
27462
27463
27464
27465
27466
27467
27468
27469
27470
27471
27472
27473
.....
28580
28581
28582
28583
28584
28585
28586

28587
28588
28589
28590
28591
28592
28593
TEST: c’est (enfin{{ )}} parti.
TEST: voici des (parenthèses{{ )}}, n’est-ce pas ?                        ->> )


# Parenthèses collées
__<s>/typo(typo_parenthèse_fermante_collée)__
    [)]\b(?![s¹²³⁴⁵⁶⁷⁸⁹⁰]\b)
    <<- not before("\\([rR][eéEÉ]$") ->> ") "                                                       && Il manque un espace après la parenthèse.
__<s>/typo(typo_parenthèse_ouvrante_collée)__
    \b[(](?=[^)][^)][^)])
    <<- ->> " ("                                                                                    && Il manque un espace avant la parenthèse.

TEST: C’est au fond du couloir{{(}}celui du deuxième étage{{)}}qu’il se trouve.
TEST: (a + b)²
TEST: il faut (re)former tout ça.


# Points et espaces
................................................................................
!!
!!
!!!! Dates                                                                                        !!
!!
!!
__[i]/date(date_nombres)__
    (?<!\d[ ./-])(\d\d?)([ ./-])(\d\d?)([ ./-])(\d\d\d+)(?![ ./-]\d)  @@0,*,w,**,$
    <<- \2 == \4 and not checkDate(\1, \3, \5) and not before("(?i)\\b(?:version|article|référence)s? +$") ->> _                       && Cette date est invalide.
    <<- ~>> \1-\3-\5

TEST: le {{29 02 2011}}
TEST: le {{40-02-2011}}
TEST: le {{32.03.2018}}
TEST: le {{81/01/2012}}
TEST: 12-12-2012
TEST: Articles 32.17-918 et 98.17-761
................................................................................
TEST: __ocr__ {{II}} pleut tout le temps.
TEST: __ocr__ En l’an {{2OO1}}, tout commença.


## Casse
__[s]/ocr(ocr_casse_pronom_vconj)__
    {w2}-(On|Ils?|Elles?|Tu|Je|Nous|Vous|Mêmes?|Ci|Là|Une?s|Les?|La|Leur) @@$
    <<- -1>> =\1.lower()                                                                            && Erreur de numérisation ? Casse douteuse.

TEST: __ocr__ Part-{{On}} demain ?
TEST: __ocr__ À ce compte-{{Ci}}, on n’en viendra jamais à bout.
TEST: __ocr__ Quelques-{{Uns}} sont incapables d’y parvenir.


## Mots inconnus du dictionnaire
................................................................................
TEST: __ocr__ Alors, dis-moi, comment triompher de tous les empires de la Terre ?
TEST: __ocr__ prenez-en.


## Trait d’union conditionnel
__[i]/ocr(tu_trait_union_conditionnel)__
    ({w1})‑({w1})  @@0,$
    <<- ->> \1\2|\1-\2                                                                              && Trait d’union conditionnel. Erreur de numérisation ?

TEST: __ocr__ c’est {{anti‑américain}}


## Caractères rares
__<s>/ocr(ocr_caractères_rares)__
    \w*[{}<>&*#£^|]+\w*
................................................................................
!!!


!!!! Doublons                                                                                     !!

__[s](doublon)__
    ({w1}) {1,3}\1  @@0
    <<- not re.search("(?i)^([nv]ous|faire|en|la|lui|donnant|œuvre|h[éoa]|hou|olé|joli|Bora|couvent|dément|sapiens|très|vroum|[0-9]+)$", \1)
        and not (re.search("^(?:est|une?)$", \1) and before("[’']$"))
        and not (\1 == "mieux" and before("(?i)qui +$"))
    ->> \1   && Doublon.

TEST: Il y a un {{doublon doublon}}.


!!!! Nombres: typographie                                                                         !!

#(\d\d\d\d)-(\d\d\d\d)   <<- ->> \1–\2                              && Ne pas séparer deux dates par un trait d’union, mais par un tiret demi-cadratin.
................................................................................
TEST: {{3O}} (chiffre avec un O).                                         ->> 30


!!!! Écritures épicènes invariables                                                               !!

__[i](d_eepi_écriture_épicène_pluriel)__
    ({w_1}[éuitsrn])_(?:[nt]|)e_s  @@0
    <<- morph(\1, ":[NAQ]", ":G") =>> define(\1, ":N:A:Q:e:p")

__[i](d_eepi_écriture_épicène_singulier)__
    ({w_2}[éuitsrn])_e  @@0
    <<- morph(\1, ":[NAQ]") =>> define(\1, ":N:A:Q:e:s")


!!!! Purge des références aux notes                                                               !!

# les références aux notes
__<s>(p_exposants)__
    [¹²³⁴⁵⁶⁷⁸⁹⁰]+
    <<- ~>> *

__[i](p_références_aux_notes)__
    ({w_2})(\d+)  @@0,$
    <<- not morph(\0, ":") and morph(\1, ":") ~2>> *

TEST: POLITIQUESOCIÉTÉÉCONOMIEMONDECULTUREART DE VIVREMAGAZINE (qui peut faire boguer JavaScript avec certaines regex)


!!!! Traits d’union                                                                               !!

__[i]/tu(tu_trait_union_douteux)__
................................................................................

TEST: Nous préparons une {{contre–attaque}}.
TEST: Nous préparons une {{contre−attaque}}.


__<i]/tu(tu_t_euphonique_incorrect)__
    ([-–—− ]t(?:[’' ][-–—−]?|[-–—−][’' ]?))(ie?ls?|elles?|on|tu)  @@0,$
    <<- re.search("(?i)^(?:ie?ls|elles|tu)$", \2) -1>> -    && Le “t” euphonique n’est pas nécessaire avec “\2”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?T1=t+euphonique&id=2513
    <<- __else__ and \1 != "-t-" and \1 != "-T-" -1>> -t-   && Pour le “t” euphonique, il faut deux traits d’union. Pas d’apostrophe. Pas d’espace.
    <<- \1 != "-t-" ~1>> -t-
__<i]/tu(tu_t_euphonique_superflu)__
    [td]([- ]t[-’' ])(?:il|elle|on)  @@1
    <<- -1>> -                                              && Le “t” euphonique est superflu quand le verbe se termine par “t” ou “d”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?T1=t+euphonique&id=2513
    <<- \1 != "-t-" ~1>> -t-
__<i]/tu(tu_t_euphonique_manquant)__
    [aec](-(il|elle|on))  @@1,2  <<- -1>> -t-\2             && Il faut un “t” euphonique.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?T1=t+euphonique&id=2513

TEST: va{{ t’}}il y parvenir ?                          ->> -t-
TEST: A{{ t’}}elle soif ?                               ->> -t-
TEST: A{{ t-}}elle faim ?                               ->> -t-
TEST: a{{ t'}}elle                                      ->> -t-
TEST: a{{-t'}}il                                        ->> -t-
TEST: a{{-t }}il.                                       ->> -t-
................................................................................
    environ  [$:B|*NUM]
        <<- not value(<1, "|l’|un|cet|quel|") =>> exclude(\1, ":N")

    grave
        <<- morph(<1, ":D") =>> (\1, ":W")


__da_prépositions__



    dans
        <<- not morph(<1, ":D.*:p|>[a-z]+ième/") =>> select(\1, ":R")

    passé  [<end>|,|$:R]
        <<- =>> exclude(\1, ":G")

    y compris
        <<- not value(<1, "|n’|j’|tu|t’|m’|s’|") ~>> ␣
        <<- __also__ =>> define(\1, ":G:R")


__da_puis__
    puis
        <<- not value(<1, "|je|ne|n’|le|la|l’|les|lui|nous|vous|leur|") =>> =exclude(\1, ":V")


__da_SA__
    SA
        <<- morph(<1, ":D") =>> exclude(\1, ":D")


__da_mots_grammaticaaux__
    [le|ce|cet|mon|ton|son|quel|quelque|notre|votre|un|leur|ledit|dudit|des|les|quelques|quel|quelle|quels|quelles]  [son|ton]
        <<- =>> exclude(\2, ":D")

    [la|ma|ta|sa|les|des|nos|vos|leur|leurs|quel|quelle|quels|quelles] personne
        <<- =>> select(\2, ":N")

    [le|la|l’|les|du|ces|des|mes|tes|ses|nos|vos|leurs|quelques|quels|quelles] même
        <<- =>> select(\2, ":A")

    [le|l’|mon|notre|votre|leur|mes|tes|ses|nos|vos|leurs|quel|quels|quelle|quelles] point
        <<- =>> select(\2, ":N")





















__da_autre_chose_quelque_chose__
    quelque chose
        <<- =>> define(\2, ":N:m:s")

    autre chose
        <<- not morph(<1, ">entre/|:D") ~>> ␣
................................................................................
        <<- =>> define(\1, ":G")


__da_groupe_nominal__
    aucun  @:[NA].*:[me]
        <<- =>> exclude(\2, ":V")







    bac + ~^\d\d?$
        <<- ~>> ␣
        <<- =>> define(\1, ":N:e:i")

    [de|d’]  @:¬:[YD]
        <<- =>> exclude(\2, ":(?:[123][sp]|P)")

................................................................................
        <<- =>> define(\1, ":LN:m:p")

    l’ une comme l’ autre
        <<- ~>> ␣
        <<- =>> define(\1, ":LN:f:p")

    [des|chaque|quelque|quelques|cet|cette|ces|mon|ma|ta|sa|mes|tes|ses|au|aux|notre|votre|nos|vos|leurs|aucun|aucune]  *WORD
        <<- =>> exclude(\2, ":V")

    les  ~.es$
        <<- not value(<1, "|tu|ne|n’|me|m’|te|t’|se|s’|nous|vous|") and morph(\2, ":V1.*Ip.*:2s") and not tag_before(\1, "_2s_") and not value(>1, "|tu|pas|jamais|")
        =>> exclude(\2, ":V")

    [un|une]  *WORD
        <<- not value(<1, "|l’|quelqu’|quelqu|") and not value(\2, "|a|fut|fût|est|fait|") and not morph(\2, ":P") =>> exclude(\2, ":V")
................................................................................
    de [tous|toutes] les *WORD
        <<- =>> select(\4, ":[NA]")

    en tant que  *WORD
        <<- =>> exclude(\4, ":[123][sp]")

    en peine
        <<- =>> exclude(\2, ":V")

    m’ [dame|sieur]
        <<- ~>> ␣

    nombre  [de|d’|des]  [@:[NA]|<end>|,]
        <<- not morph(<1, ":D") >>>
        <<- morph(<1, ":A.*:[me]:[si]") =>> add_morph(\1, ">nombre/:G:D")
................................................................................
    y a ?@:[WX]¿ faute
        <<- !-1>>

TEST: New York {{étaient}} {{devenue}} la plaque tournante de tous les trafics.
TEST: de Bordeaux ou de n’importe où
TEST: il n’y a pas faute.
TEST: une séparation hommes/femmes







!!!! Élisions                                                                                     !!

# presque : élision
__typo_presque__
................................................................................

    >arrière >petit >neveu
        <<- /tu/ ->> arrière-petit-neveu|arrière-petits-neveux      && Mettez des traits d’union.

    >arrière >petit >nièce
        <<- /tu/ ->> arrière-petite-nièce|arrière-petites-nièces    && Mettez des traits d’union.






    [basket|volley] ball
        <<- /tu/ ->> \1-\2                                      && Il manque un trait d’union.

    bas [>côté|coté|cotés]
        <<- /tu/ morph(<1 , ":D") ->> bas-côté|bas-côtés        && Il manque un trait d’union.

    [les|des|aux] beaux arts
................................................................................

    bouche à [bouche|>oreille]
        <<- /tu/ morph(<1, ":D") ->> \1-\2-\3                   && Il manque les traits d’union.

    >centre >ville
        <<- /tu/ ->> centre-ville|centres-villes                && Il manque un trait d’union.




    [chassé+ses] [croisé+ses]
        <<- /tu/ ->> chassé-croisé|chassés-croisés              && Il manque un trait d’union.

    château fort
        <<- /tu/ not morph(>1, ":A.*:[me]:[si]") ->> \1-\2      && Il manque un trait d’union.|https://fr.wiktionary.org/wiki/ch%C3%A2teau-fort

    châteaux forts
................................................................................
TEST: un {{arrière grand parent}}
TEST: un {{arrière grand père}}
TEST: nos {{arrière petits enfants}}
TEST: son {{arrière petite fille}}
TEST: mon {{arrière petit fils}}
TEST: un {{arrière petit neveu}}
TEST: ton {{arrière petite nièce}}

TEST: je déteste le {{basket ball}}
TEST: sur le {{bas côté}}
TEST: les {{beaux arts}}
TEST: {{le}} {{bouche à oreille}}

TEST: {{chef lieu}} de ce canton
TEST: un {{chassé croisé}}
TEST: ne vois-tu pas que c’est un {{chef d’œuvre}} ?
TEST: ils sont allés au {{centre ville}}.
TEST: un {{château fort}} n’est pas une demeure confortable
TEST: des {{châteaux forts}}
TEST: un {{coffre fort}}
................................................................................
TEST: C’est un peu trop {{tape à l’œil}} comme couleur, tu ne trouves pas ?
TEST: beaucoup de {{tête à tête}}
TEST: {{un}} {{trompe l’œil}}
TEST: un {{va et vient}} incessant me casse la tête
TEST: il va et vient sans mot dire
TEST: Il a été nommé {{vice président}}
TEST: un super {{week end}}                             ->> week-end



















__tu_va_t_en__
    va t en
    va t-en


    va-t en
    va-t-en
    vat-en
        <<- /tu/ not value(>1, "|guerre|guerres|") ->> va-t’en                                      && Une apostrophe est nécessaire (s’en aller).

    va t en >guerre

    va-t’en >guerre
    va t’en >guerre
    va-t en >guerre
    va t-en >guerre



    vat’en >guerre
    vat-en >guerre
    vat en >guerre

    va-t-en >guerre
    va-t’en-guerre

        <<- /tu/ ->> va-t-en-guerre                                                                 && Va-t-en-guerre (invariable) : des traits d’union sont nécessaires.|https://fr.wiktionary.org/wiki/va-t-en-guerre

TEST: {{Va-t-en}}, c’en est assez.
TEST: Un {{va-t’en guerre}}, on ne peut pas lui faire confiance.
TEST: Les {{va-t-en guerre}} sont de sortie.
TEST: Elle va t’en donner, des devoirs.

................................................................................
__tu_toponymes__
    Aix en Provence
    [Île|Ile] de France
    Pas de Calais
    Saône et Loire
        <<- /tu/ ->> \1-\2-\3                                                                       && Il manque les traits d’union.





    Bosnie Herzégovine
    Charente Maritime
    Clermont [Ferrant|Ferrand]
    Colombie Britannique
    États Unis
    Franche Comté
    Grande Bretagne
    Haute [Garonne|Loire|Marne|Normandie|Corse|Vienne]
    Maison Blanche
    Moyen Orient
    Nouveau Brunswick
    Nouvelle [Zélande|Calédonie|Orléans]
    Rhône Alpes
        <<- /tu/ ->> \1-\2                                                                          && Il manque un trait d’union.




    [les|des|aux]   Pays Bas
    [<start>|,|(]     Pays Bas  contre
        <<- /tu/ -2:3>> \2-\3                                                                       && Il manque un trait d’union.

    Royaume Uni
        <<- /tu/ ->> Royaume-Uni                                                                    && Il manque un trait d’union (s’il s’agit de l’État englobant la Grande-Bretagne et l’Irlande du Nord).

    [Saint|Sainte] /_Tit_
        <<- /tu/ not value(<1, "|<start>|") and morph(\2, ":M") ->> \1-\2
        && Il manque un trait d’union s’il s’agit d’une église, d’une cité, d’une communauté, d’un lieu… S’il s’agit d’une personne, écrivez “saint” ou “sainte” sans majuscule, sans trait d’union.





    [St|Ste]  /_Tit_
        <<- /tu/ ->> \1-\2
        && Il manque un trait d’union s’il s’agit d’une église, d’une cité, d’une communauté, d’un lieu… S’il s’agit d’une personne, écrivez “saint” ou “sainte” sans majuscule, sans trait d’union.

TEST: Il passe par {{Aix en Provence}}
TEST: Qui se souvient de la {{Bosnie Herzégovine}} ?
................................................................................
TEST: Il fait son stage étudiant aux {{États Unis}}
TEST: Des fromages délicieux de {{Franche Comté}}
TEST: Étudier en {{Grande Bretagne}}
TEST: La {{Haute Garonne}}
TEST: L’{{Île de France}} est surpeuplée.
TEST: Un nouveau président à la {{Maison Blanche}}
TEST: La guerre au {{Moyen Orient}}

TEST: Il ne connaît au {{Nouveau Brunswick}}
TEST: Elle a visité la {{Nouvelle Orléans}}
TEST: Vivre dans le {{Pas de Calais}}
TEST: Vivre aux {{Pays Bas}}
TEST: Des vacances en {{Rhône Alpes}}
TEST: Émigrer au {{Royaume Uni}}
TEST: Elle déménage en {{Saône et Loire}}
TEST: La station {{Saint Georges}}

TEST: Elle va prier à {{Ste Catherine}}.


__tu_nombres__
    dix                                                                     [sept|huit|neuf]
    dix                                                                     [>septième|>huitième|>neuvième]
    [trente|quarante|cinquante|soixante|septante|octante|huitante|nonante]  [deux|trois|quatre|cinq|six|sept|huit|neuf]
................................................................................
TEST: Peu d’{{entre-nous}} savent ce dont il s’agit.


__tu_y_attaché__
    ~^[yY][’-]\w+
        <<- /tu/ morph(\1, ":V0", "", 2) -1>> ="y " + \1[2:]                    && Ni apostrophe ni trait d’union après “y”.

    ~^[yY][’-][\w-]+-(?:ils?|elles?|je|tu|on|nous|vous)
    y’en
    y-en
        <<- /tu/ -1>> ="y " + \1[2:]                                            && Ni apostrophe ni trait d’union après “y”.

TEST: {{Y’a}} trop de malheureux sur Terre.             ->> "Y a"
TEST: {{Y’en}} a marre, de ces conneries.               ->> "Y en"
TEST: {{y-a-t-il}} des beignets ?                       ->> "y a-t-il"
................................................................................
        <<- /conf/ \2.islower() and not value(<1, "|le|la|les|") and hasSimil(\2, ":[NA]:[fe]:[si]")
        -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                                                && Incohérence avec « \1 » : « \2 » est un verbe.

    sa  @:(?:Y|[123][sp])¬:(?:N.*:[fe]|A|W)
        <<- /conf/ not \1.isupper() and \2.islower() >>>
        <<- /conf/ morph(\2, "V.....[pqx]") -1>> ça|se                                              && Confusion : « \2 » est un verbe. Exemples : sa jambe, ça vient. (Une faute de frappe peut-être ?)
        <<- /conf/ __else__ -1>> ça                                                                 && Confusion : « \2 » est un verbe. Exemples : sa jambe, ça vient.

        <<- /conf/ hasSimil(\2) -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                        && Incohérence avec « \1 » : « \2 » est un verbe.

    sa  a
        <<- /conf/ not \1.isupper() -1>> ça                                                         && Confusion. Si vous voulez dire “cela”, écrivez “ça”.

TEST: Cette {{pèle}} est trop fragile.
TEST: {{sa}} devient difficile.
TEST: il me tendit {{sa}} {{pèche}}.
................................................................................
TEST: on va y arriver, {{au temps que faire se peu}}…
TEST: autant que faire se peut, il faut éviter la confusion entre ces deux discours.


# ça / çà / sa
__conf_ça_çà_sa!7__
    ça  @:[NAQ].*:f¬:(?:G|P|[123][sp])|>seul/
        <<- /conf/ not morph(<1, ">(?:appeler|considérer|trouver)/") -1>> sa    && Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    sa  @:G¬>(?:tr(?:ès|op)|peu|bien|plus|moins|toute|presque|non)/|:[NAQ].*:f
        <<- /conf/ not (value(\2, "|ou|") and value(>1, "|son|ses|")) and morph(\1, ":D")
        -1>> ça   && Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).




    çà
        <<- /conf/ not value(<1, "|oh|ah|") and not after("^ +et là")
        ->> ça                                          && Confusion : « çà » ne s’emploie plus guère que dans l’expression « çà et là ».

    ça et là
        <<- /conf/ not morph(<1, ":R") ->> çà et là     && Confusion : « ça » équivaut à « cela ». Dans l’expression « çà et là », « çà » équivaut à « ici ».

    sa  [<end>|,|)]
        <<- /conf/ \1 != "SA" -1>> ça                   && Confusion probable : “sa” est un déterminant féminin singulier. Pour l’équivalent de “cela” ou “ceci”, écrivez “ça”.

    [c’|ç’] [à|a]
        <<- /conf/ space_after(\1, 0, 0) and not (value(\2, "|a|") and value(>1, "|été|")) >>>
        <<- /conf/ value(>1, "|été|") -2>> a            && Confusion. Pour le verbe avoir à la 3ᵉ personne du singulier, écrivez “a”.
        <<- /conf/ __else__ ->> ça|sa                   && Confusion. Si vous voulez dire “cela”, écrivez “ça”. Pour le déterminant possessif, écrivez “sa”.




TEST: Je prends {{sa}}…
TEST: {{ça}} patrie, il la détestait
TEST: et {{sa}} par deux fois
TEST: Il trouva de la nourriture {{ça et là}}.                                  ->> çà et là
TEST: c’est {{çà}}                                                              ->> ça
TEST: Elle parle comme {{ça}} mère.                                             ->> sa
TEST: C’est comme {{sa}}.
TEST: pas sûr que {{sa}} soit fini                                              ->> ça
TEST: {{sa}} l’ennuierait, ce fils de pute, de dire bonjour ?
TEST: il faut s’y prendre comme {{sa}}
TEST: on fait {{sa}} lorsqu’on a tout perdu
TEST: {{ç’a}} craint, cette histoire
TEST: ç’{{à}} été dur                                                           ->> a

TEST: ç’a été difficile.
TEST: Eux, ils appellent ça routine.
TEST: avec sa presque belle-mère
TEST: sa toute nouvelle application de synchronisation de fichiers
TEST: communiquer avec sa ou son partenaire.
TEST: Je trouve ça logique.
TEST: le tout accompagné de sa non moins spectaculaire signature.
TEST: Emblème des SA.
TEST: chef d’état-major de la SA.
TEST: À partir de 1934, et après l’élimination de ses principaux dirigeants durant la nuit des Longs Couteaux, la SA ne joue plus aucun rôle politique.
TEST: Adolf Hitler a créé les SA à Munich le 8 août 1921 en réunissant d’anciens combattants, des officiers mécontents et des membres des corps francs
TEST: En 1933, après l’élection du NSDAP, les SA se voyaient en concurrence avec l’armée régulière (Reichswehr)



# car / quart
__conf_quart_car__
    [un|du|ce|quel|mon|ton|son|notre|votre|leur] car d’ heure
        <<- /conf/ not after("^ +en +heure") -2>> quart             && Confusion. Une heure est composée de quatre “quarts d’heure”.

................................................................................

TEST: Encore un {{comte}} de fée, assez de ces fadaises !
TEST: c’est un {{compte}} allégorique.
TEST: {{Comptes}} et légendes des Terres du Milieu.
TEST: ce sont des {{comptes}} de bonnes femmes
TEST: Elle parla au comte d’amour, mais il fit mine de n’y rien entendre.











# corps / cor
__conf_corps_cor__
    [a|à] bras le >cor
        <<- /conf/ ->> à bras le corps                                              && Confusion. Le cor est instrument de musique.

    à >cor [perdu+ses]
................................................................................

    [à|a] [cour+s|courre+s|courts] >terme
        <<- /conf/ ->> à court terme                        && Confusion. Une cour… Un cours… Adjectif : court(e).

    au [cour|court+s|courre+s] [de|d’|des|du]
        <<- /conf/ -2>> cours                               && Confusion. Locution “au cours de”. Une cour… Un cours… Adjectif : court(e).

    en cour martiale
    en cour [de|d’] [cassation|justice]
    en cour d’ >assise
        <<- !1:2>>

    en cour
        <<- /conf/ not value(>1, "|suprême|fédérale|")
        ->> en cours                                        && Confusion probable. Une cour… Un cours… Adjectif : court(e).

    [<start>|,|en|un|le|ce|mon|notre|votre|leur|des|les|mes|tes|ses|ces|nos|vos|leurs|quelques|plusieurs|certains] [court+s] [de|d’]
        || [allemand|anglais|arabe|arabe|bengali|bhodjpouri|cantonais|coréen|égyptien|espagnol|français|grec|gujarati|haoussa|hébreu|hindi|indonésien|italien|italien|latin|japonais|javanais|mandarin|marathi|minnan|ourdou|pendjabi|persan|portugais|russe|sanskrit|sanscrit|swahili|tamoul|thaï|turc|tégoulou|vietnamien|wu]
    [<start>|,|en|un|le|ce|mon|notre|votre|leur|des|les|mes|tes|ses|ces|nos|vos|leurs|quelques|plusieurs|certains] [court+s] [de|d’]
        || [>administration|>agriculture|>agronomie|>art|>biologie|>chant|>commerce|>culture|>cristallographie|>conduite|>cuisine|>danse|>dessin|>ébénisterie|>écriture|>épistémologie|>droit|>éducation|>électronique|>électrotechnique|>élocution|>éthique|>géographie|>gestion|>histoire|>karaté|>kung-fu|>informatique|>langue|>lettre|>littérature|>orientation|>morale|maintien|>mathématique|>math|>mécanique|>médecine|>menuiserie|>musique|>odontologie|>pâtisserie|>peinture|>philosophie|>philo|>physique|>programmation|>psychologie|>science|>sport|>théâtre|>théologie]
        <<- /conf/ -2>> cours                               && Confusion probable : “court” signifie “de peu de longueur”. Pour un enseignement, écrivez “cours”.|https://fr.wiktionary.org/wiki/cours

    >couper  ?@:[WX]¿  [cour+s|courre+s|courts]
        <<- /conf/ --1>> court                              && “Couper court” qui signifie écourter. Noms : une cour, un cours… Adjectif : court.

    >avoir ?@:[WX]¿  [cour|court+s|courre+s]
        <<- /conf/ --1>> cours                              && Confusion. « Avoir cours ».|https://fr.wiktionary.org/wiki/avoir_cours

    [>avoir|>donner|>laisser]   ?@:[WX]¿  libre [cour|court|courts|courre|courres]
        <<- /conf/ --1>> cours                              && Confusion probable. Ce qui a « libre cours ».|https://fr.wiktionary.org/wiki/donner_libre_cours

TEST: au {{court}} de cette journée
TEST: les exercices {{en cour}} se déroulent bien.
TEST: je vais couper {{cours}} à ces conneries.
TEST: il faut donner libre {{cour}} à ses envies.
TEST: elle va en {{court}} de lettres
................................................................................
TEST: le rendement {{à cours terme}} est excellent.
TEST: à {{cours}} d’argent
TEST: le portage a encore {{cour}}
TEST: porter l’affaire en Cour de justice
TEST: jusqu’en cour de cassation
TEST: le jugement en cour d’assises
TEST: ils vont passer prochainement en cour martiale.




# cuir / cuire
__conf_cuir_cuire__
    >dur [à|a] >cuir
        <<- /conf/ -3>> cuire           && Confusion. Locution “dur à cuire”. Le cuir est le nom qu’on donne à la peau animale. Pour évoquer la cuisson, écrivez “cuire”.|https://fr.wiktionary.org/wiki/cuire
        <<- /conf/ \2 == "a" -2>> à     && Confusion : “a” est une conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.

    en cuire [de|d’] [buffle|crocodile|hippopotame|porc|vache]
        <<- /conf/ -2>> cuir            && Confusion. La peau animale s’écrit “cuir”.|https://fr.wiktionary.org/wiki/cuire

TEST: ce sont des durs à {{cuir}}
TEST: Quelle dure {{a}} {{cuir}}, celle-là.
TEST: revêtement en {{cuire}} de vache


# dans / d’en
................................................................................
    [fausse+s] [au|aux|des] [>caïman|>crocodile|>charognard|>lion|>loup|>louve|ours|>serpent|>cobra|>diable]
    [fausse+s] [>abyssal|>canin|>béant|>commun|>océanique|>sous-marine|>septique|>immense|>profond|>nasal|>iliaque|>temporal]
        <<- /conf/ -1>> =\1.replace("au", "o").replace("AU", "O")           && Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

    au bord de la fausse
        <<- /conf/ -5>> fosse                                               && Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.





TEST: la {{fausse}} Calypso.
TEST: La {{fausse}} des Mariannes.
TEST: La {{fausse}} d’aisance.
TEST: La {{fausse}} à lisier.
TEST: Une {{fausse}} commune.
TEST: La {{fausse}} du Chili.
TEST: Nous sommes tombés dans la {{fausse}} aux lions.
TEST: Elles sont arrivées au bord de la {{fausse}}.




# forcement / forcément
__conf_forcément_forcement__
    [/_VCint_|/_VCimp_]  ?[pas|plus|jamais|guère]¿  forcement
    [pas|plus] forcement
        <<- /conf/ --1>> forcément                          && Confusion probable : le forcement est l’action de forcer quelque chose. L’adverbe s’écrit “forcément”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment
................................................................................
TEST: Il n’y en a plus {{guerre}}.
TEST: y peut {{guerre}} réussir quoi que ce soit, cet idiot.
TEST: elles sont sur le pied de {{guère}} depuis 10 jours.
TEST: Je hais la {{guère}}.
TEST: je n’en aimais certains guère.
TEST: ce que nous appelons Guerre psychologique













# héro / héros
__conf_héros__
    [le|quel|ce|cet|un|du|au]  héro
        <<- /conf/ -2>> héros                               && Confusion. L’héro est l’abréviation de “héroïne” (la drogue). L’homme héroïque s’écrit “héros”.

TEST: Mon frère, {{ce}} {{héro}} !
................................................................................
    à partir de l’ [instant|année|heure]    ou
    à partir de la [minute|semaine|seconde] ou
    depuis le [jour|millénaire|moment|mois|siècle]  ou
    depuis la [minute|semaine|seconde]              ou
    depuis l’ [année|heure|instant]                 ou
        <<- /conf/ --1>> où                                 && Confusion. La conjonction “ou” signale une alternative. Pour évoquer un lieu, un temps ou une situation, écrivez “où”.


    >être ?$:W¿ dans [une|cette|la] situation ou
    [vient|vint|viendra|viendrait] un temps ou
        <<- /conf/ --1>> où                                 && Confusion probable. La conjonction “ou” signale une alternative. Pour évoquer un lieu, un temps ou une situation, écrivez “où”.

    [là|>aller] ou le vent
        <<- /conf/ -2>> où                                  && Confusion. La conjonction “ou” signale une alternative. Pour évoquer un lieu, un temps ou une situation, écrivez “où”.

TEST: {{Ou}} sont tes affaires ?                                    ->> Où
................................................................................
TEST: Ça consiste {{pelle mêle}} en diverses choses.
TEST: habitées par un peuple de prostituées […], vivant là, entassées pêle-mêle avec toutes sortes d’individus plus ou moins suspects, souteneurs et repris de justice pour la plupart.


# peu / peux / peut
__conf_peu_peut_peux!6__
    peu [pas|donc|jamais|rien|parfois|alors|enfin|rarement|éventuellement]
        <<- /conf/ not morph(<1, ">(?:très|en|un|de|du)") -1>> peut         && Confusion probable : « peu » signifie « pas beaucoup », pour le verbe pouvoir, écrivez “peut”.

    !! peu à peu ¡¡
    [peux|peut|peu] [a|à|ah|ha|as] [peux|peut|peu]
    peu-a-peu
    peu-à-peu
    peut-a-peu
    peu-à-peut
................................................................................
    [je|tu] ?[ne|n’]¿ peu
        <<- /conf/ --1>> peux                                               && Confusion : « peu » signifie « pas beaucoup ».

    [ne|se|n’|s’] peu
        <<- /conf/ -2>> peut                                                && Confusion. Exemples : Il est peu habile, mais il peut y arriver.

    [peut|peux]  @:A¬:(?:[MGWYX]|3[sp])
        <<- /conf/ not morph(\2, ">seul/") and not morph(<1, ">(?:je|tu|il|on|ne)")
        -1>> peu                                                            && Confusion probable : « \1 » est une conjugaison de « pouvoir », utilisez « peu ».

TEST: {{peu}} rarement y arriver.
TEST: Il est un {{peut}} comme une forêt
TEST: cela ne se {{peu}}.
TEST: des bâtisses {{peu a peu}} abandonnées.
TEST: voilà {{peut ou proue}} ce qu’on entend
................................................................................
        <<- /conf/ -1>> pore|pores                                          && Confusion. Les pores de la peau .|https://fr.wiktionary.org/wiki/pore

    [>pore|>port] [braisé+ses|caramélisé+ses|confit+s|cuit+s|farci+ses|grillé+ses|laqué+ses|mariné+ses|mijoté+ses|poêlé+ses]
    [>pore|>port] au [caramel|cognac|cidre|citron|chorizo|cumin|curry|four|fenouil|gingembre|lait|miel|roquefort|vin|vinaigre]
    [>pore|>port] aux [abricots|cèpes|champignons|carottes|épices|fèves|figues|fruits|girolles|haricots|herbes|lardons|légumes|lentilles|marrons|morilles|noisettes|nouilles|oignons|ognons|pâtes|poires|pommes|patates|pruneaux]
    [>pore|>port] à la [bière|crème|cocotte|curcuma|moutarde|sauce|sauge]
    [>pore|>port] à l’ [ananas|armagnac|estragon|orange]
    [>pore|>port] en [>croûte|>croute]
        <<- /conf/ -1>> porc|porcs                                          && Confusion. Pour évoquer l’animal, écrivez “porc”.|https://fr.wiktionary.org/wiki/porc

    [>blanquette|>boulette|>brochette|>confit|>côte|>côtelette|>émincé|>escalope|>jarret|>joue|>longe|>mijoté|>nem|>paupiette|>pied|>poitrine|>ragoût|>ragout|>rillette|>rouelle|>rôti|>rognon|>sauté|>terrine]
        || [de|d’] [>pore|>port]
    >filet ?[mignon+s]¿ [de|d’] [>pore|>port]
        <<- /conf/ --1>> porc                                               && Confusion. Pour évoquer l’animal, écrivez “porc”.|https://fr.wiktionary.org/wiki/porc

    [>avaler|>bouffer|>élever|>manger|>mâcher|>mastiquer] $:D¬:R [>pore|>port]
    [>avaler|>bouffer|>élever|>manger|>mâcher|>mastiquer] $:D¬:R [>pore|>port]
    >élevage [de|d’] [>pore|>port]
        <<- /conf/ --1>> porc|porcs                                         && Confusion. Pour évoquer l’animal, écrivez “porc”.|https://fr.wiktionary.org/wiki/porc

    [>pore|>porc] [de|d’] [plaisance|pêche]
    [>pore|>porc] [>maritime|>spatial]
        <<- /conf/ -1>> port|ports                                          && Confusion. Pour évoquer un havre côtier où les bâteaux accostent, écrivez “port”.|https://fr.wiktionary.org/wiki/port

................................................................................
TEST: Quand à mon tour je réalise l’imposture, c’est trop tard.


__conf_qu_en_quand_quant__
    [quand|quant]   $:P
        <<- /conf/ -1>> qu’en                                               && Confusion probable.

    [quand|quant] [est|était|fut] il [de|des|du]
    [quand|quant] [est-il|était-il|fut-il|sera-t-il] [de|des|du]
        <<- /conf/ -1>> qu’en                                               && Confusion probable. Ce qu’il en est de… → Qu’en est-il de… ?




    [le|les|du|des|ce|ces|quelque|quelques] quand dira-t-on
    [le|les|du|des|ce|ces|quelque|quelques] quand dira t on
    [le|les|du|des|ce|ces|quelque|quelques] quand-dira-t-on
        <<- /conf/ -2:0>> qu’en-dira-t-on           && Confusion. Pour évoquer l’opinion publique, écrivez “qu’en-dira-t-on”.|https://fr.wiktionary.org/wiki/qu%E2%80%99en-dira-t-on

TEST: il comprit {{quand}} prenant son parti, il se protégeait aussi.
TEST: {{Quand}} est-il du chien ?

TEST: il avait une peur bleue des {{quand dira-t-on}}.
TEST: il est exact qu’en je ne sais combien de temps il parvint à un résultat inattendu.
TEST: il comprit trop tard qu’en elle naquit alors le doute qui l’éloigna de lui à jamais.


# quand bien même
__conf_quand_bien_même__
    tant bien même
................................................................................
TEST: qu’elle {{quand}} soit le résultat                                ->> qu’en
TEST: {{qu’elle qu’en soi}} la raison, ça ne suffit pas.                ->> quel qu’en soit|quelle qu’en soit
TEST: {{qu’elles qu’en soient}} les raisons                             ->> quels qu’en soient|quelles qu’en soient


# quelque part
__conf_quelque_part__
    [quel|quels|quelle|quelles] que [pare|pares|par|pars|>part]
    [quelque|quelques] [pare|pares|par|pars|parts]
    quelques part
        <<- /conf/ ->> quelque part                                         && Confusion probable.|https://fr.wiktionary.org/wiki/quelque_part

TEST: Il faut bien aller {{quelle que part}}.
TEST: Je les ai oubliés {{quelque pars}}.
TEST: Elles sont forcément {{quelque parts}} ici.

................................................................................
TEST: {{Quoiqu’}}il se soit passé réellement passé, je vais lui faire la peau.
TEST: {{quoique}} vous ayez pu faire, ça a donné les résultats escomptés.


# raisonner / résonner
__conf_raisonner_résonner__
    [la|le|les|me|te|se|nous|vous] >résonner
        <<- /conf/ -2>> =\2.replace("réso", "raiso")            && Confusion probable. Vous utilisez la raison, mais vous ne “sonnez” pas.

TEST: Vous {{résonnez}} comme un sot.
TEST: Nous allons le {{résonner}}.


# repère /  repaire
__conf_repaire_repère__
................................................................................

    au [sain|saint|seing] [de|des|du|d’]
        <<- /conf/ -2>> sein
        && Confusion probable : “sain” signifie “en bonne santé”, “saint” évoque ce qui “sanctifié”. Pour évoquer, au sens figuré, ce qui est une partie intime de quelque chose ou quelqu’un, écrivez “sein”.|https://fr.wiktionary.org/wiki/sein

    [>sein|saint+s] d’ esprit
    [>sein|saint+s] de corps et d’ esprit
        <<- /conf/ -1>> sain|sains                              && Confusion probable. Pour dire “en bonne santé”, écrivez “sain”.

    [blanc-sein+s|blancs-sein+s]
    [blanc-sain+s|blancs-sain+s]
    [blanc-saint+s|blancs-saint+s]
        <<- /conf/ ->> blanc-seing|blancs-seings                && Confusion.|https://fr.wiktionary.org/wiki/blanc-seing

TEST: il priait {{sain}} Anselme de le secourir.
................................................................................
TEST: des personnes si {{désespérer}}
TEST: Ces gens sont si {{prit}} par leur travail qu’ils en oublient de vivre.
TEST: Ça ira mieux demain, surtout si émerge une demande forte de la part des consommateurs.
TEST: Toutes les bifurcations qui auraient été possibles si avaient été pris en compte des critères autre que la captation de valeur ajoutée, l’augmentation des taux de profit, et l’accumulation du capital.
TEST: si venir à la conférence coûte autant, il est préférable de s’abstenir.










__conf_sitôt_dit_sitôt_fait__
    !! sitôt dit ?,¿ sitôt fait ¡¡
    [si+s|>scie|ci+s] [tôt|>tau|taux|to|>taud|trop|trot] [dis|dix|dit+s|di] ?,¿ [si+s|>scie|ci+s] [tôt|>tau|taux|to|>taud|trop|trot] [fait+s|>fée|fé|fais]
    sitôt [dis|dix|dit+s|di] ?,¿ sitôt [fait+s|>fée|fé|fais]
    sitôt [dis|dix|dit+s|di] ?,¿ si [tôt|>tau|taux|to|>taud|trop|trot] [fait+s|>fée|fé|fais]
    si [tôt|>tau|taux|to|>taud|trop|trot] [dis|dix|dit+s|di] ?,¿ sitôt [fait+s|>fée|fé|fais]
    s’ [y|i] [tôt|>tau|taux|to|>taud|trop|trot] [dis|dix|dit+s|di] ?,¿ s’ [y|i] [tôt|>tau|taux|to|>taud|trop|trot] [fait+s|>fée|fé|fais]
        <<- /conf/ ->> sitôt dit, sitôt fait
................................................................................

TEST: Méfiez-vous de cette {{soi-disante}} sorcière.
TEST: Méfiez-vous de cette {{soit-disant}} sorcière.
TEST: Méfiez-vous de cette {{soi disant}} sorcière.


__conf_soi_soit_soie__
    [chez|sur|avec|pour] [soit|sois]
    don de [soit|sois]
    estime de [soit|sois|>soie]
    >repli sur [soit|sois|>soie]
        <<- /conf/ not (value(\-1, "|soit|") and after(" soit ")) --1>> soi                         && Confusion probable.

    [ça|cela|ceci] >aller ?$:W¿ de soit
        <<- /conf/ not after(" soit ") --1>> soi                                                    && Confusion probable.|https://fr.wiktionary.org/wiki/aller_de_soi

    en soit
        <<- /conf/ morph(>1, ":[GY]|<end>", ">à/") and not value(<1, "|il|on|elle|n’|m’|t’|s’|") and not before("(?i)quel(?:s|les?|) qu[’ ]$") and not after(" soit ")
        -2>> soi                                                                                    && Confusion probable.




    [soi|sois|soit|>soie]  >même
        <<- /conf/ morph(<1, ":[YQ]|>(?:avec|contre|par|pour|sur)/|<start>|>,") ->> soi-même        && Confusion probable : moi-même, toi-même, lui-même, elle-même, soi-même, elles-mêmes, eux-mêmes.

    [sois-même|soit-même|soie-même|soies-même|soi-mêmes|sois-mêmes|soit-mêmes|soie-mêmes|soies-mêmes]
        <<- /conf/ ->> soi-même                                                                     && Confusion : moi-même, toi-même, lui-même, elle-même, soi-même, elles-mêmes, eux-mêmes.

    que  sa  soi  @:[WXAQ]
        <<- /conf/ -3>> soit|soie                                               && Confusion. Pour le verbe être au subjonctif, écrivez “soit”. Pour la fibre servant à la confection de textile, écrivez “soie”.

    >être [soi+s|>soie] [moi|toi|lui|elle|nous|vous|eux|iel|iels] ?,¿ [soit|soi+s|>soie]
    >être [soi+s|>soie] [moi|toi|lui|elle|nous|vous|eux|iel|iels] ?,¿ [soit|soi+s|>soie]
    >être [soi+s|>soie] $:D $:N ?,¿ [soit|soi+s|>soie]
        <<- /conf/ morph(\1, "[123][sp]") -2>> soit                             && Pour évoquer une possibilité, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction

    >être soit [moi|toi|lui|elle|nous|vous|eux|iel|iels] ?,¿ [soit|soi+s|>soie]
    >être soit [moi|toi|lui|elle|nous|vous|eux|iel|iels] ?,¿ [soit|soi+s|>soie]
    >être soit $:D $:N ?,¿ [soit|soi+s|>soie]
        <<- /conf/ morph(\1, "[123][sp]") --1>> soit                            && Pour évoquer une possibilité, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction

TEST: chez {{soit}}, c’est presque toujours mieux.
TEST: ce n’est pas la philosophie en {{soit}} qui est problématique
TEST: quel que {{soie}} sa pensée, je refuse d’y accorder de l’attention.
TEST: Penser par {{soit même}}…
TEST: S’aimer {{soit-même}}, c’est le début d’une grande histoire d’amour. (Oscar Wilde)
TEST: pas sûr que {{sa}} {{soi}} terminé avant demain
TEST: Cela va presque de {{soit}}
TEST: c’est {{soi}} lui, soit moi                                                   ->> soit
TEST: ce serait soit elle, {{soie}} une inconnue                                    ->> soit
TEST: Je regrette que l’on en soit encore à des considérations que je croyais dépassées
TEST: Quoi qu’il en soit
TEST: À moins qu’elle n’en soit la victime.
TEST: Je doute qu’il s’en soit sorti si aisément.
TEST: Je refuse, quoi qu’il en soit.
TEST: on ne s’étonne plus que le parquet de Paris en soit à agir sous l’effet de quelque urgence médiatique
TEST: Vous êtes soit pour soit contre, mais pas les deux en même temps
................................................................................
    [<start>|,|(]  [soi|>soie]  @:[OC]¬:R
    [<start>|,|(]  [soi|sois|>soie]  [j’|t’|c’|ç’]
        <<- /conf/ -2>> soit                                    && Confusion probable : pour évoquer une option, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction

    [quel|quels|quelle|quelles] que [soi|>soie|sois]
        <<- /conf/ -3>> soit|soient                             && Confusion probable.














TEST: {{soi}} je vais au cinéma, {{soi}} je m’abstiens.
TEST: {{soie}} t’arrives avant tout le monde.
TEST: Quels que {{soi}} les problèmes, on peut les surmonter.


TEST: Sois le plus efficace possible.


# son / sont
__conf_son_sont__
    [ne|n’|me|m’|te|t’|se|s’] son
    [ne|n’] [le|l’|leur|leurs|lui|nous|vous] son
................................................................................
    >éclat [de|d’] [>voie|vois|voit]
        <<- /conf/ --1>> voix       && Confusion. Pour évoquer un son humain, animal ou instrumental, écrivez “voix”.|https://fr.wiktionary.org/wiki/voix

    à [>voie|vois|voit] [basse|haute|basses|hautes]
        <<- /conf/ -2>> voix        && Confusion. Pour évoquer un son humain, animal ou instrumental, écrivez “voix”.|https://fr.wiktionary.org/wiki/voix

    [>entendre|>écouter] ?@:[WX]¿ $:D >voie
        <<- /conf/ -3>> voix        && Confusion. Pour évoquer un son humain, animal ou instrumental, écrivez “voix”.|https://fr.wiktionary.org/wiki/voix

    sur la bonne voix
    en ?[si|très|trop]¿ bonne [voix|vois|voit]




        <<- /conf/ --1>> voie       && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

    >ouvrir ?@:[WX]¿ la voix [à|au|aux|<end>]
        <<- /conf/ -3>> voie        && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

    en voix [de|d’] [développement|disparition|guérison|résorption|acquisition|achèvement|extinction|obtention]
    par voix de >conséquence
    par voix [médicamenteuse+s]
        <<- /conf/ -2>> voie        && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

    voix [abdominale|anale|biliaire|bitumée|carrossable|communale|express|interdite|intramusculaire|intraveineuse|piétonne|principale|prioritaire|privée|publique|déserte|romaine|appienne|flaminienne|ferrée|ferroviaire|lactée|lacrymale|aérienne|maritime|fluviale|terrestre|navigable|détournée|déviée|buccale|digestive|urinaire|respiratoire|parallèle|administrative|diplomatique|gouvernementale|législative|hiérarchique|pavée|rectiligne|sinueuse|souterraine|urbaine]
    voix [de|d’] garage
    voix [de|d’] [recours|perdition]
................................................................................
    voix [abdominales|anales|biliaires|bitumées|carrossables|communales|expresss|interdites|intramusculaires|intraveineuses|piétonnes|principales|prioritaires|privées|publiques|désertes|romaines|appiennes|flaminiennes|ferrées|ferroviaires|lactées|lacrymales|aériennes|maritimes|fluviales|terrestres|navigables|détournées|déviées|buccales|digestives|urinaires|respiratoires|parallèles|administratives|diplomatiques|gouvernementales|législatives|hiérarchiques|pavées|rectilignes|sinueuses|souterraines|urbaines]
        <<- /conf/ -1>> voies       && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

TEST: elles sont là, à portée de {{voie}}
TEST: ces patients sont en {{voix}} de guérison.
TEST: à {{voie}} basse
TEST: écoute cette {{voie}} magnifique

TEST: sur la bonne {{voix}}
TEST: c’est en bonne {{voix}}.
TEST: il faut ouvrir la {{voix}} aux nouveaux venus.
TEST: Je propse que, par {{voix}} de conséquence, nous partions immédiatement.
TEST: C’est une {{voix}} interdite.
TEST: les {{voix}} gouvernementales sont impénétrables.
TEST: c’est une {{voix}} de perdition sur laquelle vous vous engagez.
................................................................................
    [me|m’|te|t’|se|s’|nous|vous]               [en|y]                                   voire
    [le|la|l’|les]                              [en|y]                                   voire
    [comme|lorque|puisque|quand|que|quoique|si] ?[en|y]¿                                 voire
    [ni|par|pour|sans]                          ?[en|y]¿                                 voire
    [>aller|>falloir|>pouvoir|>vouloir]         ?[guère|jamais|pas|plus|point|rien]¿   ?[nous|vous]¿   voire
        <<- /conf/ --1>> voir           && Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire


    [et|ou] voire  $:D
        <<- /conf/ -2>> voir            && Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire

TEST: Elles sont fatiguées, {{voir}} épuisées.
TEST: Ce serait pour aider, ainsi que {{voire}} l’avancement du projet.
TEST: Je ne vais jamais {{voire}} ces gens-là.
TEST: penser juste et {{voire}} la vérité.
................................................................................
TEST: Diviser les jeunes et les vieux est un peu son fonds de commerce



!!!! Confusions de vocabulaire                                                                    !!

__conf_vocabulaire!5__
    [con+s] >cul >pisse >anse
    [con+s] >cul >pisse [>an|>en] [se|ce]
        <<- /conf/ ->> concupiscence                            && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/concupiscence

    [con+s] >cul [pissant+s]
    [con+s] >cul >pisse [>an|>en]
        <<- /conf/ ->> concupiscent|concupiscents               && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/concupiscent

    [con+s] >cul [pissante+s]
    [con+s] >cul >pisse [ante|ente]
    [con+s] >cul >pisse [>an|>en] te
        <<- /conf/ ->> concupiscente|concupiscentes             && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/concupiscent

    [dix|dis|dit+ses|des] [>tir|>tire|tirent] [en|>an|han] [>bique|>bic|>bec]
    [dix|dis|dit+ses|des] [>tyran|>tirant] [>bique|>bic]
        <<- /conf/ ->> dithyrambique|dithyrambiques             && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/dithyrambique

    [fi|>fil|>phi|>phil] [>lac|>laque] [>terre|ter|taire]
    [fila|phila] [que|qu’] [>terre|ter|taire]

    [fil|phil] [a|à|as|ah|ha] [que|qu’] [>terre|ter|taire]
        <<- /conf/ ->> phylactère|phylactère                    && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/phylactère

TEST: des brutes pleines de {{cons culs pisse anse}}
TEST: un homme {{con cul pissant}}
TEST: elle se montrait souvent {{con cul pissante}}
TEST: des éloges {{dits tirs en bique}}
TEST: un {{fil a que terre}}

................................................................................
# ensemble
__sgpl_ensemble__
    [toutes|tous] ensembles
        <<- /sgpl/ -2>> ensemble                                    && Ici, “ensemble” est vraisemblablement un adverbe, donc invariable.|https://fr.wiktionary.org/wiki/ensemble

TEST: Allons-y toutes {{ensembles}}                             ->> ensemble











# en rangs serrés
__sgpl_en_rangs_serrés__
    en rang serré
        <<- /sgpl/ ->> en rangs serrés|en ordre serré               && Au pluriel, car il y a plusieurs rangs. Vous pouvez aussi utiliser l’expression “en ordre serré”.

TEST: ils défilèrent {{en rang serré}}
................................................................................
    depuis un               ?[assez|si|très|trop]¿ long     {unit_mesure_sing_mas}
    depuis une              ?[assez|si|très|trop]¿ longue   {unit_mesure_sing_fem}
    pendant un  ?[long]¿    {unit_mesure_sing_mas}
    pendant une ?[longue]¿  {unit_mesure_sing_fem}
        <<- ~>> *

    ## locutions plurielles
    au bout de [plusieurs|quelques]                 {unit_mesure_plur_mas}
    après [des|plusieurs|quelques|*NUM|$:B:e:p]     {unit_mesure_plur_mas}
    après près [de|d’] [*NUM|$:B:e:p]               {unit_mesure_plur_mas}
    depuis $:B:e:p                                  {unit_mesure_plur_mas}
    depuis *NUM                                     {unit_mesure_plur_mas}
    depuis près [de|d’] $:B:e:p                     {unit_mesure_plur_mas}
    depuis près [de|d’] *NUM                        {unit_mesure_plur_mas}
    depuis quelques                                 {unit_mesure_plur_mas}
    en *NUM                                         {unit_mesure_plur_mas}
    pendant [des|plusieurs|quelques|*NUM|$:B:e:p]   {unit_mesure_plur_mas}
    pendant près [de|d’] [*NUM|$:B:e:p]             {unit_mesure_plur_mas}
        <<- not morph(>1, ":A.*:[me]:[pi]") ~>> *

    au bout de [plusieurs|quelques]                 {unit_mesure_plur_fem}
    après [des|plusieurs|quelques|*NUM|$:B:e:p]     {unit_mesure_plur_fem}
    après près [de|d’] [*NUM|$:B:e:p]               {unit_mesure_plur_fem}
    depuis $:B:e:p                                  {unit_mesure_plur_fem}
    depuis *NUM                                     {unit_mesure_plur_fem}
    depuis près [de|d’] $:B:e:p                     {unit_mesure_plur_fem}
    depuis près [de|d’] *NUM                        {unit_mesure_plur_fem}
    depuis quelques                                 {unit_mesure_plur_fem}
................................................................................
    plus d’ une fois
    plus d’ une fois par [seconde|minute|heure|jour|semaine|mois|trimestre|semestre|an|année|décennie|siècle|millénaire]
    pour la [première|seconde|dernière|~ième$] fois
    pour la [première|seconde|dernière|~ième$] fois [de|d’] [ma|ta|sa|notre|votre|leur] ?misérable¿ vie ?[misérable|insignifiante|palpitante]¿
    pour la [première|seconde|dernière|~ième$] fois [de|d’] [mon|ton|son|notre|votre|leur] ?[misérable|insignifiante|palpitante]¿ existence ?[misérable|insignifiante|palpitante]¿
    pour la [seconde|dernière|~ième$] fois [de|d’] suite
    pour [trois|3] fois rien
    pour une fois
    quelquefois
    quelques fois
    sans y [réfléchir|songer|penser] à [deux|2] fois
    souventes fois
    toutefois
    tant de fois
        <<- ~>> *
................................................................................
    dans le cas contraire
    dans [ce|ces] [cas-là|cas-ci]
    dans ce cas [précis|particulier]
    dans ces cas [précis|particuliers]
    dans l’ [idéal|immédiat]
    dans la mesure du possible
    dans la dernière ligne droite

    dans leur globalité
    dans leur grande majorité
    dans tout [cela|ça|ceci]
    dans un cas comme dans l’autre
    dans une [certaine|large|moindre] mesure
    dans une mauvaise passe
    d’ abord
................................................................................
    [de|d’] droite comme [de|d’] gauche
    [de|d’] fâcheuse mémoire
    [de|d’] fil en aiguille
    [de|d’] fond en comble
    [de|d’] fort [loin|près]
    [de|d’] ?[assez|si|très|trop]¿ [fraîche|fraiche] date
    [de|d’] [gaieté|gaîté|gaité] [de|d’] cœur

    [de|d’] grande ampleur
    [de|d’] gauche à droite
    [de|d’] gauche comme [de|d’] droite
    [de|d’] génération en génération
    [de|d’] gré à gré
    [de|d’] gré ou [de|d’] force
    [de|d’] guerre lasse
................................................................................
    en ?[assez|si|très|trop]¿ excellent état ?général¿
    en ?[assez|si|très|trop]¿ fâcheuse posture
    en file indienne
    en fin [de|d’] [compte|journée|matinée|soirée|après-midi]
    en forte [baisse|hausse]
    en gage [de|d’] bonne foi
    en garde à vue ?prolongée¿
    en ?[assez|si|très|trop]¿ grand nombre
    en ?[assez|si|très|trop]¿ grande [difficulté|majorité|partie|pompe]
    en ?[assez|si|très|trop]¿ haut lieu
    en ?[assez|si|très|trop]¿ haute [estime|mer]
    en l’ absence [de|d’] preuve suffisante
    en l’ absence [de|d’] preuve suffisante du contraire
    en l’ absence [de|d’] preuves suffisantes
    en l’ absence [de|d’] preuves suffisantes du contraire
    en l’ occurrence
    en lieu sûr
    en ligne [de|d’] [compte|mire]
................................................................................
    en ?[assez|si|très|trop]¿ [piteux|piètre] état [de|d’] conservation
    en point [de|d’] [mire|orgue]
    en porte-à-faux
    en position [de|d’] [force|faiblesse]
    en premier lieu
    en première [instance|ligne]
    en [première|seconde|~ième$] [classe|position]

    en provenance du monde entier
    en pure perte
    en quantité suffisante
    en quantité plus que suffisante
    en quelque sorte
    en queue [de|d’] peloton
    en rangs [dispersés|serrés]
................................................................................
    non [plus|seulement]
    non sans raison
    non loin [de|d’] [ici|là]
    non sans mal
    ¿[de|d’|vers]¿ nulle part
    ô combien
    oh
    ou quelque chose d’ approchant

    où bon [me|te|lui|nous|vous|leur] semble
    oui [ou|et] non
    outre mesure
    par [à-coups|ailleurs|avance|chance|conséquent|curiosité|contre|défaut|définition|endroits|essence|excellence|exemple|hasard|ici|inadvertance|là|mégarde|nature|principe|terre]
    par acquit [de|d’] conscience
    par [beau|mauvais] temps
    par bien des [aspects|côtés]
................................................................................
    sous haute [surveillance|tension]
    stricto sensu
    sur [mon|ton|son|notre|votre|leur] [trente-et-un|31]
    sur [mon|ton|son|notre|votre|leur] trente et un
    sur ce ,
    sur ce plan-là
    sur la défensive
    sur le fil du rasoir
    sur la forme comme sur le fond
    sur la même longueur d’ onde


    sur le plan [local|cantonal|départemental|régional|national|européen|américain|africaine|asiatique|continental|international|planétaire|galactique|universel]
    sur le pied [de|d’] guerre
    sur le qui-vive
    surtout
    s’ il [te|vous] [plaît|plait]
    tant bien que mal
    tant s’ en faut
................................................................................
        <<- ~>> _

    vent debout contre
        <<- ~1:2>> *

    je      [t’|vous]   en  [prie|supplie]  <end>
    nous    [t’|vous]   en  [prions|supplions]  <end>
        <<- ~>> *

    ,  je      [t’|vous]   en  [prie|supplie]  ,
    ,  nous    [t’|vous]   en  [prions|supplions]  ,
        <<- not morph(>1, ":E") ~>> *


# Déterminant + nombre
................................................................................
    >appât du gain ?[facile|rapide]¿
    >appel au secours
    >appel à l’ aide ?humanitaire¿
    >arc à poulies
    >arme à feu
    >armée [de|d’] l’ air
    >armée [de|d’] [réserve|terre]

    >arme [de|d’] [poing|guerre]
    >arme [de|d’] destruction massive
    >armoire à [>glace|>pharmacie]
    >argent [de|d’] poche
    >arnaque à l’ assurance
    >article [de|d’] presse
    >article à >sensation
................................................................................
    >chef d’ [état-major|entreprise]
    >chef d’ orchestre ?[moderne|symphonique]¿
    >chemin [de|d’] [croix|fer|traverse]
    >chemise [de|d’] nuit
    >chemise sans >manche
    >chèque en blanc
    >chèque sans provision
    >cheval [de|d’] Troie

    >chili con carne
    >chômage [de|d’] masse
    >chou à la crème ?[fouettée|diplomate|mousseline|patissière|pralinée]¿
    >cible en approche
    >cité u
    >clair comme [de|d’] l’ eau [de|d’] [boudin|roche|source]
    >clair comme du cristal
................................................................................
    >coureur [de|d’] >jupon
    >courroie [de|d’] transmission
    >course contre la montre
    >crayon à [lèvres|sourcils]
    >cour d’ assises
    [>coût|>cout] [de|d’] revient
    >couteau à cran d’ arrêt

    >crise de >nerf
    >cuillère à [café|soupe]
    >cure [de|d’] [désintoxication|désintox]
    >déclaration sur l’ honneur
    >degré d’ arc
    >délai [de|d’] [attente|carence|connexion|prescription|préavis|rétraction|rigueur]
    >demande d’ asile
................................................................................
    >force d’ assaut
    >force [de|d’] caractère
    >fosse à [merde|>ordure|purin]
    >fosse aux lions
    >fou à lier
    [>fourgon|>fourgonnette] [de|d’] location
    >frayeur [de|d’] tous les diables

    >frousse [de|d’] tous les diables
    >fuite en avant
    >fusil à [plomb|pompe]
    >garde à vue
    >garde du corps
    gaz à >effet [de|d’] serre
    >genou à terre
    >geste >barrière
    >gilet [de|d’] sauvetage
    >gouvernement d’ union nationale
................................................................................
    >ligne [de|d’] [conduite|mire]
    >lime à >ongle
    >liste d’ attente
    >lit à baldaquin
    >lit [de|d’] camp
    >livraison à domicile
    >livre [de|d’] [poche|chevet]

    >livret d’ épargne ?[bancaire|populaire|salariale]¿
    >loi d’ airain
    >longueur d’ avance
    >lune [de|d’] miel
    >machine à [café|coudre|écrire|laver|sous|voter]
    >machine à remonter le temps
    >machine [de|d’] guerre
................................................................................
    >parc [de|d’] stationnement
    >parole en l’ air
    >partie [de|d’] jambes en l’ air
    >passage à tabac
    >passation [de|d’] pouvoir
    >pâte à [accras|>beignet|>brioche|choux|>crêpe|donuts|frire|galettes|>gaufre|>gâteau|modeler|nouilles|pain|pizza|sel|tarte|tartiner]
    >pâté en [croute|croûte]

    >peur [de|d’] tous les diables
    >piano à queue
    >pièce à conviction
    >pièce [de|d’] [théâtre|monnaie]
    >pièce [de|d’] *NUM [>euro|>dollar|>centime|>cent|>livre|>shilling]
    >pile à [combustible|hydrogène]
    >pince à linge
................................................................................
    quelqu’un d’ autre
    >question [de|d’] vie ou [de|d’] mort
    >rampe [de|d’] lancement
    >rapport [de|d’] force
    >rat [de|d’] bibliothèque
    >rayon [de|d’] soleil
    >réaction en [chaîne|chaine]
    région Grand Est
    >règlement [de|d’] comptes

    >remède [de|d’] cheval
    >requête en nullité
    >requête en non [conciliation|inscription|lieu]
    >requête en non révocation [de|d’] sursis
    >responsable qualité
    [>resto|>restau] u
    >retour à la case départ
................................................................................
    >sac [de|d’] [couchage|sport|voyage]
    >salaire à vie
    >salle à manger
    >salle [de|d’] [attente|>bain|bal|conférence|lecture|séjour|vente]
    >salon [de|d’] coiffure
    sas [de|d’] [confinement|décompression|décontamination|désinfection|livraison|protection|secours|sécurité]
    >sclérose en plaques
    [secret+s] défense
    >seconde d’ arc
    >sel [de|d’] [aluminium|ammonium|mer]
    >serpent à sonnette
    >service d’ ordre
    >seuil [de|d’] tolérance
    >seuil [de|d’] tolérance à la douleur
    >silo à [>grains|blé]
................................................................................
    >tableau [de|d’] chasse
    >table à repasser
    >table [de|d’] [calcul|chevet|nuit]
    >taille *NUM
    tas [de|d’] ferraille ?rouillée¿
    >talon >aiguille
    tapis [de|d’] prière
    taux [de|d’] [abstention|absorption|alcool|alphabétisation|endettement|inflation|intérêt|imposition|occupation|ouverture|œstrogène|urée|usure|change|cholestérol|cholesterol|glycémie|fécondité|participation|testostérone|TVA]


    >témoin à charge
    tenants et aboutissants
    >ténor du barreau
    >tête à claques
    >tête d’ enterrement
    >tête [de|d’] [linotte|déterré+ses|mule|pont]
    >terrain à découvert
    >tigre à dents [de|d’] sabre
    >tigre [de|d’] papier ?mâché¿

    >tir [de|d’] barrage
    >tiret d’ incise
    >tireur d’ élite
    >titre [de|d’] [noblesse|propriété|séjour]
    >toile de fond
    >tondeuse à gazon
    >tour d’ horizon
................................................................................
    >travail au noir
    >travail d’ intérêt général
    >travailleur au noir
    >tribunal d’ assises
    >trou à >rat
    >trouble à l’ ordre public
    >t-shirt sans >manche

    >tueur à gages
    >tueur en série
    >turbine à [gaz|vapeur]
    >usine à gaz
    vacances [de|d’] [automne|printemps|Noël|pâques]
    vacances d’ [été|hiver]
    >vache à lait
................................................................................
    >con comme la lune
    >con comme un balai
    >con comme une valise sans >poignée
    >corvéable à merci
    >court sur pattes
    [cousu+ses] [main]
    [cousu+ses] [de|d’] fil blanc
    [daté+ses] du [1er|1ᵉʳ|1|01|2|02|3|03|4|04|5|05|6|06|7|07|8|08|9|09|10|11|12|13|14|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31] {mois} ?[prochain|passé|dernier|~^[0-9]{2,5}$]¿
    >digne [de|d’] [confiance|foi]
    >digne [de|d’] ce nom
    >droit comme un i
    >fort en gueule
    >fou [de|d’] rage ?[contenue|retenue]¿
    >élu à la majarité absolue
    >haut comme [trois|3] pommes
................................................................................
    >noir comme une nuit sans lune
    >pure comme [le|du] cristal
    >rapide à la comprenette
    [réglé+ses] comme du papier à musique
    [remis+es] à plat
    >sain [de|d’] [corps|esprit]
    >sain [de|d’] [corps|esprit] et [de|d’] [corps|esprit]

    >sourd comme un pot
    >sujet à interprétation
    >sujet à interprétations diverses
    >têtu comme une [bourrique|mule]
    >têtu comme un [âne|bourriquot|mulet]
    [tiré+ses] à [quatre|4] épingles
        <<- ~2:0>> *
................................................................................
    *WORD  en  terre  ?cuite¿
        <<- morph(\1, ":N") and not morph(>1, ":A.*:[fe]:[si]") ~2:0>> *

TEST: deux câbles en acier situés de part et d’autre du chariot


__purge_locutions_adjectivales__
    ancienne formule
    bas de gamme
    basse consommation
    bon [enfant|marché|teint]
    bon chic ?,¿ bon genre
    [>clé|>clef] en >main
    dernier cri
    fleur bleue
................................................................................
    à [mes|tes|ses|nos|vos|leurs] [regards|yeux]  [<end>|,|)]
        <<- ~1:-2>> *

    à la dernière [minute|seconde]  @¬:A.*:[fe]:[si]
    à la dernière [minute|seconde]  [<end>|,|)]
        <<- ~1:-2>> *

    à la longue     @:¬:N.*:[fe]:[si]
    à la longue     [<end>|,|)]
    à la dérive     @:¬:A.*:[fe]:[si]
    à la dérive     [<end>|,|)]
    à l’ époque     @:¬:A.*:[fe]:[si]
    à l’ époque     [<end>|,|)]
    à l’ identique  @:¬:N.*:[si]
    à l’ identique  [<end>|,|)]
        <<- ~1:-2>> *

    à répétition  @¬:A.*:[fe]:[si]
    à répétition  [<end>|,|)]
        <<- ~1:2>> *

    au bout d’ un moment  @:¬:A.*:[me]:[si]
    au bout d’ un moment  [<end>|,|)]
        <<- ~1:-2>> *

    au [départ|quotidien]  @:¬:A.*:[me]:[si]
    au [départ|quotidien]  [<end>|,|)]
        <<- ~1:2>> *

    au pire  @:A¬:N.*:[me]:[si]
    au pire  [<end>|,|)]
        <<- ~1:2>> *





    [<start>|,|(] ben voyons
        <<- ~2:3>> *

    chaque [seconde|minute|heure|journée|semaine|année|décennie]  @¬:(?:A.*:[fe]:[si]|Oo|[123][sp])
    chaque [seconde|minute|heure|journée|semaine|année|décennie]  [<end>|,|)]
        <<- not morph(<1, ":R") ~1:2>> *
................................................................................
    d’ apparat
        <<- morph(<1, ":N", ":V") ~>> *

    d’ [avance|évidence]  @¬:A.*:[fe]:[si]
    d’ [avance|évidence]  [<end>|,|)]
        <<- ~1:2>> *

    d’ entrée                           @¬:A:[fe]:[si]
    d’ entrée                           [<end>|,|)]
        <<- ~1:2>> *

    dans [ce|mon|ton|son|notre|votre|leur] cas                  @:¬:A:[me]:[si]
    dans [ce|mon|ton|son|notre|votre|leur] cas                  [<end>|,|)]
    dans [ce|mon|ton|son|notre|votre|leur] cas [de|d’] figure   @:¬:A:[me]:[si]
    dans [ce|mon|ton|son|notre|votre|leur] cas [de|d’] figure   [<end>|,|)]
    dans [de|d’] ?[très|trop]¿ nombreux cas                     @:¬:A:[me]:[pi]
    dans [de|d’] ?[très|trop]¿ nombreux cas                     [<end>|,|)]
    dans [de|d’] ?[très|trop]¿ nombreux cas [de|d’] figure      @:¬:A:[me]:[pi]
    dans [de|d’] ?[très|trop]¿ nombreux cas [de|d’] figure      [<end>|,|)]
    dans la ?[grande|petite]¿ majorité des cas                  @:¬:A:[me]:[pi]
    dans la ?[grande|petite]¿ majorité des cas                  [<end>|,|)]
    dans la ?[grande|petite]¿ majorité des cas [de|d’] figure   @:¬:A:[me]:[pi]
    dans la ?[grande|petite]¿ majorité des cas [de|d’] figure   end>|,|)]
    dans la plupart des cas                                     @:¬:A:[me]:[pi]
    dans la plupart des cas                                     [<end>|,|)]
    dans la plupart des cas [de|d’] figure                      @:¬:A:[me]:[pi]
    dans la plupart des cas [de|d’] figure                      [<end>|,|)]
    dans maints cas                                             @:¬:A:[me]:[pi]
    dans maints cas                                             [<end>|,|)]
    dans maints cas [de|d’] figure                              @:¬:A:[me]:[pi]
    dans maints cas [de|d’] figure                              [<end>|,|)]
    dans tous les cas                                           @:¬:A.*:[me]:[pi]
    dans tous les cas                                           [<end>|,|)]
    dans tous les cas [de|d’] figure                            @:¬:A.*:[me]:[pi]
    dans tous les cas [de|d’] figure                            [<end>|,|)]
        <<- ~1:-2>> *

................................................................................
    de nombreux [instants|moments|jours|mois|ans|siècles]  [<end>|,|)]
        <<- ~1:3>> *

    [de|d’]  [façon|manière]  ?non¿  @:A.*:[fe]:[si]  et  ?non¿  @:A.*:[fe]:[si]¬:[GM]
    [de|d’]  [façon|manière]  ?non¿  @:A.*:[fe]:[si]
        <<- ~>> *

    le plus clair [de|d’] [mon|ton|son|notre|votre|leur] temps @:¬:A:[me]:[si]|>d[e’]/
    le plus clair [de|d’] [mon|ton|son|notre|votre|leur] temps [<end>|,|)]
        <<- ~1:6>> *





    pour cette raison même
        <<- ~>> *

    pour cette raison @:¬:A.*:[fe]:[si]
    pour cette raison [<end>|,|)]
        <<- ~1:3>> *

    pour de bon  @:¬:[NA].*:m:s
    pour de bon  [<end>|,|)]
        <<- ~1:3>> *




    pour partie  @:¬:A.*:f:s
    pour partie  [<end>|,|)]


        <<- ~1:2>> *

    pour un temps  @:¬:[NA].*:[me]:[si]
    pour un temps  [<end>|,|)]
        <<- ~1:3>> *

    >preuve à l’ appui
        <<- not morph(<1, ":D") ~>> *

    sans détour  @:¬:[NA].*:[me]:[si]
    sans détour  [<end>|,|)]
        <<- ~1:2>> *



    sans [réserve|surprise]  @:¬:[NA].*:[fe]:[si]
    sans [réserve|surprise]  [<end>|,|)]
        <<- ~1:2>> *

    semblait-il
    semble-t-il
        <<- not value(<1, "|ça|cela|ceci|me|m’|te|t’|lui|nous|vous|leur|ne|n’|") ~>> *

    soit dit entre nous
        <<- not value(<1, "|il|ne|n’|") ~>> *

    tête la première
        <<- not morph(<1, ":D") and not morph(>1, ":[NA].*:[fe]:[si]") ~>> *

    ?pour¿ toute [ma|ta|sa|notre|votre|leur] vie  @:¬:A.*:[fe]:[si]
    ?pour¿ toute [ma|ta|sa|notre|votre|leur] vie  [<end>|,|)]
        <<- ~1:-2>> *

    ?à¿ un [instant|moment]  @¬>où/|:A.*:[me]:[si]
    ?à¿ un [instant|moment]  [<end>|,|)]
    ?pour¿ un seul [instant|moment]  @¬>où|:A.*:[me]:[si]
    ?pour¿ un seul [instant|moment]  [<end>|,|)]
        <<- not morph(<1, ":R") ~1:-2>> *

    un jour  @:¬:A.*:[me]:[si]
    un jour  [<end>|,|)]
        <<- not morph(<1, ":R") ~1:2>> *

    vu les circonstances  @¬:A:[fe]:[pi]
    vu les circonstances  [<end>|,|)]
        <<- ~1:3>> *


__purge_tous_deux_trois__
    >faire [tous|toutes] [deux|trois]
        <<- ~2:0>> *
................................................................................

    >faire tous
        <<- morph(\1, ":[123]p") or (\1 == "fait" and value(<1, "|on|")) ~2>> *


# tous / tout / toute / toutes
__purge_tout_tout_tous_toutes__
    tout            [le|ce|cet|mon|ton|son]
    toute           [la|cette|ma|ta|sa]
    [tous|toutes]   [les|des|mes|tes|ses|ces|nos|vos|leurs]
        <<- ~1>> *

    /-on        [tous|toutes]
    /-nous      [tous|toutes]
    /-vous      [tous|toutes]
    /-ils       [tous|toutes]
    /-elles     [tous|toutes]
    /-iel       [tous|toutes|tout_e_s]
    /-iels      [tous|toutes|tout_e_s]
        <<- ~2>> *

    *WORD       [tous|toutes]
        <<- morph(\1, ":[123]p") ~2>> *

    on  ?[ne|n’]¿  ?[le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  ?[le|la|l’|les|en|y|lui|leur]¿  *WORD  [tous|toutes]
        <<- morph(\-2, ":[123]s") ~-1>> *



@@@@
@@@@
@@@@
................................................................................
    leurs  @:A.*:[pi]¬:V  @:N.*:[pi]¬(?:3[sp]|Q|G)
        <<- not before(":O[vs]") =>> exclude(\3, ":V")

    [plusieurs|certains|certaines]  @:A.*:[pi]¬:3[sp]  @:N.*:p¬:(?:3[sp]|Q|G)
        <<- =>> exclude(\2, ":V") and exclude(\3, ":V")


__purge_vite__
    vite
        <<- not (morph(<1, ":V0a") and value(>1, "|fait|")) ~>> *


__purge_locutions_verbales__
    >avoir [foule|lieu|vent]
    >avoir ni queue ?,¿ ni tête
    >aller bon train
    >aller [de|d’] l’ avant
    >armer jusqu’ aux dents
    >arriver à [destination|échéance]
    >arriver à point nommé
................................................................................
    >attendre [de|d’] pied ferme
    >battre à plate couture
    >battre en [brèche|retraite]
    >boire comme un trou
    [>brûler|>bruler] à vif
    >charger à blanc
    >chauffer à blanc

    >compter à rebours
    >condamner à mort
    >couler à ?grands¿ flots
    >cour d’ assises
    >demander [assistance|audience|conseil|pardon]
    >dire [adieu|merde]
    [>donner|>redonner] [naissance|sens|suite|vie]
    [>donner|>redonner] quartier libre
    >élire domicile
    >étouffer dans l’ œuf
    >faire [allusion|assaut|attention|barrage|chaud|confiance|connaissance|compliqué|copain-copain|date|débat|défaut|demi-tour|écran|envie|erreur|état|exception|figure|foi|fortune|froid|front|grève|halte|honte|illusion|mention|mouche|nation|naufrage|office|part|peur|polémique|plaisir|preuve|rage|recette|rempart|scandale|sens|sensation|signe|surface|usage|volte-face]
    >faire amende honorable
    >faire bande à part
    >faire bon accueil
    >faire bonne figure
    >faire chou blanc
    >faire copain copain
    >faire [de|d’] [mon|ton|son|notre|votre|leur] mieux
................................................................................
    >gagner d’ avance
    >garder contenance
    [>gonfler|>regonfler] à bloc
    >jeter à terre
    >jouer franc jeu
    >jouer cartes sur table
    >juger sur >pièce
    >lâcher prise
    >laisser pour compte
    >laisser carte blanche
    >marcher à rebours
    >mener par le bout du nez
    [>mettre|>remettre] à [bas|dos|exécution|flot|jour|niveau|nu|plat|profit|table|terre]
    [>mettre|>remettre] à l’ [écart|épreuve]
    [>mettre|>remettre] au [point|pas]
................................................................................
    >naviguer à vue
    >obtenir gain [de|d’] cause
    >parler affaires
    >partir en vrille
    >passer à tabac
    >passer du coq à l’ âne
    >percer à jour
    >perdre [connaissance|conscience|patience|raison]
    >perdre d’ avance
    >piquer au vif
    >plier >bagage
    >porter [assistance|atteinte|bonheur|caution|chance|malheur|plainte|préjudice|secours]
    >poser problème
    >porter plainte
    >prendre ?[ça|cela|ceci]¿ à la légère
................................................................................
    >vendre à perte
    >venir à bout
    [>venir|>revenir] je [ne|n’] sais ?pas¿ ?trop¿ d’ où
    [>venir|>revenir] on [ne|n’] sait ?pas¿ ?trop¿ d’ où
        <<- ~2:0>> ␣
        <<- =>> define(\2, ":LV")















__sgpl_faire_plaisir__
    >faire plaisirs
        <<- /sgpl/ --1>> plaisir        && Faire plaisir : dans cette locution, “plaisir” doit être au singulier.
        <<- ~-1>> *

TEST: Ça me fait {{plaisirs}}.
................................................................................
TEST: on ne peut convoquer un citoyen sur la base des textes constitutionnels, devenus dans ce cas incriminants.
TEST: ce sont des gens bien
TEST: beaucoup d’entre nous se souviennent de ce fameux jour
TEST: Hormis les enseignements fondamentaux transmis à la petite école, la suite n’est qu’une infinie perte de temps où l’on bourre l’esprit des élèves de connaissances parfaitement inutiles, dont la plupart d’entre nous ne gardent aucun souvenir sitôt les portes du lycée franchies.
TEST: il ne désirait ne plus le faire…
TEST: Ma chambre est trois fois plus grande que la tienne.
TEST: Il est trois ans plus jeune que moi.







@@@@
@@@@
@@@@
@@@@
@@@@END_GRAPH                                                                                      _
................................................................................
    >charger a blanc
    >chauffer a blanc
    >chuter a terre
    >être a bloc
    >fermer a [>clé|>clef]
    [>gonfler|>regonfler] a bloc
    >jeter a terre

    [>mettre|>remettre] a [bas|>flot|>jour|>niveau|>nu|>plat|>profit|>table|>terre]
    [>mettre|>remettre] a l’ [écart|épreuve]
    >naviguer a [vu+ses]
    >parer a toute éventualité
    >passer a tabac
    >percer a jour
    >prendre a la légère
................................................................................
    >préluder a
    >remédier a
    >ressortir a
    >subvenir a
    >équivaloir a
    ## locutions
    >appartenir en propre a
    >avoir [peine|tendance|trait|vocation] a
    >faire [allusion|attention|barrage|confiance|défaut|écran|envie|exception|part|peur|plaisir|signe] a
    >laisser libre cours a
    >mettre fin a
    >donner [sens|suite] a
    >prêter attention a
    enclin a
    en être [réduit+ses] a
................................................................................
TEST: Offrez-vous {{a}} Dieu et taisez-vous.
TEST: dans tous les cas de figure il pense souvent {{a}} sa fille.
TEST: Qu’y a-t-il {{a}} cette place qui mérite que je prenne tant de risques.
TEST: N’y a-t-il pas {{a}} la table du saucisson ?
TEST: cet homme mange bien {{a}} la maison ?
TEST: tombé {{a}} terre, il crut ne jamais pouvoir se relever.
TEST: il passe sans cesse du coq {{a}} l’âne




TEST: Ce que je mange a un goût de surgelé.
TEST: celui qui conduisait a décidé de faire un tour du quartier avec la voiture.
TEST: Un rendez-vous a bousculé ses plans
TEST: Maria Butina a également rencontré des républicains tels que Donald Trump
TEST: l’épée que tu tiens a une longue histoire sanglante.
TEST: l’appel auquel j’ai donné suite a eu des conséquences désastreuses.
TEST: le problème avec lequel j’ai du mal a été résolu avec brio par mon rival
................................................................................
    en >bonnet >difforme
    en >bon et [du+ses] >forme
        <<- /conf/ ->> en bonne et due forme                            && Locution “en bonne et due forme” (invariable).|https://fr.wiktionary.org/wiki/en_bonne_et_due_forme

TEST: une raclée {{en bonnes et dues formes}}
TEST: remplir son formulaire en bonne et due forme, c’est le minimum pour espérer un retour positif.


## c’en / s’en
__conf_c_en_être__
    s’ en  [es|est|sera|seras|étais|était] [fini+ses|finit|terminé+ses]
        <<- /conf/ morph(<1, ":C|<start>") or value(<1, "|,|")
        -1:2>> c’en                                         && Confusion probable. « C’en est… » équivaut à « ça, c’est… ».|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de

    s’ en  [es|est|sera|seras|étais|était] [assez|trop] [<end>|,|de|d’]
        <<- /conf/ -1:2>> c’en                              && Confusion probable. « C’en est… » équivaut à « ça, c’est… ».|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de

    s’ en  [es|est|sera|seras|étais|était] @:A¬:[GVW]
        <<- /conf/ morph(<1, ":C|<start>") or value(<1, "|,|")
        -1:2>> c’en                                         && Confusion probable : “\2” est un adjectif. « C’en est… » équivaut à « ça, c’est… ».3|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de

TEST: tout ça, {{s’en}} est fini.
TEST: {{s’en}} est assez de ces foutaises.
TEST: c’est tellement idiot, {{s’en}} est dérisoire…
TEST: c’en est fini d’eux, ils sont comme morts
TEST: c’en est assez, ça suffit


# en butte à / but / bute
__conf_en_butte_à_au__
    en [>but|>bute]  [à|au|aux]
        <<- /conf/ -2>> butte                                           && Confusion. Écrivez « en butte \3 ».

TEST: Et moi toujours en {{but}} à de nouveaux dangers
................................................................................
        <<- /conf/ -1>> c’                              && Confusion probable. Si vous voulez dire “ceci \2”, utilisez “c’”.

TEST: {{s’}}est vraiment merdique.
TEST: s’est par exemple illustré au combat.
TEST: il ne s’est pas juste montré
TEST: il s’était des journées entières consacré à son jeu favori.









































# ce / se
__conf_ce_se_verbe__
    [<start>|,|(] se [ne|n’] [>être|>devoir|>pouvoir]
    [<start>|,|(] se [sera|serait|seraient|sont|seront|fut|fût|furent|fussent] $:D
    [<start>|,|(] se >devoir être
    [<start>|,|(] se >pouvoir être
................................................................................
TEST: il faut rendre {{comte}} de la sitation désastreuse dans laquelle nous sommes tombés.
TEST: il faut tenir {{comtes}} des aléas de la météo.
TEST: nous allons demander des {{contes}} à ces gens-là.
TEST: qui fera les {{comtes}} ?
TEST: faudra rendre bon {{conte}} de vos actes



__conf_compter_conter_comté__
    [s’|m’|t’]          en  >laisser  [compter|compté+ses|comptais|>comté]
    nous nous           en  >laisser  [compter|compté+ses|comptais|>comté]
    vous vous           en  >laisser  [compter|compté+ses|comptais|>comté]
    ne pas [nous|vous]  en  laisser   [compter|compté+ses|comptais|>comté]
        <<- /conf/ --1>> conter         && Confusion. Locution “s’en laisser conter”, c’est-à-dire se laisser raconter des histoires.|https://fr.wiktionary.org/wiki/ne_pas_s%E2%80%99en_laisser_conter

................................................................................
    >faire $:D [empreint+s]
        <<- /conf/ --1>> emprunt|emprunts           && Confusion. Lorsque vous empruntez quelque chose, vous faites un emprunt.|https://fr.wiktionary.org/wiki/emprunt

TEST: Elle a fait un {{prêt}} à la banque.
TEST: J’ai fait un {{empreint}} à la bibliothèque.


# entretien / maintien / soutien
__conf_entretien_maintien_soutien__



    [un|le|ce|cet]                     *WORD           [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ morph(<1, "<start>|:C||>,/") and morph(\2, ":N", ":[AG]")
        -3>> \3t                                                                            && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.

    [une|la|cette|ma|ta|sa]            *WORD           [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ morph(<1, "<start>|:C||>,/") and morph(\2, ":N.*:[fe]")
        -3>> \3t                                                                            && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.
................................................................................
    [l’|mon|ton|son|notre|votre|leur]  *WORD  *WORD    [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ morph(<1, "<start>|:C||>,/") and ( (morph(\2, ":N", "*") and morph(\3, ":A")) or (morph(\2, ":[NA]") and morph(\3, ":N", ":A.*:[me]:[si]")) )
        -4>> \4t                                                                            && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.

    qui [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ -2>> \2t                                                                 && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.


TEST: la grande {{maintien}} sa version.                        ->> maintient
TEST: cette femme {{entretien}} sa santé                        ->> entretient
TEST: ce que le patron {{soutien}}                              ->> soutient
TEST: leur patronne {{soutien}} la réforme                      ->> soutient
TEST: le petit homme {{maintien}} fermement son pantalon        ->> maintient
TEST: une grande déclaration {{entretien}}                      ->> entretient
TEST: notre exubérante existence {{maintien}} notre santé       ->> maintient
TEST: notre vie exubérante {{maintien}} notre santé             ->> maintient
TEST: c’est un homme qui {{entretien}} sa forme                 ->> entretient








TEST: le petit entretien le paralysait


# envi / envie
__conf_envie_envi__
    à l’ envie
        <<- /conf/ not morph(<1, ">(?:abandonner|céder|résister)/") and not value(>1, "|de|d’|")
................................................................................
    [fond|fonts] [de|d’] [commerce|garantie|roulement|pension|placement|retraite|roulement|solidarité]
    [fond|fonts] d’ [aide|investissement|indemnisation]
        <<- /conf/ -1>> fonds                   && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    fonds baptismaux
        <<- /conf/ -1>> fonts                   && Confusion. Écrivez “fonts”, qui vient du latin “fons” et signifie « fontaine, source ».





TEST: faire une levée de {{fond}}.
TEST: jouer {{à fond perdu}}
TEST: elle a vendu son {{fond}} de commerce
TEST: il a reçu de l’argent d’un {{fond}} d’investissement
TEST: les {{fonds}} baptismaux.



# glaciaire / glacière
__conf_glacière_glaciaire__
    >glaciaire
        <<- /conf/ morph(<1, ":D.*:(?:f|e:p)")
        ->> =\1.replace("iai", "iè")                && Confusion : “glaciaire” est un adjectif. Le contenant préservant le froid s’écrit “glacière”.
................................................................................
        <<- /conf/ -2>> gent                        && Confusion. « Gente » est un adjectif vieilli. Utiliser « gent » pour désigner un groupe de personnes.

TEST: la {{gente}} masculine est grossière et l’a toujours été.


# golf / golfe
__conf_golf_golfe2__
    >jouer au golfe

        <<- /conf/ -3>> golf                        && Confusion. Un golfe est une zone maritime qui avance dans les terres. Pour le sport, écrivez “golf”.

TEST: il joue au {{golfe}} tous les jours.
TEST: Jouer au golf.


# goutte / goûte
__conf_goûte_goutte__
    [goûte|goûtes|goute|goutes] [de|d’] [alcool|acide|amour|bière|eau|folie|huile|javel|lait|liquide|mercure|miel|peinture|pluie|rhum|rosée|salive|sang|semence|sperme|sueur|urine|vin|vinaigre|whisky]
        <<- /conf/ -1>> =\1.replace("û", "u").replace("t", "tt")
        && Confusion : “goûter” signifie utiliser le sens du goût. Pour une petite quantité de liquide, écrivez “goutte”.|https://fr.wiktionary.org/wiki/goutte

    >passer entre les [goûte+s|goute+s]
        <<- /conf/ --1>> gouttes                    && Confusion. Une particule de fluide s’écrit “goutte”.|https://fr.wiktionary.org/wiki/goutte

    [à|a] [grosse+s] [goute+s|goûte+s]
        <<- /conf/ ->> à grosses gouttes            && Confusion. Locution adverbiale “à grosses gouttes”.
................................................................................
# lâcher la proie pour l’ombre
__conf_lâcher_la_proie_pour_l_ombre__
    >chasser la proie pour l’ ombre
        <<- /conf/ -1>> =\1.lower().replace("cha", "lâ")        && Expression impropre. On écrit « lâcher la proie pour l’ombre ».|https://fr.wiktionary.org/wiki/l%C3%A2cher_la_proie_pour_l%E2%80%99ombre

TEST: il ne faut pas {{chasser}} la proie pour l’ombre.











# lieux / lieues / lieus
__conf_lieux_lieues_lieus__
    [>assurance|>état|>visite|>maître|>maitre|>seigneur|>magie|>chef|>responsable|respect|entretien|propreté|>propriétaire|tranquillité|dans|vers|>plan] des [lieues|lieus]
        <<- /conf/ --1>> lieux                                  && Confusion probable. Pour désigner un endroit, écrivez “lieux”.|https://fr.wiktionary.org/wiki/lieu

    [>lieue|lieus] [>insolite|>accessible|>accueillant|>inaccessible|>inexploré|>lointain|>louche|>proche|>touristique|saint+s|>connu|>inconnu|>mythique|>public|prestigieux|>romantique|>stratégique|>historique|où|>humide|sec+s]
................................................................................
TEST: dans la {{sale}} des professeurs
TEST: une {{sale}} d’arcade
TEST: ils sont tellement {{salles}}
TEST: pour le service en salle


# sans / sens
__conf_sens_dessus_dessous__
    sans dessus dessous
    sans-dessus-dessous
        <<- /conf/ ->> sens dessus dessous                          && Confusion. Locution adverbiale : « sens dessus dessous ».|https://fr.wiktionary.org/wiki/tache
























TEST: Tout est {{sans dessus dessous}}.









# aller sans dire
__conf_aller_sans_dire__
    [il|ça|cela|ceci] >aller s’ en dire
        <<- /conf/ -3:4>> sans                                      && Confusion. Locution “aller sans dire”.|https://fr.wiktionary.org/wiki/cela_va_sans_dire#fr

................................................................................
        -4>> =suggSing(\4)                                                                          && Accord de nombre erroné avec “\3” : “\4” devrait être au singulier.

TEST: L’{{amande}} {{amer}}
TEST: l’{{amicale}} {{animal}}
TEST: l’amour {{immortels}}
TEST: du chien et de l’{{excellente}} {{collier}} qu’il avait autour du cou.
TEST: du chien et de l’étonnant {{colliers}} qu’il avait autour du cou.



__gn_le_1m__
    ,  le  *WORD
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|P|G|W|[123][sp]|Y)") -2>> =suggLesLa(\3)           && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasSing(\3, True)                            && Accord de genre erroné : « \2 » est un déterminant masculin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggMasSing(\3)               && Accord de nombre erroné : « \3 » devrait être au singulier.
................................................................................
TEST: {{Le}} personne répond.
TEST: {{le}} {{quotients}}
TEST: Comme avec l’Hyperloop, le bus chinois conçu pour passer au-dessus des voitures


__gn_le_2m__
    le  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou]  le  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]") and not \4.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\4, \4)
        -4>> =suggMasSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: le test très {{cons}} qu’on a passé hier.
TEST: c’était le chien {{perdue}} des voisins.
................................................................................
TEST: {{La}} tableau.                                         ->> Le
TEST: dans la {{parties}}                                     ->> partie
TEST: je connais {{la}} {{parti}}
TEST: la {{vilénies}} des mensonges                           ->> vilénie
TEST: de {{la}} vin                                           ->> le
TEST: {{la}} {{véhicule}}
TEST: {{La}} {{pris}}



TEST: la force de la {{formes}} parfaite
TEST: à la Richard Nixon Foundation
TEST: à ne plus se laisser faire la fois d’après
TEST: il pense à la fois où nous avons eu cet accident idiot.


__gn_la_2m__
    la  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  la  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \2 \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: La plus grande {{cinglé}}.
TEST: il imaginait de la pluie {{noir}} tombant sur une terre dévastée.
................................................................................
TEST: J’en ai assez de {{leur}} {{délires}}
TEST: {{Leur}} {{perceptions}} des choses m’exaspère.
TEST: dans {{leur}} {{usines}}


__gn_leur_2m__
    leur  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                       && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, False)                  && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        <<- /gn/ __also__ and morph(\2, ":[NA].*:i") -1>> leurs                             && Accord de nombre erroné avec « \2 \3 ».

    [et|ou|de|d’]  leur  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, False)                                                       && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, False)                  && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        <<- /gn/ __also__ and morph(\3, ":[NA].*:i") -2>> leurs                             && Accord de nombre erroné avec « \3 \4 ».
................................................................................
TEST: mille et une merveilles
TEST: Quatorze heures découpées en quatre parties, une sortant en salles chaque semaine


## un / une
__gn_un_2m__
    un  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné avec « \2 » : « \3 » devrait être au singulier.

    [et|ou|d’]  un  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: un exercice pas très {{utiles}}.                        ->> utile
TEST: un homme {{grands}}                                     ->> grand
................................................................................
TEST: que sais-tu d’un homme {{grande}} comme un arbre
TEST: je me souviens d’un homme {{arrogants}}
TEST: C’est pas les quelques vues sur Linux qui vont rattraper un scénario {{bancale}}.


__gn_une_2m__
    une  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ \2 != "fois" and morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                                       && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|d’]  une  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est féminin, « \4 » est masculin.
        <<- /gn/ \3 != "fois" and morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: Une femme {{laconiques}}.                               ->> laconique
TEST: Une grande {{homme}}.
................................................................................
TEST: téléphone {{au}} {{boulangère}}
TEST: au chien, au chat, au poulet
TEST: à partir de pièces détachées, au départ entièrement venues de l’étranger puis en partie fabriquées sur place


__gn_det_mas_sing_2m__
    [ce|cet|quel|au|ledit|dudit|audit|aucun|nul]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [ce|cet|quel|au|ledit|dudit|audit|aucun|nul]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: cet outil {{terribles}} qu’il a dans les mains
TEST: J’aimerais connaître de quel parti {{gauchistes}} on parle.
................................................................................
TEST: mon {{excellentes}} mémoire
TEST: {{ton}} {{belle}} mémoire
TEST: {{mon}} {{chienne}}


__gn_mon_ton_son_2m__
    [mon|ton|son]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NA].*:m", ":(?:B|G|e|V0|f)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ">[aâeéèêiîoôuûyœæ].*:[NA].*:f", ":(?:B|G|e|V0|m)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [mon|ton|son]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NA].*:m", ":(?:B|G|e|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ">[aâeéèêiîoôuûyœæ].*:[NA].*:f", ":(?:B|G|e|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

................................................................................
TEST: {{ma}} amour                                            ->> mon
TEST: ma {{carlingues}}
TEST: Après cet épisode, la SA a joué un rôle marginal dans l’histoire du Troisième Reich


__gn_det_fem_sing_2m__
    [ma|ta|sa|cette|quelle|ladite]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NAQ].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NAQ].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NAQ].*:[si]", ":G") and morph(\3, ":[NAQ].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [ma|ta|sa|cette|quelle|ladite]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NAQ]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NAQ].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NAQ].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NAQ].*:[si]", ":G") and morph(\4, ":[NAQ].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: quelle belle {{étourdi}}, cette gamine
TEST: j’en ai assez de cette ville {{stressées}} en permanence.
................................................................................
        -1>> quelques                                                                       && Il manque un “s” à « quelque » ou « \2 » doit être au singulier.

TEST: {{Quelque}} amis


__gn_det_epi_sing_2m__
    [chaque|quelque|notre|votre]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                       && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, False)                  && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [chaque|quelque|notre|votre]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, False)                                                       && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, False)                  && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

................................................................................
TEST: les {{abricot}}                                         ->> abricots
TEST: tels que les décrit Macron
TEST: J’en ramasse quelques-unes, puis les glisse dans l’une de mes poches, ça me fera un souvenir.


__gn_les_2m__
    les  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou]  les  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]") and not \3.startswith("seul") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, True)                                                                && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, True)                           && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -4>> =suggPlur(\4)                                                                          && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

................................................................................
TEST: aux {{personne}}
TEST: j’entends ces {{même}} âneries tous les jours
TEST: clafoutis aux {{abricot}}


__gn_det_epi_plur_2m__
    [ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|aux|moult]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|au|aux|") and not \3.startswith("seul") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|aux|moult]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, True)                                                                && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, True)                           && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (\1.startswith("de") and value(<1, "|un|une|"))
        -4>> =suggPlur(\4)                                                                          && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: ces {{beaux}} {{institutions}}
TEST: nos petites {{fille}}
TEST: de plusieurs {{grands}} {{avocates}}
TEST: de vos défauts {{terrible}}, je connais presque tout.
TEST: Les éléments caractéristiques liés à ses valeurs historique et architecturale
................................................................................


__gn_det_plur_3m__
    [ces|mes|tes|ses|nos|vos|quels|quelles|aux]             *WORD  *WORD  *WORD
    [plusieurs|quelques|certains|certaines|moult]           *WORD  *WORD  *WORD
    [lesdits|lesdites|desdits|desdites|auxdits|auxdites]    *WORD  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:[pi]", ":(?:[123][sp]|G)")
            and morph(\4, ":[NA].*:s", "*") and \4.islower() and not before("(?i)\\bune? de +$") and not \4.startswith("seul")
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

    leurs  *WORD  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:[pi]", "[123][sp]") and morph(\3, ":[NA].*:[pi]", ":(?:[123][sp]|G)")
            and morph(\4, ":[NA].*:s", "*") and not before("(?i)\\bune? de +$") and not \4.startswith("seul")
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

TEST: ces petites sottes {{déjantée}}
TEST: Leurs grands plans {{dépassé}} par les évènements
TEST: Prendre goût aux heures passées seul à marcher


................................................................................

TEST: {{Quels}} que soient ces idiotes                        ->> Quelles
TEST: {{Quels}} qu’en soient les raisons                      ->> Quelles


__gn_det_mas_plur_2m__
    [certains|quels|lesdits|desdits|auxdits]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasPlur(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[pi]", ":G") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggMasPlur(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [certains|quels|lesdits|desdits|auxdits]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasPlur(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[pi]", ":G") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (\1.startswith("de") and value(<1, "|un|une|"))
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: certains claviers {{dégueulasse}}
TEST: certains hommes {{petite}}
TEST: auxdits hommes {{connu}}
TEST: quels hommes {{grandes}}
TEST: elle se rappelle de quels rapports {{désastreuses}} il s’agit.
TEST: de quels grands {{fou}} s’agit-il ?
TEST: chez certains la revue Limite provoque des crises d’hystérie.


__gn_det_fem_plur_2m__
    [certaines|quelles|lesdites|desdites|auxdites]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not \3.startswith("seul") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemPlur(\3, True)                                                         && Accord de genre erroné : « \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggFemPlur(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [certaines|quelles|lesdites|desdites|auxdites]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not \4.startswith("seul") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemPlur(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (\1.startswith("de") and value(<1, "|un|une|"))
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: certaines idioties {{stupide}}
TEST: quelles grandes {{idiots}}
TEST: je ne sais guère de quelles âneries {{proférés}} on parle.
TEST: quelles étonnantes {{petits}}
TEST: ici ou auxdites lointaines {{contrée}}
................................................................................
TEST: Il doit pouvoir {{détectez}} ces erreurs.                                         ->> détecter
TEST: elle rêve de pouvoir les {{brisés}} à mains nues                                  ->> briser
TEST: un homme de pouvoir débordé par ses obligations.
TEST: faire seulement ce que tu pouvais ne satisfaisait pas tes patrons.


__infi_savoir!5__
    >savoir  ~..(?:ée?s?|ez)$
    >savoir  ~..(?:ée?s?|ez)$
    >savoir  ~..(?:ée?s?|ez)$
    >savoir  ~..(?:ée?s?|ez)$
        <<- /infi/ not value(\1, "|savoirs|") and not value(<1, "|me|m’|te|t’|se|s’|nous|vous|le|la|l’|les|") and morph(\-1, ":V", ":M") and not (morph(\1, ":N") and morph(<1, ":D"))
        --1>> =suggVerbInfi(\-1)                                                                    && S’il s’agit d’une action que le sujet sait accomplir, le verbe devrait être à l’infinitif.

    >savoir  ?[ne|n’]¿  [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  ~..(?:ée?s?|ez)$
    >savoir  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]       ~..(?:ée?s?|ez)$
    >savoir  ?[ne|n’]¿  [le|la|l’|les]                  [lui|leur|en|y]           ~..(?:ée?s?|ez)$
    >savoir  ?[ne|n’]¿  [lui|leur|y]                    en                        ~..(?:ée?s?|ez)$
................................................................................
        <<- /infi/ morph(\-1, ":V", ":M")
        --1>> =suggVerbInfi(\-1)                                                                    && Après le verbe “\2”, ce verbe devrait être à l’infinitif.

TEST: Il faut savoir {{arrêté}} les frais.                                              ->> arrêter
TEST: le moment venu elle saurait les {{humiliés}} devant tout le monde                 ->> humilier
TEST: tu sauras les {{arrêtait}} avec ça, non ?                                         ->> arrêter
TEST: c’est important de savoir {{refusé}} une offre qui a l’air alléchante             ->> refuser

TEST: un certain nombre de savoirs spécialisés
TEST: je le savais désiré par de nombreuses personnes.
TEST: il les savait commandités par ses ennemis.
TEST: le savoir fabriqué dans les universités n’est guère reconnu.
TEST: savoirs déconsidérés par les tyrans


................................................................................
TEST: nous {{épuisants}} à la tâche pour des clopinettes, nous défaillîmes.



!!!! Participes passés                                                                            !!

__ppas_censé_être_adj!6__
    censé  être  @:A.*:[fp]¬:(?:G|[me]:[si])
        <<- /ppas/ --1>> =suggMasSing(\-1)                                              && Cet adjectif devrait être accordé avec “censé”, au masculin singulier.

    censée  être  @:A.*:[mp]¬:(?:G|[fe]:[si])
        <<- /ppas/ --1>> =suggFemSing(\-1)                                              && Cet adjectif devrait être accordé avec “censée”, au féminin singulier.

    censés  être  @:A.*:[fs]¬:(?:G|[me]:[pi])
        <<- /ppas/ --1>> =suggMasPlur(\-1)                                              && Cet adjectif devrait être accordé avec “censés”, au masculin pluriel.

    censées  être  @:A.*:[ms]¬:(?:G|[fe]:[pi])
        <<- /ppas/ --1>> =suggFemPlur(\-1)                                              && Cet adjectif devrait être accordé avec “censées”, au féminin pluriel.

TEST: un homme censé être {{connus}} de tous                    ->> connu
TEST: censée être {{doué}}                                      ->> douée
TEST: censés être {{nourries}} quatre fois par jour             ->> nourris
TEST: censées être {{nourris}} quatre fois par jour             ->> nourries
TEST: censés être {{instruites}}                                ->> instruits
................................................................................

    jusqu’ à    chez
    de          chez
    par         chez
    pour        chez
        <<- ~1:-2>> *


    [aucun|aucune]                  des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    [chacun|chacune]                des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    [certains|certaines]            des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    [quelques-uns|quelques-unes]    des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    plusieurs                       des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
        <<- ~2:0>> *

    aucun                       d’ entre [nous|vous|eux|iels]
    aucune                      d’ entre [nous|vous|elles|iels]
    [celui|celle|celles|ceux]   d’ entre [nous|vous|eux|elles|iels]
    [chacun|chacune]            d’ entre [nous|vous|eux|elles|iels]
    [certains|quelques-uns]     d’ entre [nous|vous|eux|iels]
    [certaines|quelques-unes]   d’ entre [nous|vous|elles|iels]
    plusieurs                   d’ entre [nous|vous|eux|elles|iels]
        <<- ~2:0>> *

    [certains|certaines|plusieurs|quelques-uns|quelques-unes] d’ entre nous
        <<- /1>> _d_entre_nous_

    [certains|certaines|plusieurs|quelques-uns|quelques-unes] d’ entre vous
        <<- /1>> _d_entre_vous_

    à bonne distance [de|d’]        {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    à côté [de|d’]                  {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    à part                          {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    à [cause|partir] [de|d’]        {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    autour [de|d’]                  {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    au-dessus [de|d’]               {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    au-dedans [de|d’]               {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
................................................................................
    elle            seule
    iel             [seul+e]
    [nous|vous]     [seuls|seules]
    eux             seuls
    elles           seules
    iels            [seuls|seules]
        <<- ~2>> *







TODO: comme


__purge_pronoms_après_sujet_verbe__
    [j’|je]     ?[ne|n’]¿   >avoir      moi-même
    tu          ?[ne|n’]¿   >avoir      toi-même
................................................................................
    les [uns|unes] des autres
    les [uns|unes] [après|avec|chez|contre|de|derrière|devant|envers|malgré|pour|sans|sous|sur] les autres
    les [uns|unes] près des autres
    les [uns|unes] par rapport à l’ autre
    les [uns|unes] par rapport aux autres
    entre les uns et les autres
        <<- ~>> *


__purge_pronoms__
    [aucun|aucune] [de|d’] ?entre¿ [nous|vous|eux|elles]






        <<- ~2:0>> *

























    [aucun|aucune] des *WORD [ne|n’]
        <<- ~2:3>> *

    [aucun|aucune] des *WORD *WORD [ne|n’]
        <<- ~2:4>> *

    beaucoup [de|d’] *WORD <end>
    beaucoup [de|d’] *WORD ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    beaucoup [de|d’] *WORD @:[VR]¬:[NAP]
    beaucoup [de|d’] *WORD , @¬:[NA]
        <<- morph(\3, ":[NA].*:p", ":(?:[NA].*:[si]|G)") /1>> bcp_plur
        <<- morph(\3, ":[NA].*:s", ":(?:[NA].*:[pi]|G)") /1>> bcp_sing
        <<- ~2:3>> *

    [chacun|chacune] [de|d’] ?entre¿ [nous|vous|eux|elles]
        <<- ~2:0>> *

    la plupart des *WORD <end>
    la plupart des *WORD ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    la plupart des *WORD @:[VR]¬:[NAP]
    la plupart des *WORD , @¬:[NA]
        <<- ~3:4>> *

    la plupart des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]|O) <end>
    la plupart des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]|O) ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    la plupart des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]|O) @:[VR]¬:[NAP]
    la plupart des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]|O) , @¬:[NA]
        <<- ~3:5>> *

    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD <end>
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[VR]¬:[NAP]
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD , @¬:[NA]
        <<- ~3:5>> *

    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:s¬:(?:G|[123][sp]|O) <end>
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:s¬:(?:G|[123][sp]|O) ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:s¬:(?:G|[123][sp]|O) @:[VR]¬:[NAP]
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:s¬:(?:G|[123][sp]|O) , @¬:[NA]
        <<- ~3:6>> *

    nous    [tous|toutes]   qui
    vous    [tous|toutes]   qui
    eux     tous            qui
    elles   toutes          qui
        <<- ~2>> *


    [un|une] de [nous|vous]
    [un|une] d’ [eux|elles]
    [un|une] d’ entre [nous|vous|eux|elles]
    [un|une] des [nôtres|vôtres]

        <<- ~2:0>> *

















### Simplification des syntagmes nominaux

__purge_syntagmes_nominaux__
    [à|au|aux|avec|en|lors|ayant]  [de|d’]  [un|une|la|l’|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NAM]  <end>
    [à|au|aux|avec|en|lors|ayant]  [de|d’]  [un|une|la|l’|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NA]   ?,¿  [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
................................................................................
        || [un|une|le|la|l’|les|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NA]¬:G   ?,¿  [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [à|avec|chez|contre|dans|envers|par|pour|selon|sous|sur|ayant]
        || [un|une|le|la|l’|les|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NA]¬:G   @:[VR]¬:[NAP]
    [à|avec|chez|contre|dans|envers|par|pour|selon|sous|sur|ayant]
        || [un|une|le|la|l’|les|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NAM]¬:G  , @¬:[NA]
        <<- ~1:3>> *







    [à|avec|chez|contre|dans|envers|par|pour|selon|sous|sur|au|aux]  @:[NAM]¬:[GY]  <end>
    [à|avec|chez|contre|dans|envers|par|pour|selon|sous|sur|au|aux]  @:[NA]¬:[GY]   ?,¿  [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [à|avec|chez|contre|dans|envers|par|pour|selon|sous|sur|au|aux]  @:[NA]¬:[GY]   @:[VR]¬:[NAP]
    [à|avec|chez|contre|dans|envers|par|pour|selon|sous|sur|au|aux]  @:[NAM]¬:[GY]  , @¬:[NA]
        <<- ~1:2>> *

    [ce|ton|son] *WORD *WORD
        <<- morph(\2, ":[NA]", ":(?:[123]p|P|X|G|V0)") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A", ":N") ~2>> *
        <<- __else__ ~3>> *

    [le|la|les|leur|certains|certaines] *WORD *WORD
        <<- morph(\2, ":[NA]", ":(?:[123]p|P|X|G|Y|V0)") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A") ~2>> *
        <<- __else__ ~3>> *

    l’ *WORD *WORD
        <<- morph(\2, ":[NA]", ":(?:[123][sp]|P|X|G|Y|V0)|>air") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>










        <<- morph(\3, ":N", ":A") and morph(\2, ":A", ":N") ~2>> *
        <<- __else__ ~3>> *

    [des|cet|cette|ces|mon|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|leurs|au|aux] *WORD *WORD
        <<- morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A", ":N") ~2>> *
        <<- __else__ ~3>> *

    [de|d’]  @:[NA].*:s¬:[YG]  <end>
    [de|d’]  @:[NA].*:s¬:[YG]  ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [de|d’]  @:[NA].*:s¬:[YG]  @:[VR]¬:[NAP]
    [de|d’]  @:[NA].*:s¬:[YG]  , @¬:[NA]
................................................................................
!!
!!
!!!! Participes passés: être, avoir été, sembler (+être via pp), devenir, rester, (re)devenir, paraître + participe passé / adj  !!
!!
!!

__ppas_je_tu_verbe_état__
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          @:[NA].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   >avoir [été|semblé|paru]                                                            @:[NA].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   [>être|>sembler] [devenu+e|redevenu+e|resté+e|demeuré+e]                            @:[NA].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:[NA].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:[NA].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:[NA].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:[NA].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:[NA].*:p¬:[GWYsi]
        <<- /ppas/ not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggSing(\-1)                                  && Accord avec le sujet “\1” : “\-1” devrait être au singulier.

    [je|j’] ?[ne|n’]¿ m’ ?[en|y]¿   >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NA].*:p¬:[GWYsi]
    tu      ?[ne|n’]¿ t’ ?[en|y]¿   >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NA].*:p¬:[GWYsi]
        <<- /ppas/ not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggSing(\-1)                                  && Accord avec le sujet “\1” : “\-1” devrait être au singulier.

TEST: j’étais {{perdus}}                                                          ->> perdu
TEST: j’aurais été {{perdus}} sans toi                                            ->> perdu
TEST: je n’étais pas {{perdus}}                                                   ->> perdu
TEST: Je suis {{contents}}.                                                       ->> content
TEST: J’en ai été {{contents}}.                                                   ->> content
................................................................................
    [ce|ça|ceci|cela|c’|ç’] >être >seul                     [que|qu’]
    [ce|ça|ceci|cela|c’|ç’] >être @:[AQ].*:f¬:[GWYme]       @:N.*:f
        <<- !3>>

    tout en [étant|semblant|devenant|restant|demeurant|redevenant|paraissant] @:A
        <<- !4>>

    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenu|redevenu|resté|demeuré]                                    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([il|quiconque])          ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([il|quiconque])          ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1) && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    ([il|quiconque]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1) && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenu|redevenu|resté|demeuré]                                    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not tag(\1, "_enum_") and morph(\2, ":3s") and not morph(<1, ":[RV]|>(?:et|ou)/") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.


    ([ça|ceci|cela|celui-ci|celui-là]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not tag(\1, "_enum_") and morph(\2, ":3s") and not morph(<1, ":[RV]|>(?:et|ou)/") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                            [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenu|redevenu|resté|demeuré]                                    [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]

        <<- /ppas/ not tag(\2, "_enum_") --1>> =suggMasSing(\-1)                                                        && Accord avec le sujet “\2” : “\-1” devrait être au masculin singulier.

    [<start>|,|(] tout ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
        <<- /ppas/ not tag(\2, "_enum_") --1>> =suggMasSing(\-1)                                                        && Accord avec le sujet “\2” : “\-1” devrait être au masculin singulier.

    lui [ne|n’|y] [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui [ne|n’|y] >avoir [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui [ne|n’|y] [>être|>sembler] [devenu|redevenu|resté|demeuré]                                    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui [ne|n’|y] /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui [ne|n’|y] /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui [ne|n’|y] /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui [ne|n’|y] /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui [ne|n’|y] /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":[RV]") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1)    && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    lui n’ [en|y] [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui n’ [en|y] >avoir [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui n’ [en|y] [>être|>sembler] [devenu|redevenu|resté|demeuré]                                    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui n’ [en|y] /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui n’ [en|y] /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui n’ [en|y] /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui n’ [en|y] /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lui n’ [en|y] /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":[RV]") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1)    && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    lui ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":[RV]") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1)    && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenu|redevenu|resté|demeuré]                                    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au masculin singulier.

    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer) [de|d’] ?[ne|n’]¿ ?[en|y]¿
        || [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au masculin singulier.

    lequel ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lequel ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lequel ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenu|redevenu|resté|demeuré]                                    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":R") --1>> =suggMasSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    lequel ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":R") --1>> =suggMasSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.













TEST: Il semble être {{partis}} pour toujours.                                    ->> parti
TEST: Il n’est pas {{demander}} à chacun de participer.
TEST: Il n’en était pas {{contents}}.                                             ->> content
TEST: Il est {{laisser}} à lui-même
TEST: il continue de paraître {{pieuse}} aux yeux des bigts                       ->> pieux
TEST: il parvient à rester {{humbles}} en toutes circonstances                    ->> humble
TEST: s’indigner contre quiconque en fut {{fâchés}}
................................................................................
TEST: celui-ci déclare être devenu {{fous}}
TEST: celui-là qui n’aime pas avoir paru plus {{grands}} qu’il ne l’était réellement
TEST: cela qui n’en était pas moins {{absurdes}}
TEST: lui qui affirmait être devenu {{éclairée}}
TEST: lui qui ne croit rester {{humbles}} en mettant sans cesse en avant ses mérites
TEST: lui qui n’en aimait pas rester {{visibles}}
TEST: lequel allait être {{renvoyée}} de l’établissement.
TEST: tout sera {{dissoute}}


TEST: lui ne voulant être {{retrouvés}}
TEST: lequel renonce à être {{instruite}}
TEST: il s’efforçait d’être {{humbles}}
TEST: quiconque ne s’efforçait pas de rester {{utiles}} était fusillé.
TEST: celui qui s’efforce d’être {{humbles}}
TEST: celui-là qui ne s’efforçait jamais d’être {{gentille}}
TEST: celui-ci qui ne s’y efforcera pas de paraître {{utiles}}
................................................................................
TEST: ça s’efforce d’être {{humbles}}
TEST: celui-là ne s’efforçait jamais de paraître {{utiles}}
TEST: ceci ne s’en efforçait pas moins d’être particulièrement {{irritants}}
TEST: tout s’efforce de rester {{unis}} ensemble.
TEST: lui s’y efforçait de paraître {{instruits}}
TEST: il ne s’y efforce pas moins de paraître {{connaisseurs}}
TEST: lequel ne s’efforçait pas d’être {{connus}}




TEST: C’est donc seules que les deux femmes sont amenées à comparaître
TEST: C’eût été pure imagination.
TEST: Je n’arrêtais pas de me répéter que tout cela était peut-être pure imagination
TEST: La femme qui faisait ça est partie.
TEST: De cela a toujours été faite notre vie
TEST: Ce sont différents types de violences
TEST: La littérature africaine s’ouvre au monde, parle au monde, tout en étant ancrée dans le continent.
................................................................................
TEST: tout est nuances de rouges, de gris et de bleus.
TEST: tout en restant bien sages
TEST: Celles et ceux qui n’auront que cela seront vraiment appauvris. D’autres, qui seront plus aisés, iront compléter par de la capitalisation.
TEST: dès que l’occasion lui en fut laissée


__ppas_3sg_fem_verbe_état__
    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenue|redevenue|restée|demeurée]                                [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ not tag(\1, "_enum_") and not morph(<1, ":[RV]|>(?:et|ou)/") and morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    ([elle|celle-ci|celle-là]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ not tag(\1, "_enum_") and not morph(<1, ":[RV]|>(?:et|ou)/") and morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenue|redevenue|restée|demeurée]                                [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggFemSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin singulier.

    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggFemSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin singulier.

    laquelle ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    laquelle ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                            [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    laquelle ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenue|redevenue|restée|demeurée]                                [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ not morph(<1, ":R") --1>> =suggFemSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    laquelle ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:p¬:[GWYsi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ not morph(<1, ":R") --1>> =suggFemSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.












TEST: elle a été {{perdu}} par ses parents                                        ->> perdue
TEST: Elle semble être totalement {{ruiné}}.                                      ->> ruinée
TEST: Elle est complètement {{fol}}.                                              ->> folle
TEST: elle n’est pas {{petits}}
TEST: Elle en est de plus en plus {{belles}}.                                     ->> belle
TEST: elle n’en est pas {{fâché}}                                                 ->> fâchée
................................................................................
TEST: elle s’efforçait d’être {{belles}} à ses propres yeux
TEST: elle ne s’efforçait jamais de paraître {{douées}}
TEST: celle qui s’efforçait de paraître {{humbles}}
TEST: elle qui ne s’efforçait jamais d’être {{connus}}
TEST: celle-là qui ne s’en efforçait pas moins d’être {{reconnu}}
TEST: celle-ci ne s’y efforçait jamais de devenir plus {{fortes}}
TEST: laquelle s’y efforce de paraître {{humbles}}






__ppas_iel_verbe_état__
    iel ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                  @:[NA].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                                    @:[NA].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|devenues|redevenus|redevenues|restés|restées|demeurés|demeurées]  @:[NA].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_             @:[NA].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_             @:[NA].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_            @:[NA].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_           @:[NA].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_          @:[NA].*:p¬:[GWYsi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":3s") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggSing(\-1)                                                                                            && Accord avec le sujet “iel” : “\-1” devrait être au pluriel.

    iel ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NA].*:p¬:[GWYsi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":3s") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggSing(\-1)                                                                                            && Accord avec le sujet “iel” : “\-1” devrait être au pluriel.

TEST: iel paraît {{faibles}}
TEST: iel paraît avoir été complètement {{prises}} de panique.
TEST: iel doit avoir été bien {{méchants}} pour être traité de la sorte.
TEST: iel ne peut devenir aussi {{perspicaces}} avec tout cet alcool ingurgité.
TEST: iel pense être {{désirés}}
................................................................................
TEST: iel ne s’y efforce pas de devenir plus {{charmantes}} à leurs yeux.
TEST: iel est légion.
TEST: iel ne paraît pas avoir été affecté, bien qu’iel eût été frappé par un obus.
TEST: iel est devenu fort.


__ppas_nous_verbe_état__
    nous ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                  @:[NA].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                                    @:[NA].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|devenues|redevenus|redevenues|restés|restées|demeurés|demeurées]  @:[NA].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_             @:[NA].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_             @:[NA].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_            @:[NA].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_           @:[NA].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_          @:[NA].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]|>(?:ne|nous)/") and morph(\1, ":1p") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggPlur(\-1)                                                                                            && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.

    nous ?[ne|n’]¿ nous ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NA].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]|>(?:ne|nous)/") and morph(\1, ":1p") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggPlur(\-1)                                                                                            && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.

TEST: nous paraissons {{faible}}
TEST: Nous paraissons avoir été complètement {{prise}} de panique.                ->> prises
TEST: Nous devons avoir été bien {{méchant}} pour être traité de la sorte.
TEST: nous ne pouvons devenir aussi {{perspicace}} avec tout cet alcool ingurgité.
TEST: nous pensons être {{désiré}}
................................................................................
TEST: nous ne nous y efforçâmes guère de paraître {{dépourvu}} de moyens…
TEST: nous sommes légion.
TEST: nous ne paraissions pas avoir été légion, mais l’effet eut autant de force que si nous avions été des millions.
TEST: nous sommes devenus néant.


__ppas_3pl_mas_verbe_état__
    ils ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]           [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ils ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ils ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenus|redevenus|restés|demeurés]                                 [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ils ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|redevenus|restés|demeurés]                                 [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux-ci|ceux-là]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|redevenus|restés|demeurés]                                 [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.


    ([eux|ceux|ceux-ci|ceux-là]) qui ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    lesquels ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]           [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    lesquels ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    lesquels ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenus|redevenus|restés|demeurés]                                 [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|néant|réalité|") --1>> =suggMasPlur(\-1)             && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    lesquels ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:f¬:[GWYme]]
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|néant|réalité|") --1>> =suggMasPlur(\-1)             && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

TEST: ils sont {{parti}}.                                                         ->> partis
TEST: ils sont {{parties}}.                                                       ->> partis
TEST: ils restaient {{méfiantes}}                                                 ->> méfiants
TEST: Ils semblent avoir été {{attaqué}} par des soldats.                         ->> attaqués
TEST: Ils sont de manière si étonnante et si admirable {{arrivé}} à ce résultat…
................................................................................
TEST: contre ceux qui ne s’efforcent pas d’être {{meilleur}}
TEST: ceux-là qui ne s’y efforçaient jamais de rester {{humble}}
TEST: lesquels ne s’efforçaient jamais d’être {{entendu}}
TEST: ils étaient devenus réalité.


__ppas_3pl_fem_verbe_état__
    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenues|redevenues|restées|demeurées]                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.


    ([elles|celles-ci|celles-là]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenues|redevenues|restées|demeurées]                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemPlur(\-1)                                                                                         && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin pluriel.


    ([elles|celles|celles-ci|celles-là]) qui ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemPlur(\-1)                                                                                         && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin pluriel.

    lesquelles ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]           [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    lesquelles ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    lesquelles ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenues|redevenues|restées|demeurées]                             [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|néant|réalité|") --1>> =suggFemPlur(\-1)             && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

    lesquelles ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:[NA].*:s¬:[GWYpi]|@:[AQ].*:m¬:[GWYfe]]
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|néant|réalité|") --1>> =suggFemPlur(\-1)             && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

TEST: elles n’ont tout de même pas été {{attaqué}}                                ->> attaquées
TEST: Elles sont {{affamé}}.                                                      ->> affamées
TEST: Celles-là sont {{folle}}.
TEST: elles veulent être {{différente}}
TEST: Elle peut être {{observées}}.
................................................................................
TEST: elles qui s’efforcent d’être {{entendus}}
TEST: celles qui ne s’efforcent jamais de paraître {{belle}}
TEST: celles-ci qui ne s’y efforcent jamais de paraître {{raisonnable}}
TEST: lesquelles s’efforceront toujours de paraître {{évidente}}
TEST: celles-là imaginent être devenues légion


__ppas_iels_verbe_état__
    iels ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                  @:[NA].*:s¬:[GWYpi]
    iels ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                                    @:[NA].*:s¬:[GWYpi]
    iels ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|devenues|redevenus|redevenues|restés|restées|demeurés|demeurées]  @:[NA].*:s¬:[GWYpi]
    iels ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_             @:[NA].*:s¬:[GWYpi]
    iels ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_             @:[NA].*:s¬:[GWYpi]
    iels ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_            @:[NA].*:s¬:[GWYpi]
    iels ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_           @:[NA].*:s¬:[GWYpi]
    iels ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_          @:[NA].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":3p") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggPlur(\-1)                                                                                            && Accord avec le sujet “iels” : “\-1” devrait être au pluriel.

    iels ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NA].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":3p") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggPlur(\-1)                                                                                            && Accord avec le sujet “iels” : “\-1” devrait être au pluriel.

TEST: iels paraissent {{faible}}
TEST: iels paraissent avoir été complètement {{prise}} de panique.                ->> prises
TEST: iels doivent avoir été bien {{méchant}} pour être traité de la sorte.
TEST: iels ne peuvent devenir aussi {{perspicace}} avec tout cet alcool ingurgité.
TEST: iels pensent être {{désiré}}
TEST: iels n’y doivent pas être {{instruit}}, mais…
................................................................................
TEST: C’eût été foncer tête baissée dans la gueule du loup.
TEST: Leur passe-temps, ça a été faire n’importe quoi.
TEST: Ne pas ressortir le livre le plus remarqué de la collaboration aurait été faire acte de censure.
TEST: Partir aurait été assurer sa survie.
TEST: J’ai été conseiller régional



!!!! Participes passés: accord en nombre avec la conjugaison de « être » (et équivalent)            !!

__ppas_être_accord_sing__
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           @:[NA].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                             @:[NA].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                            @:[NA].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:[NA].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:[NA].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:[NA].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:[NA].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:[NA].*:p¬:[GMWYsi]
        <<- /ppas/ not tag_before(\1, "_que_") and not morph(\1, ":G") and morph(\2, ":[123]s", ":(?:C|N.*:p)")
        --1>> =suggSing(\-1)                                                                        && Accord avec la forme verbale “\2” : “\-1” devrait être au singulier.

    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           @:[NA].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                             @:[NA].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                            @:[NA].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:[NA].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:[NA].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:[NA].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:[NA].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:[NA].*:p¬:[GMWYsi]
        <<- /ppas/ morph(\1, ":[123]s", ":(?:C|N.*:p)") --1>> =suggSing(\-1)                        && Accord avec la forme verbale “\1” : “\-1” devrait être au singulier.

TEST: cette petite chienne avait été longtemps {{malades}}.
TEST: Ce mâle qui est resté {{arrogants}} ?
TEST: Cette folle qui n’affirme pas avoir été {{frappés}}.
TEST: Cet animal qui n’en souhaite pas rester {{amnésiques}}.
TEST: Qui n’en semble pas être devenu {{malades}} ?
TEST: C’est le crime qui se vante, qui adore avoir semblé {{légitimes}}.
TEST: ce jour, et surtout cette soirée, qui ne semble pas devenir {{interminables}}.
TEST: ces emmerdeurs, qui ne sont toujours pas {{parti}}, ont encore eu une idée pour nous pourrir la vie.
TEST: ne déclare pas avoir été {{présents}}
TEST: déteste paraître {{ignorants}}

TEST: les plus anciens restes trouvés à ce jour proviennent de ce site
TEST: Restes crâniens.
TEST: Demeures victoriennes.


__ppas_être_accord_plur__
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                   @:[NA].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                                     @:[NA].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenus|redevenus|restés|demeurés|devenues|redevenues|restées|demeurées]  @:[NA].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_              @:[NA].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_              @:[NA].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_             @:[NA].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_            @:[NA].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_           @:[NA].*:s¬:[GMWYpi]
        <<- /ppas/ not tag_before(\1, "_que_") and not value(\-1, "|légion|néant|réalité|") and not morph(\1, ":G") and morph(\2, ":[13]p")
        --1>> =suggPlur(\-1)                                                                                            && Accord avec la forme verbale “\2” : “\-1” devrait être au pluriel.

    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                   @:[NA].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                                     @:[NA].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenus|redevenus|restés|demeurés|devenues|redevenues|restées|demeurées]  @:[NA].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_              @:[NA].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_              @:[NA].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_             @:[NA].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_            @:[NA].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_           @:[NA].*:s¬:[GMWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\1, ":[13]p") --1>> =suggPlur(\-1)                && Accord avec la forme verbale “\1” : “\-1” devrait être au pluriel.

TEST: ces atouts sont très {{favorable}}
TEST: Mais ces hommes affirment être redevenus {{humble}}.
TEST: ces femmes n’affirment pas avoir été {{courtoise}}.

TEST: des avocates qui n’imaginent pas devenir {{inapte}} pour si peu.
TEST: ces hommes qui n’y semblent pas avoir été {{élégant}}.
TEST: Qui adorerait être redevenu {{sains}}.
TEST: qui n’en furent pas {{balayé}} au premier coup de vent.
TEST: n’aime pas paraître {{faibles}}.
TEST: semblent être redevenus {{sage}}
TEST: ce que les journalistes estiment être normal.
TEST: qui échappe à tout contrôle démocratique et dans lequel les lobbies sont partie prenante est une folie.



!!!! Participes passés: accord en genre avec le substantif précédent                              !!

__ppas_sujet_être_accord_genre__
























    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])             *WORD
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                               *WORD
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                              *WORD
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_        *WORD
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_        *WORD
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_       *WORD
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_      *WORD
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_     *WORD
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and
            morph(\1, ":[NA].*:[me]", ":[GWf]") and morph(\-1, ":A.*:f", ":[GWMme]") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P")))
        --1>> =switchGender(\-1)                                                                    && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre.

    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          *WORD
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                            *WORD
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                           *WORD
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     *WORD
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     *WORD
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    *WORD
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   *WORD
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  *WORD
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and
            morph(\1, ":[NA].*:[fe]", ":[GWm]") and morph(\-1, ":A.*:m", ":[GWMfe]") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P")))
        --1>> =switchGender(\-1)                                                                    && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre.

    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          *WORD
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                            *WORD
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                           *WORD
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     *WORD
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     *WORD
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    *WORD
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   *WORD
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  *WORD
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and
            ((morph(\1, ":[NA].*:f", ":[GWme]") and morph(\-1, ":A.*:m", ":[GWMfe]")) or (morph(\1, ":[NA].*:m", ":[GWfe]") and morph(\-1, ":A.*:f", ":[GWme]")))
            and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P")))
        --1>> =switchGender(\-1)                                                                    && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre.

    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                   *WORD
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                                     *WORD
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenus|redevenus|restés|demeurés|devenues|redevenues|restées|demeurées]  *WORD
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_              *WORD
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_              *WORD
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_             *WORD
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_            *WORD
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_           *WORD
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and
            ((morph(\1, ":[NA].*:f", ":[GWme]") and morph(\-1, ":A.*:m", ":[GWMfe]")) or (morph(\1, ":[NA].*:m", ":[GWfe]") and morph(\-1, ":A.*:f", ":[GWme]"))) and morph(\2, ":(?:[123]p|P)")
        --1>> =switchGender(\-1)                                                                    && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre.

    *WORD  [que|qu’]  [un|le|ce|cet|une|la|ma|ta|sa|cette|l’|mon|ton|son|notre|votre|leur|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  *WORD  ?[ne|n’]¿  ?[en|y]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || [être|devenir|redevenir|rester|paraître|paraitre|sembler]                                *WORD
    *WORD  [que|qu’]  [un|le|ce|cet|une|la|ma|ta|sa|cette|l’|mon|ton|son|notre|votre|leur|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  *WORD  ?[ne|n’]¿  ?[en|y]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || être [devenu+e|redevenu+e|resté+e|demeuré+e]                                             *WORD
    *WORD  [que|qu’]  [un|le|ce|cet|une|la|ma|ta|sa|cette|l’|mon|ton|son|notre|votre|leur|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  *WORD  ?[ne|n’]¿  ?[en|y]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || avoir [été|semblé|paru]                                                                  *WORD
        <<- /ppas/ checkAgreement(\1, \-1) !-1>>

TEST: Un orage est {{annoncée}}.
TEST: ce chat ne sera pas {{euthanasiée}}
TEST: Le chien qui n’y sera pas {{traitée}}
TEST: cet homme qui ne cesse pas d’être {{ennuyée}}
TEST: cet espion qui sera {{jugée}} bientôt
TEST: la danse n’en est pas {{fini}} pour autant…
TEST: Une averse semble être {{annoncé}}.
................................................................................
TEST: ta fille qui pense avoir été {{trompé}}
TEST: cette carte qui n’y sera jamais {{retrouvé}} à temps
TEST: Ma mémoire qui a aussi été {{effacé}}.
TEST: Sa femme qui ne paraît pas avoir été {{choqué}}
TEST: l’avenir de la région paraissait {{suspendue}} à ce financement
TEST: l’idiot qui n’y affirmait pas être devenu {{géniale}} mais seulement moins ignorant
TEST: Mon ami qui pensait être {{suivie}}

TEST: l’écolier qui ne croyait pas avoir été {{brillante}}
















































TEST: les femmes sont vraiment {{partis}}                                         ->> parties
TEST: les hommes n’en sont pas tout à fait {{fâchées}}                            ->> fâchés
TEST: plusieurs invités qui n’en sont pas {{contentes}}
TEST: les réunions sans cesse reportées qui sont {{annulés}}
TEST: les hommes croyant être {{instruites}}










TEST: Les tortures que ce journaliste pense être “normales”.
TEST: La première était René, le parfumeur, qui s’approcha de Catherine
TEST: les abrutis sont légion


__ppas_nom_propre_être_accord_genre__
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                            *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                           *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  *WORD
        <<- /ppas/ not tag(\1, "_enum_") and ((morph(\1, ":M.*:f", ":[GWme]") and morph(\-1, ":A.*:m", ":[GWfe]")) or (morph(\1, ":M.*:m", ":[GWfe]") and morph(\-1, ":A.*:f", ":[GWme]")))
            and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P")))
        --1>> =switchGender(\-1)                                                                    && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre.

    *WORD  [que|qu’]  $:M  ?[ne|n’]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || [être|devenir|redevenir|rester|paraître|paraitre|sembler]                                *WORD
    *WORD  [que|qu’]  $:M  ?[ne|n’]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || être [devenu+e|redevenu+e|resté+e|demeuré+e]                                             *WORD
    *WORD  [que|qu’]  $:M  ?[ne|n’]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || avoir [été|semblé|paru]                                                                  *WORD
        <<- /ppas/ checkAgreement(\1, \-1) !-1>>

TEST: Marianne semble devenue {{colériques}}
TEST: Pauline n’affirme pas avoir été {{vaincu}} pour autant
TEST: Sara n’en croit pas cependant être devenue {{aigries}}
TEST: Patrick est devenu {{folles}}
TEST: Mohammed ne semble pas avoir paru {{dingues}}
TEST: Isaac n’en estime pas réellement avoir semblé {{faibles}}
TEST: Antoine est {{mariée}}.
................................................................................
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           celui qui
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  celui qui
        <<- /ppas/ morph(\2, ":A.*:[fp]", ":(?:G|:m:[si])") and morph(\3, ":[123]s")
        -2>> =suggMasSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          celle qui
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           celle qui
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  celle qui
        <<- /ppas/ morph(\2, ":A.*:[mp]", ":(?:G|:f:[si])") and morph(\3, ":[123]s")
        -2>> =suggFemSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          ceux qui
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           ceux qui
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  ceux qui
        <<- /ppas/ morph(\2, ":A.*:[fs]", ":(?:G|:m:[pi])") and morph(\3, ":[123]p")
        -2>> =suggMasPlur(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin pluriel.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          celles qui
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           celles qui
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  celles qui
        <<- /ppas/ morph(\2, ":A.*:[ms]", ":(?:G|:f:[pi])") and morph(\3, ":[123]p")
        -2>> =suggFemPlur(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin pluriel.

TEST: {{vains}} est celui qui croit que sa religion lui accorde le salut.                   ->> vain
TEST: {{ridiculisé}} fut celle qui lutta d’arrache-pied à faire connaître la vérité.        ->> ridiculisée
TEST: {{faible}} paraissent avoir été ceux qui ont été vaincus                              ->> faibles
TEST: {{oublié}} étaient celles qui avaient lutté pour un monde libre.                      ->> oubliées

................................................................................
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [un|le|ce|cet]  @:[NA].*:[me]:[si]
        <<- /ppas/ morph(\2, ":A.*:[fp]", ":(?:G|:m:[si])") and morph(\3, ":[123]s")
        -2>> =suggMasSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
        <<- /ppas/ morph(\2, ":A.*:[mp]", ":(?:G|:f:[si])") and morph(\3, ":[123]s")
        -2>> =suggFemSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
        <<- /ppas/ morph(\2, ":A.*:m", ":[fe]") and morph(\-1, ":[NA]:f", ":[me]")
        -2>> =suggFemSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin singulier.
        <<- /ppas/ __else__ and morph(\2, ":A.*:f", ":[me]") and morph(\-1, ":[NA]:m", ":[fe]")
        -2>> =suggMasSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin singulier.
        <<- /ppas/ morph(\2, ":A.*:p", ":[Gsi]") and morph(\3, ":[123]s")
        -2>> =suggSing(\2)                                                                          && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
        <<- /ppas/ morph(\2, ":A.*:m", ":[fe]") and morph(\-1, ":[NA]:f", ":[me]")
        -2>> =suggFemPlur(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin pluriel.
        <<- /ppas/ __else__ and morph(\2, ":A.*:f", ":[me]") and morph(\-1, ":[NA]:m", ":[fe]")
        -2>> =suggMasPlur(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin pluriel.
        <<- /ppas/ __else__ and morph(\2, ":A.*:s", ":[Gpi]") and morph(\3, ":[123]p")
        -2>> =suggPlur(\2)                                                                          && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au pluriel.

TEST: {{cachée}} allait devenir ce livre                                            ->> caché
TEST: {{vain}} fut la destruction de cette base.                                    ->> vaine
TEST: {{utiles}} a été la perte de notre arrogance                                  ->> utile
TEST: {{perdu}} serait devenu l’entreprise                                          ->> perdue
TEST: {{perdue}} allait être l’homme                                                ->> perdu
................................................................................
!!
!!
!!!! Participes passés: avoir l’air                                                               !!
!!
!!

__ppas_avoir_l_air__
    il  ?[ne|n’]¿  >avoir  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ --1>> =suggMasSing(\-1)                                      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    elle  ?[ne|n’]¿  >avoir  l’  air  @:A¬:(?:A.*:[si]|G)
        <<- /ppas/ not morph(<1, ":R|>(?:et|ou)/") --1>> =suggFemSing(\-1)      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    <start>  [le|un|ce|cet|mon|ton|son|notre|votre|leur]  *WORD  ?[ne|n’]¿  >avoir  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ morph(\3, ":[NA].*:[me]", ":f") --1>> =suggMasSing(\-1)      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    <start>  [la|une|cette|ma|ta|sa|notre|votre|leur]  *WORD  ?[ne|n’]¿  >avoir  l’  air  @:A¬:(?:A.*:[si]|G)
        <<- /ppas/ morph(\3, ":[NA].*:[fe]", ":m") --1>> =suggFemSing(\-1)      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    [<start>]  *WORD  ?[ne|n’]¿  >avoir  l’  air  @:A¬:(?:A.*:m:[si]|G)
        <<- /ppas/ morph(\2, ":M.*:m", ":M.*:[fe]") --1>> =suggMasSing(\-1)     && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    ils  ?[ne|n’]¿  >avoir  l’  air  @:A¬:(?:A.*:[me]|G)
        <<- /ppas/ --1>> =suggMasPlur(\-1)                                      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    elles  ?[ne|n’]¿  >avoir  l’  air  @:A¬:(?:A.*:(?:m:[si]|[fe]:[pi])|G)
        <<- /ppas/ not morph(<1, ":R|>(?:et|ou)/") --1>> =suggFemPlur(\-1)      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    <start>  [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  *WORD  ?[ne|n’]¿  >avoir  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ morph(\3, ":[NA].*:m:[pi]", ":[fe]") and morph(\-1, ":[NA].*:f")
        --1>> =suggMasPlur(\-1)                                                 && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728
        <<- /ppas/ __else__ and morph(\3, ":[NA].*:f:[pi]", ":[me]") and morph(\-1, ":[NA].*:(?:m:p|f:s)")
        --1>> =suggFemPlur(\-1)                                                 && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    >avoir  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ morph(\1, ":V0a.*:[123]s") and morph(\-1, ":A.*:p") and not value(<1, "|on|")
        --1>> =suggSing(\-1)                                                    && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728
        <<- /ppas/ __else__ and morph(\1, ":V0a.*:[123]p") and morph(\-1, ":A.*:s")
        --1>> =suggPlur(\-1)                                                    && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    [/-je|/-tu|/-iel]  l’  air  @:A¬:(?:A.*:[si]|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggSing(\-1)                     && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    [/-nous|/-iels]  l’  air  @:A¬:(?:A.*:(?:m:[si]|p)|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggPlur(\-1)                     && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    /-il  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggMasSing(\-1)                  && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    /-elle  l’  air  @:A¬:(?:A.*:[si]|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggFemSing(\-1)                  && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    /-ils  l’  air  @:A¬:(?:A.*:[me]|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggMasPlur(\-1)                  && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    /-elles  l’  air  @:A¬:(?:A.*:(?:m:[si]|[fe]:[pi])|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggFemPlur(\-1)                  && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

TEST: avait l’air {{sinistres}} des mauvais jours.                      ->> sinistre
TEST: avaient l’air {{ignorante}} du danger                             ->> ignorantes
TEST: il n’avait pas l’air {{heureuse}}                                 ->> heureux
TEST: ils n’avaient jamais l’air {{perdues}}                            ->> perdus
TEST: Elle n’avait guère l’air {{grossières}}                           ->> grossière
................................................................................
TEST: Avaient-ils l’air {{ignorantes}} ?                                ->> ignorants
TEST: Avaient-elles l’air {{triomphants}} ?                             ->> triomphantes
TEST: Paul avait l’air {{perdue}}                                       ->> perdu
TEST: la voiture avait l’air {{foutues}}                                ->> foutue
TEST: Le chien a l’air {{idiote}}                                       ->> idiot
TEST: Les écoles avaient l’air {{fermés}}                               ->> fermées
TEST: Nos voisins auront l’air {{perdues}}                              ->> perdus

TEST: Avais-je l’air égarée ?
TEST: Avais-tu l’air folle ?
TEST: Avait-il l’air serein ?
TEST: Avait-elle l’air absente ?
TEST: Avions-nous l’air ignorantes ?
TEST: Avaient-ils l’air ignorants ?
TEST: Avaient-elles l’air triomphantes ?
................................................................................
        -2>> =suggSing(\2)                                                      && Si cet adjectif se réfère au pronom « \-1 », l’adjectif devrait être au singulier (et accordé en genre).

TEST: {{Découragés}}, je suis parti.


__ppas_adj_accord_il__
    <start>  *WORD  ?,¿  il
        <<- /ppas/ not value(\2, "|bref|désolé|désolée|pire|")  and not tag(\2, "_exctx_")
            and morph(\2, ":A.*:[fp]", ":(?:G|E|M1|W|P|m:[si])") and not after("^ +(?:y (?:a|aura|avait|eut)|d(?:ut|oit|evait|evra) y avoir|s’agi(?:ssait|t|ra))[, .]")
        -2>> =suggMasSing(\2)                                                   && Si cet adjectif se réfère au pronom « il », l’adjectif devrait être au masculin singulier.

TEST: — {{Déçue}}, il s’en est allé.
TEST: — Désolée, il va partir bientôt.
TEST: Lancés il y a plus de 13 ans, le 14 février 2001, ces outils
TEST: Si délégués il doit y avoir, ce sera uniquement des gens choisis parmi nous.
TEST: Étudiante, il s’agissait de s’inventer des parents riches.
................................................................................
TEST: des ruisselets, des arbres, une tonnelle qui rappelaient le temps.
TEST: son assurance, sa grâce, son sex-appeal nous permettent de passer sans encombre liquides et rasoirs.
TEST: Son courage, son ardeur étaient immenses,


__conj_un_une__
    [un|une]  @:V¬:(?:3s|P|G|Q|M|[NA].*:[si])
        <<- /conj/ morph(<1, ":C|<start>|>(?:,|dont)", ":(?:Y|P|Q|[123][sp]|R)̉|>(?:sauf|excepté|et|ou)/")
        --1>> =suggVerb(\-1, ":3s")                             && Conjugaison erronée. Accord avec “\1…”. Le verbe devrait être à la 3ᵉ personne du singulier.

    [un|une]  qui  @:V¬:(?:3s|P|G|Q|[NA].*:[si])
        <<- /conj/ morph(<1, "<start>|>(?:,|dont)/|:R")
        --1>> =suggVerb(\-1, ":3s")                             && Conjugaison erronée. Accord avec “\2…”. Le verbe devrait être à la 3ᵉ personne du singulier.

TEST: il y en a beaucoup, tu vois, même si un {{seras}} mieux pensé que les autres.
TEST: tu vois, il y en a dix dont un {{seras}} mieux pensé que les autres.
TEST: tu sais, il y en a quelques-unes dont une qui {{deviendras}} meilleure que tu l’imagines.
TEST: Toutes sauf une iront à l’université.
TEST: Tous excepté un sauront s’y prendre.
TEST: Trente et un viennent ce soir.
TEST: Quarante et une seront là demain.
TEST: Tous sauf un viendront.


__conj_un_une_des__
    [un|une]  des  *WORD  @:V¬:(?:3s|P|G|Q|M|[NA].*:[pi])
        <<- /conj/ morph(<1, ":C|<start>|>,", ":(?:Y|P|Q|[123][sp]|R)")
        --1>> =suggVerb(\-1, ":3s")                                     && Conjugaison erronée. Accord avec “\1 \2 \3…”. Le verbe devrait être à la 3ᵉ personne du singulier.

    [un|une]  des  *WORD  qui  @:V¬:(?:3[sp]|P|G)
        <<- /conj/ morph(<1, ":C|<start>|>,", ":(?:Y|P|Q|[123][sp]|R)")
        --1>> =suggVerb(\-1, ":3s")                                     && Conjugaison erronée. Accord avec “\1 \2 \3…”. Le verbe devrait être à la 3ᵉ personne du singulier ou du pluriel.

TEST: un des ingénieurs {{vinrent}} nous dire quoi faire.
TEST: un des membres présents au conseil {{demandent}} un vote à bulletin secret
TEST: une des femmes de ce conseil ne {{céderaient}} jamais au chantage.
TEST: un des chats qui {{venez}} nous ennuyer tous les jours.
TEST: une des femmes présente ses résultats.
TEST: les défaillances d’une des branches ne sont pas forcément couvertes.
................................................................................
TEST: Mais parmi les millions de causes à défendre, lesquelles choisir ?
TEST: les failles par lesquelles entrait l’eau étaient impossibles à boucher.


__conj_beaucoup__
    beaucoup    @:V¬:(?:P|Q|G|Y)
        <<- /conj/ not morph(<1, ":[VR]") >>>
        <<- /conj/ tag(\1, "bcp_plur") and not morph(\2, ":3p")
        -2>> =suggVerb(\2, ":3p")                                   && Conjugaison erronée. Accord avec “\1”. Le substantif suivant étant au pluriel, le verbe devrait être à la 3ᵉ personne du pluriel.
        <<- /conj/ __else__ and tag(\1, "bcp_sing") and not morph(\2, ":3s")
        -2>> =suggVerb(\2, ":3s")                                   && Conjugaison erronée. Accord avec “\1”. Le substantif suivant étant au singulier, le verbe devrait être à la 3ᵉ personne du singulier.
        <<- /conj/ __else__ and \2 != "a" and not tag(\1, "bcp_sing") and not morph(\2, ":3p") and not (space_after(\1, 1, 2) and morph(\2, ":V0"))
        -2>> =suggVerb(\2, ":3p")                                   && Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du pluriel.

    beaucoup    qui  @:V¬:(?:3p|P|G)
        <<- /conj/ -3>> =suggVerb(\3, ":3p")                        && Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du pluriel.

TEST: beaucoup {{vienne}}
TEST: Beaucoup d’hommes y {{était}}.
................................................................................
TEST: Cette fille a plus d’un tour dans son sac.
TEST: L’homme est également président de l’AFP
TEST: ils nous ont agenouillés
TEST: C’est pure folie.
TEST: Du côté de ceux sans qui le cinéma se réduirait à pas grand-chose
TEST: Il commence à monter sur scène au Club Méditerranée
TEST: Je n’en avais cure.




!!! Tests historiques                                                                             !!

## Version 0.5.14
TEST: par le léger tissu de rayonne qui les protégeait en ce moment.







|


|







 







|
|







 







|







 







|







 







|
|
|
|







 







|



|







|



|







 







|
|
|


|
|

|







 







|
>
>
>



<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<












>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







>
>
>
>
>
>







 







|







 







|







 







<
<
<
<







 







>
>
>
>
>







 







>
>
>







 







>




>







 







>


>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

<
<
>
>
|
|



<
>
|
<
<
<
>
>
>
|
|
<
>
|

>







 







>
>
>
>


<












>
>
>

|





|
|
|
>
>
>
>







 







>







|
>







 







|







 







>
|







 







|



|
>
>
>



|
<
<
<









>
>
>













>












>







 







>
>
>
>
>
>
>
>
>







 







|





<
|













|







 







>
>








|
|







 







>
>
>
>








>
>







 







>
>
>
>
>
>
>
>
>
>
>







 







>
|







 







|







 







|







 







|







|
|







 







|
|


>
>
>





|
|
>
|







 







|
|







 







|







 







|







 







>
>
>
>
>
>
>
>
|







 







|



|
<
<
<



|
>
>
>







<
<
<
<
<
<
<
<
<
<
<
<
<







<
<







 







>
>
>
>
>
>
>
>
>
>
>
>
>



>
>







 







|

|
|
>
>
>
>



|

|







 







>







 







>







 







|
|


|
|


|
|
|








>

|







 







>
>
>
>
>
>
>
>
>







 







|












|







 







|







 







>







 







>







 







|
|
|
|







 







>







 







|
>







 







<


>
>







 







|







 







>







 







|
>







 







>







 







>


|







 







>







 







>







 







|

>







 







<







 







|
>
>









>







 







>







 







|







 







>







 







|







 







|
|
|
|
|
|
|
|










|
|





>
>
>
>







 







|



|

|

|

|

|

|
|
|

|

|

|







 







|


>
>
>
>












>
>
>
|
|
>
>













>
>
|
|










|







|







|







 







|
|
|











|


|







 







<
<
<
<
<
|







 







>










|







 







|







 







|







 







>
>
>
>
>
>
>
>
>
>
>
>
>







 







<
>
>
>
>







 







>







 







|







 







>
>
>
>







 







<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<







 







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







>







 







|
|
>
>
>







 







>









>
>
>
>
>
>
>
>







 







>
>
>
>





>







 







|
>









|







 







>
>
>
>
>
>
>
>
>







 







|
|



>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

>
>
>
>
>
>
>







 







>







 







|






|







 







>
>
>








|






|







 







|









|







 







|






|







 







|






|







 







|






|







 







|








|







 







|






|







 







|








|







 







|








|







 







|








|





|







 







|




|







 







|






|



|













|






|



|







 







|
|
|
|







 







>







 







|


|


|


|







 







<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<







 







>
>
>
>
>
>







 








>

<
>
>
>
>
>
>

>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>











|
|


<
<
<






|
|
|
|








|
|
|
|


|
|
|
|
|
>

<
|
|
|
>
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







 







>
>
>
>
>
>
|
|
|
|













|
>
>
>
>
>
>
>
>
>
>



|
|







 







|
|
|
|
|
|
|
|


|
|







 







|
|
|
|
|
|
|
|


|


|
|
|
|
|
|
|
|
|


>
|
|


|
|
|
<
|
|
|
|
>
|


|

|
|
|
|
|
|
|
|


|
|
|
|
|
|
|
|


|


|
|
|
|
|
|
|
|


|
|


|
|
|
|
|
|
|
|


|


>
>
>
>
>
>
>
>
>
>
>
>







 







|
>
>







 







>
>
>
>







 







|
|
|
|
|
|
|
|



|



|
|
|
|
|
|
|
|


|


|
|
|
|
|
|
|
|


|

>
>
>
>
>
>
>
>
>
>
>







 







>
>
>
>



|
|
|
|
|
|
|
|
|


|
|







 







|
|
|
|
|
|
|
|
|



|







 







|
|
|
|
|
|
|
|



|



|
|
|
|
|
|
|
|



|



|
|
|
|
|
|
|
|



>
|



|
|
|
|
|
|
|
|


|







 







|
|
|
|
|
|
|
|



>
|



|
|
|
|
|
|
|
|



>
|



|
|
|
|
|
|
|
|


|







 







|
|
|
|
|
|
|
|
|
|
|

|
|
|







 







<
|

|
|
|
|
|
|
|
|
|



|
|
|
|
|
|
|
|


|
|
|
|






>





|
|
|
|
|
|
|
|
|



|
|
|
|
|
|
|
|


|
|
|
>




<






|

|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
|
|
|
|
|
|
|
|
<
|

|
|
|
|
|
|
|
|
|
<
|

|
|
|
|
|
|
|
|
<
<
|
|
<
<
<
<
<
<
<
<
<
<
<
|
<
<
<
<
<
<
<
<
|
<
<








 







>

>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
|



>
>
>
>
>
>
>
>
>
>

<












|
|


<
<
<
<
<
<
<
<
<
<
<







 







|










|










|










|







 







|










|










|

|

|










|

|

|







 







|


|


|


|


|


|


|


|





|





|


|


|


|


|


|







 







>







 







|
|







 







|


|
|













|
|
|

|

|







 







|

|

|







 







>







412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
....
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
....
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
....
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
....
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
....
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
....
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
....
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950



















1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
....
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
....
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
....
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
....
2368
2369
2370
2371
2372
2373
2374




2375
2376
2377
2378
2379
2380
2381
....
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
....
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
....
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
....
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581


4582
4583
4584
4585
4586
4587
4588

4589
4590



4591
4592
4593
4594
4595

4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
....
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647

4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
....
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
....
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
....
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
....
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963



7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
....
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
....
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428

8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
....
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
....
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
....
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
....
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
.....
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
.....
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
.....
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
.....
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
.....
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
.....
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
.....
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
.....
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
.....
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940



10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954













10955
10956
10957
10958
10959
10960
10961


10962
10963
10964
10965
10966
10967
10968
.....
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
.....
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
.....
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
.....
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
.....
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
.....
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
.....
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
.....
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
.....
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
.....
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
.....
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
.....
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
.....
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
.....
14372
14373
14374
14375
14376
14377
14378

14379
14380
14381
14382
14383
14384
14385
14386
14387
14388
14389
.....
14673
14674
14675
14676
14677
14678
14679
14680
14681
14682
14683
14684
14685
14686
14687
.....
15021
15022
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
.....
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
.....
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
.....
15242
15243
15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
.....
15300
15301
15302
15303
15304
15305
15306
15307
15308
15309
15310
15311
15312
15313
15314
.....
15371
15372
15373
15374
15375
15376
15377
15378
15379
15380
15381
15382
15383
15384
15385
.....
15415
15416
15417
15418
15419
15420
15421
15422
15423
15424
15425
15426
15427
15428
15429
15430
15431
.....
15447
15448
15449
15450
15451
15452
15453

15454
15455
15456
15457
15458
15459
15460
.....
15472
15473
15474
15475
15476
15477
15478
15479
15480
15481
15482
15483
15484
15485
15486
15487
15488
15489
15490
15491
15492
15493
15494
15495
15496
15497
15498
.....
15505
15506
15507
15508
15509
15510
15511
15512
15513
15514
15515
15516
15517
15518
15519
.....
15546
15547
15548
15549
15550
15551
15552
15553
15554
15555
15556
15557
15558
15559
15560
.....
15570
15571
15572
15573
15574
15575
15576
15577
15578
15579
15580
15581
15582
15583
15584
.....
15620
15621
15622
15623
15624
15625
15626
15627
15628
15629
15630
15631
15632
15633
15634
.....
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
.....
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
16211
16212
16213
16214
16215
16216
16217
16218
16219
.....
16300
16301
16302
16303
16304
16305
16306
16307
16308
16309
16310
16311
16312
16313
16314
16315
16316
16317
16318
16319
16320
16321
16322
16323
16324
16325
16326
16327
16328
16329
16330
16331
16332
16333
16334
16335
16336
16337
16338
16339
16340
16341
16342
16343
16344
16345
16346
16347
16348
16349
16350
16351
16352
16353
16354
16355
16356
16357
16358
16359
16360
16361
16362
16363
16364
16365
16366
16367
16368
16369
16370
16371
16372
16373
16374
16375
16376
16377
16378
16379
16380
16381
16382
16383
.....
16384
16385
16386
16387
16388
16389
16390
16391
16392
16393
16394
16395
16396
16397
16398
16399
16400
16401
16402
16403
16404
16405
16406
16407
16408
16409
16410
16411
16412
16413
16414
16415
.....
16472
16473
16474
16475
16476
16477
16478





16479
16480
16481
16482
16483
16484
16485
16486
.....
16488
16489
16490
16491
16492
16493
16494
16495
16496
16497
16498
16499
16500
16501
16502
16503
16504
16505
16506
16507
16508
16509
16510
16511
16512
16513
.....
16536
16537
16538
16539
16540
16541
16542
16543
16544
16545
16546
16547
16548
16549
16550
.....
16559
16560
16561
16562
16563
16564
16565
16566
16567
16568
16569
16570
16571
16572
16573
.....
16614
16615
16616
16617
16618
16619
16620
16621
16622
16623
16624
16625
16626
16627
16628
16629
16630
16631
16632
16633
16634
16635
16636
16637
16638
16639
16640
.....
16828
16829
16830
16831
16832
16833
16834

16835
16836
16837
16838
16839
16840
16841
16842
16843
16844
16845
.....
16921
16922
16923
16924
16925
16926
16927
16928
16929
16930
16931
16932
16933
16934
16935
.....
16965
16966
16967
16968
16969
16970
16971
16972
16973
16974
16975
16976
16977
16978
16979
.....
17021
17022
17023
17024
17025
17026
17027
17028
17029
17030
17031
17032
17033
17034
17035
17036
17037
17038
.....
17411
17412
17413
17414
17415
17416
17417




















17418
17419
17420
17421
17422
17423
17424
.....
17469
17470
17471
17472
17473
17474
17475
17476
17477
17478
17479
17480
17481
17482
17483
17484
17485
17486
17487
17488
17489
17490
17491
17492
17493
17494
17495
17496
17497
17498
17499
17500
17501
17502
17503
17504
17505
17506
17507
17508
17509
17510
17511
17512
17513
17514
17515
17516
17517
17518
17519
17520
17521
.....
17560
17561
17562
17563
17564
17565
17566
17567
17568
17569
17570
17571
17572
17573
17574
.....
17932
17933
17934
17935
17936
17937
17938
17939
17940
17941
17942
17943
17944
17945
17946
17947
17948
17949
17950
.....
17964
17965
17966
17967
17968
17969
17970
17971
17972
17973
17974
17975
17976
17977
17978
17979
17980
17981
17982
17983
17984
17985
17986
17987
17988
17989
17990
17991
17992
17993
17994
17995
.....
18214
18215
18216
18217
18218
18219
18220
18221
18222
18223
18224
18225
18226
18227
18228
18229
18230
18231
18232
18233
18234
18235
18236
18237
.....
18264
18265
18266
18267
18268
18269
18270
18271
18272
18273
18274
18275
18276
18277
18278
18279
18280
18281
18282
18283
18284
18285
18286
18287
18288
18289
.....
18416
18417
18418
18419
18420
18421
18422
18423
18424
18425
18426
18427
18428
18429
18430
18431
18432
18433
18434
18435
18436
18437
18438
.....
19089
19090
19091
19092
19093
19094
19095
19096
19097
19098
19099
19100
19101
19102
19103
19104
19105
19106
19107
19108
19109
19110
19111
19112
19113
19114
19115
19116
19117
19118
19119
19120
19121
19122
19123
19124
19125
19126
19127
19128
19129
19130
19131
19132
19133
19134
19135
19136
19137
19138
.....
19439
19440
19441
19442
19443
19444
19445
19446
19447
19448
19449
19450
19451
19452
19453
.....
19482
19483
19484
19485
19486
19487
19488
19489
19490
19491
19492
19493
19494
19495
19496
19497
19498
19499
19500
19501
19502
19503
.....
19536
19537
19538
19539
19540
19541
19542
19543
19544
19545
19546
19547
19548
19549
19550
19551
19552
19553
19554
19555
19556
19557
19558
19559
19560
19561
19562
19563
19564
19565
19566
19567
19568
.....
19588
19589
19590
19591
19592
19593
19594
19595
19596
19597
19598
19599
19600
19601
19602
19603
19604
19605
19606
19607
19608
19609
19610
19611
19612
.....
19744
19745
19746
19747
19748
19749
19750
19751
19752
19753
19754
19755
19756
19757
19758
19759
19760
19761
19762
19763
19764
19765
.....
19767
19768
19769
19770
19771
19772
19773
19774
19775
19776
19777
19778
19779
19780
19781
19782
19783
19784
19785
19786
19787
19788
.....
19858
19859
19860
19861
19862
19863
19864
19865
19866
19867
19868
19869
19870
19871
19872
19873
19874
19875
19876
19877
19878
19879
.....
19891
19892
19893
19894
19895
19896
19897
19898
19899
19900
19901
19902
19903
19904
19905
19906
19907
19908
19909
19910
19911
19912
19913
19914
.....
19932
19933
19934
19935
19936
19937
19938
19939
19940
19941
19942
19943
19944
19945
19946
19947
19948
19949
19950
19951
19952
19953
.....
19969
19970
19971
19972
19973
19974
19975
19976
19977
19978
19979
19980
19981
19982
19983
19984
19985
19986
19987
19988
19989
19990
19991
19992
.....
20035
20036
20037
20038
20039
20040
20041
20042
20043
20044
20045
20046
20047
20048
20049
20050
20051
20052
20053
20054
20055
20056
20057
20058
.....
20107
20108
20109
20110
20111
20112
20113
20114
20115
20116
20117
20118
20119
20120
20121
20122
20123
20124
20125
20126
20127
20128
20129
20130
20131
20132
20133
20134
20135
20136
.....
20200
20201
20202
20203
20204
20205
20206
20207
20208
20209
20210
20211
20212
20213
20214
20215
20216
20217
20218
20219
.....
20423
20424
20425
20426
20427
20428
20429
20430
20431
20432
20433
20434
20435
20436
20437
20438
20439
20440
20441
20442
20443
20444
20445
20446
20447
20448
20449
20450
20451
20452
20453
20454
20455
20456
20457
20458
20459
20460
20461
20462
20463
20464
20465
20466
20467
20468
20469
20470
20471
20472
20473
.....
22255
22256
22257
22258
22259
22260
22261
22262
22263
22264
22265
22266
22267
22268
22269
22270
22271
22272
.....
22287
22288
22289
22290
22291
22292
22293
22294
22295
22296
22297
22298
22299
22300
22301
.....
22683
22684
22685
22686
22687
22688
22689
22690
22691
22692
22693
22694
22695
22696
22697
22698
22699
22700
22701
22702
22703
22704
22705
22706
.....
22783
22784
22785
22786
22787
22788
22789























22790
22791
22792
22793
22794
22795
22796
.....
22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
.....
22915
22916
22917
22918
22919
22920
22921
22922
22923
22924

22925
22926
22927
22928
22929
22930
22931
22932
22933
22934
22935
22936
22937
22938
22939
22940
22941
22942
22943
22944
22945
22946
22947
22948
22949
22950
22951
22952
22953
22954
22955
22956
22957
22958
22959
22960
22961
22962
22963
22964
22965
22966
22967
22968
22969
22970



22971
22972
22973
22974
22975
22976
22977
22978
22979
22980
22981
22982
22983
22984
22985
22986
22987
22988
22989
22990
22991
22992
22993
22994
22995
22996
22997
22998
22999
23000
23001

23002
23003
23004
23005
23006
23007
23008
23009
23010
23011
23012
23013
23014
23015
23016
23017
23018
23019
23020
23021
23022
23023
23024
23025
23026
23027
23028
.....
23042
23043
23044
23045
23046
23047
23048
23049
23050
23051
23052
23053
23054
23055
23056
23057
23058
23059
23060
23061
23062
23063
23064
23065
23066
23067
23068
23069
23070
23071
23072
23073
23074
23075
23076
23077
23078
23079
23080
23081
23082
23083
23084
23085
23086
23087
23088
23089
23090
23091
23092
23093
23094
.....
23618
23619
23620
23621
23622
23623
23624
23625
23626
23627
23628
23629
23630
23631
23632
23633
23634
23635
23636
23637
23638
23639
23640
23641
23642
23643
.....
23680
23681
23682
23683
23684
23685
23686
23687
23688
23689
23690
23691
23692
23693
23694
23695
23696
23697
23698
23699
23700
23701
23702
23703
23704
23705
23706
23707
23708
23709
23710
23711
23712
23713
23714
23715
23716
23717
23718

23719
23720
23721
23722
23723
23724
23725
23726
23727
23728
23729
23730
23731
23732
23733
23734
23735
23736
23737
23738
23739
23740
23741
23742
23743
23744
23745
23746
23747
23748
23749
23750
23751
23752
23753
23754
23755
23756
23757
23758
23759
23760
23761
23762
23763
23764
23765
23766
23767
23768
23769
23770
23771
23772
23773
23774
23775
23776
23777
23778
23779
23780
23781
23782
23783
23784
23785
23786
23787
23788
23789
23790
23791
23792
23793
23794
23795
23796
23797
.....
23819
23820
23821
23822
23823
23824
23825
23826
23827
23828
23829
23830
23831
23832
23833
23834
23835
.....
23836
23837
23838
23839
23840
23841
23842
23843
23844
23845
23846
23847
23848
23849
23850
23851
23852
23853
.....
23856
23857
23858
23859
23860
23861
23862
23863
23864
23865
23866
23867
23868
23869
23870
23871
23872
23873
23874
23875
23876
23877
23878
23879
23880
23881
23882
23883
23884
23885
23886
23887
23888
23889
23890
23891
23892
23893
23894
23895
23896
23897
23898
23899
23900
23901
23902
23903
23904
23905
23906
23907
23908
23909
23910
23911
23912
23913
23914
23915
23916
23917
23918
23919
23920
.....
23932
23933
23934
23935
23936
23937
23938
23939
23940
23941
23942
23943
23944
23945
23946
23947
23948
23949
23950
23951
23952
23953
23954
23955
23956
23957
23958
23959
23960
23961
23962
23963
23964
23965
.....
23971
23972
23973
23974
23975
23976
23977
23978
23979
23980
23981
23982
23983
23984
23985
23986
23987
23988
23989
23990
23991
23992
23993
23994
23995
23996
23997
.....
24003
24004
24005
24006
24007
24008
24009
24010
24011
24012
24013
24014
24015
24016
24017
24018
24019
24020
24021
24022
24023
24024
24025
24026
24027
24028
24029
24030
24031
24032
24033
24034
24035
24036
24037
24038
24039
24040
24041
24042
24043
24044
24045
24046
24047
24048
24049
24050
24051
24052
24053
24054
24055
24056
24057
24058
24059
24060
24061
24062
24063
24064
24065
24066
24067
24068
24069
24070
24071
24072
24073
.....
24095
24096
24097
24098
24099
24100
24101
24102
24103
24104
24105
24106
24107
24108
24109
24110
24111
24112
24113
24114
24115
24116
24117
24118
24119
24120
24121
24122
24123
24124
24125
24126
24127
24128
24129
24130
24131
24132
24133
24134
24135
24136
24137
24138
24139
24140
24141
24142
24143
24144
24145
24146
24147
24148
24149
24150
24151
.....
24164
24165
24166
24167
24168
24169
24170
24171
24172
24173
24174
24175
24176
24177
24178
24179
24180
24181
24182
24183
24184
24185
24186
24187
24188
24189
24190
24191
24192
.....
24220
24221
24222
24223
24224
24225
24226

24227
24228
24229
24230
24231
24232
24233
24234
24235
24236
24237
24238
24239
24240
24241
24242
24243
24244
24245
24246
24247
24248
24249
24250
24251
24252
24253
24254
24255
24256
24257
24258
24259
24260
24261
24262
24263
24264
24265
24266
24267
24268
24269
24270
24271
24272
24273
24274
24275
24276
24277
24278
24279
24280
24281
24282
24283
24284
24285
24286
24287
24288
24289
24290
24291
24292
24293
24294
24295
24296

24297
24298
24299
24300
24301
24302
24303
24304
24305
24306
24307
24308
24309
24310
24311
24312
24313
24314
24315
24316
24317
24318
24319
24320
24321
24322
24323
24324
24325
24326
24327
24328
24329
24330
24331
24332
24333
24334
24335
24336
24337
24338

24339
24340
24341
24342
24343
24344
24345
24346
24347
24348
24349

24350
24351
24352
24353
24354
24355
24356
24357
24358
24359


24360
24361











24362








24363


24364
24365
24366
24367
24368
24369
24370
24371
.....
24372
24373
24374
24375
24376
24377
24378
24379
24380
24381
24382
24383
24384
24385
24386
24387
24388
24389
24390
24391
24392
24393
24394
24395
24396
24397
24398
24399
24400
24401
24402
24403
24404
24405
24406
24407
24408
24409
24410
24411
24412
24413
24414
24415
24416
24417
24418
24419
24420
24421
24422
24423
24424
24425
24426
24427
24428
24429
24430
24431
24432
24433
24434
24435
24436
24437
24438
24439
24440
24441
24442
24443
24444

24445
24446
24447
24448
24449
24450
24451
24452
24453
24454
24455
24456
24457
24458
24459
24460











24461
24462
24463
24464
24465
24466
24467
.....
24487
24488
24489
24490
24491
24492
24493
24494
24495
24496
24497
24498
24499
24500
24501
24502
24503
24504
24505
24506
24507
24508
24509
24510
24511
24512
24513
24514
24515
24516
24517
24518
24519
24520
24521
24522
24523
24524
24525
24526
24527
24528
24529
24530
24531
24532
24533
24534
.....
24538
24539
24540
24541
24542
24543
24544
24545
24546
24547
24548
24549
24550
24551
24552
24553
24554
24555
24556
24557
24558
24559
24560
24561
24562
24563
24564
24565
24566
24567
24568
24569
24570
24571
24572
24573
24574
24575
24576
24577
24578
24579
24580
24581
24582
24583
24584
24585
24586
24587
24588
24589
24590
24591
24592
24593
.....
24602
24603
24604
24605
24606
24607
24608
24609
24610
24611
24612
24613
24614
24615
24616
24617
24618
24619
24620
24621
24622
24623
24624
24625
24626
24627
24628
24629
24630
24631
24632
24633
24634
24635
24636
24637
24638
24639
24640
24641
24642
24643
24644
24645
24646
24647
24648
24649
24650
24651
24652
24653
24654
24655
24656
24657
24658
24659
24660
24661
24662
24663
24664
.....
24673
24674
24675
24676
24677
24678
24679
24680
24681
24682
24683
24684
24685
24686
24687
.....
25540
25541
25542
25543
25544
25545
25546
25547
25548
25549
25550
25551
25552
25553
25554
25555
.....
27666
27667
27668
27669
27670
27671
27672
27673
27674
27675
27676
27677
27678
27679
27680
27681
27682
27683
27684
27685
27686
27687
27688
27689
27690
27691
27692
27693
27694
27695
27696
27697
27698
27699
27700
27701
27702
27703
27704
.....
27818
27819
27820
27821
27822
27823
27824
27825
27826
27827
27828
27829
27830
27831
27832
27833
27834
27835
27836
.....
28943
28944
28945
28946
28947
28948
28949
28950
28951
28952
28953
28954
28955
28956
28957
TEST: c’est (enfin{{ )}} parti.
TEST: voici des (parenthèses{{ )}}, n’est-ce pas ?                        ->> )


# Parenthèses collées
__<s>/typo(typo_parenthèse_fermante_collée)__
    [)]\b(?![s¹²³⁴⁵⁶⁷⁸⁹⁰]\b)
        <<- not before("\\([rR][eéEÉ]$") ->> ") "                                                   && Il manque un espace après la parenthèse.
__<s>/typo(typo_parenthèse_ouvrante_collée)__
    \b[(](?=[^)][^)][^)])
        <<- ->> " ("                                                                                && Il manque un espace avant la parenthèse.

TEST: C’est au fond du couloir{{(}}celui du deuxième étage{{)}}qu’il se trouve.
TEST: (a + b)²
TEST: il faut (re)former tout ça.


# Points et espaces
................................................................................
!!
!!
!!!! Dates                                                                                        !!
!!
!!
__[i]/date(date_nombres)__
    (?<!\d[ ./-])(\d\d?)([ ./-])(\d\d?)([ ./-])(\d\d\d+)(?![ ./-]\d)  @@0,*,w,**,$
        <<- \2 == \4 and not checkDate(\1, \3, \5) and not before("(?i)\\b(?:version|article|référence)s? +$") ->> _    && Cette date est invalide.
        <<- ~>> \1-\3-\5

TEST: le {{29 02 2011}}
TEST: le {{40-02-2011}}
TEST: le {{32.03.2018}}
TEST: le {{81/01/2012}}
TEST: 12-12-2012
TEST: Articles 32.17-918 et 98.17-761
................................................................................
TEST: __ocr__ {{II}} pleut tout le temps.
TEST: __ocr__ En l’an {{2OO1}}, tout commença.


## Casse
__[s]/ocr(ocr_casse_pronom_vconj)__
    {w2}-(On|Ils?|Elles?|Tu|Je|Nous|Vous|Mêmes?|Ci|Là|Une?s|Les?|La|Leur) @@$
        <<- -1>> =\1.lower()                                                                        && Erreur de numérisation ? Casse douteuse.

TEST: __ocr__ Part-{{On}} demain ?
TEST: __ocr__ À ce compte-{{Ci}}, on n’en viendra jamais à bout.
TEST: __ocr__ Quelques-{{Uns}} sont incapables d’y parvenir.


## Mots inconnus du dictionnaire
................................................................................
TEST: __ocr__ Alors, dis-moi, comment triompher de tous les empires de la Terre ?
TEST: __ocr__ prenez-en.


## Trait d’union conditionnel
__[i]/ocr(tu_trait_union_conditionnel)__
    ({w1})‑({w1})  @@0,$
        <<- ->> \1\2|\1-\2                                                                          && Trait d’union conditionnel. Erreur de numérisation ?

TEST: __ocr__ c’est {{anti‑américain}}


## Caractères rares
__<s>/ocr(ocr_caractères_rares)__
    \w*[{}<>&*#£^|]+\w*
................................................................................
!!!


!!!! Doublons                                                                                     !!

__[s](doublon)__
    ({w1}) {1,3}\1  @@0
        <<- not re.search("(?i)^([nv]ous|faire|en|la|lui|donnant|œuvre|h[éoa]|hou|olé|joli|Bora|couvent|dément|sapiens|très|vroum|[0-9]+)$", \1)
            and not (re.search("^(?:est|une?)$", \1) and before("[’']$"))
            and not (\1 == "mieux" and before("(?i)qui +$"))
        ->> \1                                                                                      && Doublon.

TEST: Il y a un {{doublon doublon}}.


!!!! Nombres: typographie                                                                         !!

#(\d\d\d\d)-(\d\d\d\d)   <<- ->> \1–\2                              && Ne pas séparer deux dates par un trait d’union, mais par un tiret demi-cadratin.
................................................................................
TEST: {{3O}} (chiffre avec un O).                                         ->> 30


!!!! Écritures épicènes invariables                                                               !!

__[i](d_eepi_écriture_épicène_pluriel)__
    ({w_1}[éuitsrn])_(?:[nt]|)e_s  @@0
        <<- morph(\1, ":[NAQ]", ":G") =>> define(\1, ":N:A:Q:e:p")

__[i](d_eepi_écriture_épicène_singulier)__
    ({w_2}[éuitsrn])_e  @@0
        <<- morph(\1, ":[NAQ]") =>> define(\1, ":N:A:Q:e:s")


!!!! Purge des références aux notes                                                               !!

# les références aux notes
__<s>(p_exposants)__
    [¹²³⁴⁵⁶⁷⁸⁹⁰]+
        <<- ~>> *

__[i](p_références_aux_notes)__
    ({w_2})(\d+)  @@0,$
        <<- not morph(\0, ":") and morph(\1, ":") ~2>> *

TEST: POLITIQUESOCIÉTÉÉCONOMIEMONDECULTUREART DE VIVREMAGAZINE (qui peut faire boguer JavaScript avec certaines regex)


!!!! Traits d’union                                                                               !!

__[i]/tu(tu_trait_union_douteux)__
................................................................................

TEST: Nous préparons une {{contre–attaque}}.
TEST: Nous préparons une {{contre−attaque}}.


__<i]/tu(tu_t_euphonique_incorrect)__
    ([-–—− ]t(?:[’' ][-–—−]?|[-–—−][’' ]?))(ie?ls?|elles?|on|tu)  @@0,$
        <<- re.search("(?i)^(?:ie?ls|elles|tu)$", \2) -1>> -    && Le “t” euphonique n’est pas nécessaire avec “\2”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?T1=t+euphonique&id=2513
        <<- __else__ and \1 != "-t-" and \1 != "-T-" -1>> -t-   && Pour le “t” euphonique, il faut deux traits d’union. Pas d’apostrophe. Pas d’espace.
        <<- \1 != "-t-" ~1>> -t-
__<i]/tu(tu_t_euphonique_superflu)__
    [td]([- ]t[-’' ])(?:il|elle|on)  @@1
        <<- -1>> -                                              && Le “t” euphonique est superflu quand le verbe se termine par “t” ou “d”.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?T1=t+euphonique&id=2513
        <<- \1 != "-t-" ~1>> -t-
__<i]/tu(tu_t_euphonique_manquant)__
    [aec](-(il|elle|on))  @@1,2  <<- -1>> -t-\2                 && Il faut un “t” euphonique.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?T1=t+euphonique&id=2513

TEST: va{{ t’}}il y parvenir ?                          ->> -t-
TEST: A{{ t’}}elle soif ?                               ->> -t-
TEST: A{{ t-}}elle faim ?                               ->> -t-
TEST: a{{ t'}}elle                                      ->> -t-
TEST: a{{-t'}}il                                        ->> -t-
TEST: a{{-t }}il.                                       ->> -t-
................................................................................
    environ  [$:B|*NUM]
        <<- not value(<1, "|l’|un|cet|quel|") =>> exclude(\1, ":N")

    grave
        <<- morph(<1, ":D") =>> (\1, ":W")


__da_mots_grammaticaaux__
    autour [de|du|d’|des]
        <<- not morph(<1, ":D.*:[me]") =>> exclude(\1, ":N")

    dans
        <<- not morph(<1, ":D.*:p|>[a-z]+ième/") =>> select(\1, ":R")




















    [le|ce|cet|mon|ton|son|quel|quelque|notre|votre|un|leur|ledit|dudit|des|les|quelques|quel|quelle|quels|quelles]  [son|ton]
        <<- =>> exclude(\2, ":D")

    [la|ma|ta|sa|les|des|nos|vos|leur|leurs|quel|quelle|quels|quelles] personne
        <<- =>> select(\2, ":N")

    [le|la|l’|les|du|ces|des|mes|tes|ses|nos|vos|leurs|quelques|quels|quelles] même
        <<- =>> select(\2, ":A")

    [le|l’|mon|notre|votre|leur|mes|tes|ses|nos|vos|leurs|quel|quels|quelle|quelles] point
        <<- =>> select(\2, ":N")

    puis
        <<- not value(<1, "|je|ne|n’|le|la|l’|les|lui|nous|vous|leur|") =>> =exclude(\1, ":V")

    SA
        <<- morph(<1, ":D") =>> exclude(\1, ":D")

    passé  [<end>|,|$:R]
        <<- =>> exclude(\1, ":G")

    pourvu
        <<- not value(>1, "|que|qu’|") =>> exclude(\1, ":G")

    vu  [<end>|,|$:R]
        <<- =>> exclude(\1, ":G")

    y compris
        <<- not value(<1, "|n’|j’|tu|t’|m’|s’|") ~>> ␣
        <<- __also__ =>> define(\1, ":G:R")


__da_autre_chose_quelque_chose__
    quelque chose
        <<- =>> define(\2, ":N:m:s")

    autre chose
        <<- not morph(<1, ">entre/|:D") ~>> ␣
................................................................................
        <<- =>> define(\1, ":G")


__da_groupe_nominal__
    aucun  @:[NA].*:[me]
        <<- =>> exclude(\2, ":V")

    avions
        <<- not tag_before(\1, "_1p_") and not value(<1, "|n’|") and not value(>1, "|nous|") =>> select(\-1, ":N")

    l’ avions
        <<- morph(<1, ":Y") =>> select(\-1, ":N")

    bac + ~^\d\d?$
        <<- ~>> ␣
        <<- =>> define(\1, ":N:e:i")

    [de|d’]  @:¬:[YD]
        <<- =>> exclude(\2, ":(?:[123][sp]|P)")

................................................................................
        <<- =>> define(\1, ":LN:m:p")

    l’ une comme l’ autre
        <<- ~>> ␣
        <<- =>> define(\1, ":LN:f:p")

    [des|chaque|quelque|quelques|cet|cette|ces|mon|ma|ta|sa|mes|tes|ses|au|aux|notre|votre|nos|vos|leurs|aucun|aucune]  *WORD
        <<- not morph(\-1, ":V0") =>> exclude(\2, ":V")

    les  ~.es$
        <<- not value(<1, "|tu|ne|n’|me|m’|te|t’|se|s’|nous|vous|") and morph(\2, ":V1.*Ip.*:2s") and not tag_before(\1, "_2s_") and not value(>1, "|tu|pas|jamais|")
        =>> exclude(\2, ":V")

    [un|une]  *WORD
        <<- not value(<1, "|l’|quelqu’|quelqu|") and not value(\2, "|a|fut|fût|est|fait|") and not morph(\2, ":P") =>> exclude(\2, ":V")
................................................................................
    de [tous|toutes] les *WORD
        <<- =>> select(\4, ":[NA]")

    en tant que  *WORD
        <<- =>> exclude(\4, ":[123][sp]")

    en peine
        <<- not value(<1, "|ne|n’|j’|on|il|elle|iel|") =>> exclude(\2, ":V")

    m’ [dame|sieur]
        <<- ~>> ␣

    nombre  [de|d’|des]  [@:[NA]|<end>|,]
        <<- not morph(<1, ":D") >>>
        <<- morph(<1, ":A.*:[me]:[si]") =>> add_morph(\1, ">nombre/:G:D")
................................................................................
    y a ?@:[WX]¿ faute
        <<- !-1>>

TEST: New York {{étaient}} {{devenue}} la plaque tournante de tous les trafics.
TEST: de Bordeaux ou de n’importe où
TEST: il n’y a pas faute.
TEST: une séparation hommes/femmes







!!!! Élisions                                                                                     !!

# presque : élision
__typo_presque__
................................................................................

    >arrière >petit >neveu
        <<- /tu/ ->> arrière-petit-neveu|arrière-petits-neveux      && Mettez des traits d’union.

    >arrière >petit >nièce
        <<- /tu/ ->> arrière-petite-nièce|arrière-petites-nièces    && Mettez des traits d’union.

    au jour d’ [hui+s|oui|huit]
    [au-jour-d’hui+s]
    au-jour d’ [hui+s|oui|huit]
        <<- /tu/ ->> aujourd’hui        && Soudez. “Aujourd’hui” : agglutination de l’ancienne locution “au jour d’hui”, “hui” signifiant autrefois “en ce jour”.|https://fr.wiktionary.org/wiki/aujourd%E2%80%99hui

    [basket|volley] ball
        <<- /tu/ ->> \1-\2                                      && Il manque un trait d’union.

    bas [>côté|coté|cotés]
        <<- /tu/ morph(<1 , ":D") ->> bas-côté|bas-côtés        && Il manque un trait d’union.

    [les|des|aux] beaux arts
................................................................................

    bouche à [bouche|>oreille]
        <<- /tu/ morph(<1, ":D") ->> \1-\2-\3                   && Il manque les traits d’union.

    >centre >ville
        <<- /tu/ ->> centre-ville|centres-villes                && Il manque un trait d’union.

    [cesser|cessez] le feu
        <<- /tu/ morph(<1, ":D.*:[me]") ->> cessez-le-feu       && S’il s’agit du nom commun, mettez des traits d’union.|https://fr.wiktionary.org/wiki/cessez-le-feu

    [chassé+ses] [croisé+ses]
        <<- /tu/ ->> chassé-croisé|chassés-croisés              && Il manque un trait d’union.

    château fort
        <<- /tu/ not morph(>1, ":A.*:[me]:[si]") ->> \1-\2      && Il manque un trait d’union.|https://fr.wiktionary.org/wiki/ch%C3%A2teau-fort

    châteaux forts
................................................................................
TEST: un {{arrière grand parent}}
TEST: un {{arrière grand père}}
TEST: nos {{arrière petits enfants}}
TEST: son {{arrière petite fille}}
TEST: mon {{arrière petit fils}}
TEST: un {{arrière petit neveu}}
TEST: ton {{arrière petite nièce}}
TEST: {{au jour d’hui}}
TEST: je déteste le {{basket ball}}
TEST: sur le {{bas côté}}
TEST: les {{beaux arts}}
TEST: {{le}} {{bouche à oreille}}
TEST: un {{cessez le feu}}
TEST: {{chef lieu}} de ce canton
TEST: un {{chassé croisé}}
TEST: ne vois-tu pas que c’est un {{chef d’œuvre}} ?
TEST: ils sont allés au {{centre ville}}.
TEST: un {{château fort}} n’est pas une demeure confortable
TEST: des {{châteaux forts}}
TEST: un {{coffre fort}}
................................................................................
TEST: C’est un peu trop {{tape à l’œil}} comme couleur, tu ne trouves pas ?
TEST: beaucoup de {{tête à tête}}
TEST: {{un}} {{trompe l’œil}}
TEST: un {{va et vient}} incessant me casse la tête
TEST: il va et vient sans mot dire
TEST: Il a été nommé {{vice président}}
TEST: un super {{week end}}                             ->> week-end
TEST: commencez par cesser le feu


__tu_chez_pronom__
    mon chez moi
    ton chez toi
    [son|leur] chez [lui|elle]
    [un|ce|son|leur|leurs] chez soi
    notre chez nous
    votre chez vous
    [leur|leurs] chez [eux|elles]
        <<- /tu/ -2:3>> \2-\3                                       && Dans le cas de figure où chez soi est utilisé comme nom, il faut mettre un trait d’union.

TEST: c’est mon {{chez moi}}
TEST: c’est ton {{chez toi}}.
TEST: c’est notre {{chez nous}}
TEST: chez soi, rien d’impersonnel.


__tu_va_t_en__


    [va+s] t [en|>an]
    [va+s] [t-en|>tan]
    va-t [en|>an]
    [va-t-en|vas-t-en]
    vat-en
        <<- /tu/ not value(>1, "|guerre|guerres|") ->> va-t’en                                      && Une apostrophe est nécessaire (s’en aller).


    [va|vas] t [en|>an] [>guerre|guère]
    va-t’en [>guerre|guère]



    [va|vas] t’en [>guerre|guère]
    va-t [en|>an] [>guerre|guère]
    [va+s] [t-en|>tan|tant] [>guerre|guère]
    vat’en [>guerre|guère]
    vat-en [>guerre|guère]

    vat [en|>an] [>guerre|guère]
    va-t-en [>guerre|guère]
    va-t’en-guerre
    va-t-en-guère
        <<- /tu/ ->> va-t-en-guerre                                                                 && Va-t-en-guerre (invariable) : des traits d’union sont nécessaires.|https://fr.wiktionary.org/wiki/va-t-en-guerre

TEST: {{Va-t-en}}, c’en est assez.
TEST: Un {{va-t’en guerre}}, on ne peut pas lui faire confiance.
TEST: Les {{va-t-en guerre}} sont de sortie.
TEST: Elle va t’en donner, des devoirs.

................................................................................
__tu_toponymes__
    Aix en Provence
    [Île|Ile] de France
    Pas de Calais
    Saône et Loire
        <<- /tu/ ->> \1-\2-\3                                                                       && Il manque les traits d’union.

    Clermont-Ferrant
    Clermont [Ferrant|Ferrand]
        <<- /tu/ ->> Clermont-Ferrand                                                               && Ville de Clermont-Ferrand.

    Bosnie Herzégovine
    Charente Maritime

    Colombie Britannique
    États Unis
    Franche Comté
    Grande Bretagne
    Haute [Garonne|Loire|Marne|Normandie|Corse|Vienne]
    Maison Blanche
    Moyen Orient
    Nouveau Brunswick
    Nouvelle [Zélande|Calédonie|Orléans]
    Rhône Alpes
        <<- /tu/ ->> \1-\2                                                                          && Il manque un trait d’union.

    Mongolie [intérieur+e]
        <<- /tu/ ->> Mongolie-Intérieure                                                            && Il manque un trait d’union. Mongolie-Intérieure : région autonome de Chine.

    [les|des|aux]   Pays Bas
    [<start>|,|(]   Pays Bas  contre
        <<- /tu/ -2:3>> \2-\3                                                                       && Il manque un trait d’union.

    Royaume Uni
        <<- /tu/ ->> Royaume-Uni                                                                    && Il manque un trait d’union (s’il s’agit de l’État englobant la Grande-Bretagne et l’Irlande du Nord).

    Saint /_Tit_
        <<- /tu/ not value(<1, "|<start>|") and morph(\2, ":M") -:>> \1-\2|saint \2
        && Il manque un trait d’union s’il s’agit d’une église, d’une cité, d’une communauté, d’un lieu… S’il s’agit d’une personne, écrivez “saint” sans majuscule, sans trait d’union.

    Sainte /_Tit_
        <<- /tu/ not value(<1, "|<start>|") and morph(\2, ":M") -:>> \1-\2|sainte \2
        && Il manque un trait d’union s’il s’agit d’une église, d’une cité, d’une communauté, d’un lieu… S’il s’agit d’une personne, écrivez “sainte” sans majuscule, sans trait d’union.

    [St|Ste]  /_Tit_
        <<- /tu/ ->> \1-\2
        && Il manque un trait d’union s’il s’agit d’une église, d’une cité, d’une communauté, d’un lieu… S’il s’agit d’une personne, écrivez “saint” ou “sainte” sans majuscule, sans trait d’union.

TEST: Il passe par {{Aix en Provence}}
TEST: Qui se souvient de la {{Bosnie Herzégovine}} ?
................................................................................
TEST: Il fait son stage étudiant aux {{États Unis}}
TEST: Des fromages délicieux de {{Franche Comté}}
TEST: Étudier en {{Grande Bretagne}}
TEST: La {{Haute Garonne}}
TEST: L’{{Île de France}} est surpeuplée.
TEST: Un nouveau président à la {{Maison Blanche}}
TEST: La guerre au {{Moyen Orient}}
TEST: voyage en {{Mongolie intérieur}}
TEST: Il ne connaît au {{Nouveau Brunswick}}
TEST: Elle a visité la {{Nouvelle Orléans}}
TEST: Vivre dans le {{Pas de Calais}}
TEST: Vivre aux {{Pays Bas}}
TEST: Des vacances en {{Rhône Alpes}}
TEST: Émigrer au {{Royaume Uni}}
TEST: Elle déménage en {{Saône et Loire}}
TEST: La station {{Saint Georges}}                          ->> Saint-Georges|saint Georges
TEST: que penser de {{Sainte Catherine}}                    ->> Sainte-Catherine|sainte Catherine
TEST: Elle va prier à {{Ste Catherine}}.


__tu_nombres__
    dix                                                                     [sept|huit|neuf]
    dix                                                                     [>septième|>huitième|>neuvième]
    [trente|quarante|cinquante|soixante|septante|octante|huitante|nonante]  [deux|trois|quatre|cinq|six|sept|huit|neuf]
................................................................................
TEST: Peu d’{{entre-nous}} savent ce dont il s’agit.


__tu_y_attaché__
    ~^[yY][’-]\w+
        <<- /tu/ morph(\1, ":V0", "", 2) -1>> ="y " + \1[2:]                    && Ni apostrophe ni trait d’union après “y”.

    ~^[yY][’-][\w-]+-(?:ie?ls?|elles?|je|tu|on|nous|vous)$
    y’en
    y-en
        <<- /tu/ -1>> ="y " + \1[2:]                                            && Ni apostrophe ni trait d’union après “y”.

TEST: {{Y’a}} trop de malheureux sur Terre.             ->> "Y a"
TEST: {{Y’en}} a marre, de ces conneries.               ->> "Y en"
TEST: {{y-a-t-il}} des beignets ?                       ->> "y a-t-il"
................................................................................
        <<- /conf/ \2.islower() and not value(<1, "|le|la|les|") and hasSimil(\2, ":[NA]:[fe]:[si]")
        -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                                                && Incohérence avec « \1 » : « \2 » est un verbe.

    sa  @:(?:Y|[123][sp])¬:(?:N.*:[fe]|A|W)
        <<- /conf/ not \1.isupper() and \2.islower() >>>
        <<- /conf/ morph(\2, "V.....[pqx]") -1>> ça|se                                              && Confusion : « \2 » est un verbe. Exemples : sa jambe, ça vient. (Une faute de frappe peut-être ?)
        <<- /conf/ __else__ -1>> ça                                                                 && Confusion : « \2 » est un verbe. Exemples : sa jambe, ça vient.
        <<- /conf/ not morph(\2, ":V0") and hasSimil(\2)
        -2>> =suggSimil(\2, ":[NA]:[fe]:[si]", True)                                                && Incohérence avec « \1 » : « \2 » est un verbe.

    sa  a
        <<- /conf/ not \1.isupper() -1>> ça                                                         && Confusion. Si vous voulez dire “cela”, écrivez “ça”.

TEST: Cette {{pèle}} est trop fragile.
TEST: {{sa}} devient difficile.
TEST: il me tendit {{sa}} {{pèche}}.
................................................................................
TEST: on va y arriver, {{au temps que faire se peu}}…
TEST: autant que faire se peut, il faut éviter la confusion entre ces deux discours.


# ça / çà / sa
__conf_ça_çà_sa!7__
    ça  @:[NAQ].*:f¬:(?:G|P|[123][sp])|>seul/
        <<- /conf/ not morph(<1, ">(?:appeler|considérer|trouver)/") -1>> sa                        && Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    sa  @:G¬>(?:tr(?:ès|op)|peu|bien|plus|moins|toute|presque|non)/|:[NAQ].*:f
        <<- /conf/ not (value(\2, "|ou|") and value(>1, "|son|ses|")) and morph(\1, ":D")
        -1>> ça                                                                                     && Confusion : “sa” (sa maison, sa passion) ≠ “ça” (ça vient, ça heurte).

    sa  $:P¬:A
        <<- /conf/ \1 != "SA" -1>> ça|se                && Confusion probable : “\2” est un participe présent. Soit vous confondez “ça” (équivalent à cela ou ceci) et “sa” (déterminant féminin), soit il faut écrire “se” (exemples : untel se considérant légitime, se prenant en main, se trouvant assez capable…), soit “\2” devrait être un nom ou adjectif féminin.

    çà
        <<- /conf/ not value(<1, "|oh|ah|") and not after("^ +et là")
        ->> ça                                          && Confusion : « çà » ne s’emploie plus guère que dans l’expression « çà et là ».|https://fr.wiktionary.org/wiki/%C3%A7%C3%A0




    sa  [<end>|,|)]
        <<- /conf/ \1 != "SA" -1>> ça                   && Confusion probable : “sa” est un déterminant féminin singulier. Pour l’équivalent de “cela” ou “ceci”, écrivez “ça”.

    [c’|ç’] [à|a]
        <<- /conf/ space_after(\1, 0, 0) and not (value(\2, "|a|") and value(>1, "|été|")) >>>
        <<- /conf/ value(>1, "|été|") -2>> a            && Confusion. Pour le verbe avoir à la 3ᵉ personne du singulier, écrivez “a”.
        <<- /conf/ __else__ ->> ça|sa                   && Confusion. Si vous voulez dire “cela”, écrivez “ça”. Pour le déterminant possessif, écrivez “sa”.

    ça et là
        <<- /conf/ not morph(<1, ":R") ->> çà et là     && Confusion : « ça » équivaut à « cela ». Dans l’expression « çà et là », « çà » équivaut à « ici ».

TEST: Je prends {{sa}}…
TEST: {{ça}} patrie, il la détestait
TEST: et {{sa}} par deux fois
TEST: Il trouva de la nourriture {{ça et là}}.                                  ->> çà et là
TEST: c’est {{çà}}                                                              ->> ça
TEST: Elle parle comme {{ça}} mère.                                             ->> sa
TEST: C’est comme {{sa}}.
TEST: pas sûr que {{sa}} soit fini                                              ->> ça
TEST: {{sa}} l’ennuierait, ce fils de pute, de dire bonjour ?
TEST: il faut s’y prendre comme {{sa}}
TEST: on fait {{sa}} lorsqu’on a tout perdu
TEST: {{ç’a}} craint, cette histoire
TEST: ç’{{à}} été dur                                                           ->> a
TEST: {{sa}} trouvant en difficulté, il ne sut que faire                        ->> ça|se
TEST: ç’a été difficile.
TEST: Eux, ils appellent ça routine.
TEST: avec sa presque belle-mère
TEST: sa toute nouvelle application de synchronisation de fichiers
TEST: communiquer avec sa ou son partenaire.
TEST: Je trouve ça logique.
TEST: le tout accompagné de sa non moins spectaculaire signature.
TEST: Emblème des SA.
TEST: chef d’état-major de la SA.
TEST: À partir de 1934, et après l’élimination de ses principaux dirigeants durant la nuit des Longs Couteaux, la SA ne joue plus aucun rôle politique.
TEST: Adolf Hitler a créé les SA à Munich le 8 août 1921 en réunissant d’anciens combattants, des officiers mécontents et des membres des corps francs
TEST: En 1933, après l’élection du NSDAP, les SA se voyaient en concurrence avec l’armée régulière (Reichswehr)
TEST: les SA devenant de plus en plus extrêmistes


# car / quart
__conf_quart_car__
    [un|du|ce|quel|mon|ton|son|notre|votre|leur] car d’ heure
        <<- /conf/ not after("^ +en +heure") -2>> quart             && Confusion. Une heure est composée de quatre “quarts d’heure”.

................................................................................

TEST: Encore un {{comte}} de fée, assez de ces fadaises !
TEST: c’est un {{compte}} allégorique.
TEST: {{Comptes}} et légendes des Terres du Milieu.
TEST: ce sont des {{comptes}} de bonnes femmes
TEST: Elle parla au comte d’amour, mais il fit mine de n’y rien entendre.


# content / comptant / contant
__conf_content_comptant_contant__
    [<start>|,|(] non [>comptant|contant] [de|d’|du|des]
        <<- /conf/ --2>> content                                                        && Confusion. Locution prépositive “non content de…”.|https://fr.wiktionary.org/wiki/non_content_de

TEST: elle avait tout son {{contant}} de problèmes.
TEST: non {{comptant}} de s’en prendre à eux, il s’attaqua aussi à elles


# corps / cor
__conf_corps_cor__
    [a|à] bras le >cor
        <<- /conf/ ->> à bras le corps                                              && Confusion. Le cor est instrument de musique.

    à >cor [perdu+ses]
................................................................................

    [à|a] [cour+s|courre+s|courts] >terme
        <<- /conf/ ->> à court terme                        && Confusion. Une cour… Un cours… Adjectif : court(e).

    au [cour|court+s|courre+s] [de|d’|des|du]
        <<- /conf/ -2>> cours                               && Confusion. Locution “au cours de”. Une cour… Un cours… Adjectif : court(e).

    en cour [fédérale|martiale|suprême]
    en cour [de|d’] [cassation|justice]
    en cour d’ >assise
        <<- !1:2>>

    en cour

        <<- /conf/ ->> en cours                             && Confusion probable. Une cour… Un cours… Adjectif : court(e).

    [<start>|,|en|un|le|ce|mon|notre|votre|leur|des|les|mes|tes|ses|ces|nos|vos|leurs|quelques|plusieurs|certains] [court+s] [de|d’]
        || [allemand|anglais|arabe|arabe|bengali|bhodjpouri|cantonais|coréen|égyptien|espagnol|français|grec|gujarati|haoussa|hébreu|hindi|indonésien|italien|italien|latin|japonais|javanais|mandarin|marathi|minnan|ourdou|pendjabi|persan|portugais|russe|sanskrit|sanscrit|swahili|tamoul|thaï|turc|tégoulou|vietnamien|wu]
    [<start>|,|en|un|le|ce|mon|notre|votre|leur|des|les|mes|tes|ses|ces|nos|vos|leurs|quelques|plusieurs|certains] [court+s] [de|d’]
        || [>administration|>agriculture|>agronomie|>art|>biologie|>chant|>commerce|>culture|>cristallographie|>conduite|>cuisine|>danse|>dessin|>ébénisterie|>écriture|>épistémologie|>droit|>éducation|>électronique|>électrotechnique|>élocution|>éthique|>géographie|>gestion|>histoire|>karaté|>kung-fu|>informatique|>langue|>lettre|>littérature|>orientation|>morale|maintien|>mathématique|>math|>mécanique|>médecine|>menuiserie|>musique|>odontologie|>pâtisserie|>peinture|>philosophie|>philo|>physique|>programmation|>psychologie|>science|>sport|>théâtre|>théologie]
        <<- /conf/ -2>> cours                               && Confusion probable : “court” signifie “de peu de longueur”. Pour un enseignement, écrivez “cours”.|https://fr.wiktionary.org/wiki/cours

    >couper  ?@:[WX]¿  [cour+s|courre+s|courts]
        <<- /conf/ --1>> court                              && “Couper court” qui signifie écourter. Noms : une cour, un cours… Adjectif : court.

    >avoir ?@:[WX]¿  [cour|court+s|courre+s]
        <<- /conf/ --1>> cours                              && Confusion. « Avoir cours ».|https://fr.wiktionary.org/wiki/avoir_cours

    [>avoir|>donner|>laisser]   ?@:[WX]¿  libre [cour|court+s|courre+s]
        <<- /conf/ --1>> cours                              && Confusion probable. Ce qui a « libre cours ».|https://fr.wiktionary.org/wiki/donner_libre_cours

TEST: au {{court}} de cette journée
TEST: les exercices {{en cour}} se déroulent bien.
TEST: je vais couper {{cours}} à ces conneries.
TEST: il faut donner libre {{cour}} à ses envies.
TEST: elle va en {{court}} de lettres
................................................................................
TEST: le rendement {{à cours terme}} est excellent.
TEST: à {{cours}} d’argent
TEST: le portage a encore {{cour}}
TEST: porter l’affaire en Cour de justice
TEST: jusqu’en cour de cassation
TEST: le jugement en cour d’assises
TEST: ils vont passer prochainement en cour martiale.
TEST: je ne veux pas la prendre de court.
TEST: elle ne veut pas prendre de cours de musique.


# cuir / cuire
__conf_cuir_cuire__
    >dur [à|a] >cuir
        <<- /conf/ -3>> cuire           && Confusion. Locution “dur à cuire”. Le cuir est le nom qu’on donne à la peau animale. Pour évoquer la cuisson, écrivez “cuire”.|https://fr.wiktionary.org/wiki/cuire
        <<- /conf/ \2 == "a" -2>> à     && Confusion : “a” est une conjugaison du verbe “avoir”. Pour la préposition, écrivez “à”.

    en cuire [de|d’] [âne|auroch|bison|bœuf|buffle|cerf|cheval|chèvre|chevreuil|crocodile|daim|génisse|hippopotame|kangourou|porc|sanglier|serpent|taureau|vache|veau|zébu|zèbre]
        <<- /conf/ -2>> cuir            && Confusion. La peau animale s’écrit “cuir”.|https://fr.wiktionary.org/wiki/cuir

TEST: ce sont des durs à {{cuir}}
TEST: Quelle dure {{a}} {{cuir}}, celle-là.
TEST: revêtement en {{cuire}} de vache


# dans / d’en
................................................................................
    [fausse+s] [au|aux|des] [>caïman|>crocodile|>charognard|>lion|>loup|>louve|ours|>serpent|>cobra|>diable]
    [fausse+s] [>abyssal|>canin|>béant|>commun|>océanique|>sous-marine|>septique|>immense|>profond|>nasal|>iliaque|>temporal]
        <<- /conf/ -1>> =\1.replace("au", "o").replace("AU", "O")           && Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

    au bord de la fausse
        <<- /conf/ -5>> fosse                                               && Confusion probable : “fausse” est l’adjectif féminin de “faux”. Pour évoquer une profondeur, écrivez “fosse”.

    >fosse [>alerte|>déclaration]
        <<- /conf/ -1>> =\1.replace("o", "au").replace("O", "AU")
        && Confusion probable : une fosse est une dépression ou une cavité dans le sol. Pour évoquer une falsification ou une erreur, écrivez “fausse”.|https://fr.wiktionary.org/wiki/fausse

TEST: la {{fausse}} Calypso.
TEST: La {{fausse}} des Mariannes.
TEST: La {{fausse}} d’aisance.
TEST: La {{fausse}} à lisier.
TEST: Une {{fausse}} commune.
TEST: La {{fausse}} du Chili.
TEST: Nous sommes tombés dans la {{fausse}} aux lions.
TEST: Elles sont arrivées au bord de la {{fausse}}.
TEST: ils ont fait une {{fosse}} déclaration
TEST: encore une {{fosse}} alerte


# forcement / forcément
__conf_forcément_forcement__
    [/_VCint_|/_VCimp_]  ?[pas|plus|jamais|guère]¿  forcement
    [pas|plus] forcement
        <<- /conf/ --1>> forcément                          && Confusion probable : le forcement est l’action de forcer quelque chose. L’adverbe s’écrit “forcément”.|https://fr.wiktionary.org/wiki/forc%C3%A9ment
................................................................................
TEST: Il n’y en a plus {{guerre}}.
TEST: y peut {{guerre}} réussir quoi que ce soit, cet idiot.
TEST: elles sont sur le pied de {{guère}} depuis 10 jours.
TEST: Je hais la {{guère}}.
TEST: je n’en aimais certains guère.
TEST: ce que nous appelons Guerre psychologique


# haut de gamme
__conf_haut_de_gamme__
    !! haut de gamme ¡¡
    [haut+ses|o|ô|au|oh|ho] [de|d’] [gamme+s|game+s]
        <<- /conf/ ->> haut de gamme
        && Confusion probable. Locution nominale et adjectivale “haut de gamme” (invariable), c’est-à-dire de haute qualité, au sommet de la gamme possible parmi les produits existants.|https://fr.wiktionary.org/wiki/haut_de_gamme

TEST: des véhicules {{hauts de gamme}}                      ->> haut de gamme
TEST: c’est du {{oh de game}}                               ->> haut de gamme


# héro / héros
__conf_héros__
    [le|quel|ce|cet|un|du|au]  héro
        <<- /conf/ -2>> héros                               && Confusion. L’héro est l’abréviation de “héroïne” (la drogue). L’homme héroïque s’écrit “héros”.

TEST: Mon frère, {{ce}} {{héro}} !
................................................................................
    à partir de l’ [instant|année|heure]    ou
    à partir de la [minute|semaine|seconde] ou
    depuis le [jour|millénaire|moment|mois|siècle]  ou
    depuis la [minute|semaine|seconde]              ou
    depuis l’ [année|heure|instant]                 ou
        <<- /conf/ --1>> où                                 && Confusion. La conjonction “ou” signale une alternative. Pour évoquer un lieu, un temps ou une situation, écrivez “où”.

    [>être|>rester|>demeurer] en situation ou
    [>être|>arriver] ?$:W¿ dans [une|cette|la] situation ou
    [vient|vint|viendra|viendrait] un temps ou
        <<- /conf/ --1>> où                                 && Confusion probable. La conjonction “ou” signale une alternative. Pour évoquer un lieu, un temps ou une situation, écrivez “où”.

    [là|>aller] ou le vent
        <<- /conf/ -2>> où                                  && Confusion. La conjonction “ou” signale une alternative. Pour évoquer un lieu, un temps ou une situation, écrivez “où”.

TEST: {{Ou}} sont tes affaires ?                                    ->> Où
................................................................................
TEST: Ça consiste {{pelle mêle}} en diverses choses.
TEST: habitées par un peuple de prostituées […], vivant là, entassées pêle-mêle avec toutes sortes d’individus plus ou moins suspects, souteneurs et repris de justice pour la plupart.


# peu / peux / peut
__conf_peu_peut_peux!6__
    peu [pas|donc|jamais|rien|parfois|alors|enfin|rarement|éventuellement]
        <<- /conf/ not morph(<1, ">(?:très|en|un|de|du)/") -1>> peut        && Confusion probable : « peu » signifie « pas beaucoup », pour le verbe pouvoir, écrivez “peut”.

    !! peu à peu ¡¡
    [peux|peut|peu] [a|à|ah|ha|as] [peux|peut|peu]
    peu-a-peu
    peu-à-peu
    peut-a-peu
    peu-à-peut
................................................................................
    [je|tu] ?[ne|n’]¿ peu
        <<- /conf/ --1>> peux                                               && Confusion : « peu » signifie « pas beaucoup ».

    [ne|se|n’|s’] peu
        <<- /conf/ -2>> peut                                                && Confusion. Exemples : Il est peu habile, mais il peut y arriver.

    [peut|peux]  @:A¬:(?:[MGWYX]|3[sp])
        <<- /conf/ not morph(\2, ">seul/") and not morph(<1, ">(?:je|tu|il|on|ne)/")
        -1>> peu                                                            && Confusion probable : « \1 » est une conjugaison de « pouvoir », utilisez « peu ».

TEST: {{peu}} rarement y arriver.
TEST: Il est un {{peut}} comme une forêt
TEST: cela ne se {{peu}}.
TEST: des bâtisses {{peu a peu}} abandonnées.
TEST: voilà {{peut ou proue}} ce qu’on entend
................................................................................
        <<- /conf/ -1>> pore|pores                                          && Confusion. Les pores de la peau .|https://fr.wiktionary.org/wiki/pore

    [>pore|>port] [braisé+ses|caramélisé+ses|confit+s|cuit+s|farci+ses|grillé+ses|laqué+ses|mariné+ses|mijoté+ses|poêlé+ses]
    [>pore|>port] au [caramel|cognac|cidre|citron|chorizo|cumin|curry|four|fenouil|gingembre|lait|miel|roquefort|vin|vinaigre]
    [>pore|>port] aux [abricots|cèpes|champignons|carottes|épices|fèves|figues|fruits|girolles|haricots|herbes|lardons|légumes|lentilles|marrons|morilles|noisettes|nouilles|oignons|ognons|pâtes|poires|pommes|patates|pruneaux]
    [>pore|>port] à la [bière|crème|cocotte|curcuma|moutarde|sauce|sauge]
    [>pore|>port] à l’ [ananas|armagnac|estragon|orange]
    [>pore|>port] en [>brochette|>croûte|>croute]
        <<- /conf/ -1>> porc|porcs                                          && Confusion. Pour évoquer l’animal, écrivez “porc”.|https://fr.wiktionary.org/wiki/porc

    [>blanquette|>boulette|>brochette|>confit|>côte|>côtelette|>émincé|>escalope|>jarret|>joue|>longe|>mijoté|>nem|>paupiette|>pied|>poitrine|>ragoût|>ragout|>rillette|>rouelle|>rôti|>rognon|>sauté|>terrine]
        || [de|d’] [>pore|>port]
    >filet ?[mignon+s]¿ [de|d’] [>pore|>port]
        <<- /conf/ --1>> porc                                               && Confusion. Pour évoquer l’animal, écrivez “porc”.|https://fr.wiktionary.org/wiki/porc

    [>avaler|>bouffer|>cuire|>élever|>égorger|>frire|>manger|>mâcher|>mastiquer|>rôtir|>tuer] $:D¬:R [>pore|>port]
    [>avaler|>bouffer|>cuire|>élever|>égorger|>frire|>manger|>mâcher|>mastiquer|>rôtir|>tuer] $:D¬:R [>pore|>port]
    >élevage [de|d’] [>pore|>port]
        <<- /conf/ --1>> porc|porcs                                         && Confusion. Pour évoquer l’animal, écrivez “porc”.|https://fr.wiktionary.org/wiki/porc

    [>pore|>porc] [de|d’] [plaisance|pêche]
    [>pore|>porc] [>maritime|>spatial]
        <<- /conf/ -1>> port|ports                                          && Confusion. Pour évoquer un havre côtier où les bâteaux accostent, écrivez “port”.|https://fr.wiktionary.org/wiki/port

................................................................................
TEST: Quand à mon tour je réalise l’imposture, c’est trop tard.


__conf_qu_en_quand_quant__
    [quand|quant]   $:P
        <<- /conf/ -1>> qu’en                                               && Confusion probable.

    [quand|quant] [est|était|fut|serait] il [de|des|du]
    [quand|quant] [est-il|était-il|fut-il|sera-t-il|serait-il] [de|des|du]
        <<- /conf/ -1>> qu’en                                               && Confusion probable. Ce qu’il en est de… → Qu’en est-il de… ?

    [quand|quant]  /_VCint_  [<end>|,|)]
        <<- /conf/ morphVC(\2, ">(?:déduire|penser)/") -1>> qu’en           && Confusion probable. Exemple : Ce qu’il en pense → Qu’en pense-t-il ?

    [le|les|du|des|ce|ces|quelque|quelques] quand dira-t-on
    [le|les|du|des|ce|ces|quelque|quelques] quand dira t on
    [le|les|du|des|ce|ces|quelque|quelques] quand-dira-t-on
        <<- /conf/ -2:0>> qu’en-dira-t-on           && Confusion. Pour évoquer l’opinion publique, écrivez “qu’en-dira-t-on”.|https://fr.wiktionary.org/wiki/qu%E2%80%99en-dira-t-on

TEST: il comprit {{quand}} prenant son parti, il se protégeait aussi.                           ->> qu’en
TEST: {{Quand}} est-il du chien ?                                                               ->> Qu’en
TEST: {{quand}} penses-tu ?                                                                     ->> qu’en
TEST: il avait une peur bleue des {{quand dira-t-on}}.                                          ->> qu’en-dira-t-on
TEST: il est exact qu’en je ne sais combien de temps il parvint à un résultat inattendu.
TEST: il comprit trop tard qu’en elle naquit alors le doute qui l’éloigna de lui à jamais.


# quand bien même
__conf_quand_bien_même__
    tant bien même
................................................................................
TEST: qu’elle {{quand}} soit le résultat                                ->> qu’en
TEST: {{qu’elle qu’en soi}} la raison, ça ne suffit pas.                ->> quel qu’en soit|quelle qu’en soit
TEST: {{qu’elles qu’en soient}} les raisons                             ->> quels qu’en soient|quelles qu’en soient


# quelque part
__conf_quelque_part__
    [quel|quels|quelle|quelles] que [pare+s|par+s|>part]
    [quelque|quelques] [pare+s|par+s|parts]
    quelques part
        <<- /conf/ ->> quelque part                                         && Confusion probable.|https://fr.wiktionary.org/wiki/quelque_part

TEST: Il faut bien aller {{quelle que part}}.
TEST: Je les ai oubliés {{quelque pars}}.
TEST: Elles sont forcément {{quelque parts}} ici.

................................................................................
TEST: {{Quoiqu’}}il se soit passé réellement passé, je vais lui faire la peau.
TEST: {{quoique}} vous ayez pu faire, ça a donné les résultats escomptés.


# raisonner / résonner
__conf_raisonner_résonner__
    [la|le|les|me|te|se|nous|vous] >résonner
        <<- /conf/ -2>> =\2.replace("éson", "aison").replace("ÉSON", "AISON")       && Confusion probable. Vous utilisez la raison, mais vous ne “sonnez” pas.

TEST: Vous {{résonnez}} comme un sot.
TEST: Nous allons le {{résonner}}.


# repère /  repaire
__conf_repaire_repère__
................................................................................

    au [sain|saint|seing] [de|des|du|d’]
        <<- /conf/ -2>> sein
        && Confusion probable : “sain” signifie “en bonne santé”, “saint” évoque ce qui “sanctifié”. Pour évoquer, au sens figuré, ce qui est une partie intime de quelque chose ou quelqu’un, écrivez “sein”.|https://fr.wiktionary.org/wiki/sein

    [>sein|saint+s] d’ esprit
    [>sein|saint+s] de corps et d’ esprit
        <<- /conf/ -1>> sain|sains                              && Confusion probable. Pour dire “en bonne santé”, écrivez “sain”.|https://fr.wiktionary.org/wiki/sain

    [blanc-sein+s|blancs-sein+s]
    [blanc-sain+s|blancs-sain+s]
    [blanc-saint+s|blancs-saint+s]
        <<- /conf/ ->> blanc-seing|blancs-seings                && Confusion.|https://fr.wiktionary.org/wiki/blanc-seing

TEST: il priait {{sain}} Anselme de le secourir.
................................................................................
TEST: des personnes si {{désespérer}}
TEST: Ces gens sont si {{prit}} par leur travail qu’ils en oublient de vivre.
TEST: Ça ira mieux demain, surtout si émerge une demande forte de la part des consommateurs.
TEST: Toutes les bifurcations qui auraient été possibles si avaient été pris en compte des critères autre que la captation de valeur ajoutée, l’augmentation des taux de profit, et l’accumulation du capital.
TEST: si venir à la conférence coûte autant, il est préférable de s’abstenir.


# sitôt / si tôt
__conf_sitôt__
    [<start>|,|(] si tôt  $:A
        <<- /conf/ -2:3>> sitôt                             && Confusion probable : si vous voulez dire “aussitôt”, écrivez “sitôt”.|https://fr.wiktionary.org/wiki/sit%C3%B4t

TEST: {{si tôt}} accomplie, il fallut recommencer


__conf_sitôt_dit_sitôt_fait!6__
    !! sitôt dit ?,¿ sitôt fait ¡¡
    [si+s|>scie|ci+s] [tôt|>tau|taux|to|>taud|trop|trot] [dis|dix|dit+s|di] ?,¿ [si+s|>scie|ci+s] [tôt|>tau|taux|to|>taud|trop|trot] [fait+s|>fée|fé|fais]
    sitôt [dis|dix|dit+s|di] ?,¿ sitôt [fait+s|>fée|fé|fais]
    sitôt [dis|dix|dit+s|di] ?,¿ si [tôt|>tau|taux|to|>taud|trop|trot] [fait+s|>fée|fé|fais]
    si [tôt|>tau|taux|to|>taud|trop|trot] [dis|dix|dit+s|di] ?,¿ sitôt [fait+s|>fée|fé|fais]
    s’ [y|i] [tôt|>tau|taux|to|>taud|trop|trot] [dis|dix|dit+s|di] ?,¿ s’ [y|i] [tôt|>tau|taux|to|>taud|trop|trot] [fait+s|>fée|fé|fais]
        <<- /conf/ ->> sitôt dit, sitôt fait
................................................................................

TEST: Méfiez-vous de cette {{soi-disante}} sorcière.
TEST: Méfiez-vous de cette {{soit-disant}} sorcière.
TEST: Méfiez-vous de cette {{soi disant}} sorcière.


__conf_soi_soit_soie__
    [chez|sur|avec|pour|devant|derrière] [soit|sois]
    don de [soit|sois]
    estime de [soit|sois|>soie]
    >repli sur [soit|sois|>soie]
        <<- /conf/ not (value(\-1, "|soit|") and after(" soit ")) --1>> soi                         && Confusion probable.|https://fr.wiktionary.org/wiki/soi




    en soit
        <<- /conf/ morph(>1, ":[GY]|<end>", ">à/") and not value(<1, "|il|on|elle|n’|m’|t’|s’|") and not before("(?i)quel(?:s|les?|) qu[’ ]$") and not after(" soit ")
        -2>> soi                                                                                    && Confusion probable.|https://fr.wiktionary.org/wiki/soi

    [ça|cela|ceci] >aller ?$:W¿ de soit
        <<- /conf/ not after(" soit ") --1>> soi                                                    && Confusion probable.|https://fr.wiktionary.org/wiki/aller_de_soi

    [soi|sois|soit|>soie]  >même
        <<- /conf/ morph(<1, ":[YQ]|>(?:avec|contre|par|pour|sur)/|<start>|>,") ->> soi-même        && Confusion probable : moi-même, toi-même, lui-même, elle-même, soi-même, elles-mêmes, eux-mêmes.

    [sois-même|soit-même|soie-même|soies-même|soi-mêmes|sois-mêmes|soit-mêmes|soie-mêmes|soies-mêmes]
        <<- /conf/ ->> soi-même                                                                     && Confusion : moi-même, toi-même, lui-même, elle-même, soi-même, elles-mêmes, eux-mêmes.














TEST: chez {{soit}}, c’est presque toujours mieux.
TEST: ce n’est pas la philosophie en {{soit}} qui est problématique
TEST: quel que {{soie}} sa pensée, je refuse d’y accorder de l’attention.
TEST: Penser par {{soit même}}…
TEST: S’aimer {{soit-même}}, c’est le début d’une grande histoire d’amour. (Oscar Wilde)
TEST: pas sûr que {{sa}} {{soi}} terminé avant demain
TEST: Cela va presque de {{soit}}


TEST: Je regrette que l’on en soit encore à des considérations que je croyais dépassées
TEST: Quoi qu’il en soit
TEST: À moins qu’elle n’en soit la victime.
TEST: Je doute qu’il s’en soit sorti si aisément.
TEST: Je refuse, quoi qu’il en soit.
TEST: on ne s’étonne plus que le parquet de Paris en soit à agir sous l’effet de quelque urgence médiatique
TEST: Vous êtes soit pour soit contre, mais pas les deux en même temps
................................................................................
    [<start>|,|(]  [soi|>soie]  @:[OC]¬:R
    [<start>|,|(]  [soi|sois|>soie]  [j’|t’|c’|ç’]
        <<- /conf/ -2>> soit                                    && Confusion probable : pour évoquer une option, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction

    [quel|quels|quelle|quelles] que [soi|>soie|sois]
        <<- /conf/ -3>> soit|soient                             && Confusion probable.

    que  sa  soi  @:[WXAQ]
        <<- /conf/ -3>> soit|soie                                               && Confusion. Pour le verbe être au subjonctif, écrivez “soit”. Pour la fibre servant à la confection de textile, écrivez “soie”.

    >être [soi+s|>soie] [moi|toi|lui|elle|nous|vous|eux|iel|iels] ?,¿ [soit|soi+s|>soie]
    >être [soi+s|>soie] [moi|toi|lui|elle|nous|vous|eux|iel|iels] ?,¿ [soit|soi+s|>soie]
    >être [soi+s|>soie] $:D $:N ?,¿ [soit|soi+s|>soie]
        <<- /conf/ morph(\1, "[123][sp]") -2>> soit                             && Pour évoquer une possibilité, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction

    >être soit [moi|toi|lui|elle|nous|vous|eux|iel|iels] ?,¿ [soit|soi+s|>soie]
    >être soit [moi|toi|lui|elle|nous|vous|eux|iel|iels] ?,¿ [soit|soi+s|>soie]
    >être soit $:D $:N ?,¿ [soit|soi+s|>soie]
        <<- /conf/ morph(\1, "[123][sp]") --1>> soit                            && Pour évoquer une possibilité, écrivez “soit”.|https://fr.wiktionary.org/wiki/soit#Conjonction

TEST: {{soi}} je vais au cinéma, {{soi}} je m’abstiens.
TEST: {{soie}} t’arrives avant tout le monde.
TEST: Quels que {{soi}} les problèmes, on peut les surmonter.
TEST: c’est {{soi}} lui, soit moi                                                   ->> soit
TEST: ce serait soit elle, {{soie}} une inconnue                                    ->> soit
TEST: Sois le plus efficace possible.


# son / sont
__conf_son_sont__
    [ne|n’|me|m’|te|t’|se|s’] son
    [ne|n’] [le|l’|leur|leurs|lui|nous|vous] son
................................................................................
    >éclat [de|d’] [>voie|vois|voit]
        <<- /conf/ --1>> voix       && Confusion. Pour évoquer un son humain, animal ou instrumental, écrivez “voix”.|https://fr.wiktionary.org/wiki/voix

    à [>voie|vois|voit] [basse|haute|basses|hautes]
        <<- /conf/ -2>> voix        && Confusion. Pour évoquer un son humain, animal ou instrumental, écrivez “voix”.|https://fr.wiktionary.org/wiki/voix

    [>entendre|>écouter] ?@:[WX]¿ $:D >voie
        <<- /conf/ --1>> voix       && Confusion. Pour évoquer un son humain, animal ou instrumental, écrivez “voix”.|https://fr.wiktionary.org/wiki/voix

    sur la [bonne|mauvaise] voix
    en ?[si|très|trop]¿ [bonne|mauvaise] [voix|vois|voit]
        <<- /conf/ --1>> voie       && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

    [>marcher|>courir] ?@:[WX]¿ sur [la|cette|une|quelle] voix
    [>emprunter|>indiquer|>montrer|>parcourir] ?@:[WX]¿ [la|cette|une|quelle] voix
        <<- /conf/ --1>> voie       && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

    >ouvrir ?@:[WX]¿ la voix [à|au|aux|<end>]
        <<- /conf/ --2>> voie       && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

    en voix [de|d’] [achèvement|acquisition|décrépitude|développement|dissolution|disparition|extinction|guérison|obtention|rémission|résorption|rétablissement]
    par voix de >conséquence
    par voix [médicamenteuse+s]
        <<- /conf/ -2>> voie        && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

    voix [abdominale|anale|biliaire|bitumée|carrossable|communale|express|interdite|intramusculaire|intraveineuse|piétonne|principale|prioritaire|privée|publique|déserte|romaine|appienne|flaminienne|ferrée|ferroviaire|lactée|lacrymale|aérienne|maritime|fluviale|terrestre|navigable|détournée|déviée|buccale|digestive|urinaire|respiratoire|parallèle|administrative|diplomatique|gouvernementale|législative|hiérarchique|pavée|rectiligne|sinueuse|souterraine|urbaine]
    voix [de|d’] garage
    voix [de|d’] [recours|perdition]
................................................................................
    voix [abdominales|anales|biliaires|bitumées|carrossables|communales|expresss|interdites|intramusculaires|intraveineuses|piétonnes|principales|prioritaires|privées|publiques|désertes|romaines|appiennes|flaminiennes|ferrées|ferroviaires|lactées|lacrymales|aériennes|maritimes|fluviales|terrestres|navigables|détournées|déviées|buccales|digestives|urinaires|respiratoires|parallèles|administratives|diplomatiques|gouvernementales|législatives|hiérarchiques|pavées|rectilignes|sinueuses|souterraines|urbaines]
        <<- /conf/ -1>> voies       && Confusion. La voix est un son humain, animal ou instrumental. Pour évoquer un chemin, écrivez “voie”.|https://fr.wiktionary.org/wiki/voie

TEST: elles sont là, à portée de {{voie}}
TEST: ces patients sont en {{voix}} de guérison.
TEST: à {{voie}} basse
TEST: écoute cette {{voie}} magnifique
TEST: elle refusa d’emprunter cette {{voix}}
TEST: sur la bonne {{voix}}
TEST: c’est en bonne {{voix}}.
TEST: il faut ouvrir la {{voix}} aux nouveaux venus.
TEST: Je propse que, par {{voix}} de conséquence, nous partions immédiatement.
TEST: C’est une {{voix}} interdite.
TEST: les {{voix}} gouvernementales sont impénétrables.
TEST: c’est une {{voix}} de perdition sur laquelle vous vous engagez.
................................................................................
    [me|m’|te|t’|se|s’|nous|vous]               [en|y]                                   voire
    [le|la|l’|les]                              [en|y]                                   voire
    [comme|lorque|puisque|quand|que|quoique|si] ?[en|y]¿                                 voire
    [ni|par|pour|sans]                          ?[en|y]¿                                 voire
    [>aller|>falloir|>pouvoir|>vouloir]         ?[guère|jamais|pas|plus|point|rien]¿   ?[nous|vous]¿   voire
        <<- /conf/ --1>> voir           && Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire

    [à|par] voire
    [et|ou] voire  $:D
        <<- /conf/ -2>> voir            && Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire

TEST: Elles sont fatiguées, {{voir}} épuisées.
TEST: Ce serait pour aider, ainsi que {{voire}} l’avancement du projet.
TEST: Je ne vais jamais {{voire}} ces gens-là.
TEST: penser juste et {{voire}} la vérité.
................................................................................
TEST: Diviser les jeunes et les vieux est un peu son fonds de commerce



!!!! Confusions de vocabulaire                                                                    !!

__conf_vocabulaire!5__
    [con+s] [>cul|cu|que] >pisse >anse
    [con+s] [>cul|cu|que] >pisse [>an|>en] [se|ce]
        <<- /conf/ ->> concupiscence                            && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/concupiscence

    [con+s] [>cul|cu|que] [pissant+s]
    [con+s] [>cul|cu|que] >pisse [>an|>en]
        <<- /conf/ ->> concupiscent|concupiscents               && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/concupiscent

    [con+s] [>cul|cu|que] [pissante+s]
    [con+s] [>cul|cu|que] >pisse [ante|ente]
    [con+s] [>cul|cu|que] [>pisse|pi|pis] [>an|>en] te
        <<- /conf/ ->> concupiscente|concupiscentes             && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/concupiscent

    [dix|dis|dit+ses|des] [>tir|>tire|tirent] [en|>an|han] [>bique|>bic|>bec]
    [dix|dis|dit+ses|des] [>tyran|>tirant] [>bique|>bic]
        <<- /conf/ ->> dithyrambique|dithyrambiques             && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/dithyrambique

    [fi|>fil|>phi|>phil] [>lac|>laque] [>terre|ter|taire]
    [fila|phila] [que|qu’] [>terre|ter|taire]
    [>fil|fi|>phi] [>lac|>laque] [>terre|ter|taire]
    [fil|phil] [a|à|as|ah|ha] [que|qu’] [>terre|ter|taire]
        <<- /conf/ ->> phylactère|phylactères                   && Confusion de vocabulaire ?|https://fr.wiktionary.org/wiki/phylactère

TEST: des brutes pleines de {{cons culs pisse anse}}
TEST: un homme {{con cul pissant}}
TEST: elle se montrait souvent {{con cul pissante}}
TEST: des éloges {{dits tirs en bique}}
TEST: un {{fil a que terre}}

................................................................................
# ensemble
__sgpl_ensemble__
    [toutes|tous] ensembles
        <<- /sgpl/ -2>> ensemble                                    && Ici, “ensemble” est vraisemblablement un adverbe, donc invariable.|https://fr.wiktionary.org/wiki/ensemble

TEST: Allons-y toutes {{ensembles}}                             ->> ensemble


# en particulier
__sgpl_en_particulier__
    en particuliers
        <<- /conf/ not morph(<1, ">agir/") ->> en particulier       && Locution “en particulier” toujours au singulier.|https://fr.wiktionary.org/wiki/en_particulier

TEST: en général et {{en particuliers}}
TEST: agir en particulier averti.


# en rangs serrés
__sgpl_en_rangs_serrés__
    en rang serré
        <<- /sgpl/ ->> en rangs serrés|en ordre serré               && Au pluriel, car il y a plusieurs rangs. Vous pouvez aussi utiliser l’expression “en ordre serré”.

TEST: ils défilèrent {{en rang serré}}
................................................................................
    depuis un               ?[assez|si|très|trop]¿ long     {unit_mesure_sing_mas}
    depuis une              ?[assez|si|très|trop]¿ longue   {unit_mesure_sing_fem}
    pendant un  ?[long]¿    {unit_mesure_sing_mas}
    pendant une ?[longue]¿  {unit_mesure_sing_fem}
        <<- ~>> *

    ## locutions plurielles
    au bout de [nombreux|plusieurs|quelques]        {unit_mesure_plur_mas}
    après [des|plusieurs|quelques|*NUM|$:B:e:p]     {unit_mesure_plur_mas}
    après près [de|d’] [*NUM|$:B:e:p]               {unit_mesure_plur_mas}
    depuis $:B:e:p                                  {unit_mesure_plur_mas}
    depuis *NUM                                     {unit_mesure_plur_mas}
    depuis près [de|d’] $:B:e:p                     {unit_mesure_plur_mas}
    depuis près [de|d’] *NUM                        {unit_mesure_plur_mas}
    depuis quelques                                 {unit_mesure_plur_mas}
    en *NUM                                         {unit_mesure_plur_mas}
    pendant [des|plusieurs|quelques|*NUM|$:B:e:p]   {unit_mesure_plur_mas}
    pendant près [de|d’] [*NUM|$:B:e:p]             {unit_mesure_plur_mas}
        <<- not morph(>1, ":A.*:[me]:[pi]") ~>> *

    au bout de [nombreuses|plusieurs|quelques]      {unit_mesure_plur_fem}
    après [des|plusieurs|quelques|*NUM|$:B:e:p]     {unit_mesure_plur_fem}
    après près [de|d’] [*NUM|$:B:e:p]               {unit_mesure_plur_fem}
    depuis $:B:e:p                                  {unit_mesure_plur_fem}
    depuis *NUM                                     {unit_mesure_plur_fem}
    depuis près [de|d’] $:B:e:p                     {unit_mesure_plur_fem}
    depuis près [de|d’] *NUM                        {unit_mesure_plur_fem}
    depuis quelques                                 {unit_mesure_plur_fem}
................................................................................
    plus d’ une fois
    plus d’ une fois par [seconde|minute|heure|jour|semaine|mois|trimestre|semestre|an|année|décennie|siècle|millénaire]
    pour la [première|seconde|dernière|~ième$] fois
    pour la [première|seconde|dernière|~ième$] fois [de|d’] [ma|ta|sa|notre|votre|leur] ?misérable¿ vie ?[misérable|insignifiante|palpitante]¿
    pour la [première|seconde|dernière|~ième$] fois [de|d’] [mon|ton|son|notre|votre|leur] ?[misérable|insignifiante|palpitante]¿ existence ?[misérable|insignifiante|palpitante]¿
    pour la [seconde|dernière|~ième$] fois [de|d’] suite
    pour [trois|3] fois rien
    pour [cette|une] fois
    quelquefois
    quelques fois
    sans y [réfléchir|songer|penser] à [deux|2] fois
    souventes fois
    toutefois
    tant de fois
        <<- ~>> *
................................................................................
    dans le cas contraire
    dans [ce|ces] [cas-là|cas-ci]
    dans ce cas [précis|particulier]
    dans ces cas [précis|particuliers]
    dans l’ [idéal|immédiat]
    dans la mesure du possible
    dans la dernière ligne droite
    dans le feu de l’ action
    dans leur globalité
    dans leur grande majorité
    dans tout [cela|ça|ceci]
    dans un cas comme dans l’autre
    dans une [certaine|large|moindre] mesure
    dans une mauvaise passe
    d’ abord
................................................................................
    [de|d’] droite comme [de|d’] gauche
    [de|d’] fâcheuse mémoire
    [de|d’] fil en aiguille
    [de|d’] fond en comble
    [de|d’] fort [loin|près]
    [de|d’] ?[assez|si|très|trop]¿ [fraîche|fraiche] date
    [de|d’] [gaieté|gaîté|gaité] [de|d’] cœur
    [de|d’] grand renom
    [de|d’] grande ampleur
    [de|d’] gauche à droite
    [de|d’] gauche comme [de|d’] droite
    [de|d’] génération en génération
    [de|d’] gré à gré
    [de|d’] gré ou [de|d’] force
    [de|d’] guerre lasse
................................................................................
    en ?[assez|si|très|trop]¿ excellent état ?général¿
    en ?[assez|si|très|trop]¿ fâcheuse posture
    en file indienne
    en fin [de|d’] [compte|journée|matinée|soirée|après-midi]
    en forte [baisse|hausse]
    en gage [de|d’] bonne foi
    en garde à vue ?prolongée¿
    en ?[assez|si|très|trop|plus|moins]¿ grand nombre
    en ?[assez|si|très|trop]¿            grande [difficulté|majorité|partie|pompe]
    en ?[assez|si|très|trop|plus|moins]¿ haut lieu
    en ?[assez|si|très|trop]¿            haute [estime|mer]
    en l’ absence [de|d’] preuve suffisante
    en l’ absence [de|d’] preuve suffisante du contraire
    en l’ absence [de|d’] preuves suffisantes
    en l’ absence [de|d’] preuves suffisantes du contraire
    en l’ occurrence
    en lieu sûr
    en ligne [de|d’] [compte|mire]
................................................................................
    en ?[assez|si|très|trop]¿ [piteux|piètre] état [de|d’] conservation
    en point [de|d’] [mire|orgue]
    en porte-à-faux
    en position [de|d’] [force|faiblesse]
    en premier lieu
    en première [instance|ligne]
    en [première|seconde|~ième$] [classe|position]
    en [1ʳᵉ|2ᵉ|3ᵉ|4ᵉ|5ᵉ|6ᵉ|7ᵉ|8ᵉ|9ᵉ|10ᵉ|11ᵉ|12ᵉ|13ᵉ|14ᵉ|15ᵉ|16ᵉ|17ᵉ|18ᵉ|19ᵉ|20ᵉ] [classe|position]
    en provenance du monde entier
    en pure perte
    en quantité suffisante
    en quantité plus que suffisante
    en quelque sorte
    en queue [de|d’] peloton
    en rangs [dispersés|serrés]
................................................................................
    non [plus|seulement]
    non sans raison
    non loin [de|d’] [ici|là]
    non sans mal
    ¿[de|d’|vers]¿ nulle part
    ô combien
    oh
    ou quelque chose d’ [approchant|identique]
    ou quelque chose [de|d’] similaire
    où bon [me|te|lui|nous|vous|leur] semble
    oui [ou|et] non
    outre mesure
    par [à-coups|ailleurs|avance|chance|conséquent|curiosité|contre|défaut|définition|endroits|essence|excellence|exemple|hasard|ici|inadvertance|là|mégarde|nature|principe|terre]
    par acquit [de|d’] conscience
    par [beau|mauvais] temps
    par bien des [aspects|côtés]
................................................................................
    sous haute [surveillance|tension]
    stricto sensu
    sur [mon|ton|son|notre|votre|leur] [trente-et-un|31]
    sur [mon|ton|son|notre|votre|leur] trente et un
    sur ce ,
    sur ce plan-là
    sur la défensive

    sur la forme comme sur le fond
    sur la même longueur d’ onde
    sur la sellette
    sur le fil du rasoir
    sur le plan [local|cantonal|départemental|régional|national|européen|américain|africaine|asiatique|continental|international|planétaire|galactique|universel]
    sur le pied [de|d’] guerre
    sur le qui-vive
    surtout
    s’ il [te|vous] [plaît|plait]
    tant bien que mal
    tant s’ en faut
................................................................................
        <<- ~>> _

    vent debout contre
        <<- ~1:2>> *

    je      [t’|vous]   en  [prie|supplie]  <end>
    nous    [t’|vous]   en  [prions|supplions]  <end>
        <<- ~1:-2>> *

    ,  je      [t’|vous]   en  [prie|supplie]  ,
    ,  nous    [t’|vous]   en  [prions|supplions]  ,
        <<- not morph(>1, ":E") ~>> *


# Déterminant + nombre
................................................................................
    >appât du gain ?[facile|rapide]¿
    >appel au secours
    >appel à l’ aide ?humanitaire¿
    >arc à poulies
    >arme à feu
    >armée [de|d’] l’ air
    >armée [de|d’] [réserve|terre]
    >arme à enquerre
    >arme [de|d’] [poing|guerre]
    >arme [de|d’] destruction massive
    >armoire à [>glace|>pharmacie]
    >argent [de|d’] poche
    >arnaque à l’ assurance
    >article [de|d’] presse
    >article à >sensation
................................................................................
    >chef d’ [état-major|entreprise]
    >chef d’ orchestre ?[moderne|symphonique]¿
    >chemin [de|d’] [croix|fer|traverse]
    >chemise [de|d’] nuit
    >chemise sans >manche
    >chèque en blanc
    >chèque sans provision
    >cheval [de|d’] [bataille|Troie]
    >chien [de|d’] garde
    >chili con carne
    >chômage [de|d’] masse
    >chou à la crème ?[fouettée|diplomate|mousseline|patissière|pralinée]¿
    >cible en approche
    >cité u
    >clair comme [de|d’] l’ eau [de|d’] [boudin|roche|source]
    >clair comme du cristal
................................................................................
    >coureur [de|d’] >jupon
    >courroie [de|d’] transmission
    >course contre la montre
    >crayon à [lèvres|sourcils]
    >cour d’ assises
    [>coût|>cout] [de|d’] revient
    >couteau à cran d’ arrêt
    >crime [de|d’] guerre
    >crise de >nerf
    >cuillère à [café|soupe]
    >cure [de|d’] [désintoxication|désintox]
    >déclaration sur l’ honneur
    >degré d’ arc
    >délai [de|d’] [attente|carence|connexion|prescription|préavis|rétraction|rigueur]
    >demande d’ asile
................................................................................
    >force d’ assaut
    >force [de|d’] caractère
    >fosse à [merde|>ordure|purin]
    >fosse aux lions
    >fou à lier
    [>fourgon|>fourgonnette] [de|d’] location
    >frayeur [de|d’] tous les diables
    >frein à >tambour
    >frousse [de|d’] tous les diables
    >fuite en avant
    >fusil à [lunette|plomb|pompe]
    >garde à vue
    >garde du corps
    gaz à >effet [de|d’] serre
    >genou à terre
    >geste >barrière
    >gilet [de|d’] sauvetage
    >gouvernement d’ union nationale
................................................................................
    >ligne [de|d’] [conduite|mire]
    >lime à >ongle
    >liste d’ attente
    >lit à baldaquin
    >lit [de|d’] camp
    >livraison à domicile
    >livre [de|d’] [poche|chevet]
    >livret A
    >livret d’ épargne ?[bancaire|populaire|salariale]¿
    >loi d’ airain
    >longueur d’ avance
    >lune [de|d’] miel
    >machine à [café|coudre|écrire|laver|sous|voter]
    >machine à remonter le temps
    >machine [de|d’] guerre
................................................................................
    >parc [de|d’] stationnement
    >parole en l’ air
    >partie [de|d’] jambes en l’ air
    >passage à tabac
    >passation [de|d’] pouvoir
    >pâte à [accras|>beignet|>brioche|choux|>crêpe|donuts|frire|galettes|>gaufre|>gâteau|modeler|nouilles|pain|pizza|sel|tarte|tartiner]
    >pâté en [croute|croûte]
    >perte [de|d’] temps ?précieux¿
    >peur [de|d’] tous les diables
    >piano à queue
    >pièce à conviction
    >pièce [de|d’] [théâtre|monnaie]
    >pièce [de|d’] *NUM [>euro|>dollar|>centime|>cent|>livre|>shilling]
    >pile à [combustible|hydrogène]
    >pince à linge
................................................................................
    quelqu’un d’ autre
    >question [de|d’] vie ou [de|d’] mort
    >rampe [de|d’] lancement
    >rapport [de|d’] force
    >rat [de|d’] bibliothèque
    >rayon [de|d’] soleil
    >réaction en [chaîne|chaine]
    >région Grand Est
    >règlement [de|d’] comptes
    >relation à distance
    >remède [de|d’] cheval
    >requête en nullité
    >requête en non [conciliation|inscription|lieu]
    >requête en non révocation [de|d’] sursis
    >responsable qualité
    [>resto|>restau] u
    >retour à la case départ
................................................................................
    >sac [de|d’] [couchage|sport|voyage]
    >salaire à vie
    >salle à manger
    >salle [de|d’] [attente|>bain|bal|conférence|lecture|séjour|vente]
    >salon [de|d’] coiffure
    sas [de|d’] [confinement|décompression|décontamination|désinfection|livraison|protection|secours|sécurité]
    >sclérose en plaques

    >seconde d’ arc
    >sel [de|d’] [aluminium|ammonium|mer]
    >serpent à sonnette
    >service d’ ordre
    >seuil [de|d’] tolérance
    >seuil [de|d’] tolérance à la douleur
    >silo à [>grains|blé]
................................................................................
    >tableau [de|d’] chasse
    >table à repasser
    >table [de|d’] [calcul|chevet|nuit]
    >taille *NUM
    tas [de|d’] ferraille ?rouillée¿
    >talon >aiguille
    tapis [de|d’] prière
    >tarte à la crème ?[catalane|fraiche|fraîche|patissière]¿
    taux [de|d’] [abstention|absorption|alcool|alphabétisation|change|cholestérol|cholesterol|endettement|fécondité|glycémie|inflation|intérêt|imposition|natalité|occupation|ouverture|œstrogène|participation|testostérone|TVA|urbanisation|urée|usure]
    taux [de|d’] mortalité ?[infantile|néonatale]¿
    >témoin à charge
    tenants et aboutissants
    >ténor du barreau
    >tête à claques
    >tête d’ enterrement
    >tête [de|d’] [linotte|déterré+ses|mule|pont]
    >terrain à découvert
    >tigre à dents [de|d’] sabre
    >tigre [de|d’] papier ?mâché¿
    >tir à la première personne
    >tir [de|d’] barrage
    >tiret d’ incise
    >tireur d’ élite
    >titre [de|d’] [noblesse|propriété|séjour]
    >toile de fond
    >tondeuse à gazon
    >tour d’ horizon
................................................................................
    >travail au noir
    >travail d’ intérêt général
    >travailleur au noir
    >tribunal d’ assises
    >trou à >rat
    >trouble à l’ ordre public
    >t-shirt sans >manche
    >tuerie [de|d’] masse
    >tueur à gages
    >tueur en série
    >turbine à [gaz|vapeur]
    >usine à gaz
    vacances [de|d’] [automne|printemps|Noël|pâques]
    vacances d’ [été|hiver]
    >vache à lait
................................................................................
    >con comme la lune
    >con comme un balai
    >con comme une valise sans >poignée
    >corvéable à merci
    >court sur pattes
    [cousu+ses] [main]
    [cousu+ses] [de|d’] fil blanc
    [daté+ses] du [1er|1ᵉʳ|1|01|2|02|3|03|4|04|5|05|6|06|7|07|8|08|9|09|10|11|12|13|14|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31] {mois} ?[prochain|passé|dernier|précédent|~^[0-9]{2,5}$]¿
    >digne [de|d’] [confiance|foi]
    >digne [de|d’] ce nom
    >droit comme un i
    >fort en gueule
    >fou [de|d’] rage ?[contenue|retenue]¿
    >élu à la majarité absolue
    >haut comme [trois|3] pommes
................................................................................
    >noir comme une nuit sans lune
    >pure comme [le|du] cristal
    >rapide à la comprenette
    [réglé+ses] comme du papier à musique
    [remis+es] à plat
    >sain [de|d’] [corps|esprit]
    >sain [de|d’] [corps|esprit] et [de|d’] [corps|esprit]
    [secret+s] défense
    >sourd comme un pot
    >sujet à interprétation
    >sujet à interprétations diverses
    >têtu comme une [bourrique|mule]
    >têtu comme un [âne|bourriquot|mulet]
    [tiré+ses] à [quatre|4] épingles
        <<- ~2:0>> *
................................................................................
    *WORD  en  terre  ?cuite¿
        <<- morph(\1, ":N") and not morph(>1, ":A.*:[fe]:[si]") ~2:0>> *

TEST: deux câbles en acier situés de part et d’autre du chariot


__purge_locutions_adjectivales__
    ancienne [formule|génération]
    bas de gamme
    basse consommation
    bon [enfant|marché|teint]
    bon chic ?,¿ bon genre
    [>clé|>clef] en >main
    dernier cri
    fleur bleue
................................................................................
    à [mes|tes|ses|nos|vos|leurs] [regards|yeux]  [<end>|,|)]
        <<- ~1:-2>> *

    à la dernière [minute|seconde]  @¬:A.*:[fe]:[si]
    à la dernière [minute|seconde]  [<end>|,|)]
        <<- ~1:-2>> *

    à la longue             @:¬:N.*:[fe]:[si]
    à la longue             [<end>|,|)]
    à la [dérive|mode]      @:¬:A.*:[fe]:[si]
    à la [dérive|mode]      [<end>|,|)]
    à l’ [avance|époque]    @:¬:A.*:[fe]:[si]
    à l’ [avance|époque]    [<end>|,|)]
    à l’ identique          @:¬:N.*:[si]
    à l’ identique          [<end>|,|)]
        <<- ~1:-2>> *

    à répétition  @¬:A.*:[fe]:[si]
    à répétition  [<end>|,|)]
        <<- ~1:2>> *

    au bout d’ un moment  @:¬:A.*:[me]:[si]
    au bout d’ un moment  [<end>|,|)]
        <<- ~1:-2>> *

    au [début|commencement|départ|quotidien]  @:¬:A.*:[me]:[si]
    au [début|commencement|départ|quotidien]  [<end>|,|)]
        <<- ~1:2>> *

    au pire  @:A¬:N.*:[me]:[si]
    au pire  [<end>|,|)]
        <<- ~1:2>> *

    avec le recul  @:A¬:A.*:[me]:[si]
    avec le recul  [<end>|,|)]
        <<- ~1:3>> *

    [<start>|,|(] ben voyons
        <<- ~2:3>> *

    chaque [seconde|minute|heure|journée|semaine|année|décennie]  @¬:(?:A.*:[fe]:[si]|Oo|[123][sp])
    chaque [seconde|minute|heure|journée|semaine|année|décennie]  [<end>|,|)]
        <<- not morph(<1, ":R") ~1:2>> *
................................................................................
    d’ apparat
        <<- morph(<1, ":N", ":V") ~>> *

    d’ [avance|évidence]  @¬:A.*:[fe]:[si]
    d’ [avance|évidence]  [<end>|,|)]
        <<- ~1:2>> *

    d’ entrée                           @¬:A.*:[fe]:[si]
    d’ entrée                           [<end>|,|)]
        <<- ~1:2>> *

    dans [ce|mon|ton|son|notre|votre|leur] cas                  @:¬:A.*:[me]:[si]
    dans [ce|mon|ton|son|notre|votre|leur] cas                  [<end>|,|)]
    dans [ce|mon|ton|son|notre|votre|leur] cas [de|d’] figure   @:¬:A.*:[me]:[si]
    dans [ce|mon|ton|son|notre|votre|leur] cas [de|d’] figure   [<end>|,|)]
    dans [de|d’] ?[très|trop]¿ nombreux cas                     @:¬:A.*:[me]:[pi]
    dans [de|d’] ?[très|trop]¿ nombreux cas                     [<end>|,|)]
    dans [de|d’] ?[très|trop]¿ nombreux cas [de|d’] figure      @:¬:A.*:[me]:[pi]
    dans [de|d’] ?[très|trop]¿ nombreux cas [de|d’] figure      [<end>|,|)]
    dans la ?[grande|petite]¿ majorité des cas                  @:¬:A.*:[me]:[pi]
    dans la ?[grande|petite]¿ majorité des cas                  [<end>|,|)]
    dans la ?[grande|petite]¿ majorité des cas [de|d’] figure   @:¬:A.*:[me]:[pi]
    dans la ?[grande|petite]¿ majorité des cas [de|d’] figure   [<end>|,|)]
    dans la plupart des cas                                     @:¬:A.*:[me]:[pi]
    dans la plupart des cas                                     [<end>|,|)]
    dans la plupart des cas [de|d’] figure                      @:¬:A.*:[me]:[pi]
    dans la plupart des cas [de|d’] figure                      [<end>|,|)]
    dans maints cas                                             @:¬:A.*:[me]:[pi]
    dans maints cas                                             [<end>|,|)]
    dans maints cas [de|d’] figure                              @:¬:A.*:[me]:[pi]
    dans maints cas [de|d’] figure                              [<end>|,|)]
    dans tous les cas                                           @:¬:A.*:[me]:[pi]
    dans tous les cas                                           [<end>|,|)]
    dans tous les cas [de|d’] figure                            @:¬:A.*:[me]:[pi]
    dans tous les cas [de|d’] figure                            [<end>|,|)]
        <<- ~1:-2>> *

................................................................................
    de nombreux [instants|moments|jours|mois|ans|siècles]  [<end>|,|)]
        <<- ~1:3>> *

    [de|d’]  [façon|manière]  ?non¿  @:A.*:[fe]:[si]  et  ?non¿  @:A.*:[fe]:[si]¬:[GM]
    [de|d’]  [façon|manière]  ?non¿  @:A.*:[fe]:[si]
        <<- ~>> *

    le plus clair [de|d’] [mon|ton|son|notre|votre|leur] temps @:¬:A.*:[me]:[si]|>d[e’]/
    le plus clair [de|d’] [mon|ton|son|notre|votre|leur] temps [<end>|,|)]
        <<- ~1:6>> *

    par précaution  @:¬:A.*:[fe]:[si]
    par précaution  [<end>|,|)]
        <<- ~1:-2>> *

    pour cette raison même
        <<- ~>> *

    pour cette raison @:¬:A.*:[fe]:[si]
    pour cette raison [<end>|,|)]
        <<- ~1:3>> *

    pour de bon  @:¬:[NA].*:m:s
    pour de bon  [<end>|,|)]
        <<- ~1:3>> *

    pour la plupart
        <<- not value(>1, "|de|du|d’|des|") ~>> *

    pour la majeure partie  @:¬:A.*:[fe]:[si]
    pour la majeure partie  [<end>|,|)]
    pour partie             @:¬:A.*:[fe]:[si]
    pour partie             [<end>|,|)]
        <<- ~1:2>> *

    pour un temps  @:¬:[NA].*:[me]:[si]
    pour un temps  [<end>|,|)]
        <<- ~1:3>> *

    >preuve à l’ appui
        <<- not morph(<1, ":D") ~>> *

    sans détour  @:¬:[NA].*:[me]:[si]
    sans détour  [<end>|,|)]
        <<- ~1:2>> *

    sans grande surprise    @:¬:[NA].*:[fe]:[si]
    sans grande surprise    [<end>|,|)]
    sans [réserve|surprise] @:¬:[NA].*:[fe]:[si]
    sans [réserve|surprise] [<end>|,|)]
        <<- ~1:2>> *

    semblait-il
    semble-t-il
        <<- not value(<1, "|ça|cela|ceci|me|m’|te|t’|lui|nous|vous|leur|ne|n’|") ~>> *

    soit dit entre nous
        <<- not value(<1, "|il|ne|n’|") ~>> *

    tête la première
        <<- not morph(<1, ":D") and not morph(>1, ":A.*:[fe]:[si]") ~>> *

    ?pour¿ toute [ma|ta|sa|notre|votre|leur] vie  @:¬:A.*:[fe]:[si]
    ?pour¿ toute [ma|ta|sa|notre|votre|leur] vie  [<end>|,|)]
        <<- ~1:-2>> *

    ?à¿ un [instant|moment]  @¬>où/|:A.*:[me]:[si]
    ?à¿ un [instant|moment]  [<end>|,|)]
    ?pour¿ un seul [instant|moment]  @¬>où/|:A.*:[me]:[si]
    ?pour¿ un seul [instant|moment]  [<end>|,|)]
        <<- not morph(<1, ":R") ~1:-2>> *

    un jour  @:¬:A.*:[me]:[si]
    un jour  [<end>|,|)]
        <<- not morph(<1, ":R") ~1:2>> *

    vu les circonstances  @¬:A.*:[fe]:[pi]
    vu les circonstances  [<end>|,|)]
        <<- ~1:3>> *


__purge_tous_deux_trois__
    >faire [tous|toutes] [deux|trois]
        <<- ~2:0>> *
................................................................................

    >faire tous
        <<- morph(\1, ":[123]p") or (\1 == "fait" and value(<1, "|on|")) ~2>> *


# tous / tout / toute / toutes
__purge_tout_tout_tous_toutes__
    tout                    [le|ce|cet|mon|ton|son]
    toute                   [la|cette|ma|ta|sa]
    [tous|toutes||tout_e_s] [les|des|mes|tes|ses|ces|nos|vos|leurs]
        <<- ~1>> *

    /-on        [tous|toutes]
    /-nous      [tous|toutes]
    /-vous      [tous|toutes]
    /-ils       [tous|toutes]
    /-elles     [tous|toutes]
    /-iel       [tous|toutes|tout_e_s]
    /-iels      [tous|toutes|tout_e_s]
        <<- ~2>> *

    *WORD       [tous|toutes|tout_e_s]
        <<- morph(\1, ":[123]p") ~2>> *

    on  ?[ne|n’]¿  ?[le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]¿  ?[le|la|l’|les|en|y|lui|leur]¿  *WORD  [tous|toutes|tout_e_s]
        <<- morph(\-2, ":[123]s") ~-1>> *



@@@@
@@@@
@@@@
................................................................................
    leurs  @:A.*:[pi]¬:V  @:N.*:[pi]¬(?:3[sp]|Q|G)
        <<- not before(":O[vs]") =>> exclude(\3, ":V")

    [plusieurs|certains|certaines]  @:A.*:[pi]¬:3[sp]  @:N.*:p¬:(?:3[sp]|Q|G)
        <<- =>> exclude(\2, ":V") and exclude(\3, ":V")







__da_locutions_verbales__
    >avoir [foule|lieu|vent]
    >avoir ni queue ?,¿ ni tête
    >aller bon train
    >aller [de|d’] l’ avant
    >armer jusqu’ aux dents
    >arriver à [destination|échéance]
    >arriver à point nommé
................................................................................
    >attendre [de|d’] pied ferme
    >battre à plate couture
    >battre en [brèche|retraite]
    >boire comme un trou
    [>brûler|>bruler] à vif
    >charger à blanc
    >chauffer à blanc
    >classer sans suite
    >compter à rebours
    >condamner à mort
    >couler à ?grands¿ flots
    >cour d’ assises
    >demander [assistance|audience|conseil|pardon]
    >dire [adieu|merde]
    [>donner|>redonner] [naissance|sens|suite|vie]
    [>donner|>redonner] quartier libre
    >élire domicile
    >étouffer dans l’ œuf
    >faire [allusion|assaut|attention|barrage|chaud|confiance|connaissance|cours|compliqué|copain-copain|date|débat|défaut|demi-tour|écran|envie|erreur|état|exception|figure|foi|fortune|froid|front|grève|halte|honte|illusion|mention|mouche|nation|naufrage|office|part|peur|polémique|plaisir|preuve|rage|recette|rempart|scandale|sens|sensation|signe|surface|usage|volte-face]
    >faire amende honorable
    >faire bande à part
    >faire bon accueil
    >faire bonne figure
    >faire chou blanc
    >faire copain copain
    >faire [de|d’] [mon|ton|son|notre|votre|leur] mieux
................................................................................
    >gagner d’ avance
    >garder contenance
    [>gonfler|>regonfler] à bloc
    >jeter à terre
    >jouer franc jeu
    >jouer cartes sur table
    >juger sur >pièce
    >lâcher [prise|pied]
    >laisser pour compte
    >laisser carte blanche
    >marcher à rebours
    >mener par le bout du nez
    [>mettre|>remettre] à [bas|dos|exécution|flot|jour|niveau|nu|plat|profit|table|terre]
    [>mettre|>remettre] à l’ [écart|épreuve]
    [>mettre|>remettre] au [point|pas]
................................................................................
    >naviguer à vue
    >obtenir gain [de|d’] cause
    >parler affaires
    >partir en vrille
    >passer à tabac
    >passer du coq à l’ âne
    >percer à jour
    >perdre [connaissance|conscience|patience|pied|raison]
    >perdre d’ avance
    >piquer au vif
    >plier >bagage
    >porter [assistance|atteinte|bonheur|caution|chance|malheur|plainte|préjudice|secours]
    >poser problème
    >porter plainte
    >prendre ?[ça|cela|ceci]¿ à la légère
................................................................................
    >vendre à perte
    >venir à bout
    [>venir|>revenir] je [ne|n’] sais ?pas¿ ?trop¿ d’ où
    [>venir|>revenir] on [ne|n’] sait ?pas¿ ?trop¿ d’ où
        <<- ~2:0>> ␣
        <<- =>> define(\2, ":LV")


__da_participe_passé__
    >avoir  $:Q
        <<- not value(\1, "|avoirs|") and not value(<1, "|de|d’|un|") =>> rewrite(\2, ":A", "")

    >être   $:Q
        <<- not value(\1, "|êtres|") and not value(<1, "|de|d’|un|l’|") =>> rewrite(\2, ":A", "")


__purge_vite__
    vite
        <<- not (morph(<1, ":V0a") and value(>1, "|fait|")) ~>> *


__sgpl_faire_plaisir__
    >faire plaisirs
        <<- /sgpl/ --1>> plaisir        && Faire plaisir : dans cette locution, “plaisir” doit être au singulier.
        <<- ~-1>> *

TEST: Ça me fait {{plaisirs}}.
................................................................................
TEST: on ne peut convoquer un citoyen sur la base des textes constitutionnels, devenus dans ce cas incriminants.
TEST: ce sont des gens bien
TEST: beaucoup d’entre nous se souviennent de ce fameux jour
TEST: Hormis les enseignements fondamentaux transmis à la petite école, la suite n’est qu’une infinie perte de temps où l’on bourre l’esprit des élèves de connaissances parfaitement inutiles, dont la plupart d’entre nous ne gardent aucun souvenir sitôt les portes du lycée franchies.
TEST: il ne désirait ne plus le faire…
TEST: Ma chambre est trois fois plus grande que la tienne.
TEST: Il est trois ans plus jeune que moi.

TEST: On peut sans doute laisser sans grand problème toutes les baskets à la mode être produites à l’autre bout du monde
TEST: Faire cours avec un bâillon m’indique assez bien l’importance qu’on accorde à ce que je peux bien vouloir dire en classe.
TEST: le rejet de l’État-providence est plus élevé dans les régions où les immigrants se trouvent en plus grand nombre
TEST: les délices nouvelles


@@@@
@@@@
@@@@
@@@@
@@@@END_GRAPH                                                                                      _
................................................................................
    >charger a blanc
    >chauffer a blanc
    >chuter a terre
    >être a bloc
    >fermer a [>clé|>clef]
    [>gonfler|>regonfler] a bloc
    >jeter a terre
    >mener a bien
    [>mettre|>remettre] a [bas|>flot|>jour|>niveau|>nu|>plat|>profit|>table|>terre]
    [>mettre|>remettre] a l’ [écart|épreuve]
    >naviguer a [vu+ses]
    >parer a toute éventualité
    >passer a tabac
    >percer a jour
    >prendre a la légère
................................................................................
    >préluder a
    >remédier a
    >ressortir a
    >subvenir a
    >équivaloir a
    ## locutions
    >appartenir en propre a
    >avoir [accès|peine|tendance|trait|vocation] a
    >faire [allusion|attention|barrage|confiance|défaut|écran|envie|exception|part|peur|plaisir|signe] a
    >laisser libre cours a
    >mettre fin a
    >donner [sens|suite] a
    >prêter attention a
    enclin a
    en être [réduit+ses] a
................................................................................
TEST: Offrez-vous {{a}} Dieu et taisez-vous.
TEST: dans tous les cas de figure il pense souvent {{a}} sa fille.
TEST: Qu’y a-t-il {{a}} cette place qui mérite que je prenne tant de risques.
TEST: N’y a-t-il pas {{a}} la table du saucisson ?
TEST: cet homme mange bien {{a}} la maison ?
TEST: tombé {{a}} terre, il crut ne jamais pouvoir se relever.
TEST: il passe sans cesse du coq {{a}} l’âne
TEST: Mener {{a}} bien cette tâche.
TEST: je ne veux pas prendre part {{a}} ce désastre
TEST: je me tiens {{a}} distance de ces abrutis
TEST: faisons barrage {{a}} la démagogie.
TEST: Ce que je mange a un goût de surgelé.
TEST: celui qui conduisait a décidé de faire un tour du quartier avec la voiture.
TEST: Un rendez-vous a bousculé ses plans
TEST: Maria Butina a également rencontré des républicains tels que Donald Trump
TEST: l’épée que tu tiens a une longue histoire sanglante.
TEST: l’appel auquel j’ai donné suite a eu des conséquences désastreuses.
TEST: le problème avec lequel j’ai du mal a été résolu avec brio par mon rival
................................................................................
    en >bonnet >difforme
    en >bon et [du+ses] >forme
        <<- /conf/ ->> en bonne et due forme                            && Locution “en bonne et due forme” (invariable).|https://fr.wiktionary.org/wiki/en_bonne_et_due_forme

TEST: une raclée {{en bonnes et dues formes}}
TEST: remplir son formulaire en bonne et due forme, c’est le minimum pour espérer un retour positif.






















# en butte à / but / bute
__conf_en_butte_à_au__
    en [>but|>bute]  [à|au|aux]
        <<- /conf/ -2>> butte                                           && Confusion. Écrivez « en butte \3 ».

TEST: Et moi toujours en {{but}} à de nouveaux dangers
................................................................................
        <<- /conf/ -1>> c’                              && Confusion probable. Si vous voulez dire “ceci \2”, utilisez “c’”.

TEST: {{s’}}est vraiment merdique.
TEST: s’est par exemple illustré au combat.
TEST: il ne s’est pas juste montré
TEST: il s’était des journées entières consacré à son jeu favori.


__conf_c_en_être__
    !! c’ en [est|était|fut|sera|serait] [fini|fait|terminé|assez|trop] ¡¡
    [sans|san|sens|>sang|cens]  [et|est|hé|eh|ai+s|aie+s|ait]                                                    [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
    [sans|san|sens|>sang|cens]  [>étai|était|>été|étaient]                                                       [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
    [sans|san|sens|>sang|cens]  [fus|fut|fût|fue+s]                                                              [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
    [sans|san|sens|>sang|cens]  [sera+s|serra+s|serai+s|serait|serez|seraient|serrais|serrait|serrez|serraient]  [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
        <<- /conf/ morph(<1, "<start>|>[,(]") -1>> c’en                                            && Locution “c’en est fini/fait/assez/trop…”.

    [c’|s’|c|s] [en|>an]  [et|est|hé|eh|ai+s|aie+s|ait]                                                    [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
    [c’|s’|c|s] [en|>an]  [>étai|était|>été|étaient]                                                       [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
    [c’|s’|c|s] [en|>an]  [fus|fut|fût|fue+s]                                                              [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
    [c’|s’|c|s] [en|>an]  [sera+s|serra+s|serai+s|serait|serez|seraient|serrais|serrait|serrez|serraient]  [fini+ses|finit|finît|fait+s|fais|>fée|fé|>terminer]
        <<- /conf/ morph(<1, "<start>|>[,(]") and not (value(\1, "|c’|") and value(\2, "|en|"))
        -1:2>> c’en                                                                                 && Locution “c’en est fini/fait/assez/trop…”.

    s’ en [es|est|sera|seras|étais|était|serai|serais|serait|fut|fût] @:A¬:[GVW]
        <<- /conf/ morph(<1, ":C|<start>|>[,(]")
        -1:2>> c’en                                         && Confusion probable : “\2” est un adjectif. « C’en est… » équivaut à « ça, c’est… ».|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de

    s’ en [es|est|sera|seras|étais|était|serai|serais|serait|fut|fût] [assez|trop] [<end>|,|de|d’|du|des]
        <<- /conf/ -1:2>> c’en                              && Confusion probable. « C’en est… » équivaut à « ça, c’est… ».|https://fr.wiktionary.org/wiki/c%E2%80%99en_est_fait_de

TEST: tout ça, {{s’en}} est fini.
TEST: {{s’en}} est assez de ces foutaises.
TEST: c’est tellement idiot, {{s’en}} est dérisoire…
TEST: {{s’en}} est terminé d’elles
TEST: {{s’en}} était fini d’eux
TEST: {{sang}} fut fini de nous
TEST: {{sans}} sera fini de vous
TEST: {{s ans}} serrait finit de moi
TEST: {{s’en}} est fée d’elles
TEST: {{s’en}} était fait d’eux
TEST: {{sang}} fut fait de nous
TEST: {{sans}} serra faits de vous
TEST: {{s ans}} serrait fée de moi
TEST: c’en est fini d’eux, ils sont comme morts
TEST: c’en est assez, ça suffit


# ce / se
__conf_ce_se_verbe__
    [<start>|,|(] se [ne|n’] [>être|>devoir|>pouvoir]
    [<start>|,|(] se [sera|serait|seraient|sont|seront|fut|fût|furent|fussent] $:D
    [<start>|,|(] se >devoir être
    [<start>|,|(] se >pouvoir être
................................................................................
TEST: il faut rendre {{comte}} de la sitation désastreuse dans laquelle nous sommes tombés.
TEST: il faut tenir {{comtes}} des aléas de la météo.
TEST: nous allons demander des {{contes}} à ces gens-là.
TEST: qui fera les {{comtes}} ?
TEST: faudra rendre bon {{conte}} de vos actes


# compter / conter / comté
__conf_compter_conter_comté__
    [s’|m’|t’]          en  >laisser  [compter|compté+ses|comptais|>comté]
    nous nous           en  >laisser  [compter|compté+ses|comptais|>comté]
    vous vous           en  >laisser  [compter|compté+ses|comptais|>comté]
    ne pas [nous|vous]  en  laisser   [compter|compté+ses|comptais|>comté]
        <<- /conf/ --1>> conter         && Confusion. Locution “s’en laisser conter”, c’est-à-dire se laisser raconter des histoires.|https://fr.wiktionary.org/wiki/ne_pas_s%E2%80%99en_laisser_conter

................................................................................
    >faire $:D [empreint+s]
        <<- /conf/ --1>> emprunt|emprunts           && Confusion. Lorsque vous empruntez quelque chose, vous faites un emprunt.|https://fr.wiktionary.org/wiki/emprunt

TEST: Elle a fait un {{prêt}} à la banque.
TEST: J’ai fait un {{empreint}} à la bibliothèque.


# entretient / maintient / soutient
__conf_entretient_maintient_soutient__
    $:M  [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ -2>> \2t                                                                 && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.

    [un|le|ce|cet]                     *WORD           [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ morph(<1, "<start>|:C||>,/") and morph(\2, ":N", ":[AG]")
        -3>> \3t                                                                            && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.

    [une|la|cette|ma|ta|sa]            *WORD           [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ morph(<1, "<start>|:C||>,/") and morph(\2, ":N.*:[fe]")
        -3>> \3t                                                                            && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.
................................................................................
    [l’|mon|ton|son|notre|votre|leur]  *WORD  *WORD    [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ morph(<1, "<start>|:C||>,/") and ( (morph(\2, ":N", "*") and morph(\3, ":A")) or (morph(\2, ":[NA]") and morph(\3, ":N", ":A.*:[me]:[si]")) )
        -4>> \4t                                                                            && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.

    qui [entretien|maintien|soutien]  [<end>|,|@:[DR]]
        <<- /conf/ -2>> \2t                                                                 && Confusion probable : “\-2” est un nom commun. Pour la forme verbale (3ᵉ pers. au présent), écrivez “\-2t”.

TEST: Sophie {{soutien}} à fond son épouse                      ->> soutient
TEST: la grande {{maintien}} sa version.                        ->> maintient
TEST: cette femme {{entretien}} sa santé                        ->> entretient
TEST: ce que le patron {{soutien}}                              ->> soutient
TEST: leur patronne {{soutien}} la réforme                      ->> soutient
TEST: le petit homme {{maintien}} fermement son pantalon        ->> maintient
TEST: une grande déclaration {{entretien}}                      ->> entretient
TEST: notre exubérante existence {{maintien}} notre santé       ->> maintient
TEST: notre vie exubérante {{maintien}} notre santé             ->> maintient
TEST: c’est un homme qui {{entretien}} sa forme                 ->> entretient


# entretien / maintien / soutien
__conf_entretien_maintien_soutien!6__
    [<start>|,|(] soutient [à|a|au|aux]
        <<- /conf/ -2>> soutien                                                             && Confusion probable : “\2” est une forme verbale (3ᵉ pers. au présent). Le nom commun s’écrit “soutien”.

TEST: {{soutient}} aux anciens combattants                      ->> soutien
TEST: le petit entretien le paralysait


# envi / envie
__conf_envie_envi__
    à l’ envie
        <<- /conf/ not morph(<1, ">(?:abandonner|céder|résister)/") and not value(>1, "|de|d’|")
................................................................................
    [fond|fonts] [de|d’] [commerce|garantie|roulement|pension|placement|retraite|roulement|solidarité]
    [fond|fonts] d’ [aide|investissement|indemnisation]
        <<- /conf/ -1>> fonds                   && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

    fonds baptismaux
        <<- /conf/ -1>> fonts                   && Confusion. Écrivez “fonts”, qui vient du latin “fons” et signifie « fontaine, source ».

    [un|le|du|ce] [fonds|fonts] [de|d’] ?[la|l’]¿ [assiette|bouteille|cuve|casserolle|marmite|poêle]
    [un|le|du|ce] [fonds|fonts] du [seau|tupperware|wok]
        <<- /conf/ -2>> fond                    && Confusion : fonds (ce qui constitue une richesse) ≠ fond (partie la plus basse/profonde).

TEST: faire une levée de {{fond}}.
TEST: jouer {{à fond perdu}}
TEST: elle a vendu son {{fond}} de commerce
TEST: il a reçu de l’argent d’un {{fond}} d’investissement
TEST: les {{fonds}} baptismaux.
TEST: le {{fonds}} de la cuve


# glaciaire / glacière
__conf_glacière_glaciaire__
    >glaciaire
        <<- /conf/ morph(<1, ":D.*:(?:f|e:p)")
        ->> =\1.replace("iai", "iè")                && Confusion : “glaciaire” est un adjectif. Le contenant préservant le froid s’écrit “glacière”.
................................................................................
        <<- /conf/ -2>> gent                        && Confusion. « Gente » est un adjectif vieilli. Utiliser « gent » pour désigner un groupe de personnes.

TEST: la {{gente}} masculine est grossière et l’a toujours été.


# golf / golfe
__conf_golf_golfe2__
    >jouer      au golfe
    >pratiquer  le golfe
        <<- /conf/ -3>> golf                        && Confusion. Un golfe est une zone maritime qui avance dans les terres. Pour le sport, écrivez “golf”.

TEST: il joue au {{golfe}} tous les jours.
TEST: Jouer au golf.


# goutte / goûte
__conf_goûte_goutte__
    [goûte|goûtes|goute|goutes] [de|d’] [alcool|acide|amour|bière|eau|folie|huile|javel|lait|liquide|mercure|miel|peinture|pluie|rhum|rosée|salive|sang|semence|sperme|sueur|urine|vin|vinaigre|whisky]
        <<- /conf/ -1>> =\1.replace("û", "u").replace("t", "tt").replace("Û", "U").replace("T", "TT")
        && Confusion : “goûter” signifie utiliser le sens du goût. Pour une petite quantité de liquide, écrivez “goutte”.|https://fr.wiktionary.org/wiki/goutte

    >passer entre les [goûte+s|goute+s]
        <<- /conf/ --1>> gouttes                    && Confusion. Une particule de fluide s’écrit “goutte”.|https://fr.wiktionary.org/wiki/goutte

    [à|a] [grosse+s] [goute+s|goûte+s]
        <<- /conf/ ->> à grosses gouttes            && Confusion. Locution adverbiale “à grosses gouttes”.
................................................................................
# lâcher la proie pour l’ombre
__conf_lâcher_la_proie_pour_l_ombre__
    >chasser la proie pour l’ ombre
        <<- /conf/ -1>> =\1.lower().replace("cha", "lâ")        && Expression impropre. On écrit « lâcher la proie pour l’ombre ».|https://fr.wiktionary.org/wiki/l%C3%A2cher_la_proie_pour_l%E2%80%99ombre

TEST: il ne faut pas {{chasser}} la proie pour l’ombre.


# lest / leste
__conf_lâcher_du_lest__
    [>jeter|>lâcher|>relâcher] [du|le|ce] leste
    [>gramme|>kilo|>tonne] [de|d’] leste
        <<- /conf/ --1>> lest                                   && Confusion. L’adjectif “leste” signifie “adroit, agile, prompt…”. Pour l’excédent de poids, écrivez ”lest”.|https://fr.wiktionary.org/wiki/lest

TEST: Faut lâcher du {{leste}}


# lieux / lieues / lieus
__conf_lieux_lieues_lieus__
    [>assurance|>état|>visite|>maître|>maitre|>seigneur|>magie|>chef|>responsable|respect|entretien|propreté|>propriétaire|tranquillité|dans|vers|>plan] des [lieues|lieus]
        <<- /conf/ --1>> lieux                                  && Confusion probable. Pour désigner un endroit, écrivez “lieux”.|https://fr.wiktionary.org/wiki/lieu

    [>lieue|lieus] [>insolite|>accessible|>accueillant|>inaccessible|>inexploré|>lointain|>louche|>proche|>touristique|saint+s|>connu|>inconnu|>mythique|>public|prestigieux|>romantique|>stratégique|>historique|où|>humide|sec+s]
................................................................................
TEST: dans la {{sale}} des professeurs
TEST: une {{sale}} d’arcade
TEST: ils sont tellement {{salles}}
TEST: pour le service en salle


# sans / sens
__conf_sang_sans_sens__
    [sans|san] dessus dessous
    sans-dessus-dessous
        <<- /conf/ ->> sens dessus dessous                          && Confusion. Locution adverbiale : « sens dessus dessous ».|https://fr.wiktionary.org/wiki/tache

    [le|du|quel|un] ?[certain|faible|grand]¿ [sans|san] [de|d’] la mesure
        <<- /conf/ --4>> sens                                       && Confusion. Le sens de la mesure.

    [sans|san] [bleu|royal|mêlé]
    [sans|san] humain
    [sans|san] de la victime
    [sans|san] des victimes
    [sans|san] >avoir >couler
    [sans|san] >couler
    [sans|san] qui >couler
    [sans|san] qui >avoir >couler
        <<- /conf/ morph(<1, ":D.*:[me]") -1>> sang                 && Confusion probable. Pour évoquer le fluide sanguin, écrivez “sang”.|https://fr.wiktionary.org/wiki/sang

    [couvert+ses|recouvert+ses] [de|d’] [sans|san|sens]
    >avoir [ça|cela|ceci] dans le [sans|san|sens]
    >buveur [de|d’] [sans|san|sens]
    >flot [de|d’] [sans|san|sens]
    la voix du [sans|san|sens]
    >pisser [le|du] [sans|sens]
    >soif [de|d’] [sans|san]
    c >être [mon|ton|son|notre|votre|leur|leurs] [sans|san]
        <<- /conf/ --1>> sang                                       && Confusion probable. Pour évoquer le fluide sanguin, écrivez “sang”.|https://fr.wiktionary.org/wiki/sang

TEST: Tout est {{sans dessus dessous}}.
TEST: le {{sans}} a coulé.
TEST: le {{san}} qui coulera encore sera sur vos mains
TEST: elle a ça dans le {{sans}}
TEST: elle pissait le {{sans}}
TEST: elle a su malgré garder un certain {{sans}} de la mesure
TEST: avoir le {{sans}} de la mesure, c’est primordial
TEST: ce témoignage va dans le sens de la victime.


# aller sans dire
__conf_aller_sans_dire__
    [il|ça|cela|ceci] >aller s’ en dire
        <<- /conf/ -3:4>> sans                                      && Confusion. Locution “aller sans dire”.|https://fr.wiktionary.org/wiki/cela_va_sans_dire#fr

................................................................................
        -4>> =suggSing(\4)                                                                          && Accord de nombre erroné avec “\3” : “\4” devrait être au singulier.

TEST: L’{{amande}} {{amer}}
TEST: l’{{amicale}} {{animal}}
TEST: l’amour {{immortels}}
TEST: du chien et de l’{{excellente}} {{collier}} qu’il avait autour du cou.
TEST: du chien et de l’étonnant {{colliers}} qu’il avait autour du cou.
TEST: elle prendra l’{{avions}} dès que possible


__gn_le_1m__
    ,  le  *WORD
        <<- /gn/ morph(\3, ":[NA].*:f", ":(?:e|m|P|G|W|[123][sp]|Y)") -2>> =suggLesLa(\3)           && Accord de genre erroné : « \3 » est féminin.
        <<- /gn/ __also__ and hasMasForm(\3) -3>> =suggMasSing(\3, True)                            && Accord de genre erroné : « \2 » est un déterminant masculin.
        <<- /gn/ __else__ and morph(\3, ":[NA].*:p", ":[siGW]") -3>> =suggMasSing(\3)               && Accord de nombre erroné : « \3 » devrait être au singulier.
................................................................................
TEST: {{Le}} personne répond.
TEST: {{le}} {{quotients}}
TEST: Comme avec l’Hyperloop, le bus chinois conçu pour passer au-dessus des voitures


__gn_le_2m__
    le  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou]  le  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\4, \4)
        -4>> =suggMasSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: le test très {{cons}} qu’on a passé hier.
TEST: c’était le chien {{perdue}} des voisins.
................................................................................
TEST: {{La}} tableau.                                         ->> Le
TEST: dans la {{parties}}                                     ->> partie
TEST: je connais {{la}} {{parti}}
TEST: la {{vilénies}} des mensonges                           ->> vilénie
TEST: de {{la}} vin                                           ->> le
TEST: {{la}} {{véhicule}}
TEST: {{La}} {{pris}}
TEST: {{Le}} {{commandeuse}}
TEST: {{Le}} commanderesse
TEST: {{le}} doctoresse est là.
TEST: la force de la {{formes}} parfaite
TEST: à la Richard Nixon Foundation
TEST: à ne plus se laisser faire la fois d’après
TEST: il pense à la fois où nous avons eu cet accident idiot.


__gn_la_2m__
    la  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  la  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \2 \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: La plus grande {{cinglé}}.
TEST: il imaginait de la pluie {{noir}} tombant sur une terre dévastée.
................................................................................
TEST: J’en ai assez de {{leur}} {{délires}}
TEST: {{Leur}} {{perceptions}} des choses m’exaspère.
TEST: dans {{leur}} {{usines}}


__gn_leur_2m__
    leur  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                       && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, False)                  && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.
        <<- /gn/ __also__ and morph(\2, ":[NA].*:i") -1>> leurs                             && Accord de nombre erroné avec « \2 \3 ».

    [et|ou|de|d’]  leur  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, False)                                                       && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, False)                  && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.
        <<- /gn/ __also__ and morph(\3, ":[NA].*:i") -2>> leurs                             && Accord de nombre erroné avec « \3 \4 ».
................................................................................
TEST: mille et une merveilles
TEST: Quatorze heures découpées en quatre parties, une sortant en salles chaque semaine


## un / une
__gn_un_2m__
    un  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                                       && Accord de nombre erroné avec « \2 » : « \3 » devrait être au singulier.

    [et|ou|d’]  un  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: un exercice pas très {{utiles}}.                        ->> utile
TEST: un homme {{grands}}                                     ->> grand
................................................................................
TEST: que sais-tu d’un homme {{grande}} comme un arbre
TEST: je me souviens d’un homme {{arrogants}}
TEST: C’est pas les quelques vues sur Linux qui vont rattraper un scénario {{bancale}}.


__gn_une_2m__
    une  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                                 && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ \2 != "fois" and morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                                       && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|d’]  une  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                                 && Accord de genre erroné : « \2 \3 » est féminin, « \4 » est masculin.
        <<- /gn/ \3 != "fois" and morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                                       && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: Une femme {{laconiques}}.                               ->> laconique
TEST: Une grande {{homme}}.
................................................................................
TEST: téléphone {{au}} {{boulangère}}
TEST: au chien, au chat, au poulet
TEST: à partir de pièces détachées, au départ entièrement venues de l’étranger puis en partie fabriquées sur place


__gn_det_mas_sing_2m__
    [ce|cet|quel|au|ledit|dudit|audit|aucun|nul]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [ce|cet|quel|au|ledit|dudit|audit|aucun|nul]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: cet outil {{terribles}} qu’il a dans les mains
TEST: J’aimerais connaître de quel parti {{gauchistes}} on parle.
................................................................................
TEST: mon {{excellentes}} mémoire
TEST: {{ton}} {{belle}} mémoire
TEST: {{mon}} {{chienne}}


__gn_mon_ton_son_2m__
    [mon|ton|son]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:m", ":(?:B|G|e|V0|f)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasSing(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ">[aâeéèêiîoôuûyœæ].*:[NA].*:f", ":(?:B|G|e|V0|m)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggMasSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [mon|ton|son]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:m", ":(?:B|G|e|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasSing(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ">[aâeéèêiîoôuûyœæ].*:[NA].*:f", ":(?:B|G|e|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggMasSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

................................................................................
TEST: {{ma}} amour                                            ->> mon
TEST: ma {{carlingues}}
TEST: Après cet épisode, la SA a joué un rôle marginal dans l’histoire du Troisième Reich


__gn_det_fem_sing_2m__
    [ma|ta|sa|cette|quelle|ladite]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NAQ].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NAQ].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemSing(\3, True)                                                         && Accord de genre erroné : « \1 \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NAQ].*:[si]", ":G") and morph(\3, ":[NAQ].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggFemSing(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [ma|ta|sa|cette|quelle|ladite]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NAQ]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NAQ].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NAQ].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemSing(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NAQ].*:[si]", ":G") and morph(\4, ":[NAQ].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggFemSing(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

TEST: quelle belle {{étourdi}}, cette gamine
TEST: j’en ai assez de cette ville {{stressées}} en permanence.
................................................................................
        -1>> quelques                                                                       && Il manque un “s” à « quelque » ou « \2 » doit être au singulier.

TEST: {{Quelque}} amis


__gn_det_epi_sing_2m__
    [chaque|quelque|notre|votre]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, False)                                                       && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, False)                  && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[si]", ":G") and morph(\3, ":[NA].*:p", ":[GWsi]") and not apposition(\2, \3)
        -3>> =suggSing(\3)                                                                  && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au singulier.

    [et|ou|de|d’]  [chaque|quelque|notre|votre]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, False)                                                       && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, False)                  && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[si]", ":G") and morph(\4, ":[NA].*:p", ":[GWsi]") and not apposition(\3, \4)
        -4>> =suggSing(\4)                                                                  && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au singulier.

................................................................................
TEST: les {{abricot}}                                         ->> abricots
TEST: tels que les décrit Macron
TEST: J’en ramasse quelques-unes, puis les glisse dans l’une de mes poches, ça me fera un souvenir.


__gn_les_2m__
    les  *WORD  *WORD
        <<- /gn/ morph(\1, ":D") and not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou]  les  *WORD  *WORD
        <<- /gn/ morph(\2, ":D") and not morph(<1, ":[NA]") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, True)                                                                && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, True)                           && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -4>> =suggPlur(\4)                                                                          && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

................................................................................
TEST: aux {{personne}}
TEST: j’entends ces {{même}} âneries tous les jours
TEST: clafoutis aux {{abricot}}


__gn_det_epi_plur_2m__
    [ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|aux|moult]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|au|aux|") and not morph(\3, ">seul/") >>>
        <<- /gn/ ((morph(\2, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\3, ":[NA].*:f", "*")) or (morph(\2, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\3, ":[NA].*:m", "*")))
            and not apposition(\2, \3)
        -3>> =switchGender(\3, True)                                                                && Accord de genre erroné entre « \2 » et « \3 ».
        <<- /gn/ __also__ and hasFemForm(\2) -2>> =switchGender(\2, True)                           && Accord de genre erroné avec « \3 ».
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggPlur(\3)                                                                          && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|aux|moult]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ ((morph(\3, ":[NA].*:m", ":(?:B|e|G|V0|f)") and morph(\4, ":[NA].*:f", "*")) or (morph(\3, ":[NA].*:f", ":(?:B|e|G|V0|m)") and morph(\4, ":[NA].*:m", "*")))
            and not apposition(\3, \4)
        -4>> =switchGender(\4, True)                                                                && Accord de genre erroné entre « \3 » et « \4 ».
        <<- /gn/ __also__ and hasFemForm(\3) -3>> =switchGender(\3, True)                           && Accord de genre erroné avec « \4 ».
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (value(\1, "|de|d’|") and value(<1, "|un|une|"))
        -4>> =suggPlur(\4)                                                                          && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: ces {{beaux}} {{institutions}}
TEST: nos petites {{fille}}
TEST: de plusieurs {{grands}} {{avocates}}
TEST: de vos défauts {{terrible}}, je connais presque tout.
TEST: Les éléments caractéristiques liés à ses valeurs historique et architecturale
................................................................................


__gn_det_plur_3m__
    [ces|mes|tes|ses|nos|vos|quels|quelles|aux]             *WORD  *WORD  *WORD
    [plusieurs|quelques|certains|certaines|moult]           *WORD  *WORD  *WORD
    [lesdits|lesdites|desdits|desdites|auxdits|auxdites]    *WORD  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:[pi]", ":(?:[123][sp]|G)")
            and morph(\4, ":[NA].*:s", "*") and \4.islower() and not before("(?i)\\bune? de +$") and not morph(\4, ">seul/")
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

    leurs  *WORD  *WORD  *WORD
        <<- /gn/ morph(\2, ":[NA].*:[pi]", "[123][sp]") and morph(\3, ":[NA].*:[pi]", ":(?:[123][sp]|G)")
            and morph(\4, ":[NA].*:s", "*") and not before("(?i)\\bune? de +$") and not morph(\4, ">seul/")
        -4>> =suggPlur(\4)                                                                  && Accord de nombre erroné avec « \1 \2 \3 » : « \4 » devrait être au pluriel.

TEST: ces petites sottes {{déjantée}}
TEST: Leurs grands plans {{dépassé}} par les évènements
TEST: Prendre goût aux heures passées seul à marcher


................................................................................

TEST: {{Quels}} que soient ces idiotes                        ->> Quelles
TEST: {{Quels}} qu’en soient les raisons                      ->> Quelles


__gn_det_mas_plur_2m__
    [certains|quels|lesdits|desdits|auxdits]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[me]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:f", "*") and not apposition(\2, \3)
        -3>> =suggMasPlur(\3, True)                                                         && Accord de genre erroné : « \2 » est masculin, « \3 » est féminin.
        <<- /gn/ morph(\2, ":[NA].*:[pi]", ":G") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggMasPlur(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [certains|quels|lesdits|desdits|auxdits]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[me]", ":(?:B|G|V0|f)") and morph(\4, ":[NA].*:f", "*") and not apposition(\3, \4)
        -4>> =suggMasPlur(\4, True)                                                         && Accord de genre erroné : « \3 » est masculin, « \4 » est féminin.
        <<- /gn/ morph(\3, ":[NA].*:[pi]", ":G") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (value(\1, "|de|d’|") and value(<1, "|un|une|"))
        -4>> =suggMasPlur(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: certains claviers {{dégueulasse}}
TEST: certains hommes {{petite}}
TEST: auxdits hommes {{connu}}
TEST: quels hommes {{grandes}}
TEST: elle se rappelle de quels rapports {{désastreuses}} il s’agit.
TEST: de quels grands {{fou}} s’agit-il ?
TEST: chez certains la revue Limite provoque des crises d’hystérie.


__gn_det_fem_plur_2m__
    [certaines|quelles|lesdites|desdites|auxdites]  *WORD  *WORD
        <<- /gn/ not value(<1, "|et|ou|de|d’|") and not morph(\3, ">seul/") >>>
        <<- /gn/ morph(\2, ":[NA].*:[fe]", ":(?:B|G|V0)") and morph(\3, ":[NA].*:m", "*") and not apposition(\2, \3)
        -3>> =suggFemPlur(\3, True)                                                         && Accord de genre erroné : « \2 » est féminin, « \3 » est masculin.
        <<- /gn/ morph(\2, ":[NA].*:[pi]") and morph(\3, ":[NA].*:s", "*") and not apposition(\2, \3) and not (value(>1, "|et|,|") and morph(>2, ":A"))
        -3>> =suggFemPlur(\3)                                                               && Accord de nombre erroné avec « \1 \2 » : « \3 » devrait être au pluriel.

    [et|ou|de|d’]  [certaines|quelles|lesdites|desdites|auxdites]  *WORD  *WORD
        <<- /gn/ not morph(<1, ":[NA]|>(?:et|ou)/") and not morph(\4, ">seul/") >>>
        <<- /gn/ morph(\3, ":[NA].*:[fe]", ":(?:B|G|V0|m)") and morph(\4, ":[NA].*:m", "*") and not apposition(\3, \4)
        -4>> =suggFemPlur(\4, True)                                                         && Accord de genre erroné : « \3 » est féminin, « \4 » est masculin.
        <<- /gn/ morph(\3, ":[NA].*:[pi]") and morph(\4, ":[NA].*:s", "*") and not apposition(\3, \4) and not (value(>1, "|et|,|") and morph(>2, ":A"))
            and not (value(\1, "|de|d’|") and value(<1, "|un|une|"))
        -4>> =suggFemPlur(\4)                                                               && Accord de nombre erroné avec « \2 \3 » : « \4 » devrait être au pluriel.

TEST: certaines idioties {{stupide}}
TEST: quelles grandes {{idiots}}
TEST: je ne sais guère de quelles âneries {{proférés}} on parle.
TEST: quelles étonnantes {{petits}}
TEST: ici ou auxdites lointaines {{contrée}}
................................................................................
TEST: Il doit pouvoir {{détectez}} ces erreurs.                                         ->> détecter
TEST: elle rêve de pouvoir les {{brisés}} à mains nues                                  ->> briser
TEST: un homme de pouvoir débordé par ses obligations.
TEST: faire seulement ce que tu pouvais ne satisfaisait pas tes patrons.


__infi_savoir!5__
    >savoir  ?[que|qu’|quoi]¿  ~..(?:ée?s?|ez)$
    >savoir  ?[que|qu’|quoi]¿  ~..(?:ée?s?|ez)$
    >savoir  ?[que|qu’|quoi]¿  ~..(?:ée?s?|ez)$
    >savoir  ?[que|qu’|quoi]¿  ~..(?:ée?s?|ez)$
        <<- /infi/ not value(\1, "|savoirs|") and not value(<1, "|me|m’|te|t’|se|s’|nous|vous|le|la|l’|les|") and morph(\-1, ":V", ":M") and not (morph(\1, ":N") and morph(<1, ":D"))
        --1>> =suggVerbInfi(\-1)                                                                    && S’il s’agit d’une action que le sujet sait accomplir, le verbe devrait être à l’infinitif.

    >savoir  ?[ne|n’]¿  [le|la|l’|les|en|me|m’|te|t’|se|s’|nous|vous|lui|leur|y]  ~..(?:ée?s?|ez)$
    >savoir  ?[ne|n’]¿  [me|m’|te|t’|se|s’|nous|vous]   [le|la|l’|les|en|y]       ~..(?:ée?s?|ez)$
    >savoir  ?[ne|n’]¿  [le|la|l’|les]                  [lui|leur|en|y]           ~..(?:ée?s?|ez)$
    >savoir  ?[ne|n’]¿  [lui|leur|y]                    en                        ~..(?:ée?s?|ez)$
................................................................................
        <<- /infi/ morph(\-1, ":V", ":M")
        --1>> =suggVerbInfi(\-1)                                                                    && Après le verbe “\2”, ce verbe devrait être à l’infinitif.

TEST: Il faut savoir {{arrêté}} les frais.                                              ->> arrêter
TEST: le moment venu elle saurait les {{humiliés}} devant tout le monde                 ->> humilier
TEST: tu sauras les {{arrêtait}} avec ça, non ?                                         ->> arrêter
TEST: c’est important de savoir {{refusé}} une offre qui a l’air alléchante             ->> refuser
TEST: elle savait quoi {{préparé}}                                                      ->> préparer
TEST: un certain nombre de savoirs spécialisés
TEST: je le savais désiré par de nombreuses personnes.
TEST: il les savait commandités par ses ennemis.
TEST: le savoir fabriqué dans les universités n’est guère reconnu.
TEST: savoirs déconsidérés par les tyrans


................................................................................
TEST: nous {{épuisants}} à la tâche pour des clopinettes, nous défaillîmes.



!!!! Participes passés                                                                            !!

__ppas_censé_être_adj!6__
    censé  être  @:[AQ].*:[fp]¬:(?:G|[me]:[si])
        <<- /ppas/ --1>> =suggMasSing(\-1)                                              && Cet adjectif devrait être accordé avec “censé”, au masculin singulier.

    censée  être  @:[AQ].*:[mp]¬:(?:G|[fe]:[si])
        <<- /ppas/ --1>> =suggFemSing(\-1)                                              && Cet adjectif devrait être accordé avec “censée”, au féminin singulier.

    censés  être  @:[AQ].*:[fs]¬:(?:G|[me]:[pi])
        <<- /ppas/ --1>> =suggMasPlur(\-1)                                              && Cet adjectif devrait être accordé avec “censés”, au masculin pluriel.

    censées  être  @:[AQ].*:[ms]¬:(?:G|[fe]:[pi])
        <<- /ppas/ --1>> =suggFemPlur(\-1)                                              && Cet adjectif devrait être accordé avec “censées”, au féminin pluriel.

TEST: un homme censé être {{connus}} de tous                    ->> connu
TEST: censée être {{doué}}                                      ->> douée
TEST: censés être {{nourries}} quatre fois par jour             ->> nourris
TEST: censées être {{nourris}} quatre fois par jour             ->> nourries
TEST: censés être {{instruites}}                                ->> instruits
................................................................................

    jusqu’ à    chez
    de          chez
    par         chez
    pour        chez
        <<- ~1:-2>> *
























    à bonne distance [de|d’]        {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    à côté [de|d’]                  {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    à part                          {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    à [cause|partir] [de|d’]        {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    autour [de|d’]                  {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    au-dessus [de|d’]               {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
    au-dedans [de|d’]               {pronom_obj}  [<end>|,|@:[VXG]¬>qui/]
................................................................................
    elle            seule
    iel             [seul+e]
    [nous|vous]     [seuls|seules]
    eux             seuls
    elles           seules
    iels            [seuls|seules]
        <<- ~2>> *

    nous    [tous|toutes]   qui
    vous    [tous|toutes]   qui
    eux     tous            qui
    elles   toutes          qui
        <<- ~2>> *

TODO: comme


__purge_pronoms_après_sujet_verbe__
    [j’|je]     ?[ne|n’]¿   >avoir      moi-même
    tu          ?[ne|n’]¿   >avoir      toi-même
................................................................................
    les [uns|unes] des autres
    les [uns|unes] [après|avec|chez|contre|de|derrière|devant|envers|malgré|pour|sans|sous|sur] les autres
    les [uns|unes] près des autres
    les [uns|unes] par rapport à l’ autre
    les [uns|unes] par rapport aux autres
    entre les uns et les autres
        <<- ~>> *


__purge_pronoms__

    [aucun|aucune]                  des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    [chacun|chacune]                des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    [certains|certaines]            des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    [quelques-uns|quelques-unes]    des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    plusieurs                       des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
    [un|une]                        des [miens|miennes|tiens|tiennes|siens|siennes|nôtres|vôtres|leurs]
        <<- ~2:0>> *

    [aucun|aucune]                  d’ entre [nous|vous|eux|elles|iels]
    [celui|celle|celles|ceux]       d’ entre [nous|vous|eux|elles|iels]
    [chacun|chacune]                d’ entre [nous|vous|eux|elles|iels]
    [certains|quelques-uns]         d’ entre [nous|vous|eux|iels]
    [certaines|quelques-unes]       d’ entre [nous|vous|elles|iels]
    plusieurs                       d’ entre [nous|vous|eux|elles|iels]
    [un|une]                        d’ entre [nous|vous|eux|elles|iels]
        <<- ~2:0>> *

    [aucun|aucune]                  [de|d’] [nous|vous|eux|elles|iels]
    [celui|celle|celles|ceux]       [de|d’] [nous|vous|eux|elles|iels]
    [chacun|chacune]                [de|d’] [nous|vous|eux|elles|iels]
    [certains|quelques-uns]         [de|d’] [nous|vous|eux|iels]
    [certaines|quelques-unes]       [de|d’] [nous|vous|elles|iels]
    plusieurs                       [de|d’] [nous|vous|eux|elles|iels]
    [un|une]                        [de|d’] [nous|vous|eux|elles|iels]
        <<- not (value(\-1, "|nous|vous|") and morph(>1, ":Y")) ~2:0>> *

    [certains|certaines|plusieurs|quelques-uns|quelques-unes] d’ entre nous
        <<- /1>> _d_entre_nous_

    [certains|certaines|plusieurs|quelques-uns|quelques-unes] d’ entre vous
        <<- /1>> _d_entre_vous_

    [aucun|aucune] des *WORD [ne|n’]
        <<- ~2:3>> *

    [aucun|aucune] des *WORD *WORD [ne|n’]
        <<- ~2:4>> *

    beaucoup [de|d’] *WORD <end>
    beaucoup [de|d’] *WORD ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    beaucoup [de|d’] *WORD @:[VR]¬:[NAP]
    beaucoup [de|d’] *WORD , @¬:[NA]
        <<- morph(\3, ":[NA].*:p", ":(?:[NA].*:[si]|G)") /1>> _bcp_plur_
        <<- __else__ and morph(\3, ":[NA].*:s", ":(?:[NA].*:[pi]|G)") /1>> _bcp_sing_
        <<- ~2:3>> *




    la plupart des *WORD <end>
    la plupart des *WORD ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    la plupart des *WORD @:[VR]¬:[NAP]
    la plupart des *WORD , @¬:[NA]
        <<- ~3:4>> *

    la plupart des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]) <end>
    la plupart des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]) ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    la plupart des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]) @:[VR]¬:[NAP]
    la plupart des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]) , @¬:[NA]
        <<- ~3:5>> *

    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD <end>
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[VR]¬:[NAP]
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD , @¬:[NA]
        <<- ~3:5>> *

    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:p¬:(?:G|[123][sp]) <end>
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:p¬:(?:G|[123][sp]) ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:p¬:(?:G|[123][sp]) @:[VR]¬:[NAP]
    la plupart de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:p¬:(?:G|[123][sp]) , @¬:[NA]
        <<- ~3:6>> *

    [<start>|,|l’] [un|une] des *WORD <end>
    [<start>|,|l’] [un|une] des *WORD ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [<start>|,|l’] [un|une] des *WORD @:[VR]¬:[NAP]
    [<start>|,|l’] [un|une] des *WORD , @¬:[NA]
        <<- ~3:4>> *
        <<- /2>> _un_des_


    [<start>|,|l’] [un|une] des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]) <end>
    [<start>|,|l’] [un|une] des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]) ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [<start>|,|l’] [un|une] des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]) @:[VR]¬:[NAP]
    [<start>|,|l’] [un|une] des *WORD @:[NA].*:[pi]¬:(?:G|[123][sp]) , @¬:[NA]
        <<- ~3:5>> *
        <<- /2>> _un_des_

    [<start>|,|l’] [un|une] de [ces|mes|tes|ses|nos|vos|leurs] *WORD <end>
    [<start>|,|l’] [un|une] de [ces|mes|tes|ses|nos|vos|leurs] *WORD ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [<start>|,|l’] [un|une] de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[VR]¬:[NAP]
    [<start>|,|l’] [un|une] de [ces|mes|tes|ses|nos|vos|leurs] *WORD , @¬:[NA]
        <<- ~3:5>> *
        <<- /2>> _un_des_

    [<start>|,|l’] [un|une] de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:p¬:(?:G|[123][sp]) <end>
    [<start>|,|l’] [un|une] de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:p¬:(?:G|[123][sp]) ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [<start>|,|l’] [un|une] de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:p¬:(?:G|[123][sp]) @:[VR]¬:[NAP]
    [<start>|,|l’] [un|une] de [ces|mes|tes|ses|nos|vos|leurs] *WORD @:[NA].*:p¬:(?:G|[123][sp]) , @¬:[NA]
        <<- ~3:6>> *
        <<- /2>> _un_des_


### Simplification des syntagmes nominaux

__purge_syntagmes_nominaux__
    [à|au|aux|avec|en|lors|ayant]  [de|d’]  [un|une|la|l’|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NAM]  <end>
    [à|au|aux|avec|en|lors|ayant]  [de|d’]  [un|une|la|l’|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NA]   ?,¿  [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
................................................................................
        || [un|une|le|la|l’|les|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NA]¬:G   ?,¿  [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [à|avec|chez|contre|dans|envers|par|pour|selon|sous|sur|ayant]
        || [un|une|le|la|l’|les|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NA]¬:G   @:[VR]¬:[NAP]
    [à|avec|chez|contre|dans|envers|par|pour|selon|sous|sur|ayant]
        || [un|une|le|la|l’|les|leur|leurs|ce|cet|cette|ces|mon|ton|son|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|quelques|certains|certaines]  @:[NAM]¬:G  , @¬:[NA]
        <<- ~1:3>> *

    à @:[NAM]¬:[GY]  <end>
    à @:[NA]¬:[GY]   ?,¿  [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    à @:[NA]¬:[GY]   @:[VR]¬:[NAP]
    à @:[NAM]¬:[GY]  , @¬:[NA]
        <<- not value(\2, "|été|") ~1:2>> *

    [avec|chez|contre|dans|envers|par|pour|selon|sous|sur|au|aux]  @:[NAM]¬:[GY]  <end>
    [avec|chez|contre|dans|envers|par|pour|selon|sous|sur|au|aux]  @:[NA]¬:[GY]   ?,¿  [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [avec|chez|contre|dans|envers|par|pour|selon|sous|sur|au|aux]  @:[NA]¬:[GY]   @:[VR]¬:[NAP]
    [avec|chez|contre|dans|envers|par|pour|selon|sous|sur|au|aux]  @:[NAM]¬:[GY]  , @¬:[NA]
        <<- ~1:2>> *

    [ce|ton|son] *WORD *WORD
        <<- morph(\2, ":[NA]", ":(?:[123]p|P|X|G|V0)") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A", ":N") ~2>> *
        <<- __else__ ~3>> *

    [le|la|les|leur|certains|certaines] *WORD *WORD
        <<- morph(\2, ":[NA]", ":(?:[123]p|P|X|G|Y|V0)") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A") ~2>> *
        <<- __else__ ~3>> *

    l’ *WORD *WORD
        <<- morph(\2, ":[NA]", ":(?:[123][sp]|P|X|G|Y|V0)|>air/") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A", ":N") ~2>> *
        <<- __else__ ~3>> *

    leur *WORD *WORD
        <<- not value(<1, "|le|la|du|au|") and morph(\2, ":[NA]", ":(?:[123]p|P|X|G|Y|V0)") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A") ~2>> *
        <<- __else__ ~3>> *

    leurs *WORD *WORD
        <<- not value(<1, "|des|les|aux|") and morph(\2, ":[NA]", ":(?:[123]p|P|X|G|Y|V0)") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A", ":N") ~2>> *
        <<- __else__ ~3>> *

    [des|cet|cette|ces|mon|ma|ta|sa|mes|tes|ses|notre|votre|nos|vos|au|aux] *WORD *WORD
        <<- morph(\2, ":[NA]") and morph(\3, ":[NA]", ":(?:G|[123][sp]|P|M)") >>>
        <<- morph(\3, ":N", ":A") and morph(\2, ":A", ":N") ~2>> *
        <<- __else__ ~3>> *

    [de|d’]  @:[NA].*:s¬:[YG]  <end>
    [de|d’]  @:[NA].*:s¬:[YG]  ?,¿ [ne|n’|me|m’|te|t’|se|s’|nous|vous|y|c’|ça|ç’|je|j’|tu|il|elle|on|ils|elles|iel|iels|le|la|l’|les|mon|ma|ta|sa|notre|votre|leur|mes|tes|ses|nos|vos|leurs|ce|cet|cette|ces|quel|quels|quelle|quelles]
    [de|d’]  @:[NA].*:s¬:[YG]  @:[VR]¬:[NAP]
    [de|d’]  @:[NA].*:s¬:[YG]  , @¬:[NA]
................................................................................
!!
!!
!!!! Participes passés: être, avoir été, sembler (+être via pp), devenir, rester, (re)devenir, paraître + participe passé / adj  !!
!!
!!

__ppas_je_tu_verbe_état__
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          @:[NAQ].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   >avoir [été|semblé|paru]                                                            @:[NAQ].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   [>être|>sembler] [devenu+e|redevenu+e|resté+e|demeuré+e]                            @:[NAQ].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:[NAQ].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:[NAQ].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:[NAQ].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:[NAQ].*:p¬:[GWYsi]
    [je|j’|tu] ?[ne|n’]¿ ?[en|y]¿   /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggSing(\-1)                                  && Accord avec le sujet “\1” : “\-1” devrait être au singulier.

    [je|j’] ?[ne|n’]¿ m’ ?[en|y]¿   >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NAQ].*:p¬:[GWYsi]
    tu      ?[ne|n’]¿ t’ ?[en|y]¿   >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggSing(\-1)                                  && Accord avec le sujet “\1” : “\-1” devrait être au singulier.

TEST: j’étais {{perdus}}                                                          ->> perdu
TEST: j’aurais été {{perdus}} sans toi                                            ->> perdu
TEST: je n’étais pas {{perdus}}                                                   ->> perdu
TEST: Je suis {{contents}}.                                                       ->> content
TEST: J’en ai été {{contents}}.                                                   ->> content
................................................................................
    [ce|ça|ceci|cela|c’|ç’] >être >seul                     [que|qu’]
    [ce|ça|ceci|cela|c’|ç’] >être @:[AQ].*:f¬:[GWYme]       @:N.*:f
        <<- !3>>

    tout en [étant|semblant|devenant|restant|demeurant|redevenant|paraissant] @:A
        <<- !4>>

    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenu|redevenu|resté|demeuré]                                    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|ce|c’|ç’|quiconque]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|quiconque])          ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([il|quiconque])          ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1) && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    ([il|quiconque]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1) && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenu|redevenu|resté|demeuré]                                    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not tag(\1, "_enum_") and morph(\2, ":(?:3s|P)") and not morph(<1, ":[RV]|>(?:et|ou)/") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    ([ça|ceci|cela|celui-ci|celui-là|aucun|chacun]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)
        || [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not tag(\1, "_enum_") and morph(\2, ":(?:3s|P)") and not morph(<1, ":[RV]|>(?:et|ou)/") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenu|redevenu|resté|demeuré]                                    @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])

    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
    [<start>|,|(] tout ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:[AQ].*:[fp]¬:(?:[GWYN]|[me]:[si])
        <<- /ppas/ morph(\1, "[123][sp]") --1>> =suggMasSing(\-1)                                                       && Accord avec le sujet “tout” : “\-1” devrait être au masculin singulier.

    [<start>|,|(] tout ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  [@:A.*:p¬:[GWYNsi]|@:[AQ].*:f¬:[GWYNme]]
        <<- /ppas/ --1>> =suggMasSing(\-1)                                                                              && Accord avec le sujet “tout” : “\-1” devrait être au masculin singulier.

    lui [ne|n’|y] [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui [ne|n’|y] >avoir [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui [ne|n’|y] [>être|>sembler] [devenu|redevenu|resté|demeuré]                                    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui [ne|n’|y] /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui [ne|n’|y] /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui [ne|n’|y] /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui [ne|n’|y] /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui [ne|n’|y] /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not morph(<1, ":[RV]") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1)    && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    lui n’ [en|y] [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y] >avoir [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y] [>être|>sembler] [devenu|redevenu|resté|demeuré]                                    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y] /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y] /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y] /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y] /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lui n’ [en|y] /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not morph(<1, ":[RV]") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1)    && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    lui ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not morph(<1, ":[RV]") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1)    && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenu|redevenu|resté|demeuré]                                    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au masculin singulier.

    ([lui|ça|ceci|cela|ce|c’|ç’|celui|celui-ci|celui-là]) qui ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)
        || [de|d’] ?[ne|n’]¿ ?[en|y]¿ [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggMasSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au masculin singulier.

    lequel ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenu|redevenu|resté|demeuré]                                    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
    lequel ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not morph(<1, ":R") --1>> =suggMasSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    lequel ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[me]:[si])
        <<- /ppas/ not morph(<1, ":R") --1>> =suggMasSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au masculin singulier.

    [<start>|,|$:Cs]  ?l’¿ un  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])             @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  ?l’¿ un  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                               @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  ?l’¿ un  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                              @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  ?l’¿ un  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_        @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  ?l’¿ un  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_        @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  ?l’¿ un  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_       @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  ?l’¿ un  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_      @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  ?l’¿ un  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_     @:[AQ]¬:(?:[GWM]|[me]:[si])
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\1, ":(?:[123]s|P)")
        --1>> =switchGender(\-1)                                                                    && Accord erroné : “un” et “\-1” ne sont pas accordés, l’adjectif devrait être au masculin singulier.

TEST: un des leurs restait {{introuvables}}
TEST: Il semble être {{partis}} pour toujours.                                    ->> parti
TEST: Il n’est pas {{demander}} à chacun de participer.
TEST: Il n’en était pas {{contents}}.                                             ->> content
TEST: Il est {{laisser}} à lui-même
TEST: il continue de paraître {{pieuse}} aux yeux des bigts                       ->> pieux
TEST: il parvient à rester {{humbles}} en toutes circonstances                    ->> humble
TEST: s’indigner contre quiconque en fut {{fâchés}}
................................................................................
TEST: celui-ci déclare être devenu {{fous}}
TEST: celui-là qui n’aime pas avoir paru plus {{grands}} qu’il ne l’était réellement
TEST: cela qui n’en était pas moins {{absurdes}}
TEST: lui qui affirmait être devenu {{éclairée}}
TEST: lui qui ne croit rester {{humbles}} en mettant sans cesse en avant ses mérites
TEST: lui qui n’en aimait pas rester {{visibles}}
TEST: lequel allait être {{renvoyée}} de l’établissement.
TEST: tout peut être {{dissoute}}
TEST: tout ne deviendra pas {{détruite}}
TEST: tout n’y sera pas {{dissoute}}
TEST: lui ne voulant être {{retrouvés}}
TEST: lequel renonce à être {{instruite}}
TEST: il s’efforçait d’être {{humbles}}
TEST: quiconque ne s’efforçait pas de rester {{utiles}} était fusillé.
TEST: celui qui s’efforce d’être {{humbles}}
TEST: celui-là qui ne s’efforçait jamais d’être {{gentille}}
TEST: celui-ci qui ne s’y efforcera pas de paraître {{utiles}}
................................................................................
TEST: ça s’efforce d’être {{humbles}}
TEST: celui-là ne s’efforçait jamais de paraître {{utiles}}
TEST: ceci ne s’en efforçait pas moins d’être particulièrement {{irritants}}
TEST: tout s’efforce de rester {{unis}} ensemble.
TEST: lui s’y efforçait de paraître {{instruits}}
TEST: il ne s’y efforce pas moins de paraître {{connaisseurs}}
TEST: lequel ne s’efforçait pas d’être {{connus}}
TEST: un d’entre nous ne sera pas {{épargnés}}
TEST: un des nôtres deviendra {{meilleurs}} que vous, aucun doute possible.
TEST: l’un d’entre eux ne paraîtra pas aussi {{éduquées}} que prévu
TEST: l’un de nous n’y risquera pas d’être {{découverts}}
TEST: C’est donc seules que les deux femmes sont amenées à comparaître
TEST: C’eût été pure imagination.
TEST: Je n’arrêtais pas de me répéter que tout cela était peut-être pure imagination
TEST: La femme qui faisait ça est partie.
TEST: De cela a toujours été faite notre vie
TEST: Ce sont différents types de violences
TEST: La littérature africaine s’ouvre au monde, parle au monde, tout en étant ancrée dans le continent.
................................................................................
TEST: tout est nuances de rouges, de gris et de bleus.
TEST: tout en restant bien sages
TEST: Celles et ceux qui n’auront que cela seront vraiment appauvris. D’autres, qui seront plus aisés, iront compléter par de la capitalisation.
TEST: dès que l’occasion lui en fut laissée


__ppas_3sg_fem_verbe_état__
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenue|redevenue|restée|demeurée]                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ not tag(\1, "_enum_") and not morph(<1, ":[RV]|>(?:et|ou)/") and morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    ([elle|celle-ci|celle-là|aucune|chacune]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ not tag(\1, "_enum_") and not morph(<1, ":[RV]|>(?:et|ou)/") and morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemSing(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenue|redevenue|restée|demeurée]                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggFemSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin singulier.

    ([elle|celle|celle-ci|celle-là]) qui ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ morph(\2, ":(?:[123]s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s")) --1>> =suggFemSing(\-1) && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin singulier.

    laquelle ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                            @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenue|redevenue|restée|demeurée]                                @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
    laquelle ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ not morph(<1, ":R") --1>> =suggFemSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    laquelle ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:p|[AQ])¬:(?:[GWY]|[fe]:[si])
        <<- /ppas/ not morph(<1, ":R") --1>> =suggFemSing(\-1)                                                          && Accord avec le sujet “\1” : “\-1” devrait être au féminin singulier.

    [<start>|,|$:Cs]  ?l’¿  une  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  ?l’¿  une  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                            @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  ?l’¿  une  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                           @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  ?l’¿  une  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  ?l’¿  une  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  ?l’¿  une  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  ?l’¿  une  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  ?l’¿  une  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:[AQ]¬:(?:[GWM]|[fe]:[si])
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\1, ":(?:[123]s|P)")
        --1>> =switchGender(\-1)                                                                    && Accord erroné : “une” et “\-1” ne sont pas accordés, l’adjectif devrait être au féminin singulier.

TEST: elle a été {{perdu}} par ses parents                                        ->> perdue
TEST: Elle semble être totalement {{ruiné}}.                                      ->> ruinée
TEST: Elle est complètement {{fol}}.                                              ->> folle
TEST: elle n’est pas {{petits}}
TEST: Elle en est de plus en plus {{belles}}.                                     ->> belle
TEST: elle n’en est pas {{fâché}}                                                 ->> fâchée
................................................................................
TEST: elle s’efforçait d’être {{belles}} à ses propres yeux
TEST: elle ne s’efforçait jamais de paraître {{douées}}
TEST: celle qui s’efforçait de paraître {{humbles}}
TEST: elle qui ne s’efforçait jamais d’être {{connus}}
TEST: celle-là qui ne s’en efforçait pas moins d’être {{reconnu}}
TEST: celle-ci ne s’y efforçait jamais de devenir plus {{fortes}}
TEST: laquelle s’y efforce de paraître {{humbles}}
TEST: une d’elles risquait d’être {{attaqué}} en justice
TEST: l’une des nôtres était {{perdu}} dans la paperasse
TEST: l’une d’entre nous ne risquait pas de devenir {{folles}}
TEST: l’une d’entre elles n’y était pas {{sensibles}}


__ppas_iel_verbe_état__
    iel ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                  @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                                    @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|devenues|redevenus|redevenues|restés|restées|demeurés|demeurées]  @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_             @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_             @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_            @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_           @:[NAQ].*:p¬:[GWYsi]
    iel ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_          @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":(?:3s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggSing(\-1)                                                                                            && Accord avec le sujet “iel” : “\-1” devrait être au pluriel.

    iel ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NAQ].*:p¬:[GWYsi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":(?:3s|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggSing(\-1)                                                                                            && Accord avec le sujet “iel” : “\-1” devrait être au pluriel.

TEST: iel paraît {{faibles}}
TEST: iel paraît avoir été complètement {{prises}} de panique.
TEST: iel doit avoir été bien {{méchants}} pour être traité de la sorte.
TEST: iel ne peut devenir aussi {{perspicaces}} avec tout cet alcool ingurgité.
TEST: iel pense être {{désirés}}
................................................................................
TEST: iel ne s’y efforce pas de devenir plus {{charmantes}} à leurs yeux.
TEST: iel est légion.
TEST: iel ne paraît pas avoir été affecté, bien qu’iel eût été frappé par un obus.
TEST: iel est devenu fort.


__ppas_nous_verbe_état__
    nous ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                  @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                                    @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|devenues|redevenus|redevenues|restés|restées|demeurés|demeurées]  @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_             @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_             @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_            @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_           @:[NAQ].*:s¬:[GWYpi]
    nous ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_          @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]|>(?:ne|nous)/") and morph(\1, ":(?:1p|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggPlur(\-1)                                                                                            && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.

    nous ?[ne|n’]¿ nous ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NA].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]|>(?:ne|nous)/") and morph(\1, ":(?:1p|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggPlur(\-1)                                                                                            && Accord avec le sujet “nous” : “\-1” devrait être au pluriel.

TEST: nous paraissons {{faible}}
TEST: Nous paraissons avoir été complètement {{prise}} de panique.                ->> prises
TEST: Nous devons avoir été bien {{méchant}} pour être traité de la sorte.
TEST: nous ne pouvons devenir aussi {{perspicace}} avec tout cet alcool ingurgité.
TEST: nous pensons être {{désiré}}
................................................................................
TEST: nous ne nous y efforçâmes guère de paraître {{dépourvu}} de moyens…
TEST: nous sommes légion.
TEST: nous ne paraissions pas avoir été légion, mais l’effet eut autant de force que si nous avions été des millions.
TEST: nous sommes devenus néant.


__ppas_3pl_mas_verbe_état__
    ils ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]           @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenus|redevenus|restés|demeurés]                                 @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ils ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ils ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|redevenus|restés|demeurés]                                 @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux-ci|ceux-là|certains|quelques-uns]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|redevenus|restés|demeurés]                                 @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    ([eux|ceux|ceux-ci|ceux-là|certains|quelques-uns]) qui ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)
        || [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggMasPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    lesquels ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]           @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenus|redevenus|restés|demeurés]                                 @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
    lesquels ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|néant|réalité|") --1>> =suggMasPlur(\-1)             && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

    lesquels ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[me]:[pi])
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|néant|réalité|") --1>> =suggMasPlur(\-1)             && Accord avec le sujet “\1” : “\-1” devrait être au masculin pluriel.

TEST: ils sont {{parti}}.                                                         ->> partis
TEST: ils sont {{parties}}.                                                       ->> partis
TEST: ils restaient {{méfiantes}}                                                 ->> méfiants
TEST: Ils semblent avoir été {{attaqué}} par des soldats.                         ->> attaqués
TEST: Ils sont de manière si étonnante et si admirable {{arrivé}} à ce résultat…
................................................................................
TEST: contre ceux qui ne s’efforcent pas d’être {{meilleur}}
TEST: ceux-là qui ne s’y efforçaient jamais de rester {{humble}}
TEST: lesquels ne s’efforçaient jamais d’être {{entendu}}
TEST: ils étaient devenus réalité.


__ppas_3pl_fem_verbe_état__
    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenues|redevenues|restées|demeurées]                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

    ([elles|celles-ci|celles-là|certaines|quelques-unes]) ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)
        || [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ not morph(<1, ":[RV]") and morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemPlur(\-1)                                                                                         && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenues|redevenues|restées|demeurées]                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemPlur(\-1)                                                                                         && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin pluriel.

    ([elles|celles|celles-ci|celles-là|certaines|quelques-unes]) qui ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)
        || [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ morph(\2, ":(?:3p|P)") and not value(\-1, "|légion|néant|réalité|") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggFemPlur(\-1)                                                                                         && Accord avec le sujet “\1 qui” : “\-1” devrait être au féminin pluriel.

    lesquelles ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]           @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ ?[en|y]¿ >avoir [été|semblé|paru]                                                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ ?[en|y]¿ [>être|>sembler] [devenues|redevenues|restées|demeurées]                             @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
    lesquelles ?[ne|n’]¿ ?[en|y]¿ /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|néant|réalité|") --1>> =suggFemPlur(\-1)             && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

    lesquelles ?[ne|n’]¿ s’ ?[en|y]¿  >efforcer  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:(?:N.*:s|[AQ])¬:(?:[GWY]|[fe]:[pi])
        <<- /ppas/ not morph(<1, ":R") and not value(\-1, "|légion|néant|réalité|") --1>> =suggFemPlur(\-1)             && Accord avec le sujet “\1” : “\-1” devrait être au féminin pluriel.

TEST: elles n’ont tout de même pas été {{attaqué}}                                ->> attaquées
TEST: Elles sont {{affamé}}.                                                      ->> affamées
TEST: Celles-là sont {{folle}}.
TEST: elles veulent être {{différente}}
TEST: Elle peut être {{observées}}.
................................................................................
TEST: elles qui s’efforcent d’être {{entendus}}
TEST: celles qui ne s’efforcent jamais de paraître {{belle}}
TEST: celles-ci qui ne s’y efforcent jamais de paraître {{raisonnable}}
TEST: lesquelles s’efforceront toujours de paraître {{évidente}}
TEST: celles-là imaginent être devenues légion


__ppas_3pl_épi_verbe_état__
    [iels|plusieurs] ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                  @:[NAQ].*:s¬:[GWYpi]
    [iels|plusieurs] ?[ne|n’]¿ ?[en|y]¿ (>avoir) [été|semblé|paru]                                                                    @:[NAQ].*:s¬:[GWYpi]
    [iels|plusieurs] ?[ne|n’]¿ ?[en|y]¿ ([>être|>sembler]) [devenus|devenues|redevenus|redevenues|restés|restées|demeurés|demeurées]  @:[NAQ].*:s¬:[GWYpi]
    [iels|plusieurs] ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_             @:[NAQ].*:s¬:[GWYpi]
    [iels|plusieurs] ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_             @:[NAQ].*:s¬:[GWYpi]
    [iels|plusieurs] ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_            @:[NAQ].*:s¬:[GWYpi]
    [iels|plusieurs] ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_           @:[NAQ].*:s¬:[GWYpi]
    [iels|plusieurs] ?[ne|n’]¿ ?[en|y]¿ (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_          @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":(?:3p|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggPlur(\-1)                                                                                            && Accord avec le sujet “\1” : “\-1” devrait être au pluriel.

    [iels|plusieurs] ?[ne|n’]¿ s’ ?[en|y]¿  (>efforcer)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  [être|sembler|devenir|rester|demeurer|redevenir|paraître|paraitre]  @:[NAQ].*:s¬:[GWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and not morph(<1, ":[RV]") and morph(\1, ":(?:3p|P)") and not (tag(<1, "_ceque_") and morph(\-1, ":3s"))
        --1>> =suggPlur(\-1)                                                                                            && Accord avec le sujet “\1” : “\-1” devrait être au pluriel.

TEST: iels paraissent {{faible}}
TEST: iels paraissent avoir été complètement {{prise}} de panique.                ->> prises
TEST: iels doivent avoir été bien {{méchant}} pour être traité de la sorte.
TEST: iels ne peuvent devenir aussi {{perspicace}} avec tout cet alcool ingurgité.
TEST: iels pensent être {{désiré}}
TEST: iels n’y doivent pas être {{instruit}}, mais…
................................................................................
TEST: C’eût été foncer tête baissée dans la gueule du loup.
TEST: Leur passe-temps, ça a été faire n’importe quoi.
TEST: Ne pas ressortir le livre le plus remarqué de la collaboration aurait été faire acte de censure.
TEST: Partir aurait été assurer sa survie.
TEST: J’ai été conseiller régional



!!!! Participes passés: accord en nombre avec la conjugaison de « être » (et équivalent)          !!

__ppas_être_accord_sing!3__
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           @:[NAQ].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                             @:[NAQ].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                            @:[NAQ].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:[NAQ].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:[NAQ].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:[NAQ].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:[NAQ].*:p¬:[GMWYsi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:[NAQ].*:p¬:[GMWYsi]
        <<- /ppas/ not tag_before(\1, "_que_") and not morph(\1, ":G") and morph(\2, ":[123]s", ":(?:C|N.*:p)")
        --1>> =suggSing(\-1)                                                                        && Accord avec la forme verbale “\2” : “\-1” devrait être au singulier.

    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])           @:[NAQ].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                             @:[NAQ].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                            @:[NAQ].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_      @:[NAQ].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_      @:[NAQ].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_     @:[NAQ].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_    @:[NAQ].*:p¬:[GMWYsi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_   @:[NAQ].*:p¬:[GMWYsi]
        <<- /ppas/ morph(\1, ":[123]s", ":(?:C|N.*:p)") --1>> =suggSing(\-1)                        && Accord avec la forme verbale “\1” : “\-1” devrait être au singulier.

TEST: cette petite chienne à poil roux avait été longtemps {{malades}}.
TEST: Ce mâle malingre et rachitique qui est resté {{arrogants}} ?
TEST: folle qui n’affirme pas avoir été {{frappés}}.
TEST: homme qui n’en souhaite pas rester {{amnésiques}}.
TEST: Qui n’en semble pas être devenu {{malades}} ?
TEST: C’est le crime qui se vante, qui adore avoir semblé {{légitimes}}.
TEST: ce jour, et surtout cette soirée, qui ne semble pas devenir {{interminables}}.
TEST: ces emmerdeurs, qui ne sont toujours pas {{parti}}, ont encore eu une idée pour nous pourrir la vie.
TEST: ne déclare pas avoir été {{présents}}
TEST: déteste paraître {{ignorants}}
TEST: n’aime pas paraître {{faibles}}.
TEST: les plus anciens restes trouvés à ce jour proviennent de ce site
TEST: Restes crâniens.
TEST: Demeures victoriennes.


__ppas_être_accord_plur!3__
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                   @:[NAQ].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                                     @:[NAQ].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenus|redevenus|restés|demeurés|devenues|redevenues|restées|demeurées]  @:[NAQ].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_              @:[NAQ].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_              @:[NAQ].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_             @:[NAQ].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_            @:[NAQ].*:s¬:[GMWYpi]
    (*WORD)      ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_           @:[NAQ].*:s¬:[GMWYpi]
        <<- /ppas/ not tag_before(\1, "_que_") and not value(\-1, "|légion|néant|réalité|") and not morph(\1, ":G") and morph(\2, ":[13]p")
        --1>> =suggPlur(\-1)                                                                                            && Accord avec la forme verbale “\2” : “\-1” devrait être au pluriel.

    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                   @:[NAQ].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                                     @:[NAQ].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenus|redevenus|restés|demeurés|devenues|redevenues|restées|demeurées]  @:[NAQ].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_              @:[NAQ].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_              @:[NAQ].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_             @:[NAQ].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_            @:[NAQ].*:s¬:[GMWYpi]
    [<start>|,|(]  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_           @:[NAQ].*:s¬:[GMWYpi]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\1, ":[13]p") --1>> =suggPlur(\-1)                && Accord avec la forme verbale “\1” : “\-1” devrait être au pluriel.

TEST: lui et son staff y sont très {{favorable}}
TEST: Mais cet homme et son compagnon affirment être redevenus {{humble}}.
TEST: cette femme et cet homme n’affirment pas avoir été {{courtoise}}.
TEST: un chat et un chien qui n’en demeurent pas moins {{attaché}} à leur maître
TEST: des avocates qui n’imaginent pas devenir {{inapte}} pour si peu.
TEST: ces hommes qui n’y semblent pas avoir été {{élégant}}.
TEST: Qui adorerait être redevenu {{sains}}.
TEST: qui n’en furent pas {{balayé}} au premier coup de vent.

TEST: semblent être redevenus {{sage}}
TEST: ce que les journalistes estiment être normal.
TEST: qui échappe à tout contrôle démocratique et dans lequel les lobbies sont partie prenante est une folie.



!!!! Participes passés: accord avec le substantif précédent                                       !!

__ppas_sujet_être_accord_immunités__
    *WORD  [que|qu’]  [un|le|ce|cet|une|la|ma|ta|sa|cette|l’|mon|ton|son|notre|votre|leur|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  *WORD  ?[ne|n’]¿  ?[en|y]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || [être|devenir|redevenir|rester|paraître|paraitre|sembler]                                *WORD
    *WORD  [que|qu’]  [un|le|ce|cet|une|la|ma|ta|sa|cette|l’|mon|ton|son|notre|votre|leur|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  *WORD  ?[ne|n’]¿  ?[en|y]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || être [devenu+e|redevenu+e|resté+e|demeuré+e]                                             *WORD
    *WORD  [que|qu’]  [un|le|ce|cet|une|la|ma|ta|sa|cette|l’|mon|ton|son|notre|votre|leur|les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  *WORD  ?[ne|n’]¿  ?[en|y]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || avoir [été|semblé|paru]                                                                  *WORD
        <<- /ppas/ checkAgreement(\1, \-1) !-1>>

    *WORD  [que|qu’]  $:M  ?[ne|n’]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || [être|devenir|redevenir|rester|paraître|paraitre|sembler]                                *WORD
    *WORD  [que|qu’]  $:M  ?[ne|n’]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || être [devenu+e|redevenu+e|resté+e|demeuré+e]                                             *WORD
    *WORD  [que|qu’]  $:M  ?[ne|n’]¿
        || ([>affirmer|>croire|>déclarer|>désirer|>détester|>dire|>estimer|>imaginer|>penser|>préférer|>savoir|>souhaiter|>vouloir])
        || avoir [été|semblé|paru]                                                                  *WORD
        <<- /ppas/ checkAgreement(\1, \-1) !-1>>


__ppas_sujet_être_accord_singulier__
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                            @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                           @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:[AQ]¬:(?:[GWM]|[me]:[si])
    [<start>|,|$:Cs]  [un|le|ce|cet]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:[AQ]¬:(?:[GWM]|[me]:[si])
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\1, ":[NA].*:[me]", ":[GW]") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P")))

        --1>> =suggMasSing(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés.

    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                            @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                           @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:[AQ]¬:(?:[GWM]|[fe]:[si])
    [<start>|,|$:Cs]  [une|la|ma|ta|sa|cette]  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:[AQ]¬:(?:[GWM]|[fe]:[si])
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\1, ":[NA].*:[fe]", ":[GW]") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P")))

        --1>> =suggFemSing(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés.

    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                            @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                           @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [l’|mon|ton|son|notre|votre|leur] (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  @:[AQ]¬:[GWM]


        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and (morph(\2, ":[123]s") or (not tag(\1, "_enum_") and morph(\2, ":P"))) >>>
        <<- /ppas/ morph(\1, ":f", ":[me]") and morph(\-1, ":m", ":[fe]") --1>> =suggFemSing(\-1)               && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre. Mettez au féminin singulier.











        <<- /ppas/ __else__ and morph(\1, ":m", ":[fe]") and morph(\-1, ":f", ":[me]") --1>> =suggMasSing(\-1)  && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre. Mettez au masculin singulier.








        <<- /ppas/ __else__ and morph(\-1, ":p", ":[si]") --1>> =suggSing(\-1)                                  && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au singulier.



TEST: Un orage est {{annoncée}}.
TEST: ce chat ne sera pas {{euthanasiée}}
TEST: Le chien qui n’y sera pas {{traitée}}
TEST: cet homme qui ne cesse pas d’être {{ennuyée}}
TEST: cet espion qui sera {{jugée}} bientôt
TEST: la danse n’en est pas {{fini}} pour autant…
TEST: Une averse semble être {{annoncé}}.
................................................................................
TEST: ta fille qui pense avoir été {{trompé}}
TEST: cette carte qui n’y sera jamais {{retrouvé}} à temps
TEST: Ma mémoire qui a aussi été {{effacé}}.
TEST: Sa femme qui ne paraît pas avoir été {{choqué}}
TEST: l’avenir de la région paraissait {{suspendue}} à ce financement
TEST: l’idiot qui n’y affirmait pas être devenu {{géniale}} mais seulement moins ignorant
TEST: Mon ami qui pensait être {{suivie}}
TEST: notre amie risquait d’être {{oubliés}}
TEST: l’écolier qui ne croyait pas avoir été {{brillante}}
TEST: l’hypocrite pensait avoir été {{subtils}}
TEST: La première était René, le parfumeur, qui s’approcha de Catherine


__ppas_sujet_être_accord_pluriel__
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                   @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                                     @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenus|redevenus|restés|demeurés|devenues|redevenues|restées|demeurées]  @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_              @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_              @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_             @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_            @:[AQ]¬:[GWM]
    [<start>|,|$:Cs]  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|$:B]  (*WORD)
        || ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_           @:[AQ]¬:[GWM]
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\2, ":(?:[123]p|P)") >>>
        <<- /ppas/ morph(\1, ":f", ":[me]") and morph(\-1, ":m", ":[fe]") --1>> =suggFemPlur(\-1)               && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre. Mettez au féminin pluriel.
        <<- /ppas/ __else__ and morph(\1, ":m", ":[fe]") and morph(\-1, ":f", ":[me]") --1>> =suggMasPlur(\-1)  && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre. Mettez au masculin pluriel.
        <<- /ppas/ __else__ and morph(\-1, ":s", ":[pi]") --1>> =suggPlur(\-1)                                  && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au pluriel.

    [<start>|,|$:Cs]  certains  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                   @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|$:Cs]  certains  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                                     @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|$:Cs]  certains  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenus|redevenus|restés|demeurés]                                        @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|$:Cs]  certains  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_              @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|$:Cs]  certains  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_              @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|$:Cs]  certains  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_             @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|$:Cs]  certains  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_            @:[AQ]¬:(?:[GW]|[me]:[pi])
    [<start>|,|$:Cs]  certains  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_           @:[AQ]¬:(?:[GW]|[me]:[pi])
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\1, ":[NA].*:[me]:[pi]", ":[GW]") and morph(\2, ":(?:[123]p|P)")
        --1>> =suggMasPlur(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au masculin pluriel.

    [<start>|,|$:Cs]  certaines  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])                  @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|$:Cs]  certaines  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                                    @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|$:Cs]  certaines  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenues|redevenues|restées|demeurées]                                   @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|$:Cs]  certaines  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_             @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|$:Cs]  certaines  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_             @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|$:Cs]  certaines  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_            @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|$:Cs]  certaines  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_           @:[AQ]¬:(?:[GW]|[fe]:[pi])
    [<start>|,|$:Cs]  certaines  (*WORD)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_          @:[AQ]¬:(?:[GW]|[fe]:[pi])
        <<- /ppas/ not value(\-1, "|légion|néant|réalité|") and morph(\1, ":[NA].*:[fe]:[pi]", ":[GW]") and morph(\2, ":(?:[123]p|P)")
        --1>> =suggFemPlur(\-1)                                                                     && Accord erroné : “\1” et “\-1” ne sont pas accordés. Mettez au féminin pluriel.

TEST: les femmes sont vraiment {{partis}}                                                   ->> parties
TEST: les hommes n’en sont pas tout à fait {{fâchées}}                                      ->> fâchés
TEST: plusieurs invités qui n’en sont pas {{contentes}}
TEST: les réunions sans cesse reportées qui sont {{annulés}}
TEST: les hommes croyant être {{instruites}}
TEST: les ouvriers ayant été {{persécutée}} par leur hiérarchie                             ->> persécutés
TEST: deux estimations ont été {{reçus}}                                                    ->> reçues
TEST: certains hommes croient avoir été {{dupées}}                                          ->> dupés
TEST: certains hommes qui pensent être plus {{instruites}} qu’ils ne sont réellement        ->> instruits
TEST: puisque certains hommes n’en pensent pas moins être {{trompées}}                      ->> trompés
TEST: certains hommes qui n’en pensent pas devenir {{folles}} pour autant                   ->> fous
TEST: certaines femmes pensent avoir été {{trompés}}                                        ->> trompées
TEST: certaines femmes ne croient pas être {{appauvris}}                                    ->> appauvries
TEST: certaines femmes qui y pensent être {{escroqués}}                                     ->> escroquées
TEST: certaines femmes qui n’en risquent pas moins d’être {{découverts}}                    ->> découvertes
TEST: Les tortures que ce journaliste pense être “normales”.

TEST: les abrutis sont légion


__ppas_nom_propre_être_accord_genre__
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre])          *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (>avoir) [été|semblé|paru]                                                            *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  ([>être|>sembler])  [devenu+e|redevenu+e|resté+e|demeuré+e]                           *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_verbeétat_)     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_être_ppas_)     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_avoir_ppas_)    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_à_verbeétat_)   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   *WORD
    [<start>|,|$:Cs]  ($:M)  ?qui¿  ?[ne|n’]¿  ?[en|y]¿  (/_LVED_verbe_de_verbeétat_)  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  *WORD
        <<- /ppas/ not tag(\1, "_enum_") and ((morph(\1, ":M.*:f", ":[GWme]") and morph(\-1, ":[AQ].*:m", ":[GWfe]")) or (morph(\1, ":M.*:m", ":[GWfe]") and morph(\-1, ":[AQ].*:f", ":[GWme]")))
            and (morph(\2, ":(?:[123]s|P)") or (not tag(\1, "_enum_") and morph(\2, ":P")))
        --1>> =switchGender(\-1)                                                                    && Accord erroné : “\1” et “\-1” ne sont pas accordés en genre.












TEST: Marianne semble devenue {{colériques}}
TEST: Pauline n’affirme pas avoir été {{vaincu}} pour autant
TEST: Sara n’en croit pas cependant être devenue {{aigries}}
TEST: Patrick est devenu {{folles}}
TEST: Mohammed ne semble pas avoir paru {{dingues}}
TEST: Isaac n’en estime pas réellement avoir semblé {{faibles}}
TEST: Antoine est {{mariée}}.
................................................................................
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           celui qui
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   celui qui
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  celui qui
        <<- /ppas/ morph(\2, ":[AQ].*:[fp]", ":(?:G|:m:[si])") and morph(\3, ":(?:[123]s|P)")
        -2>> =suggMasSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          celle qui
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           celle qui
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   celle qui
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  celle qui
        <<- /ppas/ morph(\2, ":[AQ].*:[mp]", ":(?:G|:f:[si])") and morph(\3, ":(?:[123]s|P)")
        -2>> =suggFemSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          ceux qui
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           ceux qui
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   ceux qui
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  ceux qui
        <<- /ppas/ morph(\2, ":[AQ].*:[fs]", ":(?:G|:m:[pi])") and morph(\3, ":(?:[123]p|P)")
        -2>> =suggMasPlur(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin pluriel.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          celles qui
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           celles qui
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   celles qui
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  celles qui
        <<- /ppas/ morph(\2, ":[AQ].*:[ms]", ":(?:G|:f:[pi])") and morph(\3, ":(?:[123]p|P)")
        -2>> =suggFemPlur(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin pluriel.

TEST: {{vains}} est celui qui croit que sa religion lui accorde le salut.                   ->> vain
TEST: {{ridiculisé}} fut celle qui lutta d’arrache-pied à faire connaître la vérité.        ->> ridiculisée
TEST: {{faible}} paraissent avoir été ceux qui ont été vaincus                              ->> faibles
TEST: {{oublié}} étaient celles qui avaient lutté pour un monde libre.                      ->> oubliées

................................................................................
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [un|le|ce|cet]  @:[NA].*:[me]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [un|le|ce|cet]  @:[NA].*:[me]:[si]
        <<- /ppas/ morph(\2, ":[AQ].*:[fp]", ":(?:G|:m:[si])") and morph(\3, ":(?:[123]s|P)")
        -2>> =suggMasSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [une|la|ma|ta|sa|cette]  @:[NA].*:[fe]:[si]
        <<- /ppas/ morph(\2, ":[AQ].*:[mp]", ":(?:G|:f:[si])") and morph(\3, ":(?:[123]s|P)")
        -2>> =suggFemSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [l’|mon|ton|son|notre|votre|leur]  @:[NA].*:[si]
        <<- /ppas/ morph(\2, ":[AQ].*:m", ":[fe]") and morph(\-1, ":[NA]:f", ":[me]")
        -2>> =suggFemSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin singulier.
        <<- /ppas/ __else__ and morph(\2, ":[AQ].*:f", ":[me]") and morph(\-1, ":[NA]:m", ":[fe]")
        -2>> =suggMasSing(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin singulier.
        <<- /ppas/ morph(\2, ":[AQ].*:p", ":[Gsi]") and morph(\3, ":(?:[123]s|P)")
        -2>> =suggSing(\2)                                                                          && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au singulier.

    [<start>|,|(]  *WORD  [>être|>sembler|>devenir|>rester|>demeurer|>redevenir|>paraître|>paraitre]          [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  >avoir  [été|semblé|paru]                                                           [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  [>être|>sembler]  [devenu|redevenu|resté|demeuré]                                   [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_verbeétat_     ?[en|y]¿                    /_LVEF_verbe_verbeétat_     [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_être_ppas_     ?[en|y]¿  être              /_LVEF_verbe_être_ppas_     [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_avoir_ppas_    ?[en|y]¿  avoir             /_LVEF_verbe_avoir_ppas_    [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_à_verbeétat_   à  ?[ne|n’]¿ ?[en|y]¿       /_LVEF_verbe_à_verbeétat_   [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
    [<start>|,|(]  *WORD  /_LVED_verbe_de_verbeétat_  [de|d’] ?[ne|n’]¿ ?[en|y]¿  /_LVEF_verbe_de_verbeétat_  [les|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  @:[NA].*:[pi]
        <<- /ppas/ morph(\2, ":[AQ].*:m", ":[fe]") and morph(\-1, ":[NA]:f", ":[me]")
        -2>> =suggFemPlur(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au féminin pluriel.
        <<- /ppas/ __else__ and morph(\2, ":[AQ].*:f", ":[me]") and morph(\-1, ":[NA]:m", ":[fe]")
        -2>> =suggMasPlur(\2)                                                                       && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au masculin pluriel.
        <<- /ppas/ __else__ and morph(\2, ":[AQ].*:s", ":[Gpi]") and morph(\3, ":(?:[123]p|P)")
        -2>> =suggPlur(\2)                                                                          && Accord erroné avec “\-2 \-1” : cet adjectif devrait être au pluriel.

TEST: {{cachée}} allait devenir ce livre                                            ->> caché
TEST: {{vain}} fut la destruction de cette base.                                    ->> vaine
TEST: {{utiles}} a été la perte de notre arrogance                                  ->> utile
TEST: {{perdu}} serait devenu l’entreprise                                          ->> perdue
TEST: {{perdue}} allait être l’homme                                                ->> perdu
................................................................................
!!
!!
!!!! Participes passés: avoir l’air                                                               !!
!!
!!

__ppas_avoir_l_air__
    il  ?[ne|n’]¿  >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ --1>> =suggMasSing(\-1)                                      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    elle  ?[ne|n’]¿  >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:[si]|G)
        <<- /ppas/ not morph(<1, ":R|>(?:et|ou)/") --1>> =suggFemSing(\-1)      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    <start>  [le|un|ce|cet|mon|ton|son|notre|votre|leur]  *WORD  ?[ne|n’]¿  >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ morph(\3, ":[NA].*:[me]", ":f") --1>> =suggMasSing(\-1)      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    <start>  [la|une|cette|ma|ta|sa|notre|votre|leur]  *WORD  ?[ne|n’]¿  >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:[si]|G)
        <<- /ppas/ morph(\3, ":[NA].*:[fe]", ":m") --1>> =suggFemSing(\-1)      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    [<start>]  *WORD  ?[ne|n’]¿  >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:m:[si]|G)
        <<- /ppas/ morph(\2, ":M.*:m", ":M.*:[fe]") --1>> =suggMasSing(\-1)     && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    ils  ?[ne|n’]¿  >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:[me]|G)
        <<- /ppas/ --1>> =suggMasPlur(\-1)                                      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    elles  ?[ne|n’]¿  >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:(?:m:[si]|[fe]:[pi])|G)
        <<- /ppas/ not morph(<1, ":R|>(?:et|ou)/") --1>> =suggFemPlur(\-1)      && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    <start>  [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs]  *WORD  ?[ne|n’]¿  >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ morph(\3, ":[NA].*:m:[pi]", ":[fe]") and morph(\-1, ":[NA].*:f")
        --1>> =suggMasPlur(\-1)                                                 && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728
        <<- /ppas/ __else__ and morph(\3, ":[NA].*:f:[pi]", ":[me]") and morph(\-1, ":[NA].*:(?:m:p|f:s)")
        --1>> =suggFemPlur(\-1)                                                 && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    >avoir  ?eu¿  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ morph(\1, ":V0a.*:[123]s") and morph(\-1, ":A.*:p") and not value(<1, "|on|")
        --1>> =suggSing(\-1)                                                    && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728
        <<- /ppas/ __else__ and morph(\1, ":V0a.*:[123]p") and morph(\-1, ":A.*:s")
        --1>> =suggPlur(\-1)                                                    && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    [/-je|/-tu|/-iel]  ?eu¿  l’  air  @:A¬:(?:A.*:[si]|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggSing(\-1)                     && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    [/-nous|/-iels]  ?eu¿  l’  air  @:A¬:(?:A.*:(?:m:[si]|p)|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggPlur(\-1)                     && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    /-il  ?eu¿  l’  air  @:A¬:(?:A.*:[me]:[si]|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggMasSing(\-1)                  && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    /-elle  ?eu¿  l’  air  @:A¬:(?:A.*:[si]|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggFemSing(\-1)                  && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    /-ils  ?eu¿  l’  air  @:A¬:(?:A.*:[me]|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggMasPlur(\-1)                  && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

    /-elles  ?eu¿  l’  air  @:A¬:(?:A.*:(?:m:[si]|[fe]:[pi])|G)
        <<- /ppas/ morphVC(\1, ":V0a") --1>> =suggFemPlur(\-1)                  && Dans la locution “avoir l’air”, il faut accorder l’adjectif avec le sujet (si “avoir l’air” signifie “sembler”) ou éventuellement avec le mot “air” si vous évoquez l’allure d’un être vivant.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=1728

TEST: avait l’air {{sinistres}} des mauvais jours.                      ->> sinistre
TEST: avaient l’air {{ignorante}} du danger                             ->> ignorantes
TEST: il n’avait pas l’air {{heureuse}}                                 ->> heureux
TEST: ils n’avaient jamais l’air {{perdues}}                            ->> perdus
TEST: Elle n’avait guère l’air {{grossières}}                           ->> grossière
................................................................................
TEST: Avaient-ils l’air {{ignorantes}} ?                                ->> ignorants
TEST: Avaient-elles l’air {{triomphants}} ?                             ->> triomphantes
TEST: Paul avait l’air {{perdue}}                                       ->> perdu
TEST: la voiture avait l’air {{foutues}}                                ->> foutue
TEST: Le chien a l’air {{idiote}}                                       ->> idiot
TEST: Les écoles avaient l’air {{fermés}}                               ->> fermées
TEST: Nos voisins auront l’air {{perdues}}                              ->> perdus
TEST: elles ont eu l’air {{égarés}}                                     ->> égarées
TEST: Avais-je l’air égarée ?
TEST: Avais-tu l’air folle ?
TEST: Avait-il l’air serein ?
TEST: Avait-elle l’air absente ?
TEST: Avions-nous l’air ignorantes ?
TEST: Avaient-ils l’air ignorants ?
TEST: Avaient-elles l’air triomphantes ?
................................................................................
        -2>> =suggSing(\2)                                                      && Si cet adjectif se réfère au pronom « \-1 », l’adjectif devrait être au singulier (et accordé en genre).

TEST: {{Découragés}}, je suis parti.


__ppas_adj_accord_il__
    <start>  *WORD  ?,¿  il
        <<- /ppas/ not value(\2, "|bref|désolé|désolée|pire|")  and not tag(\2, "_exctx_") and morph(\2, ":A.*:[fp]", ":(?:G|E|M1|W|P|m:[si])")
            and not morph(>1, ">falloir/") and not after("^ +(?:y (?:a|aura|avait|eut)|d(?:ut|oit|evait|evra) y avoir|s’agi(?:ssait|t|ra))[, .]")
        -2>> =suggMasSing(\2)                                                   && Si cet adjectif se réfère au pronom « il », l’adjectif devrait être au masculin singulier.

TEST: — {{Déçue}}, il s’en est allé.
TEST: — Désolée, il va partir bientôt.
TEST: Lancés il y a plus de 13 ans, le 14 février 2001, ces outils
TEST: Si délégués il doit y avoir, ce sera uniquement des gens choisis parmi nous.
TEST: Étudiante, il s’agissait de s’inventer des parents riches.
................................................................................
TEST: des ruisselets, des arbres, une tonnelle qui rappelaient le temps.
TEST: son assurance, sa grâce, son sex-appeal nous permettent de passer sans encombre liquides et rasoirs.
TEST: Son courage, son ardeur étaient immenses,


__conj_un_une__
    [un|une]  @:V¬:(?:3s|P|G|Q|M|[NA].*:[si])
        <<- /conj/ not tag(\1, "_un_des_") and morph(<1, ":C|<start>|>(?:,|dont)", ":(?:Y|P|Q|[123][sp]|R)̉|>(?:sauf|excepté|et|ou)/")
        --1>> =suggVerb(\-1, ":3s")                             && Conjugaison erronée. Accord avec “\1…”. Le verbe devrait être à la 3ᵉ personne du singulier.

    [un|une]  qui  @:V¬:(?:3s|P|G)
        <<- /conj/ not tag(\1, "_un_des_") and morph(<1, "<start>|>(?:,|dont)/|:R")
        --1>> =suggVerb(\-1, ":3s")                             && Conjugaison erronée. Accord avec “\2…”. Le verbe devrait être à la 3ᵉ personne du singulier.

TEST: il y en a beaucoup, tu vois, même si un {{seras}} mieux pensé que les autres.
TEST: tu vois, il y en a dix dont un {{seras}} mieux pensé que les autres.
TEST: tu sais, il y en a quelques-unes dont une qui {{deviendras}} meilleure que tu l’imagines.
TEST: Toutes sauf une iront à l’université.
TEST: Tous excepté un sauront s’y prendre.
TEST: Trente et un viennent ce soir.
TEST: Quarante et une seront là demain.
TEST: Tous sauf un viendront.


__conj_un_une_des__
    [un|une]  @:V¬:(?:3s|P|G|Q|M|[NA].*:[pi])
        <<- /conj/ tag(\1, "_un_des_") and morph(<1, ":C|<start>|>,", ":(?:Y|P|Q|[123][sp]|R)")
        --1>> =suggVerb(\-1, ":3s")                                     && Conjugaison erronée. Accord avec “\1…”. Le verbe devrait être à la 3ᵉ personne du singulier.

    [un|une]  des *WORD  qui  @:V¬:(?:3[sp]|P|G)
        <<- /conj/ morph(<1, ":C|<start>|>,", ":(?:Y|P|Q|[123][sp]|R)")
        --1>> =suggVerb(\-1, ":3s")                                     && Conjugaison erronée. Accord avec “\1…”. Le verbe devrait être à la 3ᵉ personne du singulier ou du pluriel.

TEST: un des ingénieurs {{vinrent}} nous dire quoi faire.
TEST: un des membres présents au conseil {{demandent}} un vote à bulletin secret
TEST: une des femmes de ce conseil ne {{céderaient}} jamais au chantage.
TEST: un des chats qui {{venez}} nous ennuyer tous les jours.
TEST: une des femmes présente ses résultats.
TEST: les défaillances d’une des branches ne sont pas forcément couvertes.
................................................................................
TEST: Mais parmi les millions de causes à défendre, lesquelles choisir ?
TEST: les failles par lesquelles entrait l’eau étaient impossibles à boucher.


__conj_beaucoup__
    beaucoup    @:V¬:(?:P|Q|G|Y)
        <<- /conj/ not morph(<1, ":[VR]") >>>
        <<- /conj/ tag(\1, "_bcp_plur_") and not morph(\2, ":3p")
        -2>> =suggVerb(\2, ":3p")                                   && Conjugaison erronée. Accord avec “\1”. Le substantif suivant étant au pluriel, le verbe devrait être à la 3ᵉ personne du pluriel.
        <<- /conj/ __else__ and tag(\1, "_bcp_sing_") and not morph(\2, ":3s")
        -2>> =suggVerb(\2, ":3s")                                   && Conjugaison erronée. Accord avec “\1”. Le substantif suivant étant au singulier, le verbe devrait être à la 3ᵉ personne du singulier.
        <<- /conj/ __else__ and \2 != "a" and not tag(\1, "_bcp_sing_") and not morph(\2, ":3p") and not (space_after(\1, 1, 2) and morph(\2, ":V0"))
        -2>> =suggVerb(\2, ":3p")                                   && Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du pluriel.

    beaucoup    qui  @:V¬:(?:3p|P|G)
        <<- /conj/ -3>> =suggVerb(\3, ":3p")                        && Conjugaison erronée. Accord avec “\1”. Le verbe devrait être à la 3ᵉ personne du pluriel.

TEST: beaucoup {{vienne}}
TEST: Beaucoup d’hommes y {{était}}.
................................................................................
TEST: Cette fille a plus d’un tour dans son sac.
TEST: L’homme est également président de l’AFP
TEST: ils nous ont agenouillés
TEST: C’est pure folie.
TEST: Du côté de ceux sans qui le cinéma se réduirait à pas grand-chose
TEST: Il commence à monter sur scène au Club Méditerranée
TEST: Je n’en avais cure.
TEST: À toute chose malheur est bon.



!!! Tests historiques                                                                             !!

## Version 0.5.14
TEST: par le léger tissu de rayonne qui les protégeait en ce moment.

Modified graphspell-js/ibdawg.js from [9e7f2fda83] to [189561924c].

397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
                this._suggest(oSuggResult, sRemain.slice(1), nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, jAddr, sNewWord+cChar);
            }
            else if (!bAvoidLoop) {
                if (nMaxHardRepl  &&  this.isNgramsOK(cChar+sRemain.slice(1,2))) {
                    this._suggest(oSuggResult, sRemain.slice(1), nMaxSwitch, nMaxDel, nMaxHardRepl-1, nMaxJump, nDist+1, nDeep+1, jAddr, sNewWord+cChar, true);
                }
                if (nMaxJump) {
                    this._suggest(oSuggResult, sRemain, nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump-1, nDist+1, nDeep+1, jAddr, sNewWord+cChar); // True for avoiding loop?
                }
            }
        }
        if (!bAvoidLoop) { // avoid infinite loop
            if (sRemain.length > 1) {
                if (cCurrent == sRemain.slice(1, 2)) {
                    // same char, we remove 1 char without adding 1 to <sNewWord>







|







397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
                this._suggest(oSuggResult, sRemain.slice(1), nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, jAddr, sNewWord+cChar);
            }
            else if (!bAvoidLoop) {
                if (nMaxHardRepl  &&  this.isNgramsOK(cChar+sRemain.slice(1,2))) {
                    this._suggest(oSuggResult, sRemain.slice(1), nMaxSwitch, nMaxDel, nMaxHardRepl-1, nMaxJump, nDist+1, nDeep+1, jAddr, sNewWord+cChar, true);
                }
                if (nMaxJump) {
                    this._suggest(oSuggResult, sRemain, nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump-1, nDist+1, nDeep+1, jAddr, sNewWord+cChar, true); // true for avoiding loop?
                }
            }
        }
        if (!bAvoidLoop) { // avoid infinite loop
            if (sRemain.length > 1) {
                if (cCurrent == sRemain.slice(1, 2)) {
                    // same char, we remove 1 char without adding 1 to <sNewWord>

Modified graphspell/ibdawg.py from [bba1a1f0a5] to [db890a0452].

350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
...
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
        for cChar, jAddr in self._getCharArcs(iAddr):
            if cChar in cp.d1to1.get(cCurrent, cCurrent):
                self._suggest(oSuggResult, sRemain[1:], nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, jAddr, sNewWord+cChar)
            elif not bAvoidLoop:
                if nMaxHardRepl and self.isNgramsOK(cChar+sRemain[1:2]):
                    self._suggest(oSuggResult, sRemain[1:], nMaxSwitch, nMaxDel, nMaxHardRepl-1, nMaxJump, nDist+1, nDeep+1, jAddr, sNewWord+cChar, True)
                if nMaxJump:
                    self._suggest(oSuggResult, sRemain, nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump-1, nDist+1, nDeep+1, jAddr, sNewWord+cChar) # True for avoiding loop?
        if not bAvoidLoop: # avoid infinite loop
            if len(sRemain) > 1:
                if cCurrent == sRemain[1:2]:
                    # same char, we remove 1 char without adding 1 to <sNewWord>
                    self._suggest(oSuggResult, sRemain[1:], nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, iAddr, sNewWord)
                else:
                    # switching chars
................................................................................
        "returns True if sChars in known 2grams"
        if len(sChars) != 2:
            return True
        if not self.a2grams:
            return True
        return sChars in self.a2grams

    #@timethis
    def suggest2 (self, sWord, nSuggLimit=10):
        "returns a set of suggestions for <sWord>"
        sWord = cp.spellingNormalization(sWord)
        sPfx, sWord, sSfx = cp.cut(sWord)
        oSuggResult = SuggResult(sWord)
        self._suggest2(oSuggResult)
        aSugg = oSuggResult.getSuggestions(nSuggLimit)
        if sSfx or sPfx:
            # we add what we removed
            return list(map(lambda sSug: sPfx + sSug + sSfx, aSugg))
        return aSugg

    def _suggest2 (self, oSuggResult, nDeep=0, iAddr=0, sNewWord=""):
        # recursive function
        #logging.info((nDeep * "  ") + sNewWord)
        if nDeep >= oSuggResult.nDistLimit:
            sCleanNewWord = cp.simplifyWord(sNewWord)
            if st.distanceSift4(oSuggResult.sCleanWord[:len(sCleanNewWord)], sCleanNewWord) > oSuggResult.nDistLimit:
                return
        if int.from_bytes(self.byDic[iAddr:iAddr+self.nBytesArc], byteorder='big') & self._finalNodeMask:
            oSuggResult.addSugg(sNewWord, nDeep)
        for cChar, jAddr in self._getCharArcs(iAddr, oSuggResult.sWord[nDeep:nDeep+1]):
            self._suggest2(oSuggResult, nDeep+1, jAddr, sNewWord+cChar)
        return

    def _getCharArcs (self, iAddr):
        "generator: yield all chars and addresses from node at address <iAddr>"
        for nVal, jAddr in self._getArcs(iAddr):
            if nVal <= self.nChar:
                yield (self.dCharVal[nVal], jAddr)

    def _getTails (self, iAddr, sTail="", n=2):







|







 







<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<







350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
...
385
386
387
388
389
390
391


























392
393
394
395
396
397
398
        for cChar, jAddr in self._getCharArcs(iAddr):
            if cChar in cp.d1to1.get(cCurrent, cCurrent):
                self._suggest(oSuggResult, sRemain[1:], nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, jAddr, sNewWord+cChar)
            elif not bAvoidLoop:
                if nMaxHardRepl and self.isNgramsOK(cChar+sRemain[1:2]):
                    self._suggest(oSuggResult, sRemain[1:], nMaxSwitch, nMaxDel, nMaxHardRepl-1, nMaxJump, nDist+1, nDeep+1, jAddr, sNewWord+cChar, True)
                if nMaxJump:
                    self._suggest(oSuggResult, sRemain, nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump-1, nDist+1, nDeep+1, jAddr, sNewWord+cChar, True) # True for avoiding loop?
        if not bAvoidLoop: # avoid infinite loop
            if len(sRemain) > 1:
                if cCurrent == sRemain[1:2]:
                    # same char, we remove 1 char without adding 1 to <sNewWord>
                    self._suggest(oSuggResult, sRemain[1:], nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, iAddr, sNewWord)
                else:
                    # switching chars
................................................................................
        "returns True if sChars in known 2grams"
        if len(sChars) != 2:
            return True
        if not self.a2grams:
            return True
        return sChars in self.a2grams



























    def _getCharArcs (self, iAddr):
        "generator: yield all chars and addresses from node at address <iAddr>"
        for nVal, jAddr in self._getArcs(iAddr):
            if nVal <= self.nChar:
                yield (self.dCharVal[nVal], jAddr)

    def _getTails (self, iAddr, sTail="", n=2):