£444,444
1 bed cottage for saleTest Pl, Test SE1
1 bed
1 bath
Equity loan
Freehold
About this property
Testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract testing without pl+ contract
Mortgage calculator
Monthly repayment
£2,223 per month
Whole of market comparison
70+ lenders and 10,000+ products
The monthly repayments provided are estimates and should be used as a guide only. The actual amount you can borrow will depend on your personal financial situation and subject to a full application. For a more precise estimate, please use the Mojo mortgage calculator. Your home or property may be repossessed if you do not keep up repayments on your mortgage.
Developer Test
.png)


