Element.implement({getSelectedValue:function(){if(this.tagName.toLowerCase()!="select"){return null}return $splat(new Elements($A(this.options).filter(function(A){return A.selected})).map(function(A){return A.value.clean()}))},getSelectedIndex:function(){if(this.tagName.toLowerCase()!="select"){return null}return $splat(new Elements($A(this.options).filter(function(A){return A.selected})).map(function(A){return A.index}))},getSelectedFull:function(){if(this.tagName.toLowerCase()!="select"){return null}return $splat(new Elements($A(this.options).filter(function(A){return A.selected})).map(function(A){return{"index":A.index,"value":A.value.clean()}}))},setSelected:function(A,B){if(this.tagName.toLowerCase()!="select"){return null}if(!B){this.clearSelect()}var A=$splat(A);Array.each(this.options,function(D,C){if(A.contains(D.getProperty("value"))||A.contains(C)){D.set("selected","selected")}});return },clearSelect:function(B){if(this.tagName.toLowerCase()!="select"){return null}var A=this.getSelectedFull();Array.each(this.options,function(C){C.set("selected",(C.defaultSelected&&B)?"selected":"")});return A}})