<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for the
  specific language governing permissions and limitations
  under the License.

-->
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-9.xsd">
<wicket:extend>
	<div class="mt-3">
		<input id="room-upload-to-wb" name="room-upload-to-wb" type="checkbox" value="true"/>&nbsp;<label for="room-upload-to-wb"><wicket:message key="1312"/></label>
		<div class="me-3 d-none" id="room-upload-clean-block">
			<input id="room-upload-clean" name="room-upload-clean" type="checkbox" value="true"/>&nbsp;<label for="room-upload-clean"><wicket:message key="62"/></label>
		</div>
	</div>
	<input wicket:id="lastSelectedId" name="room-upload-last-selected-id" type="hidden" value=""/>
	<input wicket:id="lastSelectedRoom" name="room-upload-last-selected-room" type="hidden" value=""/>
	<input wicket:id="lastSelectedOwner" name="room-upload-last-selected-owner" type="hidden" value=""/>
	<input wicket:id="lastSelectedGroup" name="room-upload-last-selected-group" type="hidden" value=""/>
</wicket:extend>
</html>
