Onrollover in for loop issue



var sname0 = "State1"; //but1
var sname1 = "State2";   //but2
var temp=0;




for (temp=0; temp<=10; temp++) {


	this['but'+temp].onRollOver = function (){
			
			trace('but'+temp);  // this returns but11 
			bubble_mc._visible = true;
			bubble_mc.text = this['sname'+temp];
		}
		
	this['but'+temp].onRollOut = function (){
			bubble_mc.text = "";
			bubble_mc._visible = false;
		}	
}


The bubble_mc.text comes out to be undefined. Also the trace(‘but’+temp) is returning but11 on hover. I am doing something wrong here as i have been out of practice for sometime. Please help.