The results in Gorakhpur and Phulpur cannot be explained by arithmetic alone because BJP had polled way more than SP and BSP put together in both these seats in 2014. In Phulpur, it had polled just over 5 lakh votes, while SP and BSP between them had got a little under 3.6 lakh votes. In Gorakhpur, BJP got almost 5.4 lakh votes, while the combined SP-BSP tally was just over 4 lakh.Thus, BJP should have won comfortably in both seats, by about 1.4 lakh vote margins. Instead, it lost by almost 59,500 votes in Phulpur and nearly 22,000 in Gorakhpur. Clearly there was more than arithmetic at work here.Another explanation given is that the low turnouts in the bypolls, particularly in urban areas, were primarily because BJP supporters didn’t come out in large numbers to vote, either due to bad candidate selection or for other reasons. This too cannot fully explain the outcome.Low turnout might explain why BJP’s votes came down to 4.3 lakh in Gorakhpur and 2.8 lakh in Phulpur, but not how the combined SPBSP votes went up by almost 54,000 in Gorakhpur when the total votes polled fell by over a lakh. Clearly, both arithmetic and chemistry were at work. In any case, even supporters staying home in such large numbers instead of voting indicates resentment against the party and has the same effect as a swing against it.In Bihar , too, data suggests arithmetic didn’t decide the polls. In 2014, BJP had polled 2.6 lakh votes in Araria and JD(U) 2.2 lakh. Their combined tally was thus 4.8 lakh, enough to beat the RJD’s tally of 4.1 lakh by about 75,000 votes. Yet, RJD retained the seat by a comfortable margin of nearly 62,000 votes. Again, this suggests a swing away from NDA.In the Jehanabad assembly seat, too, RJD defied the arithmetic to win comfortably. Comparison with the 2015 assembly elections is not possible in this case, since the alliances have completely changed. A comparison with 2014, however, shows that BJP ally RLSP got over 62,000 and JD(U) nearly 17,000, which should have been enough to give the NDA a margin of almost 23,000 since RJD had got only about 56,000 votes. Instead, RJD has won by 35,000.In Bhabua, the arithmetic based on the 2014 results would have suggested a win for BJP by about 39,500 votes. This is the only case where the outcome matches what the arithmetic would predict even if the margin is a little lower than expected.