I got different diagnosis - maybe bad spark plugs and wires , maybe bad gas or maybe something else. I got the feeling the mechanics were just planning to replace parts till the problem went away.
anyway the check light hasn't come back yet. I had checked the air filter coz I read somewhere about dirty air filter causing the MAS sensor to clog up and cause the check light. the air filter was clean. the spark plugs were not replaced at the 30K service coz they are iridium or platinum or something and should last 60K. I have one more mechanic ( not a dealer) whom I need to take car to. His place is a bit far. I was trying to avoid driving that far..