<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2014 The Android Open Source Project

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

<resources>
    <public type="attr" name="attr1" id="0x7f010000" />
    <attr name="attr1" format="reference|integer" />

    <public type="attr" name="attr2" id="0x7f010001" />
    <attr name="attr2" format="reference|integer" />

    <public type="layout" name="main" id="0x7f020000" />
    <public type="layout" name="layout" id="0x7f020001" />

    <public type="string" name="test1" id="0x7f030000" />
    <string name="test1">test1</string>

    <public type="string" name="test2" id="0x7f030001" />
    <string name="test2">test2</string>

    <public type="string" name="density" id="0x7f030002" />

    <public type="integer" name="number1" id="0x7f040000" />
    <integer name="number1">200</integer>

    <public type="integer" name="number2" id="0x7f040001" />
    <integer name="number2">@array/integerArray1</integer>

    <public type="integer" name="ref1" id="0x7f040002" />
    <integer name="ref1">@integer/ref2</integer>

    <public type="integer" name="ref2" id="0x7f040003" />
    <integer name="ref2">12000</integer>

    <public type="integer" name="deep_ref" id="0x7f040004" />
    <integer name="deep_ref">@integer/deep_ref_1</integer>
    <integer name="deep_ref_1">@integer/deep_ref_2</integer>
    <integer name="deep_ref_2">@integer/deep_ref_3</integer>
    <integer name="deep_ref_3">@integer/deep_ref_4</integer>
    <integer name="deep_ref_4">@integer/deep_ref_5</integer>
    <integer name="deep_ref_5">@integer/deep_ref_6</integer>
    <integer name="deep_ref_6">@integer/deep_ref_7</integer>
    <integer name="deep_ref_7">@integer/deep_ref_8</integer>
    <integer name="deep_ref_8">@integer/deep_ref_9</integer>
    <integer name="deep_ref_9">100</integer>

    <public type="style" name="Theme1" id="0x7f050000" />
    <style name="Theme1">
        <item name="com.android.basic:attr1">100</item>
        <item name="com.android.basic:attr2">@integer/number1</item>
    </style>

    <public type="style" name="Theme2" id="0x7f050001" />
    <style name="Theme2" parent="@com.android.basic:style/Theme1">
        <item name="com.android.basic:attr1">300</item>
    </style>

    <public type="array" name="integerArray1" id="0x7f060000" />
    <integer-array name="integerArray1">
        <item>1</item>
        <item>2</item>
        <item>3</item>
    </integer-array>

    <overlayable>
        <item type="string" name="test2" />
        <item type="array" name="integerArray1" />
    </overlayable>
</resources>
