anchor.diff:  				    day.each(SC.slideAndHide);
   					showMonth.each(function(e){e.reveal();});
     					hideMonth.each(function(e){e.conceal();});
  -					showButton.conceal()
  -					hideButton.reveal()
  -
  -					showDay.each(function (e){$(e).update('<a href="#" class="control showArrow" id="showArrow">&#43;</a>');});
  +					showButton.reveal()
  +					hideButton.conceal()
  +
  +                    if ($('showArrow') != null && $('showArrow').innerHTML.toLowerCase() == '<b>-</b>'){
  +                        $('showArrow').innerHTML = "";
  +                    }
  +
  +                    showDay.each(function (e){$(e).update('<a href="#" class="control showArrow" id="showArrow">&#43;</a>');});
   				}
   				);
   
   			}
   			function hideSetup(){
  -				registerHideHandler()
  +                if (init == null) {
  +                    initialize_arrows();
  +                }                
  +                registerHideHandler()
   			}
   
   			function registerArrowHandler(a, counter){
  -				var aElement = $(a)
  -
  -				Event.observe(aElement, "click", function(e) {
  +                var aElement = $(a)
  +                Event.observe(aElement, "click", function(e) {
                       Event.stop(e)
  -					if ($('showArrow').innerHTML == '<b>—</b>'){
  -                		Element.update(this, '<a href="#" class="control showArrow" id="showArrow">&#43;</a>')
  +                    var specificElement = document.getElementsByClassName('control showArrow')[counter];
  +                    //need to cast to LowerCase, as IE7 converts tags to upper case
  +                    if (specificElement != null && specificElement.innerHTML.toLowerCase() == '<b>-</b>'){
  +                        Element.update(this, '<a href="#" class="control showArrow" id="showArrow">&#43;</a>')
   						SC.slideAndHide(day[counter], {afterFinish: check})
   
  -
  -					}
  -                	else{
  -						Element.update(this, '<a href="#" class="control showArrow" id="showArrow"><b>&#45;</b></a>')
  +					} else{
  +                        Element.update(this, '<a href="#" class="control showArrow" id="showArrow"><b>&#45;</b></a>')
   						SC.slideAndShow(day[counter], {afterFinish: check})
   					}
                   })
   			}
  -			function registerArrowHandlers(){
  +
  +            function registerArrowHandlers(){
   				var counter = 0;
                   showDay.each(function(num) {registerArrowHandler(num, counter); counter++;});
               }
  
positive.code: 					showButton.conceal()
  					hideButton.reveal()
  
  					showDay.each(function (e){$(e).update('<a href="#" class="control showArrow" id="showArrow"><b>&#45;</b></a>');});
  
  				}
  				);
  			}
  
  			function showSetup(){
  				if (init == null) initialize_arrows();
  				registerShowHandler()
  			}
  
  
negative.code: 				 allDaysArePresent = false;
  				 allDaysAreHidden = true;
  				 init = true;
              }
  			function check()
  			{
  
  