anchor.diff:  						  answersDiv.hide();
   						  $('#qc'+id).append($('<li>').append(displayQuestion(question)).append(answersDiv));
   						});
  -						$('.questionTitle').off('click');
  -						bindQuestionsEvent();
  +						$internalPromise.resolve(true);
   					}
   				});
   
   
   
  -        }
  -        $('#qc'+id).show();
  -        $(this).parent().addClass('select');
  +        } else {
  +		  $internalPromise.resolve(false);
  +		}
  +        $internalPromise.then(function(isQuestionBindingRequired) {
  +          $('#qc' + id).show();
  +          $(this).parent().addClass('select');
  +		  if (isQuestionBindingRequired) {
  +		    bindQuestionsEvent();
  +		  }
  +          $firstCategoryClickEventProcessedPromise.resolve();
  +        });
         }
       });
   }
   
   $(document).ready(function() {
  +  $firstCategoryClickEventProcessedPromise = $.Deferred();
     bindCategoryEvent();
     bindQuestionsEvent();
     $('.questions').hide();
  
positive.code: }
  <fmt:message key="GML.subscribe" var="labelSubscribe"/>
  <fmt:message key="GML.unsubscribe" var="labelUnsubscribe"/>
  function successUnsubscribe() {
     $("#yui-gen2").empty().append($('<a>').addClass('yuimenuitemlabel').attr('href',
     "javascript:subscribe();").attr('title',
     '<view:encodeJs string="${labelSubscribe}" />').append('<view:encodeJs string="${labelSubscribe}" />') );
  }
  
  function successSubscribe() {
     $("#yui-gen2").empty().append($('<a>').addClass('yuimenuitemlabel').attr(
     'href', "javascript:unsubscribe();").attr('title',
     '<view:encodeJs string="${labelUnsubscribe}" />').append('<view:encodeJs string="${labelUnsubscribe}" />') );
  }
  
  function unsubscribe() {
  
negative.code:     </c:otherwise>
    </c:choose>
    <c:if test="${param.questionId != null}">
      $firstCategoryClickEventProcessedPromise.then(function(){
        $('#q<c:out value="${param.questionId}"/>').trigger($.Event('click'));
      });
    </c:if>
  
    $('.category').hover(function() {
  