<?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.

-->
<project>
  <output>
    <movie disabled="False"/>
    <movie version="20"/>
    <movie platform="Flash Player"/>
    <movie height="600"/>
    <movie background="#FFFFFF"/>
    <movie fps="60"/>
    <movie path="bin-debug/TreeExample.swf"/>
    <movie input=""/>
    <movie width="800"/>
  </output>
  &lt;!-- Other classes to be compiled into your SWF --&gt;
  <jsOutput>
    <option path=""/>
  </jsOutput>
  <classpaths>
    <class path="src/main/royale"/>
  </classpaths>
  <moonshineResourcePaths></moonshineResourcePaths>
  <moonshineNativeExtensionPaths></moonshineNativeExtensionPaths>
  <build>
    <option useNetwork="True"/>
    <option optimize="False"/>
    <option sourceMap="False"/>
    <option accessible="False"/>
    <option useResourceBundleMetadata="True"/>
    <option showBindingWarnings="True"/>
    <option es="False"/>
    <option warnings="True"/>
    <option strict="True"/>
    <option allowSourcePathOverlap="False"/>
    <option verboseStackTraces="False"/>
    <option showDeprecationWarnings="True"/>
    <option benchmark="False"/>
    <option linkReport=""/>
    <option customSDK=""/>
    <option showUnusedTypeSelectorWarnings="True"/>
    <option locale=""/>
    <option showActionScriptWarnings="True"/>
    <option staticLinkRSL="False"/>
    <option additional=""/>
    <option antBuildPath="build/build.xml"/>
    <option loadConfig=""/>
    <option compilerConstants=""/>
  </build>
  <mavenBuild>
    <option settingsFilePath=""/>
    <option dominoNotesPlatform=""/>
    <option commandLine=""/>
    <option mavenBuildPath=""/>
    <option dominoNotesProgram=""/>
    <actions>
      <action action="install" actionName="Build"/>
      <action action="clean package" actionName="Clean and package"/>
      <action action="clean" actionName="Clean"/>
      <action action="clean install" actionName="Clean and Build"/>
      <action action="war:exploded" actionName="Exploded"/>
    </actions>
  </mavenBuild>
  <includeLibraries></includeLibraries>
  <libraryPaths></libraryPaths>
  <externalLibraryPaths></externalLibraryPaths>
  <rslPaths></rslPaths>
  <intrinsics></intrinsics>
  <library></library>
  <modules/>
  <compileTargets>
    <compile path="src/main/royale/TreeExample.mxml"/>
  </compileTargets>
  <hiddenPaths></hiddenPaths>
  <preBuildCommand>null</preBuildCommand>
  <postBuildCommand alwaysRun="False">null</postBuildCommand>
  <trustSVNCertificate>False</trustSVNCertificate>
  <options>
    <option isExportedToExistingSource="False"/>
    <option testMovie=""/>
    <option isRoyale="True"/>
    <option visualEditorExportPath=""/>
    <option testMovieCommand=""/>
    <option defaultBuildTargets=""/>
    <option isPrimeFacesVisualEditor="False"/>
    <option showHiddenPaths="False"/>
  </options>
  <moonshineRunCustomization>
    <option targetPlatform="5"/>
    <option launchMethod="Simulator"/>
    <option projectType="2"/>
    <option urlToLaunch=""/>
    <option deviceConnectType="USB"/>
    <option customUrlToLaunch=""/>
    <option deviceSimulator="null"/>
    <option webBrowser="Google Chrome"/>
    <deviceSimulator>Apple iPad</deviceSimulator>
    <certAndroid>null</certAndroid>
    <certIos>null</certIos>
    <certIosProvisioning>null</certIosProvisioning>
  </moonshineRunCustomization>
</project>