public function append($placeHolder)
	{
		if ( ! $placeHolder instanceof PlaceHolder) {
			throw new \LogicException(__METHOD__ . " accepts PlaceHolder arguments only");
		}
		
		if (isset($this->localization)) {
			
			$placeHolderName = $placeHolder->getName();
			
			// Add to final in cases when it's the page place or locked one
			if ($placeHolder->getLocked() || $placeHolder->getMaster()->equals($this->localization)) {
				
				// Ignore if already set locked place with higher hierarchy level
				if ($this->finalPlaceHolderSet->offsetExists($placeHolderName)) {
					return;
				}
				
				$this->finalPlaceHolderSet->offsetSet($placeHolderName, $placeHolder);
			} else {
				
				// collect not matched template place holders to search for locked blocks
				$this->parentPlaceHolderSet->append($placeHolder);
			}
		}
		
		parent::append($placeHolder);
	}