<?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.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:windowSoftInputMode="adjustPan"
      package="__PACKAGE__" android:versionName="1.0" android:versionCode="1" android:hardwareAccelerated="true">
    <supports-screens
        android:largeScreens="true"
        android:normalScreens="true"
        android:smallScreens="true"
        android:xlargeScreens="true"
        android:resizeable="true"
        android:anyDensity="true"
        />

    <uses-permission android:name="android.permission.INTERNET" />

    <application android:icon="@drawable/icon" android:label="@string/app_name"
        android:hardwareAccelerated="true"
        android:debuggable="true">
        <activity android:name="__ACTIVITY__" android:label="@string/app_name"
                android:theme="@android:style/Theme.Black.NoTitleBar"
                android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <uses-library android:name="com.amazon.webview" android:required="false"/>
        <service android:name="org.chromium.content.app.SandboxedProcessService0"
            android:process=":sandboxed_process0"
            android:permission="org.chromium.content_shell.permission.SANDBOX"
            android:exported="false"
            />
        <service android:name="org.chromium.content.app.SandboxedProcessService1"
            android:process=":sandboxed_process1"
            android:permission="org.chromium.content_shell.permission.SANDBOX"
            android:exported="false"
            />
        <service android:name="org.chromium.content.app.SandboxedProcessService2"
            android:process=":sandboxed_process2"
            android:permission="org.chromium.content_shell.permission.SANDBOX"
            android:exported="false"
            />
        <service android:name="org.chromium.content.app.SandboxedProcessService3"
            android:process=":sandboxed_process3"
            android:permission="org.chromium.content_shell.permission.SANDBOX"
            android:exported="false"
            />
        <service android:name="org.chromium.content.app.SandboxedProcessService4"
            android:process=":sandboxed_process4"
            android:permission="org.chromium.content_shell.permission.SANDBOX"
            android:exported="false"
            />
        <service android:name="org.chromium.content.app.SandboxedProcessService5"
            android:process=":sandboxed_process5"
            android:permission="org.chromium.content_shell.permission.SANDBOX"
            android:exported="false"
            />
    </application>

    <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="__APILEVEL__"/>
</manifest> 
