I have a 2000 40hp. Johnson (j40plssm) that has me baffled. Will run great sometimes and terrible at times. When I say runs terrible it starts cutting out around 2500-3000 rpm's. Runs and cranks fine in water and on muffs. I first thought it was going into slow mode because of temperature. Have ruled that out. Replaced plugs still same result. Decarbonized carbs. and changed plugs, ran great for 15 minutes then bogged down again. Will run great some days for a while and then some days runs terrible all day. Compression is 145/143, engine stays cool to the touch after running for extended times. VRO is working fine, gas is good and clean, new fuel filter, even borrowed a buddy's fuel line with no change. Take off one plug wire under load and it runs smooth at about 2500 rpm's. Same result with other plug wire off. Put a timing light on it in driveway with muffs and the lights are all over the place on both wires. No consistency at all. Went out to a no-wake lake yesterday to fish and engine surges up and down when idling around. On the way back to the ramp the warning lights started going through routine when the key is first turned on. "One short beep with all 4 lights on and then they go off one by one". Did this about four times in 2 minute period. Any idea where I need to look next?