<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright 2013 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>
    <string name="app_name">FeedSync Sample</string>
    <string name="account_name">FeedSync Service</string>
    <string name="title_entry_detail">Entry Detail</string>
    <string name="loading">Waiting for sync...</string>
    <string name="description_refresh">Refresh</string>
</resources>