function $AdfDhtmlZOrderLayer$$($containerElementId$$) {
  this.Init($containerElementId$$);
}
$goog$exportSymbol$$("AdfDhtmlZOrderLayer", $AdfDhtmlZOrderLayer$$);
$AdfObject$$.$createSubclass$($AdfDhtmlZOrderLayer$$);
$AdfDhtmlZOrderLayer$$.$_MINIMAL_Z_INDEX$ = 20;
$AdfDhtmlZOrderLayer$$.prototype.Init = function $$AdfDhtmlZOrderLayer$$$$Init$($containerElementId$$1$$) {
  $AdfDhtmlZOrderLayer$$.$superclass$.Init.call(this);
  this.$_containerElementId$ = $containerElementId$$1$$;
  this.$_elements$ = [];
  this.$_elementsCount$ = 0;
};
$AdfObject$$.$exportPrototypeSymbol$("AdfDhtmlZOrderLayer.prototype.Init", {Init:$AdfDhtmlZOrderLayer$$.prototype.Init});
$AdfDhtmlZOrderLayer$$.prototype.$getContainerElement$ = function $$AdfDhtmlZOrderLayer$$$$$getContainerElement$$() {
  var $containerElementId$$2$$ = this.getId();
  return $AdfAgent$$.$AGENT$.getElementById($containerElementId$$2$$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfDhtmlZOrderLayer.prototype.getContainerElement", {$getContainerElement$:$AdfDhtmlZOrderLayer$$.prototype.$getContainerElement$});
$AdfDhtmlZOrderLayer$$.prototype.$getContainerElementCount$ = function $$AdfDhtmlZOrderLayer$$$$$getContainerElementCount$$() {
  return this.$_elementsCount$;
};
$AdfObject$$.$exportPrototypeSymbol$("AdfDhtmlZOrderLayer.prototype.getContainerElementCount", {$getContainerElementCount$:$AdfDhtmlZOrderLayer$$.prototype.$getContainerElementCount$});
$AdfDhtmlZOrderLayer$$.prototype.getId = function $$AdfDhtmlZOrderLayer$$$$getId$() {
  return this.$_containerElementId$;
};
$AdfObject$$.$exportPrototypeSymbol$("AdfDhtmlZOrderLayer.prototype.getId", {getId:$AdfDhtmlZOrderLayer$$.prototype.getId});
$AdfDhtmlZOrderLayer$$.prototype.addElement = function $$AdfDhtmlZOrderLayer$$$$addElement$($element$$177$$, $priorElement$$) {
  this.$_elementsCount$++;
  var $elements$$13$$ = this.$_elements$, $i$$219_s$$5$$ = 0;
  $priorElement$$ ? ($i$$219_s$$5$$ = $AdfCollections$$.indexOf($elements$$13$$, $priorElement$$), -1 < $i$$219_s$$5$$ ? $elements$$13$$.splice($i$$219_s$$5$$, 0, $element$$177$$) : ($elements$$13$$.push($element$$177$$), $i$$219_s$$5$$ = $elements$$13$$.length - 1)) : ($elements$$13$$.push($element$$177$$), $i$$219_s$$5$$ = $elements$$13$$.length - 1);
  for (;$i$$219_s$$5$$ < $elements$$13$$.length;$i$$219_s$$5$$++) {
    $i$$219_s$$5$$ in $elements$$13$$ && (this.$_elements$[$i$$219_s$$5$$].style.zIndex = 2 * $i$$219_s$$5$$ + $AdfDhtmlZOrderLayer$$.$_MINIMAL_Z_INDEX$);
  }
  this.$getContainerElement$().appendChild($element$$177$$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfDhtmlZOrderLayer.prototype.addElement", {addElement:$AdfDhtmlZOrderLayer$$.prototype.addElement});
$AdfDhtmlZOrderLayer$$.prototype.$removeElement$ = function $$AdfDhtmlZOrderLayer$$$$$removeElement$$($element$$178$$) {
  var $elementsCount$$ = this.$_elementsCount$--, $elements$$14$$ = this.$_elements$, $i$$220$$ = $AdfCollections$$.indexOf($elements$$14$$, $element$$178$$);
  -1 < $i$$220$$ && delete $elements$$14$$[$i$$220$$];
  this.$getContainerElement$().removeChild($element$$178$$);
  0 == $elementsCount$$ && (this.$_elements$ = []);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfDhtmlZOrderLayer.prototype.removeElement", {$removeElement$:$AdfDhtmlZOrderLayer$$.prototype.$removeElement$});
$AdfDhtmlZOrderLayer$$.prototype.$raiseToFront$ = function $$AdfDhtmlZOrderLayer$$$$$raiseToFront$$($elementIndex$$inline_993_raisingElement$$) {
  var $elements$$15$$ = this.$_elements$, $i$$221$$ = $AdfCollections$$.indexOf($elements$$15$$, $elementIndex$$inline_993_raisingElement$$);
  -1 < $i$$221$$ && (delete $elements$$15$$[$i$$221$$], $elements$$15$$.push($elementIndex$$inline_993_raisingElement$$), $elementIndex$$inline_993_raisingElement$$ = $elements$$15$$.length - 1, this.$_elements$[$elementIndex$$inline_993_raisingElement$$].style.zIndex = 2 * $elementIndex$$inline_993_raisingElement$$ + $AdfDhtmlZOrderLayer$$.$_MINIMAL_Z_INDEX$);
};
$AdfObject$$.$exportPrototypeSymbol$("AdfDhtmlZOrderLayer.prototype.raiseToFront", {$raiseToFront$:$AdfDhtmlZOrderLayer$$.prototype.$raiseToFront$});
$AdfDhtmlZOrderLayer$$.prototype.$visitElements$ = function $$AdfDhtmlZOrderLayer$$$$$visitElements$$($callback$$91$$) {
  $AdfAssert$$.$assertFunction$($callback$$91$$, "no visitor callback");
  for (var $elements$$16$$ = this.$_elements$, $i$$222$$ = 0;$i$$222$$ < $elements$$16$$.length && !($i$$222$$ in $elements$$16$$ && $callback$$91$$(this, $elements$$16$$[$i$$222$$]));$i$$222$$++) {
  }
};
$AdfObject$$.$exportPrototypeSymbol$("AdfDhtmlZOrderLayer.prototype.visitElements", {$visitElements$:$AdfDhtmlZOrderLayer$$.prototype.$visitElements$});
