am 1558abd6: Merge change I53e268db into eclair-sdk

Merge commit '1558abd6d3706380cf4634c151ee7952e0b317fb' into eclair

* commit '1558abd6d3706380cf4634c151ee7952e0b317fb':
  docs: make the apidemos app index page only display the
diff --git a/apps/Development/AndroidManifest.xml b/apps/Development/AndroidManifest.xml
index 0bdd26e..7f0f594 100644
--- a/apps/Development/AndroidManifest.xml
+++ b/apps/Development/AndroidManifest.xml
@@ -84,6 +84,14 @@
             </intent-filter>
         </activity>
 
+        <activity android:name="SyncAdapterDriver" android:label="Sync Tester"
+                  android:theme="@android:style/Theme.Light">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+                <category android:name="android.intent.category.TEST" />
+            </intent-filter>
+        </activity>
+
         <activity android:name="DataList">
         </activity>
         <activity android:name="Details">
diff --git a/apps/Development/res/layout/account_list_view.xml b/apps/Development/res/layout/account_list_view.xml
new file mode 100644
index 0000000..d255672
--- /dev/null
+++ b/apps/Development/res/layout/account_list_view.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 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.
+-->
+
+<ListView
+   xmlns:android="http://schemas.android.com/apk/res/android"
+   android:layout_width="fill_parent"
+   android:layout_height="fill_parent"/>
diff --git a/apps/Development/res/layout/sync_adapter_driver.xml b/apps/Development/res/layout/sync_adapter_driver.xml
new file mode 100644
index 0000000..58c0ebb
--- /dev/null
+++ b/apps/Development/res/layout/sync_adapter_driver.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 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.
+-->
+
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent">
+
+    <LinearLayout android:orientation="vertical"
+		  android:layout_width="fill_parent"
+		  android:layout_height="wrap_content">
+        <TextView android:id="@+id/sync_adapters_spinner_label"
+		android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+		android:textSize="22dip"
+                android:text="@string/sync_adapters_spinner_label"/>
+
+        <Spinner android:id="@+id/sync_adapters_spinner"
+                 android:layout_width="wrap_content"
+                 android:layout_height="wrap_content"/>
+        <LinearLayout
+	   android:orientation="horizontal"
+           android:layout_width="fill_parent"
+           android:layout_height="52dip">
+            <Button
+	       android:id="@+id/bind_button"
+	       android:layout_width="0dip"
+	       android:layout_height="wrap_content"
+	       android:text="@string/bind_button"
+               android:onClick="initiateBind"
+               android:layout_weight="2"/>
+
+            <Button
+               android:id="@+id/unbind_button"
+               android:layout_width="0dip"
+               android:layout_height="wrap_content"
+               android:text="@string/unbind_button"
+               android:onClick="initiateUnbind"
+               android:layout_weight="2"/>
+        </LinearLayout>
+
+        <TextView android:id="@+id/bound_adapter_text_view"
+                  android:layout_width="wrap_content"
+                  android:textSize="20dip"
+                  android:layout_height="wrap_content"/>
+
+        <LinearLayout
+           android:orientation="horizontal"
+           android:layout_width="fill_parent"
+           android:layout_height="52dip">
+            <Button
+               android:id="@+id/start_sync_button"
+               android:layout_width="0dip"
+               android:layout_height="wrap_content"
+               android:text="@string/start_sync_button"
+               android:onClick="startSyncSelected"
+               android:layout_weight="2"/>
+
+            <Button
+    	       android:id="@+id/cancel_sync_button"
+               android:layout_width="0dip"
+               android:layout_height="wrap_content"
+               android:text="@string/cancel_sync_button"
+               android:onClick="cancelSync"
+               android:layout_weight="2"/>
+        </LinearLayout>
+
+        <TextView android:id="@+id/status_text_view"
+                  android:layout_width="wrap_content"
+                  android:layout_height="wrap_content"/>
+    </LinearLayout>
+</LinearLayout>
diff --git a/apps/Development/res/layout/sync_adapter_item.xml b/apps/Development/res/layout/sync_adapter_item.xml
new file mode 100644
index 0000000..d818c78
--- /dev/null
+++ b/apps/Development/res/layout/sync_adapter_item.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2009, 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.
+*/
+-->
+<TextView xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@android:id/text1"
+	style="?android:attr/spinnerItemStyle"
+    android:singleLine="true"
+    android:layout_width="fill_parent"
+    android:layout_height="52dip"
+    android:ellipsize="marquee" />
diff --git a/apps/Development/res/values/strings.xml b/apps/Development/res/values/strings.xml
index ad70fbe..c8a3f8b 100644
--- a/apps/Development/res/values/strings.xml
+++ b/apps/Development/res/values/strings.xml
@@ -155,4 +155,25 @@
     <string name="accounts_tester_edit_properties">Properties</string>
     <string name="accounts_tester_desired_authtokentype_label">authtoken type:</string>
     <string name="accounts_tester_desired_features_label">features:</string>
+
+    <!-- SyncAdapterDriver -->
+    <string name="bind_button">bind</string>
+    <string name="unbind_button">unbind</string>
+    <string name="start_sync_button">start sync</string>
+    <string name="cancel_sync_button">cancel sync</string>
+    <string name="sync_adapters_spinner_label">Registered Sync Adapters:</string>
+    <string name="status_starting_sync_format">Starting a sync of account %s...</string>
+    <string name="status_remote_exception_while_starting_sync">Got a RemoteException while starting the sync</string>
+    <string name="status_canceled_sync">Canceled the sync</string>
+    <string name="status_remote_exception_while_canceling_sync">Got a RemoteException while canceling the sync</string>
+    <string name="status_received_heartbeat">Received heartbeat</string>
+    <string name="status_sync_failed_format">Sync failed: %s</string>
+    <string name="status_sync_succeeded_format">Sync succeeded: %s</string>
+    <string name="status_already_bound">Already bound to sync adapter</string>
+    <string name="status_sync_adapter_not_selected">No selected sync adapter</string>
+    <string name="binding_connected_format">Connected to Sync Adapter\n\tauthority: %s\n\taccount type: %s</string>
+    <string name="binding_not_connected">Not connected to a sync adapter</string>
+    <string name="binding_bind_failed">Bind failed</string>
+    <string name="binding_waiting_for_connection">Waiting for service to be connected...</string>
+    <string name="select_account_to_sync">Select account to sync</string>
 </resources>
diff --git a/apps/Development/src/com/android/development/SyncAdapterDriver.java b/apps/Development/src/com/android/development/SyncAdapterDriver.java
new file mode 100644
index 0000000..c37075f
--- /dev/null
+++ b/apps/Development/src/com/android/development/SyncAdapterDriver.java
@@ -0,0 +1,374 @@
+/*
+ * Copyright (C) 2009 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.
+ */
+
+package com.android.development;
+
+import android.app.Activity;
+import android.app.PendingIntent;
+import android.app.Dialog;
+import android.app.AlertDialog;
+import android.content.res.TypedArray;
+import android.content.pm.RegisteredServicesCache;
+import android.content.pm.RegisteredServicesCacheListener;
+import android.content.SyncAdapterType;
+import android.content.ISyncAdapter;
+import android.content.ISyncContext;
+import android.content.ServiceConnection;
+import android.content.ComponentName;
+import android.content.SyncResult;
+import android.content.Intent;
+import android.content.Context;
+import android.os.Bundle;
+import android.os.IBinder;
+import android.os.RemoteException;
+import android.widget.ArrayAdapter;
+import android.widget.AdapterView;
+import android.widget.Spinner;
+import android.widget.Button;
+import android.widget.TextView;
+import android.widget.ListView;
+import android.util.AttributeSet;
+import android.provider.Settings;
+import android.accounts.Account;
+import android.accounts.AccountManager;
+import android.view.View;
+import android.view.LayoutInflater;
+
+import java.util.Collection;
+
+public class SyncAdapterDriver extends Activity
+        implements RegisteredServicesCacheListener<SyncAdapterType>,
+        AdapterView.OnItemClickListener {
+    private Spinner mSyncAdapterSpinner;
+
+    private Button mBindButton;
+    private Button mUnbindButton;
+    private TextView mBoundAdapterTextView;
+    private Button mStartSyncButton;
+    private Button mCancelSyncButton;
+    private TextView mStatusTextView;
+    private Object[] mSyncAdapters;
+    private SyncAdaptersCache mSyncAdaptersCache;
+    private final Object mSyncAdaptersLock = new Object();
+
+    private static final int DIALOG_ID_PICK_ACCOUNT = 1;
+    private ListView mAccountPickerView = null;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        mSyncAdaptersCache = new SyncAdaptersCache(this);
+        setContentView(R.layout.sync_adapter_driver);
+
+        mSyncAdapterSpinner = (Spinner) findViewById(R.id.sync_adapters_spinner);
+        mBindButton = (Button) findViewById(R.id.bind_button);
+        mUnbindButton = (Button) findViewById(R.id.unbind_button);
+        mBoundAdapterTextView = (TextView) findViewById(R.id.bound_adapter_text_view);
+
+        mStartSyncButton = (Button) findViewById(R.id.start_sync_button);
+        mCancelSyncButton = (Button) findViewById(R.id.cancel_sync_button);
+
+        mStatusTextView = (TextView) findViewById(R.id.status_text_view);
+
+        getSyncAdapters();
+        mSyncAdaptersCache.setListener(this, null /* Handler */);
+    }
+
+    protected void onDestroy() {
+        mSyncAdaptersCache.close();
+        super.onDestroy();
+    }
+
+    private void getSyncAdapters() {
+        Collection<RegisteredServicesCache.ServiceInfo<SyncAdapterType>> all =
+                mSyncAdaptersCache.getAllServices();
+        synchronized (mSyncAdaptersLock) {
+            mSyncAdapters = new Object[all.size()];
+            String[] names = new String[mSyncAdapters.length];
+            int i = 0;
+            for (RegisteredServicesCache.ServiceInfo<SyncAdapterType> item : all) {
+                mSyncAdapters[i] = item;
+                names[i] = item.type.authority + " - " + item.type.accountType;
+                i++;
+            }
+
+            ArrayAdapter<String> adapter =
+                    new ArrayAdapter<String>(this,
+                    R.layout.sync_adapter_item, names);
+            mSyncAdapterSpinner.setAdapter(adapter);
+        }
+    }
+
+    void updateUi() {
+        boolean isBound;
+        boolean hasServiceConnection;
+        synchronized (mServiceConnectionLock) {
+            hasServiceConnection = mActiveServiceConnection != null;
+            isBound = hasServiceConnection && mActiveServiceConnection.mBoundSyncAdapter != null;
+        }
+        mStartSyncButton.setEnabled(isBound);
+        mCancelSyncButton.setEnabled(isBound);
+        mBindButton.setEnabled(!hasServiceConnection);
+        mUnbindButton.setEnabled(hasServiceConnection);
+    }
+
+    public void startSyncSelected(View view) {
+        synchronized (mServiceConnectionLock) {
+            ISyncAdapter syncAdapter = null;
+            if (mActiveServiceConnection != null) {
+                syncAdapter = mActiveServiceConnection.mBoundSyncAdapter;
+            }
+
+            if (syncAdapter != null) {
+                removeDialog(DIALOG_ID_PICK_ACCOUNT);
+
+                mAccountPickerView = (ListView) LayoutInflater.from(this).inflate(
+                        R.layout.account_list_view, null);
+                mAccountPickerView.setOnItemClickListener(this);
+                Account accounts[] = AccountManager.get(this).getAccountsByType(
+                        mActiveServiceConnection.mSyncAdapter.type.accountType);
+                String[] accountNames = new String[accounts.length];
+                for (int i = 0; i < accounts.length; i++) {
+                    accountNames[i] = accounts[i].name;
+                }
+                ArrayAdapter<String> adapter =
+                        new ArrayAdapter<String>(SyncAdapterDriver.this,
+                        android.R.layout.simple_list_item_1, accountNames);
+                mAccountPickerView.setAdapter(adapter);
+
+                showDialog(DIALOG_ID_PICK_ACCOUNT);
+            }
+        }
+        updateUi();
+    }
+
+    private void startSync(String accountName) {
+        synchronized (mServiceConnectionLock) {
+            ISyncAdapter syncAdapter = null;
+            if (mActiveServiceConnection != null) {
+                syncAdapter = mActiveServiceConnection.mBoundSyncAdapter;
+            }
+
+            if (syncAdapter != null) {
+                try {
+                    mStatusTextView.setText(
+                            getString(R.string.status_starting_sync_format, accountName));
+                    Account account = new Account(accountName,
+                            mActiveServiceConnection.mSyncAdapter.type.accountType);
+                    syncAdapter.startSync(mActiveServiceConnection,
+                            mActiveServiceConnection.mSyncAdapter.type.authority,
+                            account, new Bundle());
+                } catch (RemoteException e) {
+                    mStatusTextView.setText(
+                            getString(R.string.status_remote_exception_while_starting_sync));
+                }
+            }
+        }
+        updateUi();
+    }
+
+    public void cancelSync(View view) {
+        synchronized (mServiceConnectionLock) {
+            ISyncAdapter syncAdapter = null;
+            if (mActiveServiceConnection != null) {
+                syncAdapter = mActiveServiceConnection.mBoundSyncAdapter;
+            }
+
+            if (syncAdapter != null) {
+                try {
+                    mStatusTextView.setText(getString(R.string.status_canceled_sync));
+                    syncAdapter.cancelSync(mActiveServiceConnection);
+                } catch (RemoteException e) {
+                    mStatusTextView.setText(
+                            getString(R.string.status_remote_exception_while_canceling_sync));
+                }
+            }
+        }
+        updateUi();
+    }
+
+    public void onServiceChanged(SyncAdapterType type, boolean removed) {
+        getSyncAdapters();
+    }
+
+    @Override
+    protected Dialog onCreateDialog(final int id) {
+        if (id == DIALOG_ID_PICK_ACCOUNT) {
+            AlertDialog.Builder builder = new AlertDialog.Builder(this);
+            builder.setMessage(R.string.select_account_to_sync);
+            builder.setInverseBackgroundForced(true);
+            builder.setView(mAccountPickerView);
+            return builder.create();
+        }
+        return super.onCreateDialog(id);
+    }
+
+    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+        TextView item = (TextView) view;
+        final String accountName = item.getText().toString();
+        dismissDialog(DIALOG_ID_PICK_ACCOUNT);
+        startSync(accountName);
+    }
+
+    private class MyServiceConnection extends ISyncContext.Stub implements ServiceConnection {
+        private volatile ISyncAdapter mBoundSyncAdapter;
+        final RegisteredServicesCache.ServiceInfo<SyncAdapterType> mSyncAdapter;
+
+        public MyServiceConnection(
+                RegisteredServicesCache.ServiceInfo<SyncAdapterType> syncAdapter) {
+            mSyncAdapter = syncAdapter;
+        }
+
+        public void onServiceConnected(ComponentName name, IBinder service) {
+            mBoundSyncAdapter = ISyncAdapter.Stub.asInterface(service);
+            final SyncAdapterType type = mActiveServiceConnection.mSyncAdapter.type;
+            mBoundAdapterTextView.setText(getString(R.string.binding_connected_format,
+                    type.authority, type.accountType));
+            updateUi();
+        }
+
+        public void onServiceDisconnected(ComponentName name) {
+            mBoundAdapterTextView.setText(getString(R.string.binding_not_connected));
+            mBoundSyncAdapter = null;
+            updateUi();
+        }
+
+        public void sendHeartbeat() {
+            runOnUiThread(new Runnable() {
+                public void run() {
+                    uiThreadSendHeartbeat();
+                }
+            });
+        }
+
+        public void uiThreadSendHeartbeat() {
+            mStatusTextView.setText(getString(R.string.status_received_heartbeat));
+        }
+
+        public void uiThreadOnFinished(SyncResult result) {
+            if (result.hasError()) {
+                mStatusTextView.setText(
+                        getString(R.string.status_sync_failed_format, result.toString()));
+            } else {
+                mStatusTextView.setText(
+                        getString(R.string.status_sync_succeeded_format, result.toString()));
+            }
+        }
+
+        public void onFinished(final SyncResult result) throws RemoteException {
+            runOnUiThread(new Runnable() {
+                public void run() {
+                    uiThreadOnFinished(result);
+                }
+            });
+        }
+    }
+
+    final Object mServiceConnectionLock = new Object();
+    MyServiceConnection mActiveServiceConnection;
+
+    public void initiateBind(View view) {
+        synchronized (mServiceConnectionLock) {
+            if (mActiveServiceConnection != null) {
+                mStatusTextView.setText(getString(R.string.status_already_bound));
+                return;
+            }
+
+            RegisteredServicesCache.ServiceInfo<SyncAdapterType> syncAdapter =
+                    getSelectedSyncAdapter();
+            if (syncAdapter == null) {
+                mStatusTextView.setText(getString(R.string.status_sync_adapter_not_selected));
+                return;
+            }
+
+            mActiveServiceConnection = new MyServiceConnection(syncAdapter);
+
+            Intent intent = new Intent();
+            intent.setAction("android.content.SyncAdapter");
+            intent.setComponent(syncAdapter.componentName);
+            intent.putExtra(Intent.EXTRA_CLIENT_LABEL,
+                    com.android.internal.R.string.sync_binding_label);
+            intent.putExtra(Intent.EXTRA_CLIENT_INTENT, PendingIntent.getActivity(
+                    this, 0, new Intent(Settings.ACTION_SYNC_SETTINGS), 0));
+            if (!bindService(intent, mActiveServiceConnection, Context.BIND_AUTO_CREATE)) {
+                mBoundAdapterTextView.setText(getString(R.string.binding_bind_failed));
+                mActiveServiceConnection = null;
+                return;
+            }
+            mBoundAdapterTextView.setText(getString(R.string.binding_waiting_for_connection));
+        }
+        updateUi();
+    }
+
+    public void initiateUnbind(View view) {
+        synchronized (mServiceConnectionLock) {
+            if (mActiveServiceConnection == null) {
+                return;
+            }
+            mBoundAdapterTextView.setText("");
+            unbindService(mActiveServiceConnection);
+            mActiveServiceConnection = null;
+        }
+        updateUi();
+    }
+
+    private RegisteredServicesCache.ServiceInfo<SyncAdapterType> getSelectedSyncAdapter() {
+        synchronized (mSyncAdaptersLock) {
+            final int position = mSyncAdapterSpinner.getSelectedItemPosition();
+            if (position == AdapterView.INVALID_POSITION) {
+                return null;
+            }
+            try {
+                //noinspection unchecked
+                return (RegisteredServicesCache.ServiceInfo<SyncAdapterType>)
+                        mSyncAdapters[position];
+            } catch (Exception e) {
+                return null;
+            }
+        }
+    }
+
+    static class SyncAdaptersCache extends RegisteredServicesCache<SyncAdapterType> {
+        private static final String SERVICE_INTERFACE = "android.content.SyncAdapter";
+        private static final String SERVICE_META_DATA = "android.content.SyncAdapter";
+        private static final String ATTRIBUTES_NAME = "sync-adapter";
+
+        SyncAdaptersCache(Context context) {
+            super(context, SERVICE_INTERFACE, SERVICE_META_DATA, ATTRIBUTES_NAME, null);
+        }
+
+        public SyncAdapterType parseServiceAttributes(String packageName, AttributeSet attrs) {
+            TypedArray sa = mContext.getResources().obtainAttributes(attrs,
+                    com.android.internal.R.styleable.SyncAdapter);
+            try {
+                final String authority =
+                        sa.getString(com.android.internal.R.styleable.SyncAdapter_contentAuthority);
+                final String accountType =
+                        sa.getString(com.android.internal.R.styleable.SyncAdapter_accountType);
+                if (authority == null || accountType == null) {
+                    return null;
+                }
+                final boolean userVisible = sa.getBoolean(
+                        com.android.internal.R.styleable.SyncAdapter_userVisible, true);
+                final boolean supportsUploading = sa.getBoolean(
+                        com.android.internal.R.styleable.SyncAdapter_supportsUploading, true);
+                return new SyncAdapterType(authority, accountType, userVisible, supportsUploading);
+            } finally {
+                sa.recycle();
+            }
+        }
+    }
+}
diff --git a/apps/Fallback/res/values-da/strings.xml b/apps/Fallback/res/values-da/strings.xml
index 4584e61..cc894c6 100644
--- a/apps/Fallback/res/values-da/strings.xml
+++ b/apps/Fallback/res/values-da/strings.xml
@@ -16,6 +16,6 @@
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="appTitle" msgid="161410001913116606">"Reserve"</string>
-    <string name="title" msgid="8156274565006125136">"Ikke understøttet handling"</string>
-    <string name="error" msgid="6539615832923362301">"Handlingen er ikke understøttet i øjeblikket."</string>
+    <string name="title" msgid="8156274565006125136">"Handlingen understøttes ikke"</string>
+    <string name="error" msgid="6539615832923362301">"Handlingen understøttes ikke i øjeblikket."</string>
 </resources>
diff --git a/build/sdk.atree b/build/sdk.atree
index 2cf0eba..3df449c 100644
--- a/build/sdk.atree
+++ b/build/sdk.atree
@@ -189,16 +189,21 @@
 docs/categories.txt platforms/${PLATFORM_NAME}/data/categories.txt
 docs/widgets.txt platforms/${PLATFORM_NAME}/data/widgets.txt
 framework/layoutlib.jar platforms/${PLATFORM_NAME}/data/layoutlib.jar
+
+# framework resources for layoutlib
 frameworks/base/core/res/res platforms/${PLATFORM_NAME}/data/res
-frameworks/base/data/fonts/fonts.xml platforms/${PLATFORM_NAME}/data/fonts/fonts.xml
-frameworks/base/data/fonts/DroidSans.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSans.ttf
-frameworks/base/data/fonts/DroidSans-Bold.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSans-Bold.ttf
-frameworks/base/data/fonts/DroidSansFallback.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSansFallback.ttf
-frameworks/base/data/fonts/DroidSansMono.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSansMono.ttf
-frameworks/base/data/fonts/DroidSerif-Bold.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Bold.ttf
+
+# fonts for layoutlib.
+frameworks/base/data/fonts/fonts.xml                 platforms/${PLATFORM_NAME}/data/fonts/fonts.xml
+frameworks/base/data/fonts/DroidSans.ttf             platforms/${PLATFORM_NAME}/data/fonts/DroidSans.ttf
+frameworks/base/data/fonts/DroidSans-Bold.ttf        platforms/${PLATFORM_NAME}/data/fonts/DroidSans-Bold.ttf
+frameworks/base/data/fonts/DroidSansMono.ttf         platforms/${PLATFORM_NAME}/data/fonts/DroidSansMono.ttf
+frameworks/base/data/fonts/DroidSerif-Bold.ttf       platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Bold.ttf
 frameworks/base/data/fonts/DroidSerif-BoldItalic.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-BoldItalic.ttf
-frameworks/base/data/fonts/DroidSerif-Italic.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Italic.ttf
-frameworks/base/data/fonts/DroidSerif-Regular.ttf platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Regular.ttf
+frameworks/base/data/fonts/DroidSerif-Italic.ttf     platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Italic.ttf
+frameworks/base/data/fonts/DroidSerif-Regular.ttf    platforms/${PLATFORM_NAME}/data/fonts/DroidSerif-Regular.ttf
+frameworks/base/data/fonts/DroidSansFallback.ttf     platforms/${PLATFORM_NAME}/data/fonts/DroidSansFallback.ttf
+frameworks/base/data/fonts/DroidSansJapanese.ttf     platforms/${PLATFORM_NAME}/data/fonts/DroidSansJapanese.ttf
 
 # empty add-on folder with just a readme copied from sdk.git
 sdk/scripts/README_add-ons.txt add-ons/README.txt
diff --git a/ndk/apps/hello-gl2/Application.mk b/ndk/apps/hello-gl2/Application.mk
new file mode 100644
index 0000000..6f884bf
--- /dev/null
+++ b/ndk/apps/hello-gl2/Application.mk
@@ -0,0 +1,3 @@
+APP_PROJECT_PATH := $(call my-dir)/project
+APP_MODULES      := libgl2jni
+
diff --git a/ndk/apps/hello-gl2/project/Android.mk b/ndk/apps/hello-gl2/project/Android.mk
new file mode 100644
index 0000000..2e36165
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/Android.mk
@@ -0,0 +1,10 @@
+LOCAL_PATH:= $(LOCAL_PATH)/jni
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE    := libgl2jni
+LOCAL_CFLAGS    := -Werror
+LOCAL_SRC_FILES := gl_code.cpp
+LOCAL_LDLIBS    := -llog -lGLESv2
+
+include $(BUILD_SHARED_LIBRARY)
diff --git a/ndk/apps/hello-gl2/project/AndroidManifest.xml b/ndk/apps/hello-gl2/project/AndroidManifest.xml
new file mode 100644
index 0000000..0ef6fb0
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/AndroidManifest.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2009, 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.
+*/
+-->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.gl2jni">
+    <application
+            android:label="@string/gl2jni_activity">
+        <activity android:name="GL2JNIActivity"
+                android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
+            	android:launchMode="singleTask"
+            	android:configChanges="orientation|keyboardHidden">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+                <category android:name="android.intent.category.LAUNCHER" />
+            </intent-filter>
+        </activity>
+    </application>
+    <uses-sdk android:minSdkVersion="5"/>
+</manifest>
diff --git a/ndk/apps/hello-gl2/project/default.properties b/ndk/apps/hello-gl2/project/default.properties
new file mode 100644
index 0000000..dbf05f2
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/default.properties
@@ -0,0 +1,11 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+# 
+# This file must be checked in Version Control Systems.
+# 
+# To customize properties used by the Ant build system use,
+# "build.properties", and override values to adapt the script to your
+# project structure.
+
+# Project target.
+target=android-5
diff --git a/ndk/apps/hello-gl2/project/jni/Android.mk b/ndk/apps/hello-gl2/project/jni/Android.mk
new file mode 100644
index 0000000..a995c86
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/jni/Android.mk
@@ -0,0 +1,24 @@
+# Copyright (C) 2009 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.
+#
+LOCAL_PATH:= $(call my-dir)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE    := libgl2jni
+LOCAL_CFLAGS    := -Werror
+LOCAL_SRC_FILES := gl_code.cpp
+LOCAL_LDLIBS    := -llog -lGLESv2
+
+include $(BUILD_SHARED_LIBRARY)
diff --git a/ndk/apps/hello-gl2/project/jni/gl_code.cpp b/ndk/apps/hello-gl2/project/jni/gl_code.cpp
new file mode 100644
index 0000000..e1e30ce
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/jni/gl_code.cpp
@@ -0,0 +1,182 @@
+/*
+ * Copyright (C) 2009 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.
+ */
+
+// OpenGL ES 2.0 code
+
+#include <jni.h>
+#include <android/log.h>
+
+#include <GLES2/gl2.h>
+#include <GLES2/gl2ext.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+
+#define  LOG_TAG    "libgl2jni"
+#define  LOGI(...)  __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)
+#define  LOGE(...)  __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__)
+
+static void printGLString(const char *name, GLenum s) {
+    const char *v = (const char *) glGetString(s);
+    LOGI("GL %s = %s\n", name, v);
+}
+
+static void checkGlError(const char* op) {
+    for (GLint error = glGetError(); error; error
+            = glGetError()) {
+        LOGI("after %s() glError (0x%x)\n", op, error);
+    }
+}
+
+static const char gVertexShader[] = "attribute vec4 vPosition;\n"
+    "void main() {\n"
+    "  gl_Position = vPosition;\n"
+    "}\n";
+
+static const char gFragmentShader[] = "precision mediump float;\n"
+    "void main() {\n"
+    "  gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0);\n"
+    "}\n";
+
+GLuint loadShader(GLenum shaderType, const char* pSource) {
+    GLuint shader = glCreateShader(shaderType);
+    if (shader) {
+        glShaderSource(shader, 1, &pSource, NULL);
+        glCompileShader(shader);
+        GLint compiled = 0;
+        glGetShaderiv(shader, GL_COMPILE_STATUS, &compiled);
+        if (!compiled) {
+            GLint infoLen = 0;
+            glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &infoLen);
+            if (infoLen) {
+                char* buf = (char*) malloc(infoLen);
+                if (buf) {
+                    glGetShaderInfoLog(shader, infoLen, NULL, buf);
+                    LOGE("Could not compile shader %d:\n%s\n",
+                            shaderType, buf);
+                    free(buf);
+                }
+                glDeleteShader(shader);
+                shader = 0;
+            }
+        }
+    }
+    return shader;
+}
+
+GLuint createProgram(const char* pVertexSource, const char* pFragmentSource) {
+    GLuint vertexShader = loadShader(GL_VERTEX_SHADER, pVertexSource);
+    if (!vertexShader) {
+        return 0;
+    }
+
+    GLuint pixelShader = loadShader(GL_FRAGMENT_SHADER, pFragmentSource);
+    if (!pixelShader) {
+        return 0;
+    }
+
+    GLuint program = glCreateProgram();
+    if (program) {
+        glAttachShader(program, vertexShader);
+        checkGlError("glAttachShader");
+        glAttachShader(program, pixelShader);
+        checkGlError("glAttachShader");
+        glLinkProgram(program);
+        GLint linkStatus = GL_FALSE;
+        glGetProgramiv(program, GL_LINK_STATUS, &linkStatus);
+        if (linkStatus != GL_TRUE) {
+            GLint bufLength = 0;
+            glGetProgramiv(program, GL_INFO_LOG_LENGTH, &bufLength);
+            if (bufLength) {
+                char* buf = (char*) malloc(bufLength);
+                if (buf) {
+                    glGetProgramInfoLog(program, bufLength, NULL, buf);
+                    LOGE("Could not link program:\n%s\n", buf);
+                    free(buf);
+                }
+            }
+            glDeleteProgram(program);
+            program = 0;
+        }
+    }
+    return program;
+}
+
+GLuint gProgram;
+GLuint gvPositionHandle;
+
+bool setupGraphics(int w, int h) {
+    printGLString("Version", GL_VERSION);
+    printGLString("Vendor", GL_VENDOR);
+    printGLString("Renderer", GL_RENDERER);
+    printGLString("Extensions", GL_EXTENSIONS);
+
+    LOGI("setupGraphics(%d, %d)", w, h);
+    gProgram = createProgram(gVertexShader, gFragmentShader);
+    if (!gProgram) {
+        LOGE("Could not create program.");
+        return false;
+    }
+    gvPositionHandle = glGetAttribLocation(gProgram, "vPosition");
+    checkGlError("glGetAttribLocation");
+    LOGI("glGetAttribLocation(\"vPosition\") = %d\n",
+            gvPositionHandle);
+
+    glViewport(0, 0, w, h);
+    checkGlError("glViewport");
+    return true;
+}
+
+const GLfloat gTriangleVertices[] = { 0.0f, 0.5f, -0.5f, -0.5f,
+        0.5f, -0.5f };
+
+void renderFrame() {
+    static float grey;
+    grey += 0.01f;
+    if (grey > 1.0f) {
+        grey = 0.0f;
+    }
+    glClearColor(grey, grey, grey, 1.0f);
+    checkGlError("glClearColor");
+    glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT);
+    checkGlError("glClear");
+
+    glUseProgram(gProgram);
+    checkGlError("glUseProgram");
+
+    glVertexAttribPointer(gvPositionHandle, 2, GL_FLOAT, GL_FALSE, 0, gTriangleVertices);
+    checkGlError("glVertexAttribPointer");
+    glEnableVertexAttribArray(gvPositionHandle);
+    checkGlError("glEnableVertexAttribArray");
+    glDrawArrays(GL_TRIANGLES, 0, 3);
+    checkGlError("glDrawArrays");
+}
+
+extern "C" {
+    JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_init(JNIEnv * env, jobject obj,  jint width, jint height);
+    JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_step(JNIEnv * env, jobject obj);
+};
+
+JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_init(JNIEnv * env, jobject obj,  jint width, jint height)
+{
+    setupGraphics(width, height);
+}
+
+JNIEXPORT void JNICALL Java_com_android_gl2jni_GL2JNILib_step(JNIEnv * env, jobject obj)
+{
+    renderFrame();
+}
diff --git a/ndk/apps/hello-gl2/project/res/values/strings.xml b/ndk/apps/hello-gl2/project/res/values/strings.xml
new file mode 100644
index 0000000..e3f7331
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/res/values/strings.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2006, 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.
+*/
+-->
+
+<!-- This file contains resource definitions for displayed strings, allowing
+     them to be changed based on the locale and options. -->
+
+<resources>
+    <!-- Simple strings. -->
+    <string name="gl2jni_activity">GL2JNI</string>
+
+</resources>
+
diff --git a/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIActivity.java b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIActivity.java
new file mode 100644
index 0000000..c366a2c
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIActivity.java
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2007 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.
+ */
+
+package com.android.gl2jni;
+
+import android.app.Activity;
+import android.os.Bundle;
+import android.util.Log;
+import android.view.WindowManager;
+
+import java.io.File;
+
+
+public class GL2JNIActivity extends Activity {
+
+    GL2JNIView mView;
+
+    @Override protected void onCreate(Bundle icicle) {
+        super.onCreate(icicle);
+        mView = new GL2JNIView(getApplication());
+	setContentView(mView);
+    }
+
+    @Override protected void onPause() {
+        super.onPause();
+        mView.onPause();
+    }
+
+    @Override protected void onResume() {
+        super.onResume();
+        mView.onResume();
+    }
+}
diff --git a/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNILib.java b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNILib.java
new file mode 100644
index 0000000..040a984
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNILib.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2007 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.
+ */
+
+package com.android.gl2jni;
+
+// Wrapper for native library
+
+public class GL2JNILib {
+
+     static {
+         System.loadLibrary("gl2jni");
+     }
+
+    /**
+     * @param width the current view width
+     * @param height the current view height
+     */
+     public static native void init(int width, int height);
+     public static native void step();
+}
diff --git a/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIView.java b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIView.java
new file mode 100644
index 0000000..72b1dfb
--- /dev/null
+++ b/ndk/apps/hello-gl2/project/src/com/android/gl2jni/GL2JNIView.java
@@ -0,0 +1,296 @@
+/*
+ * Copyright (C) 2009 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.
+ */
+
+package com.android.gl2jni;
+/*
+ * Copyright (C) 2008 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.
+ */
+
+
+import android.content.Context;
+import android.opengl.GLSurfaceView;
+import android.util.AttributeSet;
+import android.util.Log;
+import android.view.KeyEvent;
+import android.view.MotionEvent;
+
+import javax.microedition.khronos.egl.EGL10;
+import javax.microedition.khronos.egl.EGLConfig;
+import javax.microedition.khronos.egl.EGLContext;
+import javax.microedition.khronos.egl.EGLDisplay;
+import javax.microedition.khronos.opengles.GL10;
+
+/**
+ * An implementation of SurfaceView that uses the dedicated surface for
+ * displaying an OpenGL animation.  This allows the animation to run in a
+ * separate thread, without requiring that it be driven by the update mechanism
+ * of the view hierarchy.
+ *
+ * The application-specific rendering code is delegated to a GLView.Renderer
+ * instance.
+ */
+class GL2JNIView extends GLSurfaceView {
+    private static String TAG = "GL2JNIView";
+
+    public GL2JNIView(Context context) {
+        super(context);
+        init(false, 0, 0);
+    }
+
+    public GL2JNIView(Context context, boolean translucent, int depth, int stencil) {
+        super(context);
+        init(translucent, depth, stencil);
+    }
+
+    private void init(boolean translucent, int depth, int stencil) {
+        setEGLContextFactory(new ContextFactory());
+        setEGLConfigChooser( translucent ?
+              new ConfigChooser(8,8,8,8, depth, stencil) :
+              new ConfigChooser(5,6,5,0, depth, stencil));
+        setRenderer(new Renderer());
+    }
+
+    private static class ContextFactory implements GLSurfaceView.EGLContextFactory {
+        private static int EGL_CONTEXT_CLIENT_VERSION = 0x3098;
+        public EGLContext createContext(EGL10 egl, EGLDisplay display, EGLConfig eglConfig) {
+            Log.w(TAG, "creating OpenGL ES 2.0 context");
+            checkEglError("Before eglCreateContext", egl);
+            int[] attrib_list = {EGL_CONTEXT_CLIENT_VERSION, 2, EGL10.EGL_NONE };
+            EGLContext context = egl.eglCreateContext(display, eglConfig, EGL10.EGL_NO_CONTEXT, attrib_list);
+            checkEglError("After eglCreateContext", egl);
+            return context;
+        }
+
+        public void destroyContext(EGL10 egl, EGLDisplay display, EGLContext context) {
+            egl.eglDestroyContext(display, context);
+        }
+    }
+
+    private static void checkEglError(String prompt, EGL10 egl) {
+        int error;
+        while ((error = egl.eglGetError()) != EGL10.EGL_SUCCESS) {
+            Log.e(TAG, String.format("%s: EGL error: 0x%x", prompt, error));
+        }
+    }
+
+    private static class ConfigChooser implements GLSurfaceView.EGLConfigChooser {
+        private static int EGL_OPENGL_ES2_BIT = 4;
+        private static int[] s_configAttribs2 =
+        {
+            EGL10.EGL_RED_SIZE, 4,
+            EGL10.EGL_GREEN_SIZE, 4,
+            EGL10.EGL_BLUE_SIZE, 4,
+            EGL10.EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
+            EGL10.EGL_NONE
+        };
+
+        public ConfigChooser(int r, int g, int b, int a, int depth, int stencil) {
+            mRedSize = r;
+            mGreenSize = g;
+            mBlueSize = b;
+            mAlphaSize = a;
+            mDepthSize = depth;
+            mStencilSize = stencil;
+        }
+
+        public EGLConfig chooseConfig(EGL10 egl, EGLDisplay display) {
+
+            int[] num_config = new int[1];
+            egl.eglChooseConfig(display, s_configAttribs2, null, 0, num_config);
+
+            int numConfigs = num_config[0];
+
+            if (numConfigs <= 0) {
+                throw new IllegalArgumentException("No configs match configSpec");
+            }
+            EGLConfig[] configs = new EGLConfig[numConfigs];
+            egl.eglChooseConfig(display, s_configAttribs2, configs, numConfigs, num_config);
+            // printConfigs(egl, display, configs);
+            return chooseConfig(egl, display, configs);
+        }
+
+        public EGLConfig chooseConfig(EGL10 egl, EGLDisplay display,
+                EGLConfig[] configs) {
+            EGLConfig closestConfig = null;
+            int closestDistance = 1000;
+            for(EGLConfig config : configs) {
+                int d = findConfigAttrib(egl, display, config,
+                        EGL10.EGL_DEPTH_SIZE, 0);
+                int s = findConfigAttrib(egl, display, config,
+                        EGL10.EGL_STENCIL_SIZE, 0);
+                if (d >= mDepthSize && s>= mStencilSize) {
+                    int r = findConfigAttrib(egl, display, config,
+                            EGL10.EGL_RED_SIZE, 0);
+                    int g = findConfigAttrib(egl, display, config,
+                             EGL10.EGL_GREEN_SIZE, 0);
+                    int b = findConfigAttrib(egl, display, config,
+                              EGL10.EGL_BLUE_SIZE, 0);
+                    int a = findConfigAttrib(egl, display, config,
+                            EGL10.EGL_ALPHA_SIZE, 0);
+                    int distance = Math.abs(r - mRedSize)
+                                + Math.abs(g - mGreenSize)
+                                + Math.abs(b - mBlueSize)
+                                + Math.abs(a - mAlphaSize);
+                    if (distance < closestDistance) {
+                        closestDistance = distance;
+                        closestConfig = config;
+                    }
+                }
+            }
+            return closestConfig;
+        }
+
+        private int findConfigAttrib(EGL10 egl, EGLDisplay display,
+                EGLConfig config, int attribute, int defaultValue) {
+
+            if (egl.eglGetConfigAttrib(display, config, attribute, mValue)) {
+                return mValue[0];
+            }
+            return defaultValue;
+        }
+
+        private void printConfigs(EGL10 egl, EGLDisplay display,
+            EGLConfig[] configs) {
+            int numConfigs = configs.length;
+            Log.w(TAG, String.format("%d configurations", numConfigs));
+            for (int i = 0; i < numConfigs; i++) {
+                Log.w(TAG, String.format("Configuration %d:\n", i));
+                printConfig(egl, display, configs[i]);
+            }
+        }
+
+        private void printConfig(EGL10 egl, EGLDisplay display,
+                EGLConfig config) {
+            int[] attributes = {
+                    EGL10.EGL_BUFFER_SIZE,
+                    EGL10.EGL_ALPHA_SIZE,
+                    EGL10.EGL_BLUE_SIZE,
+                    EGL10.EGL_GREEN_SIZE,
+                    EGL10.EGL_RED_SIZE,
+                    EGL10.EGL_DEPTH_SIZE,
+                    EGL10.EGL_STENCIL_SIZE,
+                    EGL10.EGL_CONFIG_CAVEAT,
+                    EGL10.EGL_CONFIG_ID,
+                    EGL10.EGL_LEVEL,
+                    EGL10.EGL_MAX_PBUFFER_HEIGHT,
+                    EGL10.EGL_MAX_PBUFFER_PIXELS,
+                    EGL10.EGL_MAX_PBUFFER_WIDTH,
+                    EGL10.EGL_NATIVE_RENDERABLE,
+                    EGL10.EGL_NATIVE_VISUAL_ID,
+                    EGL10.EGL_NATIVE_VISUAL_TYPE,
+                    0x3030, // EGL10.EGL_PRESERVED_RESOURCES,
+                    EGL10.EGL_SAMPLES,
+                    EGL10.EGL_SAMPLE_BUFFERS,
+                    EGL10.EGL_SURFACE_TYPE,
+                    EGL10.EGL_TRANSPARENT_TYPE,
+                    EGL10.EGL_TRANSPARENT_RED_VALUE,
+                    EGL10.EGL_TRANSPARENT_GREEN_VALUE,
+                    EGL10.EGL_TRANSPARENT_BLUE_VALUE,
+                    0x3039, // EGL10.EGL_BIND_TO_TEXTURE_RGB,
+                    0x303A, // EGL10.EGL_BIND_TO_TEXTURE_RGBA,
+                    0x303B, // EGL10.EGL_MIN_SWAP_INTERVAL,
+                    0x303C, // EGL10.EGL_MAX_SWAP_INTERVAL,
+                    EGL10.EGL_LUMINANCE_SIZE,
+                    EGL10.EGL_ALPHA_MASK_SIZE,
+                    EGL10.EGL_COLOR_BUFFER_TYPE,
+                    EGL10.EGL_RENDERABLE_TYPE,
+                    0x3042 // EGL10.EGL_CONFORMANT
+            };
+            String[] names = {
+                    "EGL_BUFFER_SIZE",
+                    "EGL_ALPHA_SIZE",
+                    "EGL_BLUE_SIZE",
+                    "EGL_GREEN_SIZE",
+                    "EGL_RED_SIZE",
+                    "EGL_DEPTH_SIZE",
+                    "EGL_STENCIL_SIZE",
+                    "EGL_CONFIG_CAVEAT",
+                    "EGL_CONFIG_ID",
+                    "EGL_LEVEL",
+                    "EGL_MAX_PBUFFER_HEIGHT",
+                    "EGL_MAX_PBUFFER_PIXELS",
+                    "EGL_MAX_PBUFFER_WIDTH",
+                    "EGL_NATIVE_RENDERABLE",
+                    "EGL_NATIVE_VISUAL_ID",
+                    "EGL_NATIVE_VISUAL_TYPE",
+                    "EGL_PRESERVED_RESOURCES",
+                    "EGL_SAMPLES",
+                    "EGL_SAMPLE_BUFFERS",
+                    "EGL_SURFACE_TYPE",
+                    "EGL_TRANSPARENT_TYPE",
+                    "EGL_TRANSPARENT_RED_VALUE",
+                    "EGL_TRANSPARENT_GREEN_VALUE",
+                    "EGL_TRANSPARENT_BLUE_VALUE",
+                    "EGL_BIND_TO_TEXTURE_RGB",
+                    "EGL_BIND_TO_TEXTURE_RGBA",
+                    "EGL_MIN_SWAP_INTERVAL",
+                    "EGL_MAX_SWAP_INTERVAL",
+                    "EGL_LUMINANCE_SIZE",
+                    "EGL_ALPHA_MASK_SIZE",
+                    "EGL_COLOR_BUFFER_TYPE",
+                    "EGL_RENDERABLE_TYPE",
+                    "EGL_CONFORMANT"
+            };
+            int[] value = new int[1];
+            for (int i = 0; i < attributes.length; i++) {
+                int attribute = attributes[i];
+                String name = names[i];
+                if ( egl.eglGetConfigAttrib(display, config, attribute, value)) {
+                    Log.w(TAG, String.format("  %s: %d\n", name, value[0]));
+                } else {
+                    // Log.w(TAG, String.format("  %s: failed\n", name));
+                    while (egl.eglGetError() != EGL10.EGL_SUCCESS);
+                }
+            }
+        }
+
+        // Subclasses can adjust these values:
+        protected int mRedSize;
+        protected int mGreenSize;
+        protected int mBlueSize;
+        protected int mAlphaSize;
+        protected int mDepthSize;
+        protected int mStencilSize;
+        private int[] mValue = new int[1];
+    }
+
+    private static class Renderer implements GLSurfaceView.Renderer {
+        public void onDrawFrame(GL10 gl) {
+            GL2JNILib.step();
+        }
+
+        public void onSurfaceChanged(GL10 gl, int width, int height) {
+            GL2JNILib.init(width, height);
+        }
+
+        public void onSurfaceCreated(GL10 gl, EGLConfig config) {
+            // Do nothing.
+        }
+    }
+}
+
diff --git a/ndk/build/core/add-application.mk b/ndk/build/core/add-application.mk
index 42abae3..3505d1f 100644
--- a/ndk/build/core/add-application.mk
+++ b/ndk/build/core/add-application.mk
@@ -69,11 +69,14 @@
     endif
 endif
 
+# Check that the value of APP_PLATFORM corresponds to a known platform
+# If not, we're going to use the max supported platform value.
+#
 _bad_platform := $(strip $(filter-out $(NDK_ALL_PLATFORMS),$(APP_PLATFORM)))
 ifdef _bad_platform
-    $(call __ndk_info,Application $(_name) targets platform '$(_bad_platform)')
-    $(call __ndk_info,which is not supported by this release of the Android NDK)
-    $(call __ndk_error,Aborting...)
+    $(call __ndk_info,Application $(_name) targets unknown platform '$(_bad_platform)')
+    APP_PLATFORM := android-$(NDK_MAX_PLATFORM_LEVEL)
+    $(call __ndk_info,Switching to $(APP_PLATFORM))
 endif
 
 # If APP_BUILD_SCRIPT is defined, check that the file exists.
diff --git a/ndk/build/core/definitions.mk b/ndk/build/core/definitions.mk
index 95bab67..ae9b540 100644
--- a/ndk/build/core/definitions.mk
+++ b/ndk/build/core/definitions.mk
@@ -262,7 +262,7 @@
 
 # the list of variables that *may* be defined in Application.mk files
 NDK_APP_VARS_OPTIONAL := APP_OPTIM APP_CPPFLAGS APP_CFLAGS APP_CXXFLAGS \
-                         APP_PLATFORM APP_BUILD_SCRIPT
+                         APP_PLATFORM APP_BUILD_SCRIPT APP_ABI
 
 # the list of all variables that may appear in an Application.mk file
 NDK_APP_VARS := $(NDK_APP_VARS_REQUIRED) $(NDK_APP_VARS_OPTIONAL)
diff --git a/ndk/build/core/main.mk b/ndk/build/core/main.mk
index a460556..1c3442a 100644
--- a/ndk/build/core/main.mk
+++ b/ndk/build/core/main.mk
@@ -83,13 +83,31 @@
   $(eval include $(BUILD_SYSTEM)/add-toolchain.mk)\
 )
 
-#$(info ALL_TOOLCHAINS=$(ALL_TOOLCHAINS))
-NDK_TARGET_TOOLCHAIN := $(firstword $(NDK_ALL_TOOLCHAINS))
-$(call ndk_log, Default toolchain is $(NDK_TARGET_TOOLCHAIN))
-
 NDK_ALL_TOOLCHAINS   := $(call uniq,$(NDK_ALL_TOOLCHAINS))
 NDK_ALL_ABIS         := $(call uniq,$(NDK_ALL_ABIS))
 
+# The default toolchain is now arm-eabi-4.4.0, however its
+# C++ compiler is a tad bit more pedantic with certain
+# constructs (e.g. templates) so allow users to switch back
+# to the old 4.2.1 instead if they really want to.
+#
+# NOTE: you won't get armeabi-v7a support though !
+#
+NDK_TOOLCHAIN := $(strip $(NDK_TOOLCHAIN))
+ifndef NDK_TOOLCHAIN
+    NDK_TARGET_TOOLCHAIN := arm-eabi-4.4.0
+    $(call ndk_log, Default toolchain is $(NDK_TARGET_TOOLCHAIN))
+else
+    # check that the toolchain name is supported
+    $(if $(filter-out $(NDK_ALL_TOOLCHAINS),$(NDK_TOOLCHAIN)),\
+      $(call __ndk_info,NDK_TOOLCHAIN is defined to the unsupported value $(NDK_TOOLCHAIN)) \
+      $(call __ndk_info,Please use one of the following values: $(NDK_ALL_TOOLCHAINS))\
+      $(call __ndk_error,Aborting)\
+    ,)
+    NDK_TARGET_TOOLCHAIN=$(NDK_TOOLCHAIN)
+    $(call ndk_log, Using specific toolchain $(NDK_TARGET_TOOLCHAIN))
+endif
+
 $(call ndk_log, This NDK supports the following toolchains and target ABIs:)
 $(foreach tc,$(NDK_ALL_TOOLCHAINS),\
     $(call ndk_log, $(space)$(space)$(tc):  $(NDK_TOOLCHAIN.$(tc).abis))\
@@ -114,6 +132,18 @@
   $(eval include $(BUILD_SYSTEM)/add-platform.mk)\
 )
 
+# we're going to find the maximum platform number of the form android-<number>
+# ignore others, which could correspond to special and experimental cases
+NDK_ALL_PLATFORM_LEVELS := $(filter android-%,$(NDK_ALL_PLATFORMS))
+NDK_ALL_PLATFORM_LEVELS := $(patsubst android-%,%,$(NDK_ALL_PLATFORM_LEVELS))
+$(call ndk_log,Found stable platform levels: $(NDK_ALL_PLATFORM_LEVELS))
+
+NDK_MAX_PLATFORM_LEVEL := 3
+$(foreach level,$(NDK_ALL_PLATFORM_LEVELS),\
+  $(eval NDK_MAX_PLATFORM_LEVEL := $$(call max,$$(NDK_MAX_PLATFORM_LEVEL),$$(level)))\
+)
+$(call ndk_log,Found max platform level: $(NDK_MAX_PLATFORM_LEVEL))
+
 # ====================================================================
 #
 # Read all application configuration files
diff --git a/ndk/build/core/setup-abi.mk b/ndk/build/core/setup-abi.mk
new file mode 100644
index 0000000..f548823
--- /dev/null
+++ b/ndk/build/core/setup-abi.mk
@@ -0,0 +1,28 @@
+# Copyright (C) 2009 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.
+#
+
+# this file is included multiple times by build/core/setup-app.mk
+#
+
+$(call ndk_log,Building application '$(NDK_APP_NAME)' for ABI '$(TARGET_ARCH_ABI)')
+
+TARGET_ARCH := arm
+
+TARGET_OUT  := $(NDK_APP_OUT)/$(_app)/$(TARGET_ARCH_ABI)
+TARGET_OBJS := $(TARGET_OUT)/objs
+
+TARGET_GDB_SETUP := $(TARGET_OUT)/setup.gdb
+
+include $(BUILD_SYSTEM)/setup-toolchain.mk
diff --git a/ndk/build/core/setup-app.mk b/ndk/build/core/setup-app.mk
index 8513482..d835e6f 100644
--- a/ndk/build/core/setup-app.mk
+++ b/ndk/build/core/setup-app.mk
@@ -21,21 +21,6 @@
 
 _map := NDK_APP.$(_app)
 
-# which platform/abi/toolchain are we going to use?
-TARGET_PLATFORM := $(call get,$(_map),APP_PLATFORM)
-TARGET_ARCH_ABI  := arm
-TARGET_ARCH      := arm
-TARGET_TOOLCHAIN := $(NDK_TARGET_TOOLCHAIN)
-
-# the location of generated files for this app
-HOST_OUT    := $(NDK_APP_OUT)/$(_app)/$(HOST_TAG)
-HOST_OBJS   := $(HOST_OUT)/objs
-
-TARGET_OUT  := $(NDK_APP_OUT)/$(_app)/$(TARGET_ABI)
-TARGET_OBJS := $(TARGET_OUT)/objs
-
-TARGET_GDB_SETUP := $(TARGET_OUT)/setup.gdb
-
 # ok, let's parse all Android.mk source files in order to build
 # the modules for this app.
 #
@@ -62,4 +47,33 @@
 ndk-app-$(_app): $(NDK_APP_MODULES)
 all: ndk-app-$(_app)
 
-include $(BUILD_SYSTEM)/setup-toolchain.mk
+# which platform/abi/toolchain are we going to use?
+TARGET_PLATFORM := $(call get,$(_map),APP_PLATFORM)
+
+# the location of generated files for this app
+HOST_OUT    := $(NDK_APP_OUT)/$(_app)/$(HOST_TAG)
+HOST_OBJS   := $(HOST_OUT)/objs
+
+# the target to use
+TARGET_TOOLCHAIN := $(NDK_TARGET_TOOLCHAIN)
+
+APP_ABI := $(strip $(APP_ABI))
+ifndef APP_ABI
+    # the default ABI for now is armeabi
+    APP_ABI := armeabi
+endif
+
+# check the target ABIs for this application
+_bad_abis = $(strip $(filter-out $(NDK_ALL_ABIS),$(APP_ABI)))
+ifneq ($(_bad_abis),)
+    $(info _bad_abis = '$(_bad_abis)')
+    $(call __ndk_info,NDK Application '$(_app)' targets unknown ABI(s): $(_bad_abis))
+    $(call __ndk_info,Please fix the APP_ABI definition in $(NDK_APP_APPLICATION_MK))
+    $(call __ndk_error,Aborting)
+endif
+
+$(foreach _abi,$(APP_ABI),\
+    $(eval TARGET_ARCH_ABI := $(_abi))\
+    $(eval include $(BUILD_SYSTEM)/setup-abi.mk) \
+)
+
diff --git a/ndk/build/core/setup-toolchain.mk b/ndk/build/core/setup-toolchain.mk
index 352585e..e5d4e82 100644
--- a/ndk/build/core/setup-toolchain.mk
+++ b/ndk/build/core/setup-toolchain.mk
@@ -13,13 +13,21 @@
 # limitations under the License.
 #
 
-# this file is included repeatedly from build/core/main.mk and is used
+# this file is included repeatedly from build/core/setup-abi.mk and is used
 # to setup the target toolchain for a given platform/abi combination.
 #
 
 $(call assert-defined,TARGET_TOOLCHAIN TARGET_PLATFORM TARGET_ARCH TARGET_ARCH_ABI)
 $(call assert-defined,NDK_APPS)
 
+# Check that the toolchain supports the current ABI
+$(if $(filter-out $(NDK_TOOLCHAIN.$(NDK_TARGET_TOOLCHAIN).abis),$(TARGET_ARCH_ABI)),\
+    $(call __ndk_info,The $(NDK_TARGET_TOOLCHAIN) toolchain does not support the $(TARGET_ARCH_ABI) ABI.)\
+    $(call __ndk_info,Please modify the APP_ABI definition in $(NDK_APP_APPLICATION_MK) to fix this)\
+    $(call __ndk_info,Valid ABIs values for $(NDK_TARGET_TOOLCHAIN) are: $(NDK_TARGET_TOOLCHAIN.$(NDK_TOOLCHAIN).abis))\
+    $(call __ndk_error,Aborting)\
+,)
+
 TARGET_ABI := $(TARGET_PLATFORM)-$(TARGET_ARCH_ABI)
 
 # setup sysroot-related variables. The SYSROOT point to a directory
@@ -27,7 +35,7 @@
 # some libraries and object files used for linking the generated
 # target files properly.
 #
-SYSROOT := build/platforms/$(TARGET_PLATFORM)/arch-$(TARGET_ARCH_ABI)
+SYSROOT := build/platforms/$(TARGET_PLATFORM)/arch-$(TARGET_ARCH)
 
 TARGET_CRTBEGIN_STATIC_O  := $(SYSROOT)/usr/lib/crtbegin_static.o
 TARGET_CRTBEGIN_DYNAMIC_O := $(SYSROOT)/usr/lib/crtbegin_dynamic.o
@@ -40,7 +48,7 @@
 include $(NDK_TOOLCHAIN.$(TARGET_TOOLCHAIN).setup)
 
 # compute NDK_APP_DEST as the destination directory for the generated files
-NDK_APP_DEST := $(NDK_APP_PROJECT_PATH)/libs/$(TARGET_ABI_SUBDIR)
+NDK_APP_DEST := $(NDK_APP_PROJECT_PATH)/libs/$(TARGET_ARCH_ABI)
 
 # free the dictionary of LOCAL_MODULE definitions
 $(call modules-clear)
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h b/ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h
deleted file mode 120000
index ac859df..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/alloca.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/alloca.h b/ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/alloca.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/alloca.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h b/ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h
deleted file mode 120000
index da91a66..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/android/log.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/android/log.h b/ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/android/log.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/android/log.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h
deleted file mode 120000
index 760a19d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/arpa/inet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/arpa/inet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/arpa/inet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/arpa/inet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h b/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h
deleted file mode 120000
index 73f9311..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/arpa/nameser.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/arpa/nameser.h b/ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/arpa/nameser.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/arpa/nameser.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h
deleted file mode 120000
index 4493a92..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/4level-fixup.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/4level-fixup.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/4level-fixup.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h
deleted file mode 120000
index 6576f52..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/audit_dir_write.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/audit_dir_write.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h
deleted file mode 120000
index 9a68edc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/__ffs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/__ffs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h
deleted file mode 120000
index 32afeb4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/atomic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/atomic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h
deleted file mode 120000
index 50c5214..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/ffz.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/ffz.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h
deleted file mode 120000
index 9b40acd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/find.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/find.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h
deleted file mode 120000
index 5171887..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/fls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h
deleted file mode 120000
index 8728e6a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/fls64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/fls64.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h
deleted file mode 120000
index 91b46c7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/le.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/le.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
deleted file mode 120000
index 177973e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/non-atomic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h
deleted file mode 120000
index d898f3a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/bug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/bug.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/bug.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h
deleted file mode 120000
index 7892fb4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/cputime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/cputime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/cputime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/cputime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h
deleted file mode 120000
index 3005c74..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/emergency-restart.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/emergency-restart.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/emergency-restart.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h
deleted file mode 120000
index 7b7d9bd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/errno-base.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/errno-base.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/errno-base.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno-base.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h
deleted file mode 120000
index bdd6dd4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/errno.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/errno.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h
deleted file mode 120000
index 3506aa8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/fcntl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/fcntl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h
deleted file mode 120000
index cbd47bf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/futex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/futex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/futex.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/futex.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h
deleted file mode 120000
index 7a11623..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h
deleted file mode 120000
index 339894e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/ipc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/ipc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h
deleted file mode 120000
index 0e9344d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/local.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/local.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/local.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/local.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h
deleted file mode 120000
index 3bbc82b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/memory_model.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/memory_model.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/memory_model.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/memory_model.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h
deleted file mode 120000
index fbab125..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/mman.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/mman.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/mman.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mman.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h
deleted file mode 120000
index c7bc238..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/mutex-xchg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/mutex-xchg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/mutex-xchg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h
deleted file mode 120000
index 2d899db..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/percpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/percpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/percpu.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/percpu.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h
deleted file mode 120000
index ac2157e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/pgtable-nopud.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/pgtable-nopud.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable-nopud.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h
deleted file mode 120000
index 4c70646..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/pgtable.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/pgtable.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/pgtable.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/pgtable.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h
deleted file mode 120000
index 2bd359a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/poll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/poll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h
deleted file mode 120000
index 28f331a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/resource.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/resource.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h
deleted file mode 120000
index c6885f3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/sections.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/sections.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/sections.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/sections.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h
deleted file mode 120000
index d38f211..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/siginfo.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/siginfo.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/siginfo.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/siginfo.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h
deleted file mode 120000
index 05ca352..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/signal.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/signal.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h
deleted file mode 120000
index 94baa95..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/tlb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/tlb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/tlb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/tlb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h
deleted file mode 120000
index e85b48f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/topology.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/topology.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/topology.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/topology.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h
deleted file mode 120000
index baf2118..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/xor.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/xor.h b/ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/asm-generic/xor.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/asm-generic/xor.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/assert.h b/ndk/build/platforms/android-3/arch-arm/usr/include/assert.h
deleted file mode 120000
index 1572c5b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/assert.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/assert.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/assert.h b/ndk/build/platforms/android-3/arch-arm/usr/include/assert.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/assert.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/assert.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h
deleted file mode 120000
index 153ee73..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/byteswap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/byteswap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/byteswap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/byteswap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/cstddef b/ndk/build/platforms/android-3/arch-arm/usr/include/cstddef
deleted file mode 120000
index cec20fd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/cstddef
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/cstddef
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/cstddef b/ndk/build/platforms/android-3/arch-arm/usr/include/cstddef
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/cstddef
rename to ndk/build/platforms/android-3/arch-arm/usr/include/cstddef
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h
deleted file mode 120000
index f1b315c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/ctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/ctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/ctype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/ctype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h
deleted file mode 120000
index 315be03..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/dirent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/dirent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h b/ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h
deleted file mode 120000
index 5748e5a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/dlfcn.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/dlfcn.h b/ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/dlfcn.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/dlfcn.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/elf.h
deleted file mode 120000
index f4e2f5e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/elf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/elf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/elf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/endian.h
index 04204ed..475b48c 100644
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/endian.h
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/endian.h
@@ -1,10 +1,33 @@
-/*	$OpenBSD: endian.h,v 1.3 2005/12/13 00:35:23 millert Exp $	*/
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _ENDIAN_H_
+#define _ENDIAN_H_
 
-#ifdef __ARMEB__
-#define _BYTE_ORDER _BIG_ENDIAN
-#else
-#define _BYTE_ORDER _LITTLE_ENDIAN
-#endif
-#define	__STRICT_ALIGNMENT
-#include <sys/types.h>
 #include <sys/endian.h>
+
+#endif /* _ENDIAN_H_ */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/err.h
deleted file mode 120000
index de81816..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/err.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/err.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/err.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/errno.h
deleted file mode 120000
index 2e638ba..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/errno.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/errno.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/errno.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h
deleted file mode 120000
index cb8c1df..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/fcntl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/fcntl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/features.h b/ndk/build/platforms/android-3/arch-arm/usr/include/features.h
deleted file mode 120000
index 6587ebd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/features.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/features.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/features.h b/ndk/build/platforms/android-3/arch-arm/usr/include/features.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/features.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/features.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h
deleted file mode 120000
index 52c0687..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/fnmatch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/fnmatch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/fnmatch.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/fnmatch.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h
deleted file mode 120000
index 857cf27..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/getopt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/getopt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/getopt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/getopt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/grp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/grp.h
deleted file mode 120000
index c599451..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/grp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/grp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/grp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/grp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/grp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/grp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h
deleted file mode 120000
index 5283d60..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/inttypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/inttypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/inttypes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/inttypes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/jni.h b/ndk/build/platforms/android-3/arch-arm/usr/include/jni.h
deleted file mode 120000
index e49af21..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/jni.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/jni.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/jni.h b/ndk/build/platforms/android-3/arch-arm/usr/include/jni.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/jni.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/jni.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h
deleted file mode 120000
index fe63cd3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/lastlog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/lastlog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/lastlog.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/lastlog.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h b/ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h
deleted file mode 120000
index 0f626b6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/libgen.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/libgen.h b/ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/libgen.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/libgen.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/limits.h
deleted file mode 120000
index 60f67bf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/limits.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/limits.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/limits.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h
deleted file mode 120000
index e1bffda..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/a.out.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/a.out.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/a.out.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/a.out.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h
deleted file mode 120000
index cd94485..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/aio_abi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/aio_abi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/aio_abi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/aio_abi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h
deleted file mode 120000
index 1d8b858..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/akm8976.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/akm8976.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/akm8976.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/akm8976.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h
deleted file mode 120000
index 383aabd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_alarm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_alarm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/android_alarm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_alarm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h
deleted file mode 120000
index 2485ad8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_pmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_pmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/android_pmem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_pmem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h
deleted file mode 120000
index 05f970a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_power.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_power.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/android_power.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/android_power.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h
deleted file mode 120000
index cbcfb5a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/apm_bios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/apm_bios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/apm_bios.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/apm_bios.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h
deleted file mode 120000
index 3cc1881..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ashmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ashmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ashmem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ashmem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h
deleted file mode 120000
index 4640b5f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ata.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ata.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ata.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ata.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h
deleted file mode 120000
index 377242f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h
deleted file mode 120000
index 0d7f085..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmapi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmapi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmapi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmapi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h
deleted file mode 120000
index f1f9a5f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h
deleted file mode 120000
index 3b1e711..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmioc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmioc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmioc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmioc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h
deleted file mode 120000
index 785c8fb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmppp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmppp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmppp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmppp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h
deleted file mode 120000
index bc0f5a8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmsap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmsap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/atmsap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/atmsap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h
deleted file mode 120000
index 3834481..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/attribute_container.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/attribute_container.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/attribute_container.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/attribute_container.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h
deleted file mode 120000
index 8d3e7b9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/auto_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/auto_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/auto_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/auto_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h
deleted file mode 120000
index 41a58f5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/autoconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/autoconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/autoconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/autoconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h
deleted file mode 120000
index 5602220..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/auxvec.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/auxvec.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/auxvec.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/auxvec.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h
deleted file mode 120000
index 427296e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/backing-dev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/backing-dev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/backing-dev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/backing-dev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h
deleted file mode 120000
index 39fcca7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/binder.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/binder.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/binder.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/binder.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h
deleted file mode 120000
index d938c2f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/binfmts.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/binfmts.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/binfmts.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/binfmts.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h
deleted file mode 120000
index 9a8ee71..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/bio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/bio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/bio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h
deleted file mode 120000
index 5db6297..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bitmap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/bitmap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/bitmap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitmap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h
deleted file mode 120000
index 5d0fcbb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bitops.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/bitops.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/bitops.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/bitops.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h
deleted file mode 120000
index fb45957..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blkdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/blkdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/blkdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h
deleted file mode 120000
index bc5f38f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blkpg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/blkpg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/blkpg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/blkpg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h
deleted file mode 120000
index 587f7f1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blockgroup_lock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/blockgroup_lock.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/blockgroup_lock.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h
deleted file mode 120000
index ce97246..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/big_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/big_endian.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/big_endian.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h
deleted file mode 120000
index d865701..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/generic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/generic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/generic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/generic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h
deleted file mode 120000
index 9b117fa..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/little_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/little_endian.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/little_endian.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h
deleted file mode 120000
index b3da56e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/swab.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/swab.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/swab.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swab.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h
deleted file mode 120000
index d6d7ade..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/swabb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/byteorder/swabb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/byteorder/swabb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h
deleted file mode 120000
index 74ed7c9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cache.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cache.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cache.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cache.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h
deleted file mode 120000
index e12ad54..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/calc64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/calc64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/calc64.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/calc64.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h
deleted file mode 120000
index 9674918..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/capability.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/capability.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/capability.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/capability.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h
deleted file mode 120000
index e937bc1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/capi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/capi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/capi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/capi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h
deleted file mode 120000
index aa3f937..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h
deleted file mode 120000
index f8a7cfe..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cdrom.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cdrom.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cdrom.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cdrom.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h
deleted file mode 120000
index ada0bca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/circ_buf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/circ_buf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/circ_buf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/circ_buf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h
deleted file mode 120000
index 246f4ad..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/clk.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/clk.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/clk.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/clk.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h
deleted file mode 120000
index e577be5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/coda.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/coda.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/coda.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h
deleted file mode 120000
index bd7a507..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/coda_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/coda_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/coda_fs_i.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/coda_fs_i.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h
deleted file mode 120000
index c323a32..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/compat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/compat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/compat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h
deleted file mode 120000
index 6609cf6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compiler-gcc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/compiler-gcc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/compiler-gcc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler-gcc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h
deleted file mode 120000
index c3c0a7c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compiler.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/compiler.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/compiler.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/compiler.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h
deleted file mode 120000
index af28044..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/completion.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/completion.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/completion.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/completion.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h
deleted file mode 120000
index 71028f6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/config.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/config.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/config.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/config.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h
deleted file mode 120000
index 7aa8514..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/console_struct.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/console_struct.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/console_struct.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/console_struct.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h
deleted file mode 120000
index 2608247..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cpu.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpu.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h
deleted file mode 120000
index c8f6de0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cpumask.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/cpumask.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/cpumask.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/cpumask.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h
deleted file mode 120000
index e008d1e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ctype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ctype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h
deleted file mode 120000
index bc11d40..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dccp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dccp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h
deleted file mode 120000
index 561a5bc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/debug_locks.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/debug_locks.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/debug_locks.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/debug_locks.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h
deleted file mode 120000
index d934a13..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/delay.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/delay.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/delay.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/delay.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h
deleted file mode 120000
index 2440aba..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/device.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/device.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/device.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/device.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h
deleted file mode 120000
index f16f4a4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dirent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dirent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h
deleted file mode 120000
index d7305d2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dm-ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dm-ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dm-ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dm-ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h
deleted file mode 120000
index d8f5664..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dma-mapping.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dma-mapping.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dma-mapping.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dma-mapping.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h
deleted file mode 120000
index 31efa05..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dmaengine.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/dmaengine.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/dmaengine.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/dmaengine.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h
deleted file mode 120000
index 5aae574..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_dir.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_dir.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/efs_dir.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_dir.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h
deleted file mode 120000
index 1ea12f6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/efs_fs_i.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_i.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h
deleted file mode 120000
index 9ece7e1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_fs_sb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/efs_fs_sb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/efs_fs_sb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h
deleted file mode 120000
index a15375f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elevator.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/elevator.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/elevator.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/elevator.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h
deleted file mode 120000
index a70534c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elf-em.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/elf-em.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/elf-em.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf-em.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h
deleted file mode 120000
index 4455674..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/elf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/elf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h
deleted file mode 120000
index 7bc3976..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/err.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/err.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h
deleted file mode 120000
index 17901cf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/errno.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/errno.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h
deleted file mode 120000
index f857679..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/errqueue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/errqueue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/errqueue.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/errqueue.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h
deleted file mode 120000
index c6fc657..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/etherdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/etherdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/etherdevice.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/etherdevice.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h
deleted file mode 120000
index 6d1ef48..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ext2_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ext2_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ext2_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext2_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h
deleted file mode 120000
index 401d884..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ext3_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ext3_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ext3_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ext3_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h
deleted file mode 120000
index 28391d0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fadvise.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fadvise.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fadvise.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fadvise.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h
deleted file mode 120000
index 678e85b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h
deleted file mode 120000
index 628a481..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fcntl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fcntl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fcntl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h
deleted file mode 120000
index 27d6d08..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h
deleted file mode 120000
index d063b5e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/file.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/file.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h
deleted file mode 120000
index 54c78a3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/filter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/filter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/filter.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/filter.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h
deleted file mode 120000
index c72717d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h
deleted file mode 120000
index 59efd2b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ftape.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ftape.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ftape.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ftape.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h
deleted file mode 120000
index cbfdedb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/futex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/futex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/futex.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/futex.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h
deleted file mode 120000
index 4182ac6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/genhd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/genhd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/genhd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/genhd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h
deleted file mode 120000
index 955489e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/gfp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/gfp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/gfp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/gfp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h
deleted file mode 120000
index 01128bd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hardirq.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hardirq.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hardirq.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hardirq.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h
deleted file mode 120000
index 7679e36..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/hdlc/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hdlc/ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdlc/ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h
deleted file mode 120000
index 35aea04..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hdreg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdreg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hdreg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdreg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h
deleted file mode 120000
index 383f58c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hdsmart.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdsmart.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hdsmart.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hdsmart.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h
deleted file mode 120000
index 0f41fc7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/highmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/highmem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/highmem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/highmem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h
deleted file mode 120000
index 2bee8bb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hil.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/hil.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/hil.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/hil.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h
deleted file mode 120000
index 514ff43..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/i2c.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/i2c.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/i2c.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/i2c.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h
deleted file mode 120000
index 87771a7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/icmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/icmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/icmp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/icmp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h
deleted file mode 120000
index 176aae6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h
deleted file mode 120000
index 0d04ae3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_arcnet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_arcnet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_arcnet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arcnet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h
deleted file mode 120000
index 536a142..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_arp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_arp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h
deleted file mode 120000
index ad36ad5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_bridge.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_bridge.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_bridge.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_bridge.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h
deleted file mode 120000
index 4dc3348..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_ether.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ether.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h
deleted file mode 120000
index 087ec19..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_fc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_fc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_fc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h
deleted file mode 120000
index 6c439ad..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_fddi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_fddi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_fddi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_fddi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h
deleted file mode 120000
index f4febf9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_hippi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_hippi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_hippi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_hippi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h
deleted file mode 120000
index d48d404..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_packet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_packet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h
deleted file mode 120000
index 1c0292e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_ppp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_ppp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_ppp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_ppp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h
deleted file mode 120000
index 115cd17..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_tr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_tr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_tr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h
deleted file mode 120000
index f127941..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_tun.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_tun.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_tun.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_tun.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h
deleted file mode 120000
index f20fce0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_vlan.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_vlan.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/if_vlan.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/if_vlan.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h
deleted file mode 120000
index 0e127e0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/in.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/in.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/in.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/in.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h
deleted file mode 120000
index 18c3130..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/in6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/in6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/in6.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/in6.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h
deleted file mode 120000
index 488bb0a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/init.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/init.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/init.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/init.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h
deleted file mode 120000
index 41670ad..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/inotify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/inotify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/inotify.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/inotify.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h
deleted file mode 120000
index 423edd7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/input.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/input.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/input.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/input.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h
deleted file mode 120000
index b5cd63c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/interrupt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/interrupt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/interrupt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/interrupt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h
deleted file mode 120000
index b30e479..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h
deleted file mode 120000
index d90526d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioport.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioport.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ioport.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioport.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h
deleted file mode 120000
index 1634241..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioprio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioprio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ioprio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ioprio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h
deleted file mode 120000
index e89967b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ip.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ip.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h
deleted file mode 120000
index 60f3881..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ipc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h
deleted file mode 120000
index 2cfe5ac..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipmi_msgdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ipmi_msgdefs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_msgdefs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h
deleted file mode 120000
index 9a796a2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipmi_smi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipmi_smi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ipmi_smi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipmi_smi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h
deleted file mode 120000
index dd5d4b9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipx.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipx.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ipx.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ipx.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h
deleted file mode 120000
index aa6cf1a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irq.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/irq.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/irq.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h
deleted file mode 120000
index 4a329b4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irq_cpustat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/irq_cpustat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/irq_cpustat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/irq_cpustat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h
deleted file mode 120000
index fa80886..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irqflags.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/irqflags.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/irqflags.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqflags.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h
deleted file mode 120000
index 739fa62..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irqreturn.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/irqreturn.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/irqreturn.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/irqreturn.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h
deleted file mode 120000
index 9594286..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/jbd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/jbd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/jbd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/jbd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h
deleted file mode 120000
index 5accf6a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/jiffies.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/jiffies.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/jiffies.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/jiffies.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h
deleted file mode 120000
index e7005fa..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h
deleted file mode 120000
index fffcdac..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kdev_t.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kdev_t.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kdev_t.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kdev_t.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h
deleted file mode 120000
index 4b3447c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernel.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernel.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kernel.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h
deleted file mode 120000
index 2f1598b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernel_stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernel_stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kernel_stat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernel_stat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h
deleted file mode 120000
index 78f09ac..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernelcapi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernelcapi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kernelcapi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kernelcapi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h
deleted file mode 120000
index 883b34f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kexec.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kexec.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kexec.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kexec.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h
deleted file mode 120000
index a43f262..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/key.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/key.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/key.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/key.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h
deleted file mode 120000
index f1e952c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/keyboard.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/keyboard.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/keyboard.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/keyboard.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h
deleted file mode 120000
index 4af7a30..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/keychord.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/keychord.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/keychord.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/keychord.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h
deleted file mode 120000
index 6c121e7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/klist.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/klist.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/klist.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/klist.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h
deleted file mode 120000
index 0fc11ce..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kmod.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kmod.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kmod.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kmod.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h
deleted file mode 120000
index 1e2eb82..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kobject.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kobject.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kobject.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kobject.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h
deleted file mode 120000
index 84f0760..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kref.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/kref.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/kref.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/kref.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h
deleted file mode 120000
index bd9e539..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ktime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ktime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ktime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ktime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h
deleted file mode 120000
index 998a2f3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/limits.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/limits.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h
deleted file mode 120000
index 9981e49..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/linkage.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/linkage.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/linkage.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/linkage.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h
deleted file mode 120000
index 8b5214f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/list.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/list.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/list.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/list.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h
deleted file mode 120000
index 1f70297..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/lockd/nlm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockd/nlm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/lockd/nlm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/nlm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h
deleted file mode 120000
index 59987cf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/lockd/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockd/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/lockd/xdr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockd/xdr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h
deleted file mode 120000
index 6a6ae87..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/lockdep.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockdep.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/lockdep.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/lockdep.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h
deleted file mode 120000
index 6c91215..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/loop.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/loop.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/loop.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/loop.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h
deleted file mode 120000
index afafcfd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/magic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/magic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/magic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/magic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h
deleted file mode 120000
index f08b244..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/major.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/major.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/major.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/major.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h
deleted file mode 120000
index 4286741..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mc146818rtc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mc146818rtc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mc146818rtc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mc146818rtc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h
deleted file mode 120000
index 1f34bde..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mca.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mca.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mca.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mca.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h
deleted file mode 120000
index 2690b14..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mempolicy.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mempolicy.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mempolicy.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempolicy.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h
deleted file mode 120000
index eaed026..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mempool.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mempool.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mempool.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mempool.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h
deleted file mode 120000
index 7de3342..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/miscdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/miscdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/miscdevice.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/miscdevice.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h
deleted file mode 120000
index 111cc15..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h
deleted file mode 120000
index 0a25330..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/card.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/card.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mmc/card.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/card.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h
deleted file mode 120000
index 61ab0f6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/host.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/host.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mmc/host.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/host.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h
deleted file mode 120000
index ca8b23e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/mmc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/mmc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mmc/mmc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmc/mmc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h
deleted file mode 120000
index 6bd8d97..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mmzone.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmzone.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mmzone.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mmzone.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h
deleted file mode 120000
index 1104eb5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mod_devicetable.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mod_devicetable.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mod_devicetable.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mod_devicetable.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h
deleted file mode 120000
index 93b3b19..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/module.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/module.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/module.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/module.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h
deleted file mode 120000
index 1f544b7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/moduleparam.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/moduleparam.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/moduleparam.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/moduleparam.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h
deleted file mode 120000
index 5ac8a42..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mount.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mount.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h
deleted file mode 120000
index de01ab3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msdos_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msdos_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msdos_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msdos_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h
deleted file mode 120000
index 4b5c4f9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h
deleted file mode 120000
index 620ab8d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_adsp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_adsp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msm_adsp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_adsp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h
deleted file mode 120000
index 730a831..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_audio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_audio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msm_audio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_audio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h
deleted file mode 120000
index d4ff409..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_mdp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_mdp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/msm_mdp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/msm_mdp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h
deleted file mode 120000
index 8a2b5c0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mt9t013.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mt9t013.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mt9t013.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mt9t013.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h
deleted file mode 120000
index d2d24c5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/bbm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/bbm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/bbm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/bbm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h
deleted file mode 120000
index f16b497..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/blktrans.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/blktrans.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/blktrans.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h
deleted file mode 120000
index 468e5e8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/cfi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/cfi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/cfi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h
deleted file mode 120000
index 3f9e287..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/cfi_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/cfi_endian.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/cfi_endian.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h
deleted file mode 120000
index ed02458..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/compatmac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/compatmac.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/compatmac.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h
deleted file mode 120000
index 96a349d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/flashchip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/flashchip.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/flashchip.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h
deleted file mode 120000
index fee2465..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/map.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/map.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/map.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/map.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h
deleted file mode 120000
index 7821ca4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/mtd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/mtd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/mtd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/mtd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h
deleted file mode 120000
index 00fe26e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nand.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nand.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/nand.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h
deleted file mode 120000
index 3c780f2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nand_ecc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/nand_ecc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nand_ecc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h
deleted file mode 120000
index b68add4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nftl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nftl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/nftl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/nftl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h
deleted file mode 120000
index cf98f5e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/onenand_regs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/onenand_regs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/onenand_regs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h
deleted file mode 120000
index 1943ac4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/partitions.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/partitions.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtd/partitions.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtd/partitions.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h
deleted file mode 120000
index e4a665b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mtio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mtio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mtio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h
deleted file mode 120000
index b03b89e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mutex-debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mutex-debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mutex-debug.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex-debug.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h
deleted file mode 120000
index adaf51c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mutex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/mutex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/mutex.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/mutex.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h
deleted file mode 120000
index 36de989..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ncp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h
deleted file mode 120000
index d8e6b48..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp_mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp_mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ncp_mount.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_mount.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h
deleted file mode 120000
index 4e59a2b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp_no.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp_no.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ncp_no.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ncp_no.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h
deleted file mode 120000
index 9ff68ce..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/net.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/net.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/net.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/net.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h
deleted file mode 120000
index 103b2df..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netdevice.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netdevice.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netdevice.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h
deleted file mode 120000
index 81c9328..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
deleted file mode 120000
index 840faca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_common.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_common.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
deleted file mode 120000
index 3a8e544..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_ftp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_ftp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
deleted file mode 120000
index 17c5b25..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_sctp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
deleted file mode 120000
index 483187d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tcp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
deleted file mode 120000
index 2335e58..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_tuple_common.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tuple_common.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h
deleted file mode 120000
index 434215d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nfnetlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
deleted file mode 120000
index 87cc812..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nfnetlink_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink_conntrack.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h
deleted file mode 120000
index d2b9746..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/x_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/x_tables.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/x_tables.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
deleted file mode 120000
index a3b868a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_CLASSIFY.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CLASSIFY.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
deleted file mode 120000
index 725dafb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_CONNSECMARK.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CONNSECMARK.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
deleted file mode 120000
index 851f571..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_NFQUEUE.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_NFQUEUE.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
deleted file mode 120000
index 02dfc1b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_SECMARK.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_SECMARK.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h
deleted file mode 120000
index 141f426..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_comment.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_comment.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_comment.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
deleted file mode 120000
index 7e67ee9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_connbytes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_connbytes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
deleted file mode 120000
index 04a1729..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_conntrack.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h
deleted file mode 120000
index 6bdc874..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_dccp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_dccp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h
deleted file mode 120000
index a27d0cc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_esp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_esp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h
deleted file mode 120000
index 6b958db..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_helper.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_helper.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_helper.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h
deleted file mode 120000
index 680ef6b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_length.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_length.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h
deleted file mode 120000
index 24bce98..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_limit.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_limit.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_limit.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h
deleted file mode 120000
index 24af1fc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_mac.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_mac.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h
deleted file mode 120000
index 80b337d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_multiport.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_multiport.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_multiport.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h
deleted file mode 120000
index c6ad18c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_physdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_physdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
deleted file mode 120000
index 3551c0d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_pkttype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_pkttype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h
deleted file mode 120000
index fc9f8b0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_quota.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_quota.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_quota.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h
deleted file mode 120000
index 7c0e5f6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_realm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_realm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_realm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h
deleted file mode 120000
index cede7c7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_sctp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_sctp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h
deleted file mode 120000
index 3f2ee91..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_state.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_state.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_state.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h
deleted file mode 120000
index dc1fe25..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_statistic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_statistic.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_statistic.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h
deleted file mode 120000
index c19bebe..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_string.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_string.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
deleted file mode 120000
index 90cf9d5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_tcpmss.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpmss.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
deleted file mode 120000
index 4e3f6b5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_tcpudp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpudp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h
deleted file mode 120000
index e6172ef..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_arp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
deleted file mode 120000
index b31b8c2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_arp/arp_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_arp/arp_tables.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h
deleted file mode 120000
index f582040..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_bridge.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_bridge.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_bridge.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h
deleted file mode 120000
index 1daca65..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_ipv4.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
deleted file mode 120000
index 841b2e9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
deleted file mode 120000
index 109ccef..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
deleted file mode 120000
index 9b17b22..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_nat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
deleted file mode 120000
index fe78e7f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_nat_rule.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat_rule.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
deleted file mode 120000
index 3ea52ca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_queue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_queue.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
deleted file mode 120000
index 0f8460d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_tables.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
deleted file mode 120000
index f908438..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
deleted file mode 120000
index 29058d2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_DSCP.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_DSCP.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
deleted file mode 120000
index fc1128c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ECN.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ECN.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
deleted file mode 120000
index b5dbb55..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_LOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_LOG.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
deleted file mode 120000
index 3686206..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
deleted file mode 120000
index b3f1023..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_REJECT.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_REJECT.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
deleted file mode 120000
index fd24f6a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
deleted file mode 120000
index bb1a243..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TOS.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TOS.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
deleted file mode 120000
index 0ad1303..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TTL.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TTL.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
deleted file mode 120000
index 9cc45e5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ULOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ULOG.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
deleted file mode 120000
index 3b37d0b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_addrtype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_addrtype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
deleted file mode 120000
index 4b846fa..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ah.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ah.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
deleted file mode 120000
index 96a07ea..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_comment.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_comment.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
deleted file mode 120000
index 76120e8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_connbytes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_connbytes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
deleted file mode 120000
index 9be071c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dccp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
deleted file mode 120000
index 75879c3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_dscp_.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dscp_.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
deleted file mode 120000
index 9830294..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_esp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
deleted file mode 120000
index 67cbcc1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_hashlimit.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_hashlimit.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
deleted file mode 120000
index b7039dc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_helper.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_helper.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
deleted file mode 120000
index d225d28..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_iprange.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_iprange.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
deleted file mode 120000
index 268a39e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_length.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
deleted file mode 120000
index f3cae5b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_mac.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
deleted file mode 120000
index b082109..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_owner.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_owner.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
deleted file mode 120000
index 47258d4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_physdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
deleted file mode 120000
index dc938c1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_pkttype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_pkttype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
deleted file mode 120000
index c07b56d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_realm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_realm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
deleted file mode 120000
index 531cb56..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_recent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_recent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
deleted file mode 120000
index 341f347..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_sctp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
deleted file mode 120000
index da5187b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_state.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_state.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
deleted file mode 120000
index 12d23d4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_string.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
deleted file mode 120000
index 35348cc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_tos_.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_tos_.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h
deleted file mode 120000
index 0a37d5b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_ipv6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
deleted file mode 120000
index dbabff2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6_tables.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
deleted file mode 120000
index c7b27c9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_LOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_LOG.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
deleted file mode 120000
index fcee66d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_REJECT.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_REJECT.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
deleted file mode 120000
index 79151b0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_ah.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ah.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
deleted file mode 120000
index 4f116b7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_esp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
deleted file mode 120000
index 7375205..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_frag.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_frag.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
deleted file mode 120000
index d3bc0ae..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
deleted file mode 120000
index cc583e5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_length.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
deleted file mode 120000
index edb21e3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_mac.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
deleted file mode 120000
index 7dd0aec..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_opts.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_opts.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
deleted file mode 120000
index cd6bbca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_owner.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_owner.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
deleted file mode 120000
index 72d42c8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_physdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
deleted file mode 120000
index 0ade394..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_rt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_rt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h
deleted file mode 120000
index 91610b8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/netlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/netlink.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/netlink.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h
deleted file mode 120000
index a055478..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h
deleted file mode 120000
index c3a9509..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs2.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs2.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h
deleted file mode 120000
index 4cd8d7a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs3.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs3.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs3.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs3.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h
deleted file mode 120000
index 4649859..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs4.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs4.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs4.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs4.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h
deleted file mode 120000
index 2f6de25..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs_xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs_xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfs_xdr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfs_xdr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h
deleted file mode 120000
index c44aa13..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfsacl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsacl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsacl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsacl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h
deleted file mode 120000
index f68aa51..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/auth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/auth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/auth.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/auth.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h
deleted file mode 120000
index fe65cf4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/const.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/const.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/const.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/const.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h
deleted file mode 120000
index 789ca95..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/debug.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/debug.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h
deleted file mode 120000
index 811763b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/export.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/export.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/export.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/export.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h
deleted file mode 120000
index b19512d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/interface.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/interface.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/interface.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/interface.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h
deleted file mode 120000
index 9f3e60d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/nfsfh.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/nfsfh.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/nfsfh.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h
deleted file mode 120000
index 744e2fb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/stats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/stats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/stats.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/stats.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h
deleted file mode 120000
index 46d7928..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nfsd/xdr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nfsd/xdr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h
deleted file mode 120000
index e67c59f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/node.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/node.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/node.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/node.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h
deleted file mode 120000
index 356c720..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nodemask.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nodemask.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nodemask.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nodemask.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h
deleted file mode 120000
index a0dfdcf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/notifier.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/notifier.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/notifier.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/notifier.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h
deleted file mode 120000
index f0549f0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/numa.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/numa.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/numa.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/numa.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h
deleted file mode 120000
index e2bce31..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nvram.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/nvram.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/nvram.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/nvram.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h
deleted file mode 120000
index 0d2c516..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/omap_csmi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/omap_csmi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/omap_csmi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/omap_csmi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h
deleted file mode 120000
index 3545504..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pagemap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pagemap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pagemap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pagemap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h
deleted file mode 120000
index edd8f98..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/param.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/param.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/param.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/param.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h
deleted file mode 120000
index 628a75c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/patchkey.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/patchkey.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/patchkey.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/patchkey.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h
deleted file mode 120000
index 22b0ec7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pci.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h
deleted file mode 120000
index c3475fb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci_ids.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci_ids.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pci_ids.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_ids.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h
deleted file mode 120000
index 853c226..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci_regs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci_regs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pci_regs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pci_regs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h
deleted file mode 120000
index 93d6b27..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/percpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/percpu.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/percpu.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h
deleted file mode 120000
index 6c839d4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/percpu_counter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/percpu_counter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/percpu_counter.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/percpu_counter.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h
deleted file mode 120000
index 0d6b659..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/personality.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/personality.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/personality.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/personality.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h
deleted file mode 120000
index 321bbb6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pfkeyv2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pfkeyv2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pfkeyv2.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pfkeyv2.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h
deleted file mode 120000
index 58e8899..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pkt_cls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pkt_cls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pkt_cls.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_cls.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h
deleted file mode 120000
index 77b5a47..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pkt_sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pkt_sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pkt_sched.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pkt_sched.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h
deleted file mode 120000
index baa7b55..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/platform_device.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/platform_device.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/platform_device.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/platform_device.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h
deleted file mode 120000
index 4d4e542..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/plist.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/plist.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/plist.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/plist.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h
deleted file mode 120000
index 1a4339e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h
deleted file mode 120000
index d7e1bb9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pnp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/pnp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/pnp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/pnp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h
deleted file mode 120000
index 23c4b3f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/poll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/poll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h
deleted file mode 120000
index 29ae7cd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/posix_acl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/posix_acl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/posix_acl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_acl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h
deleted file mode 120000
index bcbcf00..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/posix_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/posix_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/posix_types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/posix_types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h
deleted file mode 120000
index 3b386a6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ppdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ppdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ppdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h
deleted file mode 120000
index 309a3d0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ppp_defs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ppp_defs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ppp_defs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ppp_defs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h
deleted file mode 120000
index 8bbe96c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/prctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/prctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/prctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/prctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h
deleted file mode 120000
index 9b59fe3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/preempt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/preempt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/preempt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/preempt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h
deleted file mode 120000
index 6d310c4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/proc_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/proc_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/proc_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/proc_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h
deleted file mode 120000
index 2617a6c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ptrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ptrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ptrace.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ptrace.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h
deleted file mode 120000
index 7223064..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/qic117.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/qic117.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/qic117.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/qic117.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h
deleted file mode 120000
index 5c767a3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/qnxtypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/qnxtypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/qnxtypes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/qnxtypes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h
deleted file mode 120000
index ed68365..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/quota.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/quota.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/quota.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/quota.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h
deleted file mode 120000
index e8599ef..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/md.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h
deleted file mode 120000
index 20f8ca6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_k.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_k.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/md_k.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_k.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h
deleted file mode 120000
index f631a38..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_p.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_p.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/md_p.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_p.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h
deleted file mode 120000
index 931271c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_u.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_u.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/md_u.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/md_u.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h
deleted file mode 120000
index b02a69a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/xor.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/xor.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/raid/xor.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/raid/xor.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h
deleted file mode 120000
index 0088784..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/random.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/random.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/random.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/random.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h
deleted file mode 120000
index f606d94..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rbtree.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rbtree.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rbtree.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rbtree.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h
deleted file mode 120000
index e93235d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rcupdate.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rcupdate.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rcupdate.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rcupdate.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h
deleted file mode 120000
index c3b86f4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/reboot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/reboot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/reboot.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/reboot.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h
deleted file mode 120000
index c354e19..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/relay.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/relay.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/relay.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/relay.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h
deleted file mode 120000
index 80a9f86..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/resource.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/resource.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h
deleted file mode 120000
index c81b220..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/route.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/route.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/route.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/route.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h
deleted file mode 120000
index eaeecd3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rtc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rtc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rtc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h
deleted file mode 120000
index 064a3d2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rtnetlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rtnetlink.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rtnetlink.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rtnetlink.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h
deleted file mode 120000
index 68eab47..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rwsem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/rwsem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/rwsem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/rwsem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h
deleted file mode 120000
index e8ff88b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sched.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sched.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h
deleted file mode 120000
index 5348418..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sem.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sem.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sem.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h
deleted file mode 120000
index 2c25e6c..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/seq_file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/seq_file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/seq_file.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/seq_file.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h
deleted file mode 120000
index 345108e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/seqlock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/seqlock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/seqlock.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/seqlock.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h
deleted file mode 120000
index be40c9a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serial_core.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/serial_core.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/serial_core.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_core.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h
deleted file mode 120000
index 60bd137..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serial_reg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/serial_reg.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/serial_reg.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/serial_reg.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h
deleted file mode 120000
index 4d3b062..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/serio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/serio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/serio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h
deleted file mode 120000
index 4cd2df0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/shm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/shm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/shm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/shm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h
deleted file mode 120000
index 10e9b01..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/signal.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/signal.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h
deleted file mode 120000
index 5ff4983..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/skbuff.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/skbuff.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/skbuff.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/skbuff.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h
deleted file mode 120000
index 04f089d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/slab.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/slab.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/slab.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/slab.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h
deleted file mode 120000
index 3f1cf22..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/smb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/smb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/smb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h
deleted file mode 120000
index bfa5942..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/smp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/smp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h
deleted file mode 120000
index 76d4cb0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smp_lock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/smp_lock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/smp_lock.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/smp_lock.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h
deleted file mode 120000
index edc366f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/socket.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/socket.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/socket.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/socket.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h
deleted file mode 120000
index 793adfb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sockios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sockios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sockios.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sockios.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h
deleted file mode 120000
index ca37579..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/soundcard.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/soundcard.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/soundcard.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/soundcard.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h
deleted file mode 120000
index 305c46d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h
deleted file mode 120000
index 45bfb4e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_api_smp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_api_smp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_smp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h
deleted file mode 120000
index b54532e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_api_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_api_up.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_api_up.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h
deleted file mode 120000
index 39611b7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h
deleted file mode 120000
index d5384d7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_types_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_types_up.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_types_up.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h
deleted file mode 120000
index 46b3c0e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_up.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/spinlock_up.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/spinlock_up.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h
deleted file mode 120000
index 4c18232..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stacktrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/stacktrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/stacktrace.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/stacktrace.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h
deleted file mode 120000
index 842159b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/stat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/stat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h
deleted file mode 120000
index 4ac3b01..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/statfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/statfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/statfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/statfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h
deleted file mode 120000
index 9b398f1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stddef.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/stddef.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/stddef.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/stddef.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h
deleted file mode 120000
index 414748f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/string.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/string.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h
deleted file mode 120000
index 44dd7ed..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stringify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/stringify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/stringify.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/stringify.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h
deleted file mode 120000
index 1fbe34f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/auth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/auth.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h
deleted file mode 120000
index 7bc8ad1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/auth_gss.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/auth_gss.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/auth_gss.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h
deleted file mode 120000
index 7f11a93..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/clnt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/clnt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/clnt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h
deleted file mode 120000
index c95a429..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/debug.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/debug.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h
deleted file mode 120000
index e10eba6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_api.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_api.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_api.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
deleted file mode 120000
index e860f8e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_asn1.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_asn1.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h
deleted file mode 120000
index 72c7141..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_err.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/gss_err.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h
deleted file mode 120000
index d9cb9ae..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/msg_prot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/msg_prot.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/msg_prot.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h
deleted file mode 120000
index 84791a7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/sched.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/sched.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h
deleted file mode 120000
index b115bd5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/stats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/stats.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/stats.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h
deleted file mode 120000
index 658a81e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/svc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/svc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h
deleted file mode 120000
index 8c3e841..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/svcauth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/svcauth.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/svcauth.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h
deleted file mode 120000
index ce8709d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/timer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/timer.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/timer.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h
deleted file mode 120000
index e7f7656..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h
deleted file mode 120000
index 163e618..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/xdr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xdr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h
deleted file mode 120000
index 6d29148..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/xprt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sunrpc/xprt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sunrpc/xprt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h
deleted file mode 120000
index 47db73a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/swap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/swap.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/swap.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/swap.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h
deleted file mode 120000
index 1252a53..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sysctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h
deleted file mode 120000
index 6691343..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysdev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sysdev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysdev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h
deleted file mode 120000
index 0cbaad8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/sysfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/sysfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h
deleted file mode 120000
index 24a178e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/taskstats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/taskstats.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/taskstats.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h
deleted file mode 120000
index 20b2c64..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/taskstats_kern.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/taskstats_kern.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/taskstats_kern.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/taskstats_kern.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h
deleted file mode 120000
index 417237a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/tcp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/tcp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h
deleted file mode 120000
index 44b4c18..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/telephony.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/telephony.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/telephony.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/telephony.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h
deleted file mode 120000
index 968db97..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/termios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/termios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/termios.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/termios.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h
deleted file mode 120000
index e033273..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/textsearch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/textsearch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/textsearch.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/textsearch.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h
deleted file mode 120000
index 11a1011..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/thread_info.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/thread_info.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/thread_info.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/thread_info.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h
deleted file mode 120000
index ef3237e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/threads.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/threads.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/threads.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/threads.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h
deleted file mode 120000
index 2060843..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/time.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/time.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h
deleted file mode 120000
index f81d907..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/timer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/timer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/timer.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/timer.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h
deleted file mode 120000
index 8757201..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/times.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/times.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/times.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/times.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h
deleted file mode 120000
index 49e520b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/timex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/timex.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/timex.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/timex.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h
deleted file mode 120000
index ae6102b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tiocl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/tiocl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/tiocl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/tiocl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h
deleted file mode 120000
index 735b69b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/transport_class.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/transport_class.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/transport_class.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/transport_class.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h
deleted file mode 120000
index 4e874bf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tty.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/tty.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/tty.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/tty.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h
deleted file mode 120000
index 76b2511..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h
deleted file mode 120000
index 14ee4b2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/udp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/udp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/udp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/udp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h
deleted file mode 120000
index de767a7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ufs_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ufs_fs_i.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_i.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h
deleted file mode 120000
index a78b9d3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ufs_fs_sb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/ufs_fs_sb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/ufs_fs_sb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h
deleted file mode 120000
index 95a105d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/uio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/uio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/uio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/uio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h
deleted file mode 120000
index 6d51e94..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/un.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/un.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/un.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/un.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h
deleted file mode 120000
index 7ef4a0d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/unistd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/unistd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h
deleted file mode 120000
index 7da27d7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/usb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/usb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h
deleted file mode 120000
index d8a2655..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usb_ch9.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/usb_ch9.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/usb_ch9.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/usb_ch9.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h
deleted file mode 120000
index b4c8de8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usbdevice_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/usbdevice_fs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/usbdevice_fs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h
deleted file mode 120000
index 2bb072e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/user.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/user.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/user.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/user.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h
deleted file mode 120000
index c483c28..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/utime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/utime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h
deleted file mode 120000
index 8b0a098..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/utsname.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/utsname.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/utsname.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/utsname.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h
deleted file mode 120000
index cb2ac62..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/version.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/version.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/version.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/version.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h
deleted file mode 120000
index b815962..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/vfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/vfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/vfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h
deleted file mode 120000
index 33e8651..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/videodev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/videodev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/videodev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h
deleted file mode 120000
index 9127b40..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/videodev2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/videodev2.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/videodev2.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/videodev2.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h
deleted file mode 120000
index 90410fc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vmalloc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/vmalloc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/vmalloc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/vmalloc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h
deleted file mode 120000
index 5f1333a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/vt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/vt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h
deleted file mode 120000
index babe241..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vt_buffer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/vt_buffer.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/vt_buffer.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/vt_buffer.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h
deleted file mode 120000
index ee2730b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wait.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/wait.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/wait.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/wait.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h
deleted file mode 120000
index 1d1b8f1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wanrouter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/wanrouter.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/wanrouter.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/wanrouter.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h
deleted file mode 120000
index 43983b5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wireless.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/wireless.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/wireless.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/wireless.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h
deleted file mode 120000
index 3ce0512..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/workqueue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/workqueue.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/workqueue.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/workqueue.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h
deleted file mode 120000
index 8cf8b0b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/xattr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/xattr.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/xattr.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/xattr.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h
deleted file mode 120000
index 4dc29e6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/zconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/zconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/zconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h
deleted file mode 120000
index 9d45319..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/zlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/zlib.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/zlib.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h
deleted file mode 120000
index f2220c0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zorro_ids.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/linux/zorro_ids.h b/ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/linux/zorro_ids.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/linux/zorro_ids.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/locale.h b/ndk/build/platforms/android-3/arch-arm/usr/include/locale.h
deleted file mode 120000
index 26247fd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/locale.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/locale.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/locale.h b/ndk/build/platforms/android-3/arch-arm/usr/include/locale.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/locale.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/locale.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h
deleted file mode 120000
index 78a8006..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/malloc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/malloc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/malloc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/malloc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/math.h b/ndk/build/platforms/android-3/arch-arm/usr/include/math.h
deleted file mode 120000
index 0d4bdcd..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/math.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/math.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/math.h b/ndk/build/platforms/android-3/arch-arm/usr/include/math.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/math.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/math.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/memory.h b/ndk/build/platforms/android-3/arch-arm/usr/include/memory.h
deleted file mode 120000
index 08375e2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/memory.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/memory.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/memory.h b/ndk/build/platforms/android-3/arch-arm/usr/include/memory.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/memory.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/memory.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h
deleted file mode 120000
index 43186c4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/mntent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/mntent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/mntent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/mntent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h
deleted file mode 120000
index 19a9a51..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/mtd/mtd-abi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/mtd/mtd-abi.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/mtd/mtd-abi.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-abi.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h
deleted file mode 120000
index e22b96b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/mtd/mtd-user.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/mtd/mtd-user.h b/ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/mtd/mtd-user.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/mtd/mtd-user.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h
deleted file mode 120000
index 621864d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/ethertypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/ethertypes.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/ethertypes.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/ethertypes.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h
deleted file mode 120000
index c83fdb9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h
deleted file mode 120000
index e8e84bb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_arp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_arp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_arp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h
deleted file mode 120000
index 1a27df4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_dl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_dl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_dl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_dl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h
deleted file mode 120000
index 591c1db..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_ether.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ether.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h
deleted file mode 120000
index f0b13ce..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_ieee1394.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_ieee1394.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_ieee1394.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_ieee1394.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h
deleted file mode 120000
index 4c5bd8d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_packet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_packet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h
deleted file mode 120000
index 410430f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/if_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/if_types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/if_types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h
deleted file mode 120000
index ea03206..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/route.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/net/route.h b/ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/net/route.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/net/route.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h
deleted file mode 120000
index 67f7a2f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/netdb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netdb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netdb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netdb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h
deleted file mode 120000
index e331c47..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/ether.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ether.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h
deleted file mode 120000
index 5354bb5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/if_ether.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/if_ether.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/if_ether.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h
deleted file mode 120000
index 8439fe5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/in.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h
deleted file mode 120000
index fa5937f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in6.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/in6.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in6.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h
deleted file mode 120000
index ea70a33..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in_systm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in_systm.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/in_systm.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/in_systm.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h
deleted file mode 120000
index 3eb2097..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ip.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/ip.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h
deleted file mode 120000
index 2c9024f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ip_icmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ip_icmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/ip_icmp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/ip_icmp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h
deleted file mode 120000
index 6b0d829..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/tcp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/tcp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/tcp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h
deleted file mode 120000
index d5e0f6b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/udp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netinet/udp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netinet/udp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netinet/udp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h
deleted file mode 120000
index 7473ba4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netpacket/packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/netpacket/packet.h b/ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/netpacket/packet.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/netpacket/packet.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/new b/ndk/build/platforms/android-3/arch-arm/usr/include/new
deleted file mode 120000
index b3e4225..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/new
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/new
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/new b/ndk/build/platforms/android-3/arch-arm/usr/include/new
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/new
rename to ndk/build/platforms/android-3/arch-arm/usr/include/new
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h
deleted file mode 120000
index 361ce34..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/nsswitch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/nsswitch.h b/ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/nsswitch.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/nsswitch.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h
deleted file mode 120000
index f1c45ca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pathconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/pathconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/pathconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/pathconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/paths.h b/ndk/build/platforms/android-3/arch-arm/usr/include/paths.h
deleted file mode 120000
index 04b00c0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/paths.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/paths.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/paths.h b/ndk/build/platforms/android-3/arch-arm/usr/include/paths.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/paths.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/paths.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/poll.h
deleted file mode 120000
index e260aad..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/poll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/poll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/poll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h
deleted file mode 120000
index e7240fe..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pthread.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/pthread.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/pthread.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/pthread.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h
deleted file mode 120000
index deefc65..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pwd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/pwd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/pwd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/pwd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h b/ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h
deleted file mode 120000
index 645cec6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/resolv.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/resolv.h b/ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/resolv.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/resolv.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sched.h
deleted file mode 120000
index 7eb75bc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sched.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sched.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sched.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sched.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h b/ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h
deleted file mode 120000
index 5981819..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/semaphore.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/semaphore.h b/ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/semaphore.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/semaphore.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h
deleted file mode 120000
index 927b88e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/setjmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/setjmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/setjmp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/setjmp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h
deleted file mode 120000
index fcfac52..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sgtty.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sgtty.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sgtty.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sgtty.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h
deleted file mode 120000
index f4aadd2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sha1.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sha1.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sha1.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sha1.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/signal.h
deleted file mode 120000
index 83e2e8e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/signal.h b/ndk/build/platforms/android-3/arch-arm/usr/include/signal.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/signal.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/signal.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h
deleted file mode 120000
index 8b0dfbf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdint.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h
new file mode 100644
index 0000000..237baa2
--- /dev/null
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/stdint.h
@@ -0,0 +1,266 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _STDINT_H
+#define _STDINT_H
+
+#include <stddef.h>
+#include <sys/_types.h>
+
+
+
+#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
+#  define __STDINT_LIMITS
+#endif
+
+#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
+#  define  __STDINT_MACROS
+#endif
+
+/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
+#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
+#  define  __STDINT_MACROS
+#endif
+
+#if !defined __STRICT_ANSI__ || __STDC_VERSION__ >= 199901L
+#  define __STDC_INT64__
+#endif
+
+typedef __int8_t      int8_t;
+typedef __uint8_t     uint8_t;
+typedef __int16_t     int16_t;
+typedef __uint16_t    uint16_t;
+typedef __int32_t     int32_t;
+typedef __uint32_t    uint32_t;
+#if defined(__STDC_INT64__)
+typedef __int64_t     int64_t;
+typedef __uint64_t    uint64_t;
+#endif
+
+/*
+ * int8_t & uint8_t
+ */
+
+typedef int8_t        int_least8_t;
+typedef int8_t        int_fast8_t;
+
+typedef uint8_t       uint_least8_t;
+typedef uint8_t       uint_fast8_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT8_MIN         (-128)
+#  define INT8_MAX         (127)
+#  define INT_LEAST8_MIN   INT8_MIN
+#  define INT_LEAST8_MAX   INT8_MAX
+#  define INT_FAST8_MIN    INT8_MIN
+#  define INT_FAST8_MAX    INT8_MAX
+
+#  define UINT8_MAX           (255U)
+#  define UINT_LEAST8_MAX     UINT8_MAX
+#  define UINT_FAST8_MAX      UINT8_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT8_C(c)	c
+#  define INT_LEAST8_C(c)	 INT8_C(c)
+#  define INT_FAST8_C(c)	INT8_C(c)
+
+#  define UINT8_C(c)	c ## U
+#  define UINT_LEAST8_C(c)  UINT8_C(c)
+#  define UINT_FAST8_C(c)  UINT8_C(c)
+#endif
+
+/*
+ * int16_t & uint16_t
+ */
+
+
+typedef int16_t       int_least16_t;
+typedef int32_t       int_fast16_t;
+
+typedef uint16_t      uint_least16_t;
+typedef uint32_t      uint_fast16_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT16_MIN	(-32768)
+#  define INT16_MAX	(32767)
+#  define INT_LEAST16_MIN	INT16_MIN
+#  define INT_LEAST16_MAX	INT16_MAX
+#  define INT_FAST16_MIN	INT32_MIN
+#  define INT_FAST16_MAX	INT32_MAX
+
+#  define UINT16_MAX	(65535U)
+#  define UINT_LEAST16_MAX UINT16_MAX
+#  define UINT_FAST16_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT16_C(c)	c
+#  define INT_LEAST16_C(c) INT16_C(c)
+#  define INT_FAST16_C(c)	 INT32_C(c)
+
+#  define UINT16_C(c)	c ## U
+#  define UINT_LEAST16_C(c) UINT16_C(c)
+#  define UINT_FAST16_C(c) UINT32_C(c)
+#endif
+
+/*
+ * int32_t & uint32_t
+ */
+
+typedef int32_t       int_least32_t;
+typedef int32_t       int_fast32_t;
+
+typedef uint32_t      uint_least32_t;
+typedef uint32_t      uint_fast32_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT32_MIN	(-2147483647-1)
+#  define INT32_MAX	(2147483647)
+#  define INT_LEAST32_MIN	INT32_MIN
+#  define INT_LEAST32_MAX	INT32_MAX
+#  define INT_FAST32_MIN	INT32_MIN
+#  define INT_FAST32_MAX	INT32_MAX
+
+#  define UINT32_MAX	(4294967295U)
+#  define UINT_LEAST32_MAX UINT32_MAX
+#  define UINT_FAST32_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT32_C(c)	c
+#  define INT_LEAST32_C(c) INT32_C(c)
+#  define INT_FAST32_C(c)  INT32_C(c)
+
+#  define UINT32_C(c)	c ## U
+#  define UINT_LEAST32_C(c) UINT32_C(c)
+#  define UINT_FAST32_C(c) UINT32_C(c)
+#endif
+
+#if defined(__STDC_INT64__)
+/*
+ *  int64_t
+ */
+typedef int64_t       int_least64_t;
+typedef int64_t       int_fast64_t;
+
+typedef uint64_t      uint_least64_t;
+typedef uint64_t      uint_fast64_t;
+
+
+#ifdef __STDINT_LIMITS
+#  define INT64_MIN        (__INT64_C(-9223372036854775807)-1)
+#  define INT64_MAX        (__INT64_C(9223372036854775807))
+#  define INT_LEAST64_MIN  INT64_MIN
+#  define INT_LEAST64_MAX  INT64_MAX
+#  define INT_FAST64_MIN   INT64_MIN
+#  define INT_FAST64_MAX   INT64_MAX
+#  define UINT64_MAX       (__UINT64_C(18446744073709551615))
+
+#  define UINT_LEAST64_MAX UINT64_MAX
+#  define UINT_FAST64_MAX UINT64_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define __INT64_C(c)     c ## LL
+#  define INT64_C(c)       __INT64_C(c)
+#  define INT_LEAST64_C(c) INT64_C(c)
+#  define INT_FAST64_C(c)  INT64_C(c)
+
+#  define __UINT64_C(c)     c ## ULL
+#  define UINT64_C(c)       __UINT64_C(c)
+#  define UINT_LEAST64_C(c) UINT64_C(c)
+#  define UINT_FAST64_C(c)  UINT64_C(c)
+#endif
+
+
+#  define __PRI64_RANK   "ll"
+#  define __PRIFAST_RANK ""
+#  define __PRIPTR_RANK  ""
+
+#endif /* __STDC_INT64__ */
+
+/*
+ * intptr_t & uintptr_t
+ */
+
+typedef int           intptr_t;
+typedef unsigned int  uintptr_t;
+
+#  define INTPTR_MIN    INT32_MIN
+#  define INTPTR_MAX    INT32_MAX
+#  define UINTPTR_MAX   UINT32_MAX
+#  define INTPTR_C(c)   INT32_C(c)
+#  define UINTPTR_C(c)  UINT32_C(c)
+#  define PTRDIFF_C(c)  INT32_C(c)
+#  define PTRDIFF_MIN   INT32_MIN
+#  define PTRDIFF_MAX   INT32_MAX
+
+
+/*
+ *  intmax_t & uintmax_t
+ */
+
+#if defined(__STDC_INT64__)
+
+typedef uint64_t uintmax_t;
+typedef int64_t  intmax_t;
+
+#define INTMAX_MIN	INT64_MIN
+#define INTMAX_MAX	INT64_MAX
+#define UINTMAX_MAX	UINT64_MAX
+
+#define INTMAX_C(c)	INT64_C(c)
+#define UINTMAX_C(c)	UINT64_C(c)
+
+#else /* !__STDC_INT64__ */
+
+typedef uint32_t  uintmax_t;
+typedef int32_t   intmax_t;
+
+#define  INTMAX_MIN    INT32_MIN
+#define  INTMAX_MAX    INT32_MAX
+#define  UINTMAX_MAX   UINT32_MAX
+
+#define INTMAX_C(c)	INT32_C(c)
+#define UINTMAX_C(c)	UINT32_C(c)
+
+#endif /* !__STDC_INT64__ */
+
+
+/* size_t is defined by the GCC-specific <stddef.h> */
+#ifndef _SSIZE_T_DEFINED_
+#define _SSIZE_T_DEFINED_
+typedef long int  ssize_t;
+#endif
+
+#define _BITSIZE 32
+
+/* Keep the kernel from trying to define these types... */
+#define __BIT_TYPES_DEFINED__
+
+#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h
deleted file mode 120000
index 41d7d04..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/stdio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/stdio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/stdio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h
deleted file mode 120000
index de97694..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/stdlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/stdlib.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/stdlib.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h
deleted file mode 120000
index bfeaf5b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stl_pair.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/stl_pair.h b/ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/stl_pair.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/stl_pair.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/string.h
deleted file mode 120000
index ee1c46a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/string.h b/ndk/build/platforms/android-3/arch-arm/usr/include/string.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/string.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/string.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h
deleted file mode 120000
index e3c356d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/strings.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h
new file mode 100644
index 0000000..fee7dc4
--- /dev/null
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/strings.h
@@ -0,0 +1,56 @@
+/*	$NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $	*/
+
+/*-
+ * Copyright (c) 1998 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Klaus Klein.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *        This product includes software developed by the NetBSD
+ *        Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ *    contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _STRINGS_H_
+#define _STRINGS_H_
+
+#include <sys/types.h>
+#include <sys/cdefs.h>
+
+__BEGIN_DECLS
+int	 bcmp(const void *, const void *, size_t);
+void	 bcopy(const void *, void *, size_t);
+void	 bzero(void *, size_t);
+int	 ffs(int);
+char	*index(const char *, int);
+char	*rindex(const char *, int);
+int	 strcasecmp(const char *, const char *);
+int	 strncasecmp(const char *, const char *, size_t);
+__END_DECLS
+
+#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h
deleted file mode 120000
index b2a299e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_errdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/_errdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/_errdefs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/_errdefs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h
deleted file mode 120000
index ea48d37..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_sigdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/_sigdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/_sigdefs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/_sigdefs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h
deleted file mode 120000
index 6054cc4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_system_properties.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/_system_properties.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/_system_properties.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/_system_properties.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h
deleted file mode 120000
index 936b4d5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/_types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/_types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/_types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h
deleted file mode 120000
index 0304794..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/atomics.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/atomics.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/atomics.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/atomics.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h
deleted file mode 120000
index 36eede7..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/cdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/cdefs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/cdefs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h
deleted file mode 120000
index fa852bf..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/cdefs_elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/cdefs_elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/cdefs_elf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/cdefs_elf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h
deleted file mode 120000
index cac02ee..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/dirent.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/dirent.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/dirent.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h
deleted file mode 120000
index 25109db..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/endian.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/endian.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/endian.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h
deleted file mode 120000
index bf93fc6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/epoll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/epoll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/epoll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/epoll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h
deleted file mode 120000
index 199ad78..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/errno.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/errno.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/errno.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h
deleted file mode 120000
index 24e01e6..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/exec_elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/exec_elf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/exec_elf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/exec_elf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h
deleted file mode 120000
index 99ab5d3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/file.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/file.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/file.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h
deleted file mode 120000
index f5f9974..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/fsuid.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/fsuid.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/fsuid.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/fsuid.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h
deleted file mode 120000
index a050653..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/inotify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/inotify.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/inotify.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/inotify.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h
deleted file mode 120000
index e228a66..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ioctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ioctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h
deleted file mode 120000
index dd004de..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ioctl_compat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ioctl_compat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ioctl_compat.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ioctl_compat.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h
deleted file mode 120000
index 5d275f2..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ipc.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ipc.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ipc.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h
deleted file mode 120000
index 4cad4c9..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/klog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/klog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/klog.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/klog.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h
deleted file mode 120000
index 4f50214..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/limits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/limits.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/limits.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h
deleted file mode 120000
index 754d7c49..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/linux-syscalls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/linux-syscalls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/linux-syscalls.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-syscalls.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h
deleted file mode 120000
index 9496fde..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/linux-unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/linux-unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/linux-unistd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/linux-unistd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h
deleted file mode 120000
index bd6a6b8..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/mman.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/mman.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/mman.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/mman.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h
deleted file mode 120000
index 0b0a916..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/mount.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/mount.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/mount.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h
deleted file mode 120000
index 16e5bcc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/param.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/param.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/param.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/param.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h
deleted file mode 120000
index a98ab69..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/poll.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/poll.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/poll.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h
deleted file mode 120000
index 950d2fb..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/prctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/prctl.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/prctl.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/prctl.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h
deleted file mode 120000
index 3b2714f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ptrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ptrace.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ptrace.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ptrace.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h
deleted file mode 120000
index 8295ffc..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/reboot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/reboot.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/reboot.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/reboot.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h
deleted file mode 120000
index 72a813f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/resource.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/resource.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/resource.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h
deleted file mode 120000
index 42f2037..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/select.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/select.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/select.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/select.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h
deleted file mode 120000
index ac4d8a0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sendfile.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/sendfile.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/sendfile.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/sendfile.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h
deleted file mode 120000
index 36a0331..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/socket.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/socket.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/socket.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/socket.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h
deleted file mode 120000
index 5e94809..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/socketcalls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/socketcalls.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/socketcalls.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/socketcalls.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h
deleted file mode 120000
index fa00c54..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h
new file mode 100644
index 0000000..091ee6d
--- /dev/null
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/stat.h
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _SYS_STAT_H_
+#define _SYS_STAT_H_
+
+#include <sys/cdefs.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#include <linux/stat.h>
+
+#include <endian.h>
+
+__BEGIN_DECLS
+
+/* really matches stat64 in the kernel, hence the padding
+ * Note: The kernel zero's the padded region because glibc might read them
+ * in the hope that the kernel has stretched to using larger sizes.
+ */
+struct stat {
+    unsigned long long  st_dev;
+    unsigned char       __pad0[4];
+
+    unsigned long       __st_ino;
+    unsigned int        st_mode;
+    unsigned int        st_nlink;
+
+    unsigned long       st_uid;
+    unsigned long       st_gid;
+
+    unsigned long long  st_rdev;
+    unsigned char       __pad3[4];
+
+    long long           st_size;
+    unsigned long	st_blksize;
+    unsigned long long  st_blocks;
+
+    unsigned long       st_atime;
+    unsigned long       st_atime_nsec;
+
+    unsigned long       st_mtime;
+    unsigned long       st_mtime_nsec;
+
+    unsigned long       st_ctime;
+    unsigned long       st_ctime_nsec;
+
+    unsigned long long  st_ino;
+};
+
+/* For compatibility with GLibc, we provide macro aliases
+ * for the non-Posix nano-seconds accessors.
+ */
+#define  st_atimensec  st_atime_nsec
+#define  st_mtimensec  st_mtime_nsec
+#define  st_ctimensec  st_ctime_nsec
+
+extern int    chmod(const char *, mode_t);
+extern int    fchmod(int, mode_t);
+extern int    mkdir(const char *, mode_t);
+
+extern int    stat(const char *, struct stat *);
+extern int    fstat(int, struct stat *);
+extern int    lstat(const char *, struct stat *);
+extern int    mknod(const char *, mode_t, dev_t);
+extern mode_t umask(mode_t);
+
+#define  stat64    stat
+#define  fstat64   fstat
+#define  lstat64   lstat
+
+static __inline__ int mkfifo(const char *__p, mode_t __m)
+{
+  return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
+}
+
+extern int  fstatat(int dirfd, const char *path, struct stat *buf, int flags);
+extern int  mkdirat(int dirfd, const char *pathname, mode_t mode);
+extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
+extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
+extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
+
+__END_DECLS
+
+#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h
deleted file mode 120000
index d53806d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/statfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/statfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/statfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/statfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h
deleted file mode 120000
index 4225c35..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/syscall.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/syscall.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/syscall.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/syscall.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h
deleted file mode 120000
index ed9cf1f..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/sysconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h
deleted file mode 120000
index 1693d79..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysinfo.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysinfo.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/sysinfo.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysinfo.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h
deleted file mode 120000
index 17efa78..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/syslimits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/syslimits.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/syslimits.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/syslimits.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h
deleted file mode 120000
index fa13eca..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysmacros.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysmacros.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/sysmacros.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/sysmacros.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h
deleted file mode 120000
index 286ba9d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/system_properties.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/system_properties.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/system_properties.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/system_properties.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h
deleted file mode 120000
index b376430..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/time.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/time.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h
deleted file mode 120000
index fef113e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/timeb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/timeb.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/timeb.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/timeb.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h
deleted file mode 120000
index 53c3a1a..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/times.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/times.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/times.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/times.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h
deleted file mode 120000
index 09c3352..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ttychars.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ttychars.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ttychars.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttychars.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h
deleted file mode 120000
index 4735daa..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ttydev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/ttydev.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/ttydev.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/ttydev.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h
deleted file mode 120000
index 8829c6b..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/types.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/types.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/types.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h
deleted file mode 120000
index a111200..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/uio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/uio.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/uio.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/uio.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h
deleted file mode 120000
index 20d7c68..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/un.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/un.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/un.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/un.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h
deleted file mode 120000
index 8494247..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/utime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/utime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h
deleted file mode 120000
index cf985f0..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/utsname.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/utsname.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/utsname.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/utsname.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h
deleted file mode 120000
index c4873c3..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/vfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/vfs.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/vfs.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/vfs.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h
deleted file mode 120000
index 55b3ed4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/vt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/vt.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/vt.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/vt.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h
deleted file mode 120000
index 9f27986..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/wait.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/sys/wait.h b/ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/sys/wait.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/sys/wait.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h
deleted file mode 120000
index 609c4e1..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/syslog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/syslog.h b/ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/syslog.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/syslog.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/termios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/termios.h
deleted file mode 120000
index 53740f5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/termios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/termios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/termios.h b/ndk/build/platforms/android-3/arch-arm/usr/include/termios.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/termios.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/termios.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h b/ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h
deleted file mode 120000
index e6b5ced..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/thread_db.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/thread_db.h b/ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/thread_db.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/thread_db.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/time.h
deleted file mode 120000
index 4ae3e06..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/time.h b/ndk/build/platforms/android-3/arch-arm/usr/include/time.h
new file mode 100644
index 0000000..6163c6d
--- /dev/null
+++ b/ndk/build/platforms/android-3/arch-arm/usr/include/time.h
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _TIME_H_
+#define _TIME_H_
+
+#include <sys/cdefs.h>
+#include <sys/time.h>
+
+#define __ARCH_SI_UID_T __kernel_uid32_t
+#include <asm/siginfo.h>
+#undef __ARCH_SI_UID_T
+
+__BEGIN_DECLS
+
+extern time_t   time(time_t *);
+extern int      nanosleep(const struct timespec *, struct timespec *);
+
+extern char *strtotimeval(const char *str, struct timeval *tv);
+
+struct tm {
+   int     tm_sec;         /* seconds */
+   int     tm_min;         /* minutes */
+   int     tm_hour;        /* hours */
+   int     tm_mday;        /* day of the month */
+   int     tm_mon;         /* month */
+   int     tm_year;        /* year */
+   int     tm_wday;        /* day of the week */
+   int     tm_yday;        /* day in the year */
+   int     tm_isdst;       /* daylight saving time */
+
+   long int tm_gmtoff;     /* Seconds east of UTC.  */
+   const char *tm_zone;    /* Timezone abbreviation.  */
+
+};
+
+/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
+ * struct tm, the value should be the field name
+ */
+#define   TM_ZONE   tm_zone
+
+extern char* asctime(const struct tm* a);
+extern char* asctime_r(const struct tm* a, char* buf);
+
+/* Return the difference between TIME1 and TIME0.  */
+extern double difftime (time_t __time1, time_t __time0);
+extern time_t mktime (struct tm *a);
+
+extern struct tm*  localtime(const time_t *t);
+extern struct tm*  localtime_r(const time_t *timep, struct tm *result);
+
+extern struct tm*  gmtime(const time_t *timep);
+extern struct tm*  gmtime_r(const time_t *timep, struct tm *result);
+
+extern char*       strptime(const char *buf, const char *fmt, struct tm *tm);
+extern size_t      strftime(char *s, size_t max, const char *format, const struct tm *tm);
+
+extern char *ctime(const time_t *timep);
+extern char *ctime_r(const time_t *timep, char *buf);
+
+extern void  tzset(void);
+
+/* global includes */
+extern char*     tzname[];
+extern int       daylight;
+extern long int  timezone;
+
+#define CLOCKS_PER_SEC     1000000
+
+extern clock_t   clock(void);
+
+/* BIONIC: extra linux clock goodies */
+extern int clock_getres(int, struct timespec *);
+extern int clock_gettime(int, struct timespec *);
+
+#define CLOCK_REALTIME             0
+#define CLOCK_MONOTONIC            1
+#define CLOCK_PROCESS_CPUTIME_ID   2
+#define CLOCK_THREAD_CPUTIME_ID    3
+#define CLOCK_REALTIME_HR          4
+#define CLOCK_MONOTONIC_HR         5
+
+extern int  timer_create(int, struct sigevent*, timer_t*);
+extern int  timer_delete(timer_t);
+extern int  timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
+extern int  timer_gettime(timer_t timerid, struct itimerspec *value);
+extern int  timer_getoverrun(timer_t  timerid);
+
+__END_DECLS
+
+#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/time64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/time64.h
deleted file mode 120000
index 9e4ca23..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/time64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/time64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/time64.h b/ndk/build/platforms/android-3/arch-arm/usr/include/time64.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/time64.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/time64.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo b/ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo
deleted file mode 120000
index 35bacb5..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/typeinfo
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/typeinfo b/ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/typeinfo
rename to ndk/build/platforms/android-3/arch-arm/usr/include/typeinfo
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h
deleted file mode 120000
index 378e20d..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/unistd.h b/ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/unistd.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/unistd.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/util.h b/ndk/build/platforms/android-3/arch-arm/usr/include/util.h
deleted file mode 120000
index c8de0fe..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/util.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/util.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/util.h b/ndk/build/platforms/android-3/arch-arm/usr/include/util.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/util.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/util.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/utility b/ndk/build/platforms/android-3/arch-arm/usr/include/utility
deleted file mode 120000
index f670e68..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/utility
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utility
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/utility b/ndk/build/platforms/android-3/arch-arm/usr/include/utility
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/utility
rename to ndk/build/platforms/android-3/arch-arm/usr/include/utility
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/utime.h
deleted file mode 120000
index 520a474..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/utime.h b/ndk/build/platforms/android-3/arch-arm/usr/include/utime.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/utime.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/utime.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h
deleted file mode 120000
index 9fe8b95..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/utmp.h b/ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/utmp.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/utmp.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h b/ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h
deleted file mode 120000
index 5a35644..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/wchar.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/wchar.h b/ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/wchar.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/wchar.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h
deleted file mode 120000
index 2a2a823..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/wctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/wctype.h b/ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/wctype.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/wctype.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h
deleted file mode 120000
index 10d4a1e..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/zconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/zconf.h b/ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/zconf.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/zconf.h
diff --git a/ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h
deleted file mode 120000
index d9e63a4..0000000
--- a/ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/zlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/zlib.h b/ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/zlib.h
rename to ndk/build/platforms/android-3/arch-arm/usr/include/zlib.h
diff --git a/ndk/build/platforms/android-3/common/include/stdint.h b/ndk/build/platforms/android-3/common/include/stdint.h
deleted file mode 100644
index 39a8ab8..0000000
--- a/ndk/build/platforms/android-3/common/include/stdint.h
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _STDINT_H
-#define _STDINT_H
-
-#include <stddef.h>
-#include <sys/_types.h>
-
-
-
-#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
-#  define __STDINT_LIMITS
-#endif
-
-#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
-#  define  __STDINT_MACROS
-#endif
-
-/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
-#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
-#  define  __STDINT_MACROS
-#endif
-
-typedef __int8_t      int8_t;
-typedef __uint8_t     uint8_t;
-typedef __int16_t     int16_t;
-typedef __uint16_t    uint16_t;
-typedef __int32_t     int32_t;
-typedef __uint32_t    uint32_t;
-#if !defined(__STRICT_ANSI__)
-typedef __int64_t     int64_t;
-typedef __uint64_t    uint64_t;
-#endif
-
-/*
- * int8_t & uint8_t
- */
-
-typedef int8_t        int_least8_t;
-typedef int8_t        int_fast8_t;
-
-typedef uint8_t       uint_least8_t;
-typedef uint8_t       uint_fast8_t;
-
-#ifdef __STDINT_LIMITS
-#  define INT8_MIN         (-128)
-#  define INT8_MAX         (127)
-#  define INT_LEAST8_MIN   INT8_MIN
-#  define INT_LEAST8_MAX   INT8_MAX
-#  define INT_FAST8_MIN    INT8_MIN
-#  define INT_FAST8_MAX    INT8_MAX
-
-#  define UINT8_MAX           (255U)
-#  define UINT_LEAST8_MAX     UINT8_MAX
-#  define UINT_FAST8_MAX      UINT8_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-#  define INT8_C(c)	c
-#  define INT_LEAST8_C(c)	 INT8_C(c)
-#  define INT_FAST8_C(c)	INT8_C(c)
-
-#  define UINT8_C(c)	c ## U
-#  define UINT_LEAST8_C(c)  UINT8_C(c)
-#  define UINT_FAST8_C(c)  UINT8_C(c)
-#endif
-
-/*
- * int16_t & uint16_t
- */
-
-
-typedef int16_t       int_least16_t;
-typedef int32_t       int_fast16_t;
-
-typedef uint16_t      uint_least16_t;
-typedef uint32_t      uint_fast16_t;
-
-#ifdef __STDINT_LIMITS
-#  define INT16_MIN	(-32768)
-#  define INT16_MAX	(32767)
-#  define INT_LEAST16_MIN	INT16_MIN
-#  define INT_LEAST16_MAX	INT16_MAX
-#  define INT_FAST16_MIN	INT32_MIN
-#  define INT_FAST16_MAX	INT32_MAX
-
-#  define UINT16_MAX	(65535U)
-#  define UINT_LEAST16_MAX UINT16_MAX
-#  define UINT_FAST16_MAX UINT32_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-#  define INT16_C(c)	c
-#  define INT_LEAST16_C(c) INT16_C(c)
-#  define INT_FAST16_C(c)	 INT32_C(c)
-
-#  define UINT16_C(c)	c ## U
-#  define UINT_LEAST16_C(c) UINT16_C(c)
-#  define UINT_FAST16_C(c) UINT32_C(c)
-#endif
-
-/*
- * int32_t & uint32_t
- */
-
-typedef int32_t       int_least32_t;
-typedef int32_t       int_fast32_t;
-
-typedef uint32_t      uint_least32_t;
-typedef uint32_t      uint_fast32_t;
-
-#ifdef __STDINT_LIMITS
-#  define INT32_MIN	(-2147483647-1)
-#  define INT32_MAX	(2147483647)
-#  define INT_LEAST32_MIN	INT32_MIN
-#  define INT_LEAST32_MAX	INT32_MAX
-#  define INT_FAST32_MIN	INT32_MIN
-#  define INT_FAST32_MAX	INT32_MAX
-
-#  define UINT32_MAX	(4294967295U)
-#  define UINT_LEAST32_MAX UINT32_MAX
-#  define UINT_FAST32_MAX UINT32_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-#  define INT32_C(c)	c
-#  define INT_LEAST32_C(c) INT32_C(c)
-#  define INT_FAST32_C(c)  INT32_C(c)
-
-#  define UINT32_C(c)	c ## U
-#  define UINT_LEAST32_C(c) UINT32_C(c)
-#  define UINT_FAST32_C(c) UINT32_C(c)
-#endif
-
-#if !defined(__STRICT_ANSI__)
-/*
- *  int64_t
- */
-typedef int64_t       int_least64_t;
-typedef int64_t       int_fast64_t;
-
-typedef uint64_t      uint_least64_t;
-typedef uint64_t      uint_fast64_t;
-
-
-#ifdef __STDINT_LIMITS
-#  define INT64_MIN        (__INT64_C(-9223372036854775807)-1)
-#  define INT64_MAX        (__INT64_C(9223372036854775807))
-#  define INT_LEAST64_MIN  INT64_MIN
-#  define INT_LEAST64_MAX  INT64_MAX
-#  define INT_FAST64_MIN   INT64_MIN
-#  define INT_FAST64_MAX   INT64_MAX
-#  define UINT64_MAX       (__UINT64_C(18446744073709551615))
-
-#  define UINT_LEAST64_MAX UINT64_MAX
-#  define UINT_FAST64_MAX UINT64_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-#  define __INT64_C(c)     c ## LL
-#  define INT64_C(c)       __INT64_C(c)
-#  define INT_LEAST64_C(c) INT64_C(c)
-#  define INT_FAST64_C(c)  INT64_C(c)
-
-#  define __UINT64_C(c)     c ## ULL
-#  define UINT64_C(c)       __UINT64_C(c)
-#  define UINT_LEAST64_C(c) UINT64_C(c)
-#  define UINT_FAST64_C(c)  UINT64_C(c)
-#endif
-
-
-#  define __PRI64_RANK   "ll"
-#  define __PRIFAST_RANK ""
-#  define __PRIPTR_RANK  ""
-
-#endif /* !__STRICT_ANSI__ */
-
-/*
- * intptr_t & uintptr_t
- */
-
-typedef int           intptr_t;
-typedef unsigned int  uintptr_t;
-
-#  define INTPTR_MIN    INT32_MIN
-#  define INTPTR_MAX    INT32_MAX
-#  define UINTPTR_MAX   UINT32_MAX
-#  define INTPTR_C(c)   INT32_C(c)
-#  define UINTPTR_C(c)  UINT32_C(c)
-#  define PTRDIFF_C(c)  INT32_C(c)
-#  define PTRDIFF_MIN   INT32_MIN
-#  define PTRDIFF_MAX   INT32_MAX
-
-
-/*
- *  intmax_t & uintmax_t
- */
-
-#if !defined(__STRICT_ANSI__)
-
-typedef uint64_t uintmax_t;
-typedef int64_t  intmax_t;
-
-#define INTMAX_MIN	INT64_MIN
-#define INTMAX_MAX	INT64_MAX
-#define UINTMAX_MAX	UINT64_MAX
-
-#define INTMAX_C(c)	INT64_C(c)
-#define UINTMAX_C(c)	UINT64_C(c)
-
-#else /* __STRICT_ANSI__ */
-
-typedef uint32_t  uintmax_t;
-typedef int32_t   intmax_t;
-
-#define  INTMAX_MIN    INT32_MIN
-#define  INTMAX_MAX    INT32_MAX
-#define  UINTMAX_MAX   UINT32_MAX
-
-#define INTMAX_C(c)	INT32_C(c)
-#define UINTMAX_C(c)	UINT32_C(c)
-
-#endif /* __STRICT_ANSI__ */
-
-
-/* size_t is defined by the GCC-specific <stddef.h> */
-#ifndef _SSIZE_T_DEFINED_
-#define _SSIZE_T_DEFINED_
-typedef long int  ssize_t;
-#endif
-
-#define _BITSIZE 32
-
-/* Keep the kernel from trying to define these types... */
-#define __BIT_TYPES_DEFINED__
-
-#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-3/common/include/strings.h b/ndk/build/platforms/android-3/common/include/strings.h
deleted file mode 100644
index 1f73e21..0000000
--- a/ndk/build/platforms/android-3/common/include/strings.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*	$NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $	*/
-
-/*-
- * Copyright (c) 1998 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Klaus Klein.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *        This product includes software developed by the NetBSD
- *        Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- *    contributors may be used to endorse or promote products derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _STRINGS_H_
-#define _STRINGS_H_
-
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
-int	 bcmp(const void *, const void *, size_t);
-void	 bcopy(const void *, void *, size_t);
-void	 bzero(void *, size_t);
-int	 ffs(int);
-char	*index(const char *, int);
-char	*rindex(const char *, int);
-int	 strcasecmp(const char *, const char *);
-int	 strncasecmp(const char *, const char *, size_t);
-__END_DECLS
-
-#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-3/common/include/sys/stat.h b/ndk/build/platforms/android-3/common/include/sys/stat.h
deleted file mode 100644
index 23ab5ae..0000000
--- a/ndk/build/platforms/android-3/common/include/sys/stat.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _SYS_STAT_H_
-#define _SYS_STAT_H_
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-#include <sys/time.h>
-#include <linux/stat.h>
-
-#include <endian.h>
-
-__BEGIN_DECLS
-
-/* really matches stat64 in the kernel, hence the padding
- * Note: The kernel zero's the padded region because glibc might read them
- * in the hope that the kernel has stretched to using larger sizes.
- */
-struct stat {
-    unsigned long long  st_dev;
-    unsigned char       __pad0[4];
-
-    unsigned long       __st_ino;
-    unsigned int        st_mode;
-    unsigned int        st_nlink;
-
-    unsigned long       st_uid;
-    unsigned long       st_gid;
-
-    unsigned long long  st_rdev;
-    unsigned char       __pad3[4];
-
-    long long           st_size;
-    unsigned long	st_blksize;
-    unsigned long long  st_blocks;
-
-    unsigned long       st_atime;
-    unsigned long       st_atime_nsec;
-
-    unsigned long       st_mtime;
-    unsigned long       st_mtime_nsec;
-
-    unsigned long       st_ctime;
-    unsigned long       st_ctime_nsec;
-
-    unsigned long long  st_ino;
-};
-
-extern int    chmod(const char *, mode_t);
-extern int    fchmod(int, mode_t);
-extern int    mkdir(const char *, mode_t);
-
-extern int    stat(const char *, struct stat *);
-extern int    fstat(int, struct stat *);
-extern int    lstat(const char *, struct stat *);
-extern int    mknod(const char *, mode_t, dev_t);
-extern mode_t umask(mode_t);
-
-#define  stat64    stat
-#define  fstat64   fstat
-#define  lstat64   lstat
-
-static __inline__ int mkfifo(const char *__p, mode_t __m)
-{
-  return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
-}
-
-extern int  fstatat(int dirfd, const char *path, struct stat *buf, int flags);
-extern int  mkdirat(int dirfd, const char *pathname, mode_t mode);
-extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
-extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
-extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
-
-__END_DECLS
-
-#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-3/common/include/time.h b/ndk/build/platforms/android-3/common/include/time.h
deleted file mode 100644
index 35c2358..0000000
--- a/ndk/build/platforms/android-3/common/include/time.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _TIME_H_
-#define _TIME_H_
-
-#include <sys/cdefs.h>
-#include <sys/time.h>
-
-#define __ARCH_SI_UID_T __kernel_uid32_t
-#include <asm/siginfo.h>
-#undef __ARCH_SI_UID_T
-
-__BEGIN_DECLS
-
-extern time_t   time(time_t *);
-extern int      nanosleep(const struct timespec *, struct timespec *);
-
-extern char *strtotimeval(const char *str, struct timeval *tv);
-
-struct tm {
-   int     tm_sec;         /* seconds */
-   int     tm_min;         /* minutes */
-   int     tm_hour;        /* hours */
-   int     tm_mday;        /* day of the month */
-   int     tm_mon;         /* month */
-   int     tm_year;        /* year */
-   int     tm_wday;        /* day of the week */
-   int     tm_yday;        /* day in the year */
-   int     tm_isdst;       /* daylight saving time */
-
-   long int tm_gmtoff;     /* Seconds east of UTC.  */
-   const char *tm_zone;    /* Timezone abbreviation.  */
-
-};
-
-/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
- * struct tm, the value should be the field name
- */
-#define   TM_ZONE   tm_zone
-
-extern char* asctime(const struct tm* a);
-extern char* asctime_r(const struct tm* a, char* buf);
-
-/* Return the difference between TIME1 and TIME0.  */
-extern double difftime (time_t __time1, time_t __time0);
-extern time_t mktime (struct tm *a);
-
-extern struct tm*  localtime(const time_t *t);
-extern struct tm*  localtime_r(const time_t *timep, struct tm *result);
-
-extern struct tm*  gmtime(const time_t *timep);
-extern struct tm*  gmtime_r(const time_t *timep, struct tm *result);
-
-extern char*       strptime(const char *buf, const char *fmt, struct tm *tm);
-extern size_t      strftime(char *s, size_t max, const char *format, const struct tm *tm);
-
-extern char *ctime(const time_t *timep);
-extern char *ctime_r(const time_t *timep, char *buf);
-
-/* global includes */
-extern char*     tzname[];
-extern int       daylight;
-extern long int  timezone;
-
-#define CLOCKS_PER_SEC     1000000
-
-extern clock_t   clock();
-
-/* BIONIC: extra linux clock goodies */
-extern int clock_getres(int, struct timespec *);
-extern int clock_gettime(int, struct timespec *);
-
-#define CLOCK_REALTIME             0
-#define CLOCK_MONOTONIC            1
-#define CLOCK_PROCESS_CPUTIME_ID   2
-#define CLOCK_THREAD_CPUTIME_ID    3
-#define CLOCK_REALTIME_HR          4
-#define CLOCK_MONOTONIC_HR         5
-
-extern int  timer_create(int, struct sigevent*, timer_t*);
-extern int  timer_delete(timer_t);
-extern int  timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
-extern int  timer_gettime(timer_t timerid, struct itimerspec *value);
-extern int  timer_getoverrun(timer_t  timerid);
-
-__END_DECLS
-
-#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/GLES b/ndk/build/platforms/android-4/arch-arm/usr/include/GLES
deleted file mode 120000
index ce7d570..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/GLES
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/GLES
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/GLES/gl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/GLES/gl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/GLES/gl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/GLES/gl.h
diff --git a/ndk/build/platforms/android-4/common/include/GLES/glext.h b/ndk/build/platforms/android-4/arch-arm/usr/include/GLES/glext.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/GLES/glext.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/GLES/glext.h
diff --git a/ndk/build/platforms/android-4/common/include/GLES/glplatform.h b/ndk/build/platforms/android-4/arch-arm/usr/include/GLES/glplatform.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/GLES/glplatform.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/GLES/glplatform.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/KHR b/ndk/build/platforms/android-4/arch-arm/usr/include/KHR
deleted file mode 120000
index dd088fc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/KHR
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/KHR
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/KHR/khrplatform.h b/ndk/build/platforms/android-4/arch-arm/usr/include/KHR/khrplatform.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/KHR/khrplatform.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/KHR/khrplatform.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h b/ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
deleted file mode 120000
index ac859df..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/alloca.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/alloca.h b/ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/alloca.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/alloca.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h b/ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
deleted file mode 120000
index da91a66..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/android/log.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/android/log.h b/ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/android/log.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/android/log.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
deleted file mode 120000
index 760a19d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/arpa/inet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/arpa/inet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/arpa/inet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/arpa/inet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h b/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h
deleted file mode 120000
index 73f9311..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/arpa/nameser.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/arpa/nameser.h b/ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/arpa/nameser.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/arpa/nameser.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h
deleted file mode 120000
index 4493a92..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/4level-fixup.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/4level-fixup.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/4level-fixup.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h
deleted file mode 120000
index 6576f52..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/audit_dir_write.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/audit_dir_write.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/audit_dir_write.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h
deleted file mode 120000
index 9a68edc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/__ffs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/__ffs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h
deleted file mode 120000
index 32afeb4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/atomic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/atomic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h
deleted file mode 120000
index 50c5214..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/ffz.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/ffz.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h
deleted file mode 120000
index 9b40acd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/find.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/find.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h
deleted file mode 120000
index 5171887..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/fls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h
deleted file mode 120000
index 8728e6a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/fls64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/fls64.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h
deleted file mode 120000
index 91b46c7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/le.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/le.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
deleted file mode 120000
index 177973e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/asm-generic/bitops/non-atomic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h
copy to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h
deleted file mode 120000
index d898f3a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/bug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/bug.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/bug.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h
deleted file mode 120000
index 7892fb4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/cputime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/cputime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/cputime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/cputime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h
deleted file mode 120000
index 3005c74..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/emergency-restart.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/emergency-restart.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/emergency-restart.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h
deleted file mode 120000
index 7b7d9bd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/errno-base.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/errno-base.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/errno-base.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno-base.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h
deleted file mode 120000
index bdd6dd4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/errno.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/errno.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h
deleted file mode 120000
index 3506aa8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/fcntl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/fcntl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h
deleted file mode 120000
index cbd47bf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/futex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/futex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/futex.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/futex.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h
deleted file mode 120000
index 7a11623..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h
deleted file mode 120000
index 339894e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/ipc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/ipc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h
deleted file mode 120000
index 0e9344d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/local.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/local.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/local.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/local.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h
deleted file mode 120000
index 3bbc82b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/memory_model.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/memory_model.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/memory_model.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/memory_model.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h
deleted file mode 120000
index fbab125..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/mman.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/mman.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/mman.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mman.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h
deleted file mode 120000
index c7bc238..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/mutex-xchg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/mutex-xchg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/mutex-xchg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h
deleted file mode 120000
index 2d899db..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/percpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/percpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/percpu.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/percpu.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h
deleted file mode 120000
index ac2157e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/pgtable-nopud.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/pgtable-nopud.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable-nopud.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h
deleted file mode 120000
index 4c70646..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/pgtable.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/pgtable.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/pgtable.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/pgtable.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h
deleted file mode 120000
index 2bd359a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/poll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/poll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h
deleted file mode 120000
index 28f331a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/resource.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/resource.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h
deleted file mode 120000
index c6885f3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/sections.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/sections.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/sections.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/sections.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h
deleted file mode 120000
index d38f211..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/siginfo.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/siginfo.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/siginfo.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/siginfo.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h
deleted file mode 120000
index 05ca352..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/signal.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/signal.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h
deleted file mode 120000
index 94baa95..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/tlb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/tlb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/tlb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/tlb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h
deleted file mode 120000
index e85b48f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/topology.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/topology.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/topology.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/topology.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h
deleted file mode 120000
index baf2118..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/asm-generic/xor.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/xor.h b/ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/asm-generic/xor.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/asm-generic/xor.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/assert.h b/ndk/build/platforms/android-4/arch-arm/usr/include/assert.h
deleted file mode 120000
index 1572c5b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/assert.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/assert.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/assert.h b/ndk/build/platforms/android-4/arch-arm/usr/include/assert.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/assert.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/assert.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h
deleted file mode 120000
index 153ee73..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/byteswap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/byteswap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/byteswap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/byteswap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/cstddef b/ndk/build/platforms/android-4/arch-arm/usr/include/cstddef
deleted file mode 120000
index cec20fd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/cstddef
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/cstddef
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/cstddef b/ndk/build/platforms/android-4/arch-arm/usr/include/cstddef
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/cstddef
rename to ndk/build/platforms/android-4/arch-arm/usr/include/cstddef
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h
deleted file mode 120000
index f1b315c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/ctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/ctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/ctype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/ctype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h
deleted file mode 120000
index 315be03..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/dirent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/dirent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h b/ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h
deleted file mode 120000
index 5748e5a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/dlfcn.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/dlfcn.h b/ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/dlfcn.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/dlfcn.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/elf.h
deleted file mode 120000
index f4e2f5e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/elf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/elf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/elf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/endian.h
index 04204ed..475b48c 100644
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/endian.h
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/endian.h
@@ -1,10 +1,33 @@
-/*	$OpenBSD: endian.h,v 1.3 2005/12/13 00:35:23 millert Exp $	*/
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _ENDIAN_H_
+#define _ENDIAN_H_
 
-#ifdef __ARMEB__
-#define _BYTE_ORDER _BIG_ENDIAN
-#else
-#define _BYTE_ORDER _LITTLE_ENDIAN
-#endif
-#define	__STRICT_ALIGNMENT
-#include <sys/types.h>
 #include <sys/endian.h>
+
+#endif /* _ENDIAN_H_ */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/err.h
deleted file mode 120000
index de81816..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/err.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/err.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/err.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/errno.h
deleted file mode 120000
index 2e638ba..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/errno.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/errno.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/errno.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h
deleted file mode 120000
index cb8c1df..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/fcntl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/fcntl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/features.h b/ndk/build/platforms/android-4/arch-arm/usr/include/features.h
deleted file mode 120000
index 6587ebd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/features.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/features.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/features.h b/ndk/build/platforms/android-4/arch-arm/usr/include/features.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/features.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/features.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h
deleted file mode 120000
index 52c0687..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/fnmatch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/fnmatch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/fnmatch.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/fnmatch.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h
deleted file mode 120000
index 857cf27..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/getopt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/getopt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/getopt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/getopt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/grp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/grp.h
deleted file mode 120000
index c599451..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/grp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/grp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/grp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/grp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/grp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/grp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h
deleted file mode 120000
index 5283d60..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/inttypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/inttypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/inttypes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/inttypes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/jni.h b/ndk/build/platforms/android-4/arch-arm/usr/include/jni.h
deleted file mode 120000
index e49af21..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/jni.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/jni.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/jni.h b/ndk/build/platforms/android-4/arch-arm/usr/include/jni.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/jni.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/jni.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h
deleted file mode 120000
index fe63cd3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/lastlog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/lastlog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/lastlog.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/lastlog.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h b/ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h
deleted file mode 120000
index 0f626b6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/libgen.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/libgen.h b/ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/libgen.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/libgen.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/limits.h
deleted file mode 120000
index 60f67bf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/limits.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/limits.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/limits.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h
deleted file mode 120000
index e1bffda..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/a.out.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/a.out.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/a.out.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/a.out.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h
deleted file mode 120000
index cd94485..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/aio_abi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/aio_abi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/aio_abi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/aio_abi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h
deleted file mode 120000
index 1d8b858..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/akm8976.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/akm8976.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/akm8976.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/akm8976.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h
deleted file mode 120000
index 383aabd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_alarm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/android_alarm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/android_alarm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_alarm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h
deleted file mode 120000
index 2485ad8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_pmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/android_pmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/android_pmem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_pmem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h
deleted file mode 120000
index 05f970a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/android_power.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/android_power.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/android_power.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/android_power.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h
deleted file mode 120000
index cbcfb5a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/apm_bios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/apm_bios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/apm_bios.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/apm_bios.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h
deleted file mode 120000
index 3cc1881..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ashmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ashmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ashmem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ashmem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h
deleted file mode 120000
index 4640b5f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ata.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ata.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ata.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ata.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h
deleted file mode 120000
index 377242f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h
deleted file mode 120000
index 0d7f085..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmapi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmapi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmapi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmapi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h
deleted file mode 120000
index f1f9a5f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h
deleted file mode 120000
index 3b1e711..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmioc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmioc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmioc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmioc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h
deleted file mode 120000
index 785c8fb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmppp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmppp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmppp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmppp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h
deleted file mode 120000
index bc0f5a8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/atmsap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/atmsap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/atmsap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/atmsap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h
deleted file mode 120000
index 3834481..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/attribute_container.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/attribute_container.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/attribute_container.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/attribute_container.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h
deleted file mode 120000
index 8d3e7b9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/auto_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/auto_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/auto_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/auto_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h
deleted file mode 120000
index 41a58f5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/autoconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/autoconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/autoconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/autoconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h
deleted file mode 120000
index 5602220..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/auxvec.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/auxvec.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/auxvec.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/auxvec.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h
deleted file mode 120000
index 427296e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/backing-dev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/backing-dev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/backing-dev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/backing-dev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h
deleted file mode 120000
index 39fcca7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/binder.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/binder.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/binder.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/binder.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h
deleted file mode 120000
index d938c2f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/binfmts.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/binfmts.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/binfmts.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/binfmts.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h
deleted file mode 120000
index 9a8ee71..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/bio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/bio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/bio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h
deleted file mode 120000
index 5db6297..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bitmap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/bitmap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/bitmap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitmap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h
deleted file mode 120000
index 5d0fcbb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/bitops.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/bitops.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/bitops.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/bitops.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h
deleted file mode 120000
index fb45957..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blkdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/blkdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/blkdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h
deleted file mode 120000
index bc5f38f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blkpg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/blkpg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/blkpg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/blkpg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h
deleted file mode 120000
index 587f7f1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/blockgroup_lock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/blockgroup_lock.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/blockgroup_lock.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h
deleted file mode 120000
index ce97246..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/big_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/big_endian.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/big_endian.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h
deleted file mode 120000
index d865701..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/generic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/generic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/generic.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/generic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h
deleted file mode 120000
index 9b117fa..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/little_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/little_endian.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/little_endian.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h
deleted file mode 120000
index b3da56e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/swab.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/swab.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/swab.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swab.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h
deleted file mode 120000
index d6d7ade..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/byteorder/swabb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/byteorder/swabb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/byteorder/swabb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h
deleted file mode 120000
index 74ed7c9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cache.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cache.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cache.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cache.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h
deleted file mode 120000
index e12ad54..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/calc64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/calc64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/calc64.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/calc64.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h
deleted file mode 120000
index 9674918..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/capability.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/capability.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/capability.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/capability.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h
deleted file mode 120000
index e937bc1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/capi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/capi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/capi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/capi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h
deleted file mode 120000
index aa3f937..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h
deleted file mode 120000
index f8a7cfe..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cdrom.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cdrom.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cdrom.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cdrom.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h
deleted file mode 120000
index ada0bca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/circ_buf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/circ_buf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/circ_buf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/circ_buf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h
deleted file mode 120000
index 246f4ad..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/clk.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/clk.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/clk.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/clk.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h
deleted file mode 120000
index e577be5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/coda.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/coda.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/coda.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h
deleted file mode 120000
index bd7a507..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/coda_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/coda_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/coda_fs_i.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/coda_fs_i.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h
deleted file mode 120000
index c323a32..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/compat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/compat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/compat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h
deleted file mode 120000
index 6609cf6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compiler-gcc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/compiler-gcc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/compiler-gcc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler-gcc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h
deleted file mode 120000
index c3c0a7c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/compiler.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/compiler.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/compiler.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/compiler.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h
deleted file mode 120000
index af28044..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/completion.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/completion.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/completion.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/completion.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h
deleted file mode 120000
index 71028f6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/config.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/config.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/config.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/config.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h
deleted file mode 120000
index 7aa8514..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/console_struct.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/console_struct.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/console_struct.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/console_struct.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h
deleted file mode 120000
index 2608247..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cpu.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpu.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h
deleted file mode 120000
index c8f6de0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/cpumask.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/cpumask.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/cpumask.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/cpumask.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h
deleted file mode 120000
index e008d1e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ctype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ctype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h
deleted file mode 120000
index bc11d40..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dccp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dccp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h
deleted file mode 120000
index 561a5bc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/debug_locks.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/debug_locks.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/debug_locks.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/debug_locks.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h
deleted file mode 120000
index d934a13..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/delay.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/delay.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/delay.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/delay.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h
deleted file mode 120000
index 2440aba..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/device.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/device.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/device.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/device.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h
deleted file mode 120000
index f16f4a4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dirent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dirent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h
deleted file mode 120000
index d7305d2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dm-ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dm-ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dm-ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dm-ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h
deleted file mode 120000
index d8f5664..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dma-mapping.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dma-mapping.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dma-mapping.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dma-mapping.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h
deleted file mode 120000
index 31efa05..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/dmaengine.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/dmaengine.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/dmaengine.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/dmaengine.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h
deleted file mode 120000
index 5aae574..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_dir.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/efs_dir.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/efs_dir.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_dir.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h
deleted file mode 120000
index 1ea12f6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/efs_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/efs_fs_i.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_i.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h
deleted file mode 120000
index 9ece7e1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/efs_fs_sb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/efs_fs_sb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/efs_fs_sb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h
deleted file mode 120000
index a15375f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elevator.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/elevator.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/elevator.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/elevator.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h
deleted file mode 120000
index a70534c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elf-em.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/elf-em.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/elf-em.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf-em.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h
deleted file mode 120000
index 4455674..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/elf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/elf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h
deleted file mode 120000
index 7bc3976..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/err.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/err.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h
deleted file mode 120000
index 17901cf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/errno.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/errno.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h
deleted file mode 120000
index f857679..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/errqueue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/errqueue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/errqueue.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/errqueue.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h
deleted file mode 120000
index c6fc657..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/etherdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/etherdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/etherdevice.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/etherdevice.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h
deleted file mode 120000
index 6d1ef48..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ext2_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ext2_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ext2_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext2_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h
deleted file mode 120000
index 401d884..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ext3_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ext3_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ext3_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ext3_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h
deleted file mode 120000
index 28391d0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fadvise.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fadvise.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fadvise.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fadvise.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h
deleted file mode 120000
index 678e85b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h
deleted file mode 120000
index 628a481..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fcntl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fcntl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fcntl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fcntl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h
deleted file mode 120000
index 27d6d08..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h
deleted file mode 120000
index d063b5e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/file.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/file.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h
deleted file mode 120000
index 54c78a3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/filter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/filter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/filter.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/filter.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h
deleted file mode 120000
index c72717d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h
deleted file mode 120000
index 59efd2b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ftape.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ftape.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ftape.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ftape.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h
deleted file mode 120000
index cbfdedb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/futex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/futex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/futex.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/futex.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h
deleted file mode 120000
index 4182ac6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/genhd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/genhd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/genhd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/genhd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h
deleted file mode 120000
index 955489e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/gfp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/gfp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/gfp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/gfp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h
deleted file mode 120000
index 01128bd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hardirq.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hardirq.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hardirq.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hardirq.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h
deleted file mode 120000
index 7679e36..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/hdlc/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hdlc/ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdlc/ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h
deleted file mode 120000
index 35aea04..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hdreg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hdreg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hdreg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdreg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h
deleted file mode 120000
index 383f58c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hdsmart.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hdsmart.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hdsmart.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hdsmart.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h
deleted file mode 120000
index 0f41fc7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/highmem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/highmem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/highmem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/highmem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h
deleted file mode 120000
index 2bee8bb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/hil.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/hil.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/hil.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/hil.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h
deleted file mode 120000
index 514ff43..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/i2c.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/i2c.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/i2c.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/i2c.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h
deleted file mode 120000
index 87771a7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/icmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/icmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/icmp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/icmp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h
deleted file mode 120000
index 176aae6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h
deleted file mode 120000
index 0d04ae3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_arcnet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_arcnet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_arcnet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arcnet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h
deleted file mode 120000
index 536a142..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_arp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_arp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h
deleted file mode 120000
index ad36ad5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_bridge.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_bridge.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_bridge.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_bridge.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h
deleted file mode 120000
index 4dc3348..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_ether.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ether.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h
deleted file mode 120000
index 087ec19..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_fc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_fc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_fc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h
deleted file mode 120000
index 6c439ad..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_fddi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_fddi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_fddi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_fddi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h
deleted file mode 120000
index f4febf9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_hippi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_hippi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_hippi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_hippi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h
deleted file mode 120000
index d48d404..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_packet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_packet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h
deleted file mode 120000
index 1c0292e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_ppp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_ppp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_ppp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_ppp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h
deleted file mode 120000
index 115cd17..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_tr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_tr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_tr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h
deleted file mode 120000
index f127941..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_tun.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_tun.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_tun.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_tun.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h
deleted file mode 120000
index f20fce0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/if_vlan.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/if_vlan.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/if_vlan.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/if_vlan.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h
deleted file mode 120000
index 0e127e0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/in.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/in.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/in.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/in.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h
deleted file mode 120000
index 18c3130..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/in6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/in6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/in6.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/in6.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h
deleted file mode 120000
index 488bb0a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/init.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/init.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/init.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/init.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h
deleted file mode 120000
index 41670ad..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/inotify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/inotify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/inotify.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/inotify.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h
deleted file mode 120000
index 423edd7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/input.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/input.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/input.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/input.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h
deleted file mode 120000
index b5cd63c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/interrupt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/interrupt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/interrupt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/interrupt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h
deleted file mode 120000
index b30e479..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h
deleted file mode 120000
index d90526d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioport.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ioport.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ioport.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioport.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h
deleted file mode 120000
index 1634241..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ioprio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ioprio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ioprio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ioprio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h
deleted file mode 120000
index e89967b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ip.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ip.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h
deleted file mode 120000
index 60f3881..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ipc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h
deleted file mode 120000
index 2cfe5ac..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipmi_msgdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ipmi_msgdefs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_msgdefs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h
deleted file mode 120000
index 9a796a2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipmi_smi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ipmi_smi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ipmi_smi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipmi_smi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h
deleted file mode 120000
index dd5d4b9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ipx.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ipx.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ipx.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ipx.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h
deleted file mode 120000
index aa6cf1a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irq.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/irq.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/irq.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h
deleted file mode 120000
index 4a329b4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irq_cpustat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/irq_cpustat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/irq_cpustat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/irq_cpustat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h
deleted file mode 120000
index fa80886..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irqflags.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/irqflags.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/irqflags.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqflags.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h
deleted file mode 120000
index 739fa62..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/irqreturn.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/irqreturn.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/irqreturn.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/irqreturn.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h
deleted file mode 120000
index 9594286..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/jbd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/jbd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/jbd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/jbd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h
deleted file mode 120000
index 5accf6a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/jiffies.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/jiffies.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/jiffies.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/jiffies.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h
deleted file mode 120000
index e7005fa..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h
deleted file mode 120000
index fffcdac..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kdev_t.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kdev_t.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kdev_t.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kdev_t.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h
deleted file mode 120000
index 4b3447c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernel.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kernel.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kernel.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h
deleted file mode 120000
index 2f1598b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernel_stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kernel_stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kernel_stat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernel_stat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h
deleted file mode 120000
index 78f09ac..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kernelcapi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kernelcapi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kernelcapi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kernelcapi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h
deleted file mode 120000
index 883b34f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kexec.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kexec.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kexec.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kexec.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h
deleted file mode 120000
index a43f262..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/key.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/key.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/key.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/key.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h
deleted file mode 120000
index f1e952c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/keyboard.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/keyboard.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/keyboard.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/keyboard.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h
deleted file mode 120000
index 4af7a30..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/keychord.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/keychord.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/keychord.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/keychord.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h
deleted file mode 120000
index 6c121e7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/klist.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/klist.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/klist.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/klist.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h
deleted file mode 120000
index 0fc11ce..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kmod.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kmod.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kmod.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kmod.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h
deleted file mode 120000
index 1e2eb82..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kobject.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kobject.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kobject.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kobject.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h
deleted file mode 120000
index 84f0760..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/kref.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/kref.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/kref.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/kref.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h
deleted file mode 120000
index bd9e539..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ktime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ktime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ktime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ktime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h
deleted file mode 120000
index 998a2f3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/limits.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/limits.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h
deleted file mode 120000
index 9981e49..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/linkage.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/linkage.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/linkage.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/linkage.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h
deleted file mode 120000
index 8b5214f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/list.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/list.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/list.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/list.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h
deleted file mode 120000
index 1f70297..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/lockd/nlm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/lockd/nlm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/lockd/nlm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/nlm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h
deleted file mode 120000
index 59987cf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/lockd/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/lockd/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/lockd/xdr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockd/xdr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h
deleted file mode 120000
index 6a6ae87..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/lockdep.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/lockdep.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/lockdep.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/lockdep.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h
deleted file mode 120000
index 6c91215..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/loop.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/loop.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/loop.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/loop.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h
deleted file mode 120000
index afafcfd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/magic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/magic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/magic.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/magic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h
deleted file mode 120000
index f08b244..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/major.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/major.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/major.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/major.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h
deleted file mode 120000
index 4286741..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mc146818rtc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mc146818rtc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mc146818rtc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mc146818rtc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h
deleted file mode 120000
index 1f34bde..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mca.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mca.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mca.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mca.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h
deleted file mode 120000
index 2690b14..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mempolicy.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mempolicy.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mempolicy.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempolicy.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h
deleted file mode 120000
index eaed026..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mempool.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mempool.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mempool.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mempool.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h
deleted file mode 120000
index 7de3342..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/miscdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/miscdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/miscdevice.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/miscdevice.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h
deleted file mode 120000
index 111cc15..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h
deleted file mode 120000
index 0a25330..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/card.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mmc/card.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mmc/card.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/card.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h
deleted file mode 120000
index 61ab0f6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/host.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mmc/host.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mmc/host.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/host.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h
deleted file mode 120000
index ca8b23e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mmc/mmc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mmc/mmc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mmc/mmc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmc/mmc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h
deleted file mode 120000
index 6bd8d97..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mmzone.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mmzone.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mmzone.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mmzone.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h
deleted file mode 120000
index 1104eb5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mod_devicetable.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mod_devicetable.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mod_devicetable.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mod_devicetable.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h
deleted file mode 120000
index 93b3b19..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/module.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/module.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/module.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/module.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h
deleted file mode 120000
index 1f544b7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/moduleparam.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/moduleparam.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/moduleparam.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/moduleparam.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h
deleted file mode 120000
index 5ac8a42..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mount.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mount.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h
deleted file mode 120000
index de01ab3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msdos_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msdos_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msdos_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msdos_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h
deleted file mode 120000
index 4b5c4f9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h
deleted file mode 120000
index 620ab8d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_adsp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msm_adsp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msm_adsp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_adsp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h
deleted file mode 120000
index 730a831..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_audio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msm_audio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msm_audio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_audio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h
deleted file mode 120000
index d4ff409..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/msm_mdp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/msm_mdp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/msm_mdp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/msm_mdp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h
deleted file mode 120000
index 8a2b5c0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mt9t013.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mt9t013.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mt9t013.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mt9t013.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h
deleted file mode 120000
index d2d24c5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/bbm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/bbm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/bbm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/bbm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h
deleted file mode 120000
index f16b497..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/blktrans.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/blktrans.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/blktrans.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h
deleted file mode 120000
index 468e5e8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/cfi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/cfi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/cfi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h
deleted file mode 120000
index 3f9e287..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/cfi_endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/cfi_endian.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/cfi_endian.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h
deleted file mode 120000
index ed02458..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/compatmac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/compatmac.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/compatmac.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h
deleted file mode 120000
index 96a349d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/flashchip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/flashchip.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/flashchip.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h
deleted file mode 120000
index fee2465..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/map.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/map.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/map.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/map.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h
deleted file mode 120000
index 7821ca4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/mtd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/mtd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/mtd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/mtd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h
deleted file mode 120000
index 00fe26e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nand.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/nand.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/nand.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h
deleted file mode 120000
index 3c780f2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nand_ecc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/nand_ecc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nand_ecc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h
deleted file mode 120000
index b68add4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/nftl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/nftl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/nftl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/nftl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h
deleted file mode 120000
index cf98f5e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/onenand_regs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/onenand_regs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/onenand_regs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h
deleted file mode 120000
index 1943ac4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/mtd/partitions.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtd/partitions.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtd/partitions.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtd/partitions.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h
deleted file mode 120000
index e4a665b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mtio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mtio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mtio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mtio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h
deleted file mode 120000
index b03b89e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mutex-debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mutex-debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mutex-debug.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex-debug.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h
deleted file mode 120000
index adaf51c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/mutex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/mutex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/mutex.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/mutex.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h
deleted file mode 120000
index 36de989..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ncp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ncp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h
deleted file mode 120000
index d8e6b48..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp_mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ncp_mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ncp_mount.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_mount.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h
deleted file mode 120000
index 4e59a2b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ncp_no.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ncp_no.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ncp_no.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ncp_no.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h
deleted file mode 120000
index 9ff68ce..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/net.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/net.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/net.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/net.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h
deleted file mode 120000
index 103b2df..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netdevice.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netdevice.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netdevice.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netdevice.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h
deleted file mode 120000
index 81c9328..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
deleted file mode 120000
index 840faca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_common.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_common.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
deleted file mode 120000
index 3a8e544..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_ftp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_ftp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
deleted file mode 120000
index 17c5b25..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_sctp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
deleted file mode 120000
index 483187d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_tcp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
deleted file mode 120000
index 2335e58..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nf_conntrack_tuple_common.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nf_conntrack_tuple_common.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h
deleted file mode 120000
index 434215d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nfnetlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nfnetlink.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
deleted file mode 120000
index 87cc812..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/nfnetlink_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/nfnetlink_conntrack.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h
deleted file mode 120000
index d2b9746..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/x_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/x_tables.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/x_tables.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
deleted file mode 120000
index a3b868a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_CLASSIFY.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_CLASSIFY.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
deleted file mode 120000
index 725dafb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_CONNSECMARK.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_CONNSECMARK.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
deleted file mode 120000
index 851f571..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_NFQUEUE.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_NFQUEUE.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
deleted file mode 120000
index 02dfc1b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_SECMARK.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_SECMARK.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h
deleted file mode 120000
index 141f426..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_comment.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_comment.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_comment.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
deleted file mode 120000
index 7e67ee9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_connbytes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_connbytes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
deleted file mode 120000
index 04a1729..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_conntrack.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h
deleted file mode 120000
index 6bdc874..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_dccp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_dccp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h
deleted file mode 120000
index a27d0cc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_esp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_esp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h
deleted file mode 120000
index 6b958db..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_helper.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_helper.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_helper.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h
deleted file mode 120000
index 680ef6b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_length.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_length.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h
deleted file mode 120000
index 24bce98..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_limit.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_limit.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_limit.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h
deleted file mode 120000
index 24af1fc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_mac.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_mac.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h
deleted file mode 120000
index 80b337d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_multiport.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_multiport.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_multiport.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h
deleted file mode 120000
index c6ad18c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_physdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_physdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
deleted file mode 120000
index 3551c0d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_pkttype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_pkttype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h
deleted file mode 120000
index fc9f8b0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_quota.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_quota.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_quota.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h
deleted file mode 120000
index 7c0e5f6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_realm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_realm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_realm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h
deleted file mode 120000
index cede7c7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_sctp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_sctp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h
deleted file mode 120000
index 3f2ee91..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_state.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_state.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_state.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h
deleted file mode 120000
index dc1fe25..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_statistic.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_statistic.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_statistic.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h
deleted file mode 120000
index c19bebe..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_string.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_string.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
deleted file mode 120000
index 90cf9d5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_tcpmss.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_tcpmss.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
deleted file mode 120000
index 4e3f6b5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter/xt_tcpudp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter/xt_tcpudp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h
deleted file mode 120000
index e6172ef..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_arp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
deleted file mode 120000
index b31b8c2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_arp/arp_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_arp/arp_tables.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h
deleted file mode 120000
index f582040..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_bridge.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_bridge.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_bridge.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h
deleted file mode 120000
index 1daca65..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_ipv4.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
deleted file mode 120000
index 841b2e9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_conntrack.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_conntrack.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
deleted file mode 120000
index 109ccef..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
deleted file mode 120000
index 9b17b22..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_nat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_nat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
deleted file mode 120000
index fe78e7f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_nat_rule.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_nat_rule.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
deleted file mode 120000
index 3ea52ca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_queue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_queue.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
deleted file mode 120000
index 0f8460d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ip_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ip_tables.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
deleted file mode 120000
index f908438..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
deleted file mode 120000
index 29058d2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_DSCP.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_DSCP.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
deleted file mode 120000
index fc1128c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ECN.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ECN.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
deleted file mode 120000
index b5dbb55..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_LOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_LOG.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
deleted file mode 120000
index 3686206..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
deleted file mode 120000
index b3f1023..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_REJECT.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_REJECT.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
deleted file mode 120000
index fd24f6a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
deleted file mode 120000
index bb1a243..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TOS.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TOS.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
deleted file mode 120000
index 0ad1303..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_TTL.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_TTL.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
deleted file mode 120000
index 9cc45e5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ULOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ULOG.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
deleted file mode 120000
index 3b37d0b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_addrtype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_addrtype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
deleted file mode 120000
index 4b846fa..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_ah.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_ah.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
deleted file mode 120000
index 96a07ea..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_comment.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_comment.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
deleted file mode 120000
index 76120e8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_connbytes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_connbytes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
deleted file mode 120000
index 9be071c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_dccp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_dccp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
deleted file mode 120000
index 75879c3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_dscp_.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_dscp_.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
deleted file mode 120000
index 9830294..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_esp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
deleted file mode 120000
index 67cbcc1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_hashlimit.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_hashlimit.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
deleted file mode 120000
index b7039dc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_helper.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_helper.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
deleted file mode 120000
index d225d28..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_iprange.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_iprange.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
deleted file mode 120000
index 268a39e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_length.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
deleted file mode 120000
index f3cae5b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_mac.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
deleted file mode 120000
index b082109..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_owner.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_owner.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
deleted file mode 120000
index 47258d4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_physdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
deleted file mode 120000
index dc938c1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_pkttype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_pkttype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
deleted file mode 120000
index c07b56d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_realm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_realm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
deleted file mode 120000
index 531cb56..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_recent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_recent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
deleted file mode 120000
index 341f347..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_sctp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_sctp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
deleted file mode 120000
index da5187b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_state.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_state.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
deleted file mode 120000
index 12d23d4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_string.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
deleted file mode 120000
index 35348cc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv4/ipt_tos_.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv4/ipt_tos_.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h
deleted file mode 120000
index 0a37d5b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netfilter_ipv6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
deleted file mode 120000
index dbabff2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6_tables.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6_tables.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
deleted file mode 120000
index c7b27c9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_LOG.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_LOG.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
deleted file mode 120000
index fcee66d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_REJECT.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_REJECT.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
deleted file mode 120000
index 79151b0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_ah.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_ah.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
deleted file mode 120000
index 4f116b7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_esp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_esp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
deleted file mode 120000
index 7375205..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_frag.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_frag.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
deleted file mode 120000
index d3bc0ae..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
deleted file mode 120000
index cc583e5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_length.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_length.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
deleted file mode 120000
index edb21e3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_mac.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_mac.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
deleted file mode 120000
index 7dd0aec..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_opts.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_opts.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
deleted file mode 120000
index cd6bbca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_owner.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_owner.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
deleted file mode 120000
index 72d42c8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_physdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_physdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
deleted file mode 120000
index 0ade394..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/netfilter_ipv6/ip6t_rt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netfilter_ipv6/ip6t_rt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h
deleted file mode 120000
index 91610b8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/netlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/netlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/netlink.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/netlink.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h
deleted file mode 120000
index a055478..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h
deleted file mode 120000
index c3a9509..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs2.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs2.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h
deleted file mode 120000
index 4cd8d7a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs3.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs3.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs3.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs3.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h
deleted file mode 120000
index 4649859..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs4.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs4.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs4.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs4.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h
deleted file mode 120000
index 2f6de25..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfs_xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfs_xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfs_xdr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfs_xdr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h
deleted file mode 120000
index c44aa13..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nfsacl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsacl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsacl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsacl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h
deleted file mode 120000
index f68aa51..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/auth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/auth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/auth.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/auth.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h
deleted file mode 120000
index fe65cf4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/const.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/const.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/const.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/const.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h
deleted file mode 120000
index 789ca95..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/debug.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/debug.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h
deleted file mode 120000
index 811763b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/export.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/export.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/export.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/export.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h
deleted file mode 120000
index b19512d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/interface.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/interface.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/interface.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/interface.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h
deleted file mode 120000
index 9f3e60d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/nfsfh.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/nfsfh.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/nfsfh.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h
deleted file mode 120000
index 744e2fb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/stats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/stats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/stats.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/stats.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h
deleted file mode 120000
index 46d7928..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/nfsd/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nfsd/xdr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nfsd/xdr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h
deleted file mode 120000
index e67c59f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/node.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/node.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/node.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/node.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h
deleted file mode 120000
index 356c720..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nodemask.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nodemask.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nodemask.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nodemask.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h
deleted file mode 120000
index a0dfdcf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/notifier.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/notifier.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/notifier.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/notifier.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h
deleted file mode 120000
index f0549f0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/numa.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/numa.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/numa.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/numa.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h
deleted file mode 120000
index e2bce31..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/nvram.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/nvram.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/nvram.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/nvram.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h
deleted file mode 120000
index 0d2c516..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/omap_csmi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/omap_csmi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/omap_csmi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/omap_csmi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h
deleted file mode 120000
index 3545504..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pagemap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pagemap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pagemap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pagemap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h
deleted file mode 120000
index edd8f98..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/param.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/param.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/param.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/param.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h
deleted file mode 120000
index 628a75c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/patchkey.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/patchkey.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/patchkey.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/patchkey.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h
deleted file mode 120000
index 22b0ec7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pci.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pci.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h
deleted file mode 120000
index c3475fb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci_ids.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pci_ids.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pci_ids.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_ids.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h
deleted file mode 120000
index 853c226..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pci_regs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pci_regs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pci_regs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pci_regs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h
deleted file mode 120000
index 93d6b27..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/percpu.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/percpu.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/percpu.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h
deleted file mode 120000
index 6c839d4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/percpu_counter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/percpu_counter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/percpu_counter.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/percpu_counter.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h
deleted file mode 120000
index 0d6b659..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/personality.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/personality.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/personality.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/personality.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h
deleted file mode 120000
index 321bbb6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pfkeyv2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pfkeyv2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pfkeyv2.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pfkeyv2.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h
deleted file mode 120000
index 58e8899..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pkt_cls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pkt_cls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pkt_cls.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_cls.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h
deleted file mode 120000
index 77b5a47..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pkt_sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pkt_sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pkt_sched.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pkt_sched.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h
deleted file mode 120000
index baa7b55..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/platform_device.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/platform_device.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/platform_device.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/platform_device.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h
deleted file mode 120000
index 4d4e542..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/plist.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/plist.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/plist.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/plist.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h
deleted file mode 120000
index 1a4339e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h
deleted file mode 120000
index d7e1bb9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/pnp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/pnp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/pnp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/pnp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h
deleted file mode 120000
index 23c4b3f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/poll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/poll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h
deleted file mode 120000
index 29ae7cd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/posix_acl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/posix_acl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/posix_acl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_acl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h
deleted file mode 120000
index bcbcf00..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/posix_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/posix_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/posix_types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/posix_types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h
deleted file mode 120000
index 3b386a6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ppdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ppdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ppdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h
deleted file mode 120000
index 309a3d0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ppp_defs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ppp_defs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ppp_defs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ppp_defs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h
deleted file mode 120000
index 8bbe96c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/prctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/prctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/prctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/prctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h
deleted file mode 120000
index 9b59fe3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/preempt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/preempt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/preempt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/preempt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h
deleted file mode 120000
index 6d310c4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/proc_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/proc_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/proc_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/proc_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h
deleted file mode 120000
index 2617a6c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ptrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ptrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ptrace.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ptrace.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h
deleted file mode 120000
index 7223064..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/qic117.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/qic117.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/qic117.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/qic117.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h
deleted file mode 120000
index 5c767a3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/qnxtypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/qnxtypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/qnxtypes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/qnxtypes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h
deleted file mode 120000
index ed68365..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/quota.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/quota.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/quota.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/quota.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h
deleted file mode 120000
index e8599ef..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/md.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/md.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h
deleted file mode 120000
index 20f8ca6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_k.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/md_k.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/md_k.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_k.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h
deleted file mode 120000
index f631a38..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_p.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/md_p.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/md_p.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_p.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h
deleted file mode 120000
index 931271c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/md_u.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/md_u.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/md_u.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/md_u.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h
deleted file mode 120000
index b02a69a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/raid/xor.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/raid/xor.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/raid/xor.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/raid/xor.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h
deleted file mode 120000
index 0088784..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/random.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/random.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/random.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/random.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h
deleted file mode 120000
index f606d94..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rbtree.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rbtree.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rbtree.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rbtree.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h
deleted file mode 120000
index e93235d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rcupdate.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rcupdate.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rcupdate.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rcupdate.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h
deleted file mode 120000
index c3b86f4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/reboot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/reboot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/reboot.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/reboot.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h
deleted file mode 120000
index c354e19..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/relay.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/relay.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/relay.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/relay.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h
deleted file mode 120000
index 80a9f86..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/resource.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/resource.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h
deleted file mode 120000
index c81b220..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/route.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/route.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/route.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/route.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h
deleted file mode 120000
index eaeecd3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rtc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rtc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rtc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h
deleted file mode 120000
index 064a3d2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rtnetlink.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rtnetlink.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rtnetlink.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rtnetlink.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h
deleted file mode 120000
index 68eab47..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/rwsem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/rwsem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/rwsem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/rwsem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h
deleted file mode 120000
index e8ff88b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sched.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sched.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h
deleted file mode 120000
index 5348418..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sem.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sem.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sem.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sem.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h
deleted file mode 120000
index 2c25e6c..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/seq_file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/seq_file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/seq_file.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/seq_file.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h
deleted file mode 120000
index 345108e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/seqlock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/seqlock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/seqlock.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/seqlock.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h
deleted file mode 120000
index be40c9a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serial_core.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/serial_core.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/serial_core.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_core.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h
deleted file mode 120000
index 60bd137..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serial_reg.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/serial_reg.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/serial_reg.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/serial_reg.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h
deleted file mode 120000
index 4d3b062..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/serio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/serio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/serio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/serio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h
deleted file mode 120000
index 4cd2df0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/shm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/shm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/shm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/shm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h
deleted file mode 120000
index 10e9b01..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/signal.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/signal.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h
deleted file mode 120000
index 5ff4983..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/skbuff.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/skbuff.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/skbuff.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/skbuff.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h
deleted file mode 120000
index 04f089d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/slab.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/slab.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/slab.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/slab.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h
deleted file mode 120000
index 3f1cf22..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/smb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/smb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/smb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h
deleted file mode 120000
index bfa5942..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/smp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/smp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h
deleted file mode 120000
index 76d4cb0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/smp_lock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/smp_lock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/smp_lock.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/smp_lock.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h
deleted file mode 120000
index edc366f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/socket.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/socket.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/socket.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/socket.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h
deleted file mode 120000
index 793adfb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sockios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sockios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sockios.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sockios.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h
deleted file mode 120000
index ca37579..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/soundcard.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/soundcard.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/soundcard.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/soundcard.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h
deleted file mode 120000
index 305c46d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h
deleted file mode 120000
index 45bfb4e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_api_smp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_api_smp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_smp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h
deleted file mode 120000
index b54532e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_api_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_api_up.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_api_up.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h
deleted file mode 120000
index 39611b7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h
deleted file mode 120000
index d5384d7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_types_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_types_up.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_types_up.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h
deleted file mode 120000
index 46b3c0e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/spinlock_up.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/spinlock_up.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/spinlock_up.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/spinlock_up.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h
deleted file mode 120000
index 4c18232..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stacktrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/stacktrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/stacktrace.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/stacktrace.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h
deleted file mode 120000
index 842159b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/stat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/stat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h
deleted file mode 120000
index 4ac3b01..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/statfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/statfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/statfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/statfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h
deleted file mode 120000
index 9b398f1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stddef.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/stddef.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/stddef.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/stddef.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h
deleted file mode 120000
index 414748f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/string.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/string.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h
deleted file mode 120000
index 44dd7ed..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/stringify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/stringify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/stringify.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/stringify.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h
deleted file mode 120000
index 1fbe34f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/auth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/auth.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h
deleted file mode 120000
index 7bc8ad1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/auth_gss.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/auth_gss.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/auth_gss.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h
deleted file mode 120000
index 7f11a93..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/clnt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/clnt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/clnt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h
deleted file mode 120000
index c95a429..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/debug.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/debug.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/debug.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h
deleted file mode 120000
index e10eba6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_api.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_api.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_api.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
deleted file mode 120000
index e860f8e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_asn1.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_asn1.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h
deleted file mode 120000
index 72c7141..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/gss_err.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/gss_err.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/gss_err.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h
deleted file mode 120000
index d9cb9ae..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/msg_prot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/msg_prot.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/msg_prot.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h
deleted file mode 120000
index 84791a7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/sched.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/sched.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h
deleted file mode 120000
index b115bd5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/stats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/stats.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/stats.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h
deleted file mode 120000
index 658a81e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/svc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/svc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h
deleted file mode 120000
index 8c3e841..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/svcauth.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/svcauth.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/svcauth.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h
deleted file mode 120000
index ce8709d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/timer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/timer.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/timer.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h
deleted file mode 120000
index e7f7656..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h
deleted file mode 120000
index 163e618..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/xdr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/xdr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xdr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h
deleted file mode 120000
index 6d29148..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../../common/include/linux/sunrpc/xprt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sunrpc/xprt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sunrpc/xprt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h
deleted file mode 120000
index 47db73a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/swap.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/swap.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/swap.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/swap.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h
deleted file mode 120000
index 1252a53..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sysctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sysctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h
deleted file mode 120000
index 6691343..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysdev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sysdev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sysdev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysdev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h
deleted file mode 120000
index 0cbaad8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/sysfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/sysfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/sysfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/sysfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h
deleted file mode 120000
index 24a178e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/taskstats.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/taskstats.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/taskstats.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h
deleted file mode 120000
index 20b2c64..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/taskstats_kern.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/taskstats_kern.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/taskstats_kern.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/taskstats_kern.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h
deleted file mode 120000
index 417237a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/tcp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/tcp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h
deleted file mode 120000
index 44b4c18..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/telephony.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/telephony.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/telephony.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/telephony.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h
deleted file mode 120000
index 968db97..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/termios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/termios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/termios.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/termios.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h
deleted file mode 120000
index e033273..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/textsearch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/textsearch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/textsearch.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/textsearch.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h
deleted file mode 120000
index 11a1011..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/thread_info.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/thread_info.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/thread_info.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/thread_info.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h
deleted file mode 120000
index ef3237e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/threads.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/threads.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/threads.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/threads.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h
deleted file mode 120000
index 2060843..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/time.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/time.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h
deleted file mode 120000
index f81d907..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/timer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/timer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/timer.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/timer.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h
deleted file mode 120000
index 8757201..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/times.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/times.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/times.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/times.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h
deleted file mode 120000
index 49e520b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/timex.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/timex.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/timex.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/timex.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h
deleted file mode 120000
index ae6102b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tiocl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/tiocl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/tiocl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/tiocl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h
deleted file mode 120000
index 735b69b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/transport_class.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/transport_class.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/transport_class.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/transport_class.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h
deleted file mode 120000
index 4e874bf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/tty.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/tty.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/tty.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/tty.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h
deleted file mode 120000
index 76b2511..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h
deleted file mode 120000
index 14ee4b2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/udp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/udp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/udp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/udp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h
deleted file mode 120000
index de767a7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ufs_fs_i.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ufs_fs_i.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_i.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h
deleted file mode 120000
index a78b9d3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/ufs_fs_sb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/ufs_fs_sb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/ufs_fs_sb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h
deleted file mode 120000
index 95a105d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/uio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/uio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/uio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/uio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h
deleted file mode 120000
index 6d51e94..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/un.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/un.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/un.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/un.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h
deleted file mode 120000
index 7ef4a0d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/unistd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/unistd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h
deleted file mode 120000
index 7da27d7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/usb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/usb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h
deleted file mode 120000
index d8a2655..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usb_ch9.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/usb_ch9.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/usb_ch9.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/usb_ch9.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h
deleted file mode 120000
index b4c8de8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/usbdevice_fs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/usbdevice_fs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/usbdevice_fs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h
deleted file mode 120000
index 2bb072e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/user.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/user.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/user.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/user.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h
deleted file mode 120000
index c483c28..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/utime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/utime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h
deleted file mode 120000
index 8b0a098..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/utsname.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/utsname.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/utsname.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/utsname.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h
deleted file mode 120000
index cb2ac62..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/version.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/version.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/version.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/version.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h
deleted file mode 120000
index b815962..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/vfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/vfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/vfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h
deleted file mode 120000
index 33e8651..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/videodev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/videodev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/videodev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h
deleted file mode 120000
index 9127b40..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/videodev2.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/videodev2.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/videodev2.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/videodev2.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h
deleted file mode 120000
index 90410fc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vmalloc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/vmalloc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/vmalloc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/vmalloc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h
deleted file mode 120000
index 5f1333a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/vt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/vt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h
deleted file mode 120000
index babe241..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/vt_buffer.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/vt_buffer.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/vt_buffer.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/vt_buffer.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h
deleted file mode 120000
index ee2730b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wait.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/wait.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/wait.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/wait.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h
deleted file mode 120000
index 1d1b8f1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wanrouter.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/wanrouter.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/wanrouter.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/wanrouter.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h
deleted file mode 120000
index 43983b5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/wireless.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/wireless.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/wireless.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/wireless.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h
deleted file mode 120000
index 3ce0512..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/workqueue.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/workqueue.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/workqueue.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/workqueue.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h
deleted file mode 120000
index 8cf8b0b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/xattr.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/xattr.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/xattr.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/xattr.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h
deleted file mode 120000
index 4dc29e6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/zconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/zconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/zconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h
deleted file mode 120000
index 9d45319..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/zlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/zlib.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/zlib.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h
deleted file mode 120000
index f2220c0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/linux/zorro_ids.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/linux/zorro_ids.h b/ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/linux/zorro_ids.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/linux/zorro_ids.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/locale.h b/ndk/build/platforms/android-4/arch-arm/usr/include/locale.h
deleted file mode 120000
index 26247fd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/locale.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/locale.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/locale.h b/ndk/build/platforms/android-4/arch-arm/usr/include/locale.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/locale.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/locale.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h
deleted file mode 120000
index 78a8006..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/malloc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/malloc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/malloc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/malloc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/math.h b/ndk/build/platforms/android-4/arch-arm/usr/include/math.h
deleted file mode 120000
index 0d4bdcd..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/math.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/math.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/math.h b/ndk/build/platforms/android-4/arch-arm/usr/include/math.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/math.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/math.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/memory.h b/ndk/build/platforms/android-4/arch-arm/usr/include/memory.h
deleted file mode 120000
index 08375e2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/memory.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/memory.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/memory.h b/ndk/build/platforms/android-4/arch-arm/usr/include/memory.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/memory.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/memory.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h
deleted file mode 120000
index 43186c4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/mntent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/mntent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/mntent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/mntent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h
deleted file mode 120000
index 19a9a51..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/mtd/mtd-abi.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/mtd/mtd-abi.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/mtd/mtd-abi.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-abi.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h
deleted file mode 120000
index e22b96b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/mtd/mtd-user.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/mtd/mtd-user.h b/ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/mtd/mtd-user.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/mtd/mtd-user.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h
deleted file mode 120000
index 621864d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/ethertypes.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/ethertypes.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/ethertypes.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/ethertypes.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h
deleted file mode 120000
index c83fdb9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h
deleted file mode 120000
index e8e84bb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_arp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_arp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_arp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_arp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h
deleted file mode 120000
index 1a27df4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_dl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_dl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_dl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_dl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h
deleted file mode 120000
index 591c1db..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_ether.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ether.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h
deleted file mode 120000
index f0b13ce..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_ieee1394.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_ieee1394.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_ieee1394.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_ieee1394.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h
deleted file mode 120000
index 4c5bd8d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_packet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_packet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h
deleted file mode 120000
index 410430f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/if_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/if_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/if_types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/if_types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h
deleted file mode 120000
index ea03206..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/net/route.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/net/route.h b/ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/net/route.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/net/route.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h
deleted file mode 120000
index 67f7a2f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/netdb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netdb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netdb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netdb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h
deleted file mode 120000
index e331c47..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/ether.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ether.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h
deleted file mode 120000
index 5354bb5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/if_ether.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/if_ether.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/if_ether.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/if_ether.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h
deleted file mode 120000
index 8439fe5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/in.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/in.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h
deleted file mode 120000
index fa5937f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in6.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/in6.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/in6.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in6.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h
deleted file mode 120000
index ea70a33..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/in_systm.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/in_systm.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/in_systm.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/in_systm.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h
deleted file mode 120000
index 3eb2097..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ip.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/ip.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/ip.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h
deleted file mode 120000
index 2c9024f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/ip_icmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/ip_icmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/ip_icmp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/ip_icmp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h
deleted file mode 120000
index 6b0d829..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/tcp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/tcp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/tcp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/tcp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h
deleted file mode 120000
index d5e0f6b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netinet/udp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netinet/udp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netinet/udp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netinet/udp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h
deleted file mode 120000
index 7473ba4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/netpacket/packet.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/netpacket/packet.h b/ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/netpacket/packet.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/netpacket/packet.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/new b/ndk/build/platforms/android-4/arch-arm/usr/include/new
deleted file mode 120000
index b3e4225..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/new
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/new
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/new b/ndk/build/platforms/android-4/arch-arm/usr/include/new
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/new
rename to ndk/build/platforms/android-4/arch-arm/usr/include/new
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h
deleted file mode 120000
index 361ce34..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/nsswitch.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/nsswitch.h b/ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/nsswitch.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/nsswitch.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h
deleted file mode 120000
index f1c45ca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pathconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/pathconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/pathconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/pathconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/paths.h b/ndk/build/platforms/android-4/arch-arm/usr/include/paths.h
deleted file mode 120000
index 04b00c0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/paths.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/paths.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/paths.h b/ndk/build/platforms/android-4/arch-arm/usr/include/paths.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/paths.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/paths.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/poll.h
deleted file mode 120000
index e260aad..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/poll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/poll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/poll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h
deleted file mode 120000
index e7240fe..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pthread.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/pthread.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/pthread.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/pthread.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h
deleted file mode 120000
index deefc65..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/pwd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/pwd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/pwd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/pwd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h b/ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h
deleted file mode 120000
index 645cec6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/resolv.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/resolv.h b/ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/resolv.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/resolv.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sched.h
deleted file mode 120000
index 7eb75bc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sched.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sched.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sched.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sched.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sched.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sched.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h b/ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h
deleted file mode 120000
index 5981819..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/semaphore.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/semaphore.h b/ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/semaphore.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/semaphore.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h
deleted file mode 120000
index 927b88e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/setjmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/setjmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/setjmp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/setjmp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h
deleted file mode 120000
index fcfac52..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sgtty.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sgtty.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sgtty.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sgtty.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h
deleted file mode 120000
index f4aadd2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/sha1.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sha1.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sha1.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sha1.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/signal.h
deleted file mode 120000
index 83e2e8e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/signal.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/signal.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/signal.h b/ndk/build/platforms/android-4/arch-arm/usr/include/signal.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/signal.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/signal.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h
deleted file mode 120000
index 8b0dfbf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdint.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h
new file mode 100644
index 0000000..237baa2
--- /dev/null
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/stdint.h
@@ -0,0 +1,266 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _STDINT_H
+#define _STDINT_H
+
+#include <stddef.h>
+#include <sys/_types.h>
+
+
+
+#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
+#  define __STDINT_LIMITS
+#endif
+
+#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
+#  define  __STDINT_MACROS
+#endif
+
+/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
+#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
+#  define  __STDINT_MACROS
+#endif
+
+#if !defined __STRICT_ANSI__ || __STDC_VERSION__ >= 199901L
+#  define __STDC_INT64__
+#endif
+
+typedef __int8_t      int8_t;
+typedef __uint8_t     uint8_t;
+typedef __int16_t     int16_t;
+typedef __uint16_t    uint16_t;
+typedef __int32_t     int32_t;
+typedef __uint32_t    uint32_t;
+#if defined(__STDC_INT64__)
+typedef __int64_t     int64_t;
+typedef __uint64_t    uint64_t;
+#endif
+
+/*
+ * int8_t & uint8_t
+ */
+
+typedef int8_t        int_least8_t;
+typedef int8_t        int_fast8_t;
+
+typedef uint8_t       uint_least8_t;
+typedef uint8_t       uint_fast8_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT8_MIN         (-128)
+#  define INT8_MAX         (127)
+#  define INT_LEAST8_MIN   INT8_MIN
+#  define INT_LEAST8_MAX   INT8_MAX
+#  define INT_FAST8_MIN    INT8_MIN
+#  define INT_FAST8_MAX    INT8_MAX
+
+#  define UINT8_MAX           (255U)
+#  define UINT_LEAST8_MAX     UINT8_MAX
+#  define UINT_FAST8_MAX      UINT8_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT8_C(c)	c
+#  define INT_LEAST8_C(c)	 INT8_C(c)
+#  define INT_FAST8_C(c)	INT8_C(c)
+
+#  define UINT8_C(c)	c ## U
+#  define UINT_LEAST8_C(c)  UINT8_C(c)
+#  define UINT_FAST8_C(c)  UINT8_C(c)
+#endif
+
+/*
+ * int16_t & uint16_t
+ */
+
+
+typedef int16_t       int_least16_t;
+typedef int32_t       int_fast16_t;
+
+typedef uint16_t      uint_least16_t;
+typedef uint32_t      uint_fast16_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT16_MIN	(-32768)
+#  define INT16_MAX	(32767)
+#  define INT_LEAST16_MIN	INT16_MIN
+#  define INT_LEAST16_MAX	INT16_MAX
+#  define INT_FAST16_MIN	INT32_MIN
+#  define INT_FAST16_MAX	INT32_MAX
+
+#  define UINT16_MAX	(65535U)
+#  define UINT_LEAST16_MAX UINT16_MAX
+#  define UINT_FAST16_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT16_C(c)	c
+#  define INT_LEAST16_C(c) INT16_C(c)
+#  define INT_FAST16_C(c)	 INT32_C(c)
+
+#  define UINT16_C(c)	c ## U
+#  define UINT_LEAST16_C(c) UINT16_C(c)
+#  define UINT_FAST16_C(c) UINT32_C(c)
+#endif
+
+/*
+ * int32_t & uint32_t
+ */
+
+typedef int32_t       int_least32_t;
+typedef int32_t       int_fast32_t;
+
+typedef uint32_t      uint_least32_t;
+typedef uint32_t      uint_fast32_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT32_MIN	(-2147483647-1)
+#  define INT32_MAX	(2147483647)
+#  define INT_LEAST32_MIN	INT32_MIN
+#  define INT_LEAST32_MAX	INT32_MAX
+#  define INT_FAST32_MIN	INT32_MIN
+#  define INT_FAST32_MAX	INT32_MAX
+
+#  define UINT32_MAX	(4294967295U)
+#  define UINT_LEAST32_MAX UINT32_MAX
+#  define UINT_FAST32_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT32_C(c)	c
+#  define INT_LEAST32_C(c) INT32_C(c)
+#  define INT_FAST32_C(c)  INT32_C(c)
+
+#  define UINT32_C(c)	c ## U
+#  define UINT_LEAST32_C(c) UINT32_C(c)
+#  define UINT_FAST32_C(c) UINT32_C(c)
+#endif
+
+#if defined(__STDC_INT64__)
+/*
+ *  int64_t
+ */
+typedef int64_t       int_least64_t;
+typedef int64_t       int_fast64_t;
+
+typedef uint64_t      uint_least64_t;
+typedef uint64_t      uint_fast64_t;
+
+
+#ifdef __STDINT_LIMITS
+#  define INT64_MIN        (__INT64_C(-9223372036854775807)-1)
+#  define INT64_MAX        (__INT64_C(9223372036854775807))
+#  define INT_LEAST64_MIN  INT64_MIN
+#  define INT_LEAST64_MAX  INT64_MAX
+#  define INT_FAST64_MIN   INT64_MIN
+#  define INT_FAST64_MAX   INT64_MAX
+#  define UINT64_MAX       (__UINT64_C(18446744073709551615))
+
+#  define UINT_LEAST64_MAX UINT64_MAX
+#  define UINT_FAST64_MAX UINT64_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define __INT64_C(c)     c ## LL
+#  define INT64_C(c)       __INT64_C(c)
+#  define INT_LEAST64_C(c) INT64_C(c)
+#  define INT_FAST64_C(c)  INT64_C(c)
+
+#  define __UINT64_C(c)     c ## ULL
+#  define UINT64_C(c)       __UINT64_C(c)
+#  define UINT_LEAST64_C(c) UINT64_C(c)
+#  define UINT_FAST64_C(c)  UINT64_C(c)
+#endif
+
+
+#  define __PRI64_RANK   "ll"
+#  define __PRIFAST_RANK ""
+#  define __PRIPTR_RANK  ""
+
+#endif /* __STDC_INT64__ */
+
+/*
+ * intptr_t & uintptr_t
+ */
+
+typedef int           intptr_t;
+typedef unsigned int  uintptr_t;
+
+#  define INTPTR_MIN    INT32_MIN
+#  define INTPTR_MAX    INT32_MAX
+#  define UINTPTR_MAX   UINT32_MAX
+#  define INTPTR_C(c)   INT32_C(c)
+#  define UINTPTR_C(c)  UINT32_C(c)
+#  define PTRDIFF_C(c)  INT32_C(c)
+#  define PTRDIFF_MIN   INT32_MIN
+#  define PTRDIFF_MAX   INT32_MAX
+
+
+/*
+ *  intmax_t & uintmax_t
+ */
+
+#if defined(__STDC_INT64__)
+
+typedef uint64_t uintmax_t;
+typedef int64_t  intmax_t;
+
+#define INTMAX_MIN	INT64_MIN
+#define INTMAX_MAX	INT64_MAX
+#define UINTMAX_MAX	UINT64_MAX
+
+#define INTMAX_C(c)	INT64_C(c)
+#define UINTMAX_C(c)	UINT64_C(c)
+
+#else /* !__STDC_INT64__ */
+
+typedef uint32_t  uintmax_t;
+typedef int32_t   intmax_t;
+
+#define  INTMAX_MIN    INT32_MIN
+#define  INTMAX_MAX    INT32_MAX
+#define  UINTMAX_MAX   UINT32_MAX
+
+#define INTMAX_C(c)	INT32_C(c)
+#define UINTMAX_C(c)	UINT32_C(c)
+
+#endif /* !__STDC_INT64__ */
+
+
+/* size_t is defined by the GCC-specific <stddef.h> */
+#ifndef _SSIZE_T_DEFINED_
+#define _SSIZE_T_DEFINED_
+typedef long int  ssize_t;
+#endif
+
+#define _BITSIZE 32
+
+/* Keep the kernel from trying to define these types... */
+#define __BIT_TYPES_DEFINED__
+
+#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h
deleted file mode 120000
index 41d7d04..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/stdio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/stdio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/stdio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h
deleted file mode 120000
index de97694..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stdlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/stdlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/stdlib.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/stdlib.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h
deleted file mode 120000
index bfeaf5b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/stl_pair.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/stl_pair.h b/ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/stl_pair.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/stl_pair.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/string.h
deleted file mode 120000
index ee1c46a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/string.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/string.h b/ndk/build/platforms/android-4/arch-arm/usr/include/string.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/string.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/string.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h
deleted file mode 120000
index e3c356d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/strings.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h
new file mode 100644
index 0000000..fee7dc4
--- /dev/null
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/strings.h
@@ -0,0 +1,56 @@
+/*	$NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $	*/
+
+/*-
+ * Copyright (c) 1998 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Klaus Klein.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *        This product includes software developed by the NetBSD
+ *        Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ *    contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _STRINGS_H_
+#define _STRINGS_H_
+
+#include <sys/types.h>
+#include <sys/cdefs.h>
+
+__BEGIN_DECLS
+int	 bcmp(const void *, const void *, size_t);
+void	 bcopy(const void *, void *, size_t);
+void	 bzero(void *, size_t);
+int	 ffs(int);
+char	*index(const char *, int);
+char	*rindex(const char *, int);
+int	 strcasecmp(const char *, const char *);
+int	 strncasecmp(const char *, const char *, size_t);
+__END_DECLS
+
+#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h
deleted file mode 120000
index b2a299e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_errdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/_errdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/_errdefs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/_errdefs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h
deleted file mode 120000
index ea48d37..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_sigdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/_sigdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/_sigdefs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/_sigdefs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h
deleted file mode 120000
index 6054cc4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_system_properties.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/_system_properties.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/_system_properties.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/_system_properties.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h
deleted file mode 120000
index 936b4d5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/_types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/_types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/_types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/_types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h
deleted file mode 120000
index 0304794..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/atomics.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/atomics.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/atomics.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/atomics.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h
deleted file mode 120000
index 36eede7..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/cdefs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/cdefs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/cdefs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h
deleted file mode 120000
index fa852bf..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/cdefs_elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/cdefs_elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/cdefs_elf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/cdefs_elf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h
deleted file mode 120000
index cac02ee..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/dirent.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/dirent.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/dirent.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/dirent.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h
deleted file mode 120000
index 25109db..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/endian.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/endian.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/endian.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/endian.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h
deleted file mode 120000
index bf93fc6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/epoll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/epoll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/epoll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/epoll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h
deleted file mode 120000
index 199ad78..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/errno.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/errno.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/errno.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/errno.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h
deleted file mode 120000
index 24e01e6..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/exec_elf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/exec_elf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/exec_elf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/exec_elf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h
deleted file mode 120000
index 99ab5d3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/file.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/file.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/file.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/file.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h
deleted file mode 120000
index f5f9974..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/fsuid.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/fsuid.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/fsuid.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/fsuid.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h
deleted file mode 120000
index a050653..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/inotify.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/inotify.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/inotify.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/inotify.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h
deleted file mode 120000
index e228a66..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ioctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ioctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ioctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h
deleted file mode 120000
index dd004de..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ioctl_compat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ioctl_compat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ioctl_compat.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ioctl_compat.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h
deleted file mode 120000
index 5d275f2..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ipc.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ipc.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ipc.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ipc.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h
deleted file mode 120000
index 4cad4c9..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/klog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/klog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/klog.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/klog.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h
deleted file mode 120000
index 4f50214..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/limits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/limits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/limits.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/limits.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h
deleted file mode 120000
index 754d7c49..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/linux-syscalls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/linux-syscalls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/linux-syscalls.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-syscalls.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h
deleted file mode 120000
index 9496fde..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/linux-unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/linux-unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/linux-unistd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/linux-unistd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h
deleted file mode 120000
index bd6a6b8..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/mman.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/mman.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/mman.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/mman.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h
deleted file mode 120000
index 0b0a916..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/mount.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/mount.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/mount.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/mount.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h
deleted file mode 120000
index 16e5bcc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/param.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/param.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/param.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/param.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h
deleted file mode 120000
index a98ab69..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/poll.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/poll.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/poll.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/poll.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h
deleted file mode 120000
index 950d2fb..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/prctl.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/prctl.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/prctl.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/prctl.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h
deleted file mode 120000
index 3b2714f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ptrace.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ptrace.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ptrace.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ptrace.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h
deleted file mode 120000
index 8295ffc..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/reboot.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/reboot.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/reboot.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/reboot.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h
deleted file mode 120000
index 72a813f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/resource.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/resource.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/resource.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/resource.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h
deleted file mode 120000
index 42f2037..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/select.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/select.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/select.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/select.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h
deleted file mode 120000
index ac4d8a0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sendfile.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/sendfile.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/sendfile.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/sendfile.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h
deleted file mode 120000
index 36a0331..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/socket.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/socket.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/socket.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/socket.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h
deleted file mode 120000
index 5e94809..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/socketcalls.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/socketcalls.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/socketcalls.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/socketcalls.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h
deleted file mode 120000
index fa00c54..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/stat.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h
new file mode 100644
index 0000000..091ee6d
--- /dev/null
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/stat.h
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _SYS_STAT_H_
+#define _SYS_STAT_H_
+
+#include <sys/cdefs.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#include <linux/stat.h>
+
+#include <endian.h>
+
+__BEGIN_DECLS
+
+/* really matches stat64 in the kernel, hence the padding
+ * Note: The kernel zero's the padded region because glibc might read them
+ * in the hope that the kernel has stretched to using larger sizes.
+ */
+struct stat {
+    unsigned long long  st_dev;
+    unsigned char       __pad0[4];
+
+    unsigned long       __st_ino;
+    unsigned int        st_mode;
+    unsigned int        st_nlink;
+
+    unsigned long       st_uid;
+    unsigned long       st_gid;
+
+    unsigned long long  st_rdev;
+    unsigned char       __pad3[4];
+
+    long long           st_size;
+    unsigned long	st_blksize;
+    unsigned long long  st_blocks;
+
+    unsigned long       st_atime;
+    unsigned long       st_atime_nsec;
+
+    unsigned long       st_mtime;
+    unsigned long       st_mtime_nsec;
+
+    unsigned long       st_ctime;
+    unsigned long       st_ctime_nsec;
+
+    unsigned long long  st_ino;
+};
+
+/* For compatibility with GLibc, we provide macro aliases
+ * for the non-Posix nano-seconds accessors.
+ */
+#define  st_atimensec  st_atime_nsec
+#define  st_mtimensec  st_mtime_nsec
+#define  st_ctimensec  st_ctime_nsec
+
+extern int    chmod(const char *, mode_t);
+extern int    fchmod(int, mode_t);
+extern int    mkdir(const char *, mode_t);
+
+extern int    stat(const char *, struct stat *);
+extern int    fstat(int, struct stat *);
+extern int    lstat(const char *, struct stat *);
+extern int    mknod(const char *, mode_t, dev_t);
+extern mode_t umask(mode_t);
+
+#define  stat64    stat
+#define  fstat64   fstat
+#define  lstat64   lstat
+
+static __inline__ int mkfifo(const char *__p, mode_t __m)
+{
+  return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
+}
+
+extern int  fstatat(int dirfd, const char *path, struct stat *buf, int flags);
+extern int  mkdirat(int dirfd, const char *pathname, mode_t mode);
+extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
+extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
+extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
+
+__END_DECLS
+
+#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h
deleted file mode 120000
index d53806d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/statfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/statfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/statfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/statfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h
deleted file mode 120000
index 4225c35..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/syscall.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/syscall.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/syscall.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/syscall.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h
deleted file mode 120000
index ed9cf1f..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/sysconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/sysconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h
deleted file mode 120000
index 1693d79..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysinfo.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/sysinfo.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/sysinfo.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysinfo.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h
deleted file mode 120000
index 17efa78..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/syslimits.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/syslimits.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/syslimits.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/syslimits.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h
deleted file mode 120000
index fa13eca..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/sysmacros.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/sysmacros.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/sysmacros.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/sysmacros.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h
deleted file mode 120000
index 286ba9d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/system_properties.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/system_properties.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/system_properties.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/system_properties.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h
deleted file mode 120000
index b376430..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/time.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/time.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h
deleted file mode 120000
index fef113e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/timeb.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/timeb.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/timeb.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/timeb.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h
deleted file mode 120000
index 53c3a1a..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/times.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/times.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/times.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/times.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h
deleted file mode 120000
index 09c3352..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ttychars.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ttychars.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ttychars.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttychars.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h
deleted file mode 120000
index 4735daa..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/ttydev.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/ttydev.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/ttydev.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/ttydev.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h
deleted file mode 120000
index 8829c6b..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/types.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/types.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/types.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/types.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h
deleted file mode 120000
index a111200..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/uio.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/uio.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/uio.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/uio.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h
deleted file mode 120000
index 20d7c68..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/un.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/un.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/un.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/un.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h
deleted file mode 120000
index 8494247..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/utime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/utime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h
deleted file mode 120000
index cf985f0..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/utsname.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/utsname.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/utsname.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/utsname.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h
deleted file mode 120000
index c4873c3..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/vfs.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/vfs.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/vfs.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/vfs.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h
deleted file mode 120000
index 55b3ed4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/vt.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/vt.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/vt.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/vt.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h
deleted file mode 120000
index 9f27986..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../../common/include/sys/wait.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/sys/wait.h b/ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/sys/wait.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/sys/wait.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h
deleted file mode 120000
index 609c4e1..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/syslog.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/syslog.h b/ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/syslog.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/syslog.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/termios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/termios.h
deleted file mode 120000
index 53740f5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/termios.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/termios.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/termios.h b/ndk/build/platforms/android-4/arch-arm/usr/include/termios.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/termios.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/termios.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h b/ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h
deleted file mode 120000
index e6b5ced..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/thread_db.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/thread_db.h b/ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/thread_db.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/thread_db.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/time.h
deleted file mode 120000
index 4ae3e06..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/time.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/time.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/time.h b/ndk/build/platforms/android-4/arch-arm/usr/include/time.h
new file mode 100644
index 0000000..6163c6d
--- /dev/null
+++ b/ndk/build/platforms/android-4/arch-arm/usr/include/time.h
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _TIME_H_
+#define _TIME_H_
+
+#include <sys/cdefs.h>
+#include <sys/time.h>
+
+#define __ARCH_SI_UID_T __kernel_uid32_t
+#include <asm/siginfo.h>
+#undef __ARCH_SI_UID_T
+
+__BEGIN_DECLS
+
+extern time_t   time(time_t *);
+extern int      nanosleep(const struct timespec *, struct timespec *);
+
+extern char *strtotimeval(const char *str, struct timeval *tv);
+
+struct tm {
+   int     tm_sec;         /* seconds */
+   int     tm_min;         /* minutes */
+   int     tm_hour;        /* hours */
+   int     tm_mday;        /* day of the month */
+   int     tm_mon;         /* month */
+   int     tm_year;        /* year */
+   int     tm_wday;        /* day of the week */
+   int     tm_yday;        /* day in the year */
+   int     tm_isdst;       /* daylight saving time */
+
+   long int tm_gmtoff;     /* Seconds east of UTC.  */
+   const char *tm_zone;    /* Timezone abbreviation.  */
+
+};
+
+/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
+ * struct tm, the value should be the field name
+ */
+#define   TM_ZONE   tm_zone
+
+extern char* asctime(const struct tm* a);
+extern char* asctime_r(const struct tm* a, char* buf);
+
+/* Return the difference between TIME1 and TIME0.  */
+extern double difftime (time_t __time1, time_t __time0);
+extern time_t mktime (struct tm *a);
+
+extern struct tm*  localtime(const time_t *t);
+extern struct tm*  localtime_r(const time_t *timep, struct tm *result);
+
+extern struct tm*  gmtime(const time_t *timep);
+extern struct tm*  gmtime_r(const time_t *timep, struct tm *result);
+
+extern char*       strptime(const char *buf, const char *fmt, struct tm *tm);
+extern size_t      strftime(char *s, size_t max, const char *format, const struct tm *tm);
+
+extern char *ctime(const time_t *timep);
+extern char *ctime_r(const time_t *timep, char *buf);
+
+extern void  tzset(void);
+
+/* global includes */
+extern char*     tzname[];
+extern int       daylight;
+extern long int  timezone;
+
+#define CLOCKS_PER_SEC     1000000
+
+extern clock_t   clock(void);
+
+/* BIONIC: extra linux clock goodies */
+extern int clock_getres(int, struct timespec *);
+extern int clock_gettime(int, struct timespec *);
+
+#define CLOCK_REALTIME             0
+#define CLOCK_MONOTONIC            1
+#define CLOCK_PROCESS_CPUTIME_ID   2
+#define CLOCK_THREAD_CPUTIME_ID    3
+#define CLOCK_REALTIME_HR          4
+#define CLOCK_MONOTONIC_HR         5
+
+extern int  timer_create(int, struct sigevent*, timer_t*);
+extern int  timer_delete(timer_t);
+extern int  timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
+extern int  timer_gettime(timer_t timerid, struct itimerspec *value);
+extern int  timer_getoverrun(timer_t  timerid);
+
+__END_DECLS
+
+#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/time64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/time64.h
deleted file mode 120000
index 9e4ca23..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/time64.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/time64.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/time64.h b/ndk/build/platforms/android-4/arch-arm/usr/include/time64.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/time64.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/time64.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo b/ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo
deleted file mode 120000
index 35bacb5..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/typeinfo
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/typeinfo b/ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/typeinfo
rename to ndk/build/platforms/android-4/arch-arm/usr/include/typeinfo
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h
deleted file mode 120000
index 378e20d..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/unistd.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/unistd.h b/ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/unistd.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/unistd.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/util.h b/ndk/build/platforms/android-4/arch-arm/usr/include/util.h
deleted file mode 120000
index c8de0fe..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/util.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/util.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/util.h b/ndk/build/platforms/android-4/arch-arm/usr/include/util.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/util.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/util.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/utility b/ndk/build/platforms/android-4/arch-arm/usr/include/utility
deleted file mode 120000
index f670e68..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/utility
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utility
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/utility b/ndk/build/platforms/android-4/arch-arm/usr/include/utility
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/utility
rename to ndk/build/platforms/android-4/arch-arm/usr/include/utility
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/utime.h
deleted file mode 120000
index 520a474..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/utime.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utime.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/utime.h b/ndk/build/platforms/android-4/arch-arm/usr/include/utime.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/utime.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/utime.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h
deleted file mode 120000
index 9fe8b95..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/utmp.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/utmp.h b/ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/utmp.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/utmp.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h b/ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h
deleted file mode 120000
index 5a35644..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/wchar.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/wchar.h b/ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/wchar.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/wchar.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h
deleted file mode 120000
index 2a2a823..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/wctype.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/wctype.h b/ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/wctype.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/wctype.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h
deleted file mode 120000
index 10d4a1e..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/zconf.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/zconf.h b/ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/zconf.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/zconf.h
diff --git a/ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h
deleted file mode 120000
index d9e63a4..0000000
--- a/ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h
+++ /dev/null
@@ -1 +0,0 @@
-../../../common/include/zlib.h
\ No newline at end of file
diff --git a/ndk/build/platforms/android-4/common/include/zlib.h b/ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h
similarity index 100%
rename from ndk/build/platforms/android-4/common/include/zlib.h
rename to ndk/build/platforms/android-4/arch-arm/usr/include/zlib.h
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/__ffs.h
deleted file mode 100644
index 3d135bd..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/__ffs.h
+++ /dev/null
@@ -1,19 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS___FFS_H_
-#define _ASM_GENERIC_BITOPS___FFS_H_
-
-#include <asm/types.h>
-
-#if BITS_PER_LONG == 64
-#endif
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/atomic.h
deleted file mode 100644
index 5f53ba9..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/atomic.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_ATOMIC_H_
-#define _ASM_GENERIC_BITOPS_ATOMIC_H_
-
-#include <asm/types.h>
-
-#define BITOP_MASK(nr) (1UL << ((nr) % BITS_PER_LONG))
-#define BITOP_WORD(nr) ((nr) / BITS_PER_LONG)
-
-#define _atomic_spin_lock_irqsave(l,f) do { local_irq_save(f); } while (0)
-#define _atomic_spin_unlock_irqrestore(l,f) do { local_irq_restore(f); } while (0)
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/ffz.h
deleted file mode 100644
index 18da271..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/ffz.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_FFZ_H_
-#define _ASM_GENERIC_BITOPS_FFZ_H_
-
-#define ffz(x) __ffs(~(x))
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/find.h
deleted file mode 100644
index 8361cfe..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/find.h
+++ /dev/null
@@ -1,18 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_FIND_H_
-#define _ASM_GENERIC_BITOPS_FIND_H_
-
-#define find_first_bit(addr, size) find_next_bit((addr), (size), 0)
-#define find_first_zero_bit(addr, size) find_next_zero_bit((addr), (size), 0)
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls.h
deleted file mode 100644
index 8adbf31..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls.h
+++ /dev/null
@@ -1,15 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_FLS_H_
-#define _ASM_GENERIC_BITOPS_FLS_H_
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls64.h
deleted file mode 100644
index af77098..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/fls64.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_FLS64_H_
-#define _ASM_GENERIC_BITOPS_FLS64_H_
-
-#include <asm/types.h>
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/le.h
deleted file mode 100644
index 97ca973..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/le.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_LE_H_
-#define _ASM_GENERIC_BITOPS_LE_H_
-
-#include <asm/types.h>
-#include <asm/byteorder.h>
-
-#define BITOP_WORD(nr) ((nr) / BITS_PER_LONG)
-#define BITOP_LE_SWIZZLE ((BITS_PER_LONG-1) & ~0x7)
-
-#ifdef __LITTLE_ENDIAN
-
-#define generic_test_le_bit(nr, addr) test_bit(nr, addr)
-#define generic___set_le_bit(nr, addr) __set_bit(nr, addr)
-#define generic___clear_le_bit(nr, addr) __clear_bit(nr, addr)
-
-#define generic_test_and_set_le_bit(nr, addr) test_and_set_bit(nr, addr)
-#define generic_test_and_clear_le_bit(nr, addr) test_and_clear_bit(nr, addr)
-
-#define generic___test_and_set_le_bit(nr, addr) __test_and_set_bit(nr, addr)
-#define generic___test_and_clear_le_bit(nr, addr) __test_and_clear_bit(nr, addr)
-
-#define generic_find_next_zero_le_bit(addr, size, offset) find_next_zero_bit(addr, size, offset)
-
-#elif defined(__BIG_ENDIAN)
-
-#define generic_test_le_bit(nr, addr)   test_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-#define generic___set_le_bit(nr, addr)   __set_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-#define generic___clear_le_bit(nr, addr)   __clear_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-
-#define generic_test_and_set_le_bit(nr, addr)   test_and_set_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-#define generic_test_and_clear_le_bit(nr, addr)   test_and_clear_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-
-#define generic___test_and_set_le_bit(nr, addr)   __test_and_set_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-#define generic___test_and_clear_le_bit(nr, addr)   __test_and_clear_bit((nr) ^ BITOP_LE_SWIZZLE, (addr))
-
-#else
-#error "Please fix <asm/byteorder.h>"
-#endif
-
-#define generic_find_first_zero_le_bit(addr, size)   generic_find_next_zero_le_bit((addr), (size), 0)
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-4/common/include/asm-generic/bitops/non-atomic.h
deleted file mode 100644
index 727f736..0000000
--- a/ndk/build/platforms/android-4/common/include/asm-generic/bitops/non-atomic.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef _ASM_GENERIC_BITOPS_NON_ATOMIC_H_
-#define _ASM_GENERIC_BITOPS_NON_ATOMIC_H_
-
-#include <asm/types.h>
-
-#define BITOP_MASK(nr) (1UL << ((nr) % BITS_PER_LONG))
-#define BITOP_WORD(nr) ((nr) / BITS_PER_LONG)
-
-#endif
diff --git a/ndk/build/platforms/android-4/common/include/endian.h b/ndk/build/platforms/android-4/common/include/endian.h
deleted file mode 100644
index 475b48c..0000000
--- a/ndk/build/platforms/android-4/common/include/endian.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _ENDIAN_H_
-#define _ENDIAN_H_
-
-#include <sys/endian.h>
-
-#endif /* _ENDIAN_H_ */
diff --git a/ndk/build/platforms/android-4/common/include/stdint.h b/ndk/build/platforms/android-4/common/include/stdint.h
deleted file mode 100644
index 39a8ab8..0000000
--- a/ndk/build/platforms/android-4/common/include/stdint.h
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _STDINT_H
-#define _STDINT_H
-
-#include <stddef.h>
-#include <sys/_types.h>
-
-
-
-#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
-#  define __STDINT_LIMITS
-#endif
-
-#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
-#  define  __STDINT_MACROS
-#endif
-
-/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
-#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
-#  define  __STDINT_MACROS
-#endif
-
-typedef __int8_t      int8_t;
-typedef __uint8_t     uint8_t;
-typedef __int16_t     int16_t;
-typedef __uint16_t    uint16_t;
-typedef __int32_t     int32_t;
-typedef __uint32_t    uint32_t;
-#if !defined(__STRICT_ANSI__)
-typedef __int64_t     int64_t;
-typedef __uint64_t    uint64_t;
-#endif
-
-/*
- * int8_t & uint8_t
- */
-
-typedef int8_t        int_least8_t;
-typedef int8_t        int_fast8_t;
-
-typedef uint8_t       uint_least8_t;
-typedef uint8_t       uint_fast8_t;
-
-#ifdef __STDINT_LIMITS
-#  define INT8_MIN         (-128)
-#  define INT8_MAX         (127)
-#  define INT_LEAST8_MIN   INT8_MIN
-#  define INT_LEAST8_MAX   INT8_MAX
-#  define INT_FAST8_MIN    INT8_MIN
-#  define INT_FAST8_MAX    INT8_MAX
-
-#  define UINT8_MAX           (255U)
-#  define UINT_LEAST8_MAX     UINT8_MAX
-#  define UINT_FAST8_MAX      UINT8_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-#  define INT8_C(c)	c
-#  define INT_LEAST8_C(c)	 INT8_C(c)
-#  define INT_FAST8_C(c)	INT8_C(c)
-
-#  define UINT8_C(c)	c ## U
-#  define UINT_LEAST8_C(c)  UINT8_C(c)
-#  define UINT_FAST8_C(c)  UINT8_C(c)
-#endif
-
-/*
- * int16_t & uint16_t
- */
-
-
-typedef int16_t       int_least16_t;
-typedef int32_t       int_fast16_t;
-
-typedef uint16_t      uint_least16_t;
-typedef uint32_t      uint_fast16_t;
-
-#ifdef __STDINT_LIMITS
-#  define INT16_MIN	(-32768)
-#  define INT16_MAX	(32767)
-#  define INT_LEAST16_MIN	INT16_MIN
-#  define INT_LEAST16_MAX	INT16_MAX
-#  define INT_FAST16_MIN	INT32_MIN
-#  define INT_FAST16_MAX	INT32_MAX
-
-#  define UINT16_MAX	(65535U)
-#  define UINT_LEAST16_MAX UINT16_MAX
-#  define UINT_FAST16_MAX UINT32_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-#  define INT16_C(c)	c
-#  define INT_LEAST16_C(c) INT16_C(c)
-#  define INT_FAST16_C(c)	 INT32_C(c)
-
-#  define UINT16_C(c)	c ## U
-#  define UINT_LEAST16_C(c) UINT16_C(c)
-#  define UINT_FAST16_C(c) UINT32_C(c)
-#endif
-
-/*
- * int32_t & uint32_t
- */
-
-typedef int32_t       int_least32_t;
-typedef int32_t       int_fast32_t;
-
-typedef uint32_t      uint_least32_t;
-typedef uint32_t      uint_fast32_t;
-
-#ifdef __STDINT_LIMITS
-#  define INT32_MIN	(-2147483647-1)
-#  define INT32_MAX	(2147483647)
-#  define INT_LEAST32_MIN	INT32_MIN
-#  define INT_LEAST32_MAX	INT32_MAX
-#  define INT_FAST32_MIN	INT32_MIN
-#  define INT_FAST32_MAX	INT32_MAX
-
-#  define UINT32_MAX	(4294967295U)
-#  define UINT_LEAST32_MAX UINT32_MAX
-#  define UINT_FAST32_MAX UINT32_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-#  define INT32_C(c)	c
-#  define INT_LEAST32_C(c) INT32_C(c)
-#  define INT_FAST32_C(c)  INT32_C(c)
-
-#  define UINT32_C(c)	c ## U
-#  define UINT_LEAST32_C(c) UINT32_C(c)
-#  define UINT_FAST32_C(c) UINT32_C(c)
-#endif
-
-#if !defined(__STRICT_ANSI__)
-/*
- *  int64_t
- */
-typedef int64_t       int_least64_t;
-typedef int64_t       int_fast64_t;
-
-typedef uint64_t      uint_least64_t;
-typedef uint64_t      uint_fast64_t;
-
-
-#ifdef __STDINT_LIMITS
-#  define INT64_MIN        (__INT64_C(-9223372036854775807)-1)
-#  define INT64_MAX        (__INT64_C(9223372036854775807))
-#  define INT_LEAST64_MIN  INT64_MIN
-#  define INT_LEAST64_MAX  INT64_MAX
-#  define INT_FAST64_MIN   INT64_MIN
-#  define INT_FAST64_MAX   INT64_MAX
-#  define UINT64_MAX       (__UINT64_C(18446744073709551615))
-
-#  define UINT_LEAST64_MAX UINT64_MAX
-#  define UINT_FAST64_MAX UINT64_MAX
-#endif
-
-#ifdef __STDINT_MACROS
-#  define __INT64_C(c)     c ## LL
-#  define INT64_C(c)       __INT64_C(c)
-#  define INT_LEAST64_C(c) INT64_C(c)
-#  define INT_FAST64_C(c)  INT64_C(c)
-
-#  define __UINT64_C(c)     c ## ULL
-#  define UINT64_C(c)       __UINT64_C(c)
-#  define UINT_LEAST64_C(c) UINT64_C(c)
-#  define UINT_FAST64_C(c)  UINT64_C(c)
-#endif
-
-
-#  define __PRI64_RANK   "ll"
-#  define __PRIFAST_RANK ""
-#  define __PRIPTR_RANK  ""
-
-#endif /* !__STRICT_ANSI__ */
-
-/*
- * intptr_t & uintptr_t
- */
-
-typedef int           intptr_t;
-typedef unsigned int  uintptr_t;
-
-#  define INTPTR_MIN    INT32_MIN
-#  define INTPTR_MAX    INT32_MAX
-#  define UINTPTR_MAX   UINT32_MAX
-#  define INTPTR_C(c)   INT32_C(c)
-#  define UINTPTR_C(c)  UINT32_C(c)
-#  define PTRDIFF_C(c)  INT32_C(c)
-#  define PTRDIFF_MIN   INT32_MIN
-#  define PTRDIFF_MAX   INT32_MAX
-
-
-/*
- *  intmax_t & uintmax_t
- */
-
-#if !defined(__STRICT_ANSI__)
-
-typedef uint64_t uintmax_t;
-typedef int64_t  intmax_t;
-
-#define INTMAX_MIN	INT64_MIN
-#define INTMAX_MAX	INT64_MAX
-#define UINTMAX_MAX	UINT64_MAX
-
-#define INTMAX_C(c)	INT64_C(c)
-#define UINTMAX_C(c)	UINT64_C(c)
-
-#else /* __STRICT_ANSI__ */
-
-typedef uint32_t  uintmax_t;
-typedef int32_t   intmax_t;
-
-#define  INTMAX_MIN    INT32_MIN
-#define  INTMAX_MAX    INT32_MAX
-#define  UINTMAX_MAX   UINT32_MAX
-
-#define INTMAX_C(c)	INT32_C(c)
-#define UINTMAX_C(c)	UINT32_C(c)
-
-#endif /* __STRICT_ANSI__ */
-
-
-/* size_t is defined by the GCC-specific <stddef.h> */
-#ifndef _SSIZE_T_DEFINED_
-#define _SSIZE_T_DEFINED_
-typedef long int  ssize_t;
-#endif
-
-#define _BITSIZE 32
-
-/* Keep the kernel from trying to define these types... */
-#define __BIT_TYPES_DEFINED__
-
-#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-4/common/include/strings.h b/ndk/build/platforms/android-4/common/include/strings.h
deleted file mode 100644
index 1f73e21..0000000
--- a/ndk/build/platforms/android-4/common/include/strings.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*	$NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $	*/
-
-/*-
- * Copyright (c) 1998 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code is derived from software contributed to The NetBSD Foundation
- * by Klaus Klein.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *        This product includes software developed by the NetBSD
- *        Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- *    contributors may be used to endorse or promote products derived
- *    from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef _STRINGS_H_
-#define _STRINGS_H_
-
-#include <sys/cdefs.h>
-
-__BEGIN_DECLS
-int	 bcmp(const void *, const void *, size_t);
-void	 bcopy(const void *, void *, size_t);
-void	 bzero(void *, size_t);
-int	 ffs(int);
-char	*index(const char *, int);
-char	*rindex(const char *, int);
-int	 strcasecmp(const char *, const char *);
-int	 strncasecmp(const char *, const char *, size_t);
-__END_DECLS
-
-#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-4/common/include/sys/stat.h b/ndk/build/platforms/android-4/common/include/sys/stat.h
deleted file mode 100644
index 23ab5ae..0000000
--- a/ndk/build/platforms/android-4/common/include/sys/stat.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _SYS_STAT_H_
-#define _SYS_STAT_H_
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-#include <sys/time.h>
-#include <linux/stat.h>
-
-#include <endian.h>
-
-__BEGIN_DECLS
-
-/* really matches stat64 in the kernel, hence the padding
- * Note: The kernel zero's the padded region because glibc might read them
- * in the hope that the kernel has stretched to using larger sizes.
- */
-struct stat {
-    unsigned long long  st_dev;
-    unsigned char       __pad0[4];
-
-    unsigned long       __st_ino;
-    unsigned int        st_mode;
-    unsigned int        st_nlink;
-
-    unsigned long       st_uid;
-    unsigned long       st_gid;
-
-    unsigned long long  st_rdev;
-    unsigned char       __pad3[4];
-
-    long long           st_size;
-    unsigned long	st_blksize;
-    unsigned long long  st_blocks;
-
-    unsigned long       st_atime;
-    unsigned long       st_atime_nsec;
-
-    unsigned long       st_mtime;
-    unsigned long       st_mtime_nsec;
-
-    unsigned long       st_ctime;
-    unsigned long       st_ctime_nsec;
-
-    unsigned long long  st_ino;
-};
-
-extern int    chmod(const char *, mode_t);
-extern int    fchmod(int, mode_t);
-extern int    mkdir(const char *, mode_t);
-
-extern int    stat(const char *, struct stat *);
-extern int    fstat(int, struct stat *);
-extern int    lstat(const char *, struct stat *);
-extern int    mknod(const char *, mode_t, dev_t);
-extern mode_t umask(mode_t);
-
-#define  stat64    stat
-#define  fstat64   fstat
-#define  lstat64   lstat
-
-static __inline__ int mkfifo(const char *__p, mode_t __m)
-{
-  return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
-}
-
-extern int  fstatat(int dirfd, const char *path, struct stat *buf, int flags);
-extern int  mkdirat(int dirfd, const char *pathname, mode_t mode);
-extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
-extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
-extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
-
-__END_DECLS
-
-#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-4/common/include/time.h b/ndk/build/platforms/android-4/common/include/time.h
deleted file mode 100644
index 35c2358..0000000
--- a/ndk/build/platforms/android-4/common/include/time.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *  * Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *  * Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-#ifndef _TIME_H_
-#define _TIME_H_
-
-#include <sys/cdefs.h>
-#include <sys/time.h>
-
-#define __ARCH_SI_UID_T __kernel_uid32_t
-#include <asm/siginfo.h>
-#undef __ARCH_SI_UID_T
-
-__BEGIN_DECLS
-
-extern time_t   time(time_t *);
-extern int      nanosleep(const struct timespec *, struct timespec *);
-
-extern char *strtotimeval(const char *str, struct timeval *tv);
-
-struct tm {
-   int     tm_sec;         /* seconds */
-   int     tm_min;         /* minutes */
-   int     tm_hour;        /* hours */
-   int     tm_mday;        /* day of the month */
-   int     tm_mon;         /* month */
-   int     tm_year;        /* year */
-   int     tm_wday;        /* day of the week */
-   int     tm_yday;        /* day in the year */
-   int     tm_isdst;       /* daylight saving time */
-
-   long int tm_gmtoff;     /* Seconds east of UTC.  */
-   const char *tm_zone;    /* Timezone abbreviation.  */
-
-};
-
-/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
- * struct tm, the value should be the field name
- */
-#define   TM_ZONE   tm_zone
-
-extern char* asctime(const struct tm* a);
-extern char* asctime_r(const struct tm* a, char* buf);
-
-/* Return the difference between TIME1 and TIME0.  */
-extern double difftime (time_t __time1, time_t __time0);
-extern time_t mktime (struct tm *a);
-
-extern struct tm*  localtime(const time_t *t);
-extern struct tm*  localtime_r(const time_t *timep, struct tm *result);
-
-extern struct tm*  gmtime(const time_t *timep);
-extern struct tm*  gmtime_r(const time_t *timep, struct tm *result);
-
-extern char*       strptime(const char *buf, const char *fmt, struct tm *tm);
-extern size_t      strftime(char *s, size_t max, const char *format, const struct tm *tm);
-
-extern char *ctime(const time_t *timep);
-extern char *ctime_r(const time_t *timep, char *buf);
-
-/* global includes */
-extern char*     tzname[];
-extern int       daylight;
-extern long int  timezone;
-
-#define CLOCKS_PER_SEC     1000000
-
-extern clock_t   clock();
-
-/* BIONIC: extra linux clock goodies */
-extern int clock_getres(int, struct timespec *);
-extern int clock_gettime(int, struct timespec *);
-
-#define CLOCK_REALTIME             0
-#define CLOCK_MONOTONIC            1
-#define CLOCK_PROCESS_CPUTIME_ID   2
-#define CLOCK_THREAD_CPUTIME_ID    3
-#define CLOCK_REALTIME_HR          4
-#define CLOCK_MONOTONIC_HR         5
-
-extern int  timer_create(int, struct sigevent*, timer_t*);
-extern int  timer_delete(timer_t);
-extern int  timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
-extern int  timer_gettime(timer_t timerid, struct itimerspec *value);
-extern int  timer_getoverrun(timer_t  timerid);
-
-__END_DECLS
-
-#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-4/common/include/GLES/gl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES/gl.h
similarity index 100%
copy from ndk/build/platforms/android-4/common/include/GLES/gl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/GLES/gl.h
diff --git a/ndk/build/platforms/android-4/common/include/GLES/glext.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES/glext.h
similarity index 100%
copy from ndk/build/platforms/android-4/common/include/GLES/glext.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/GLES/glext.h
diff --git a/ndk/build/platforms/android-4/common/include/GLES/glplatform.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES/glplatform.h
similarity index 100%
copy from ndk/build/platforms/android-4/common/include/GLES/glplatform.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/GLES/glplatform.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2.h
new file mode 100644
index 0000000..0182a67
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2.h
@@ -0,0 +1,620 @@
+#ifndef __gl2_h_
+#define __gl2_h_
+
+/* $Revision: 7173 $ on $Date:: 2009-01-09 11:18:21 -0800 #$ */
+
+#include <GLES2/gl2platform.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * This document is licensed under the SGI Free Software B License Version
+ * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
+ */
+
+/*-------------------------------------------------------------------------
+ * Data type definitions
+ *-----------------------------------------------------------------------*/
+
+typedef void             GLvoid;
+typedef unsigned int     GLenum;
+typedef unsigned char    GLboolean;
+typedef unsigned int     GLbitfield;
+typedef khronos_int8_t   GLbyte;
+typedef short            GLshort;
+typedef int              GLint;
+typedef int              GLsizei;
+typedef khronos_uint8_t  GLubyte;
+typedef unsigned short   GLushort;
+typedef unsigned int     GLuint;
+typedef khronos_float_t  GLfloat;
+typedef khronos_float_t  GLclampf;
+typedef khronos_int32_t  GLfixed;
+
+/* GL types for handling large vertex buffer objects */
+typedef khronos_intptr_t GLintptr;
+typedef khronos_ssize_t  GLsizeiptr;
+
+/* OpenGL ES core versions */
+#define GL_ES_VERSION_2_0                 1
+
+/* ClearBufferMask */
+#define GL_DEPTH_BUFFER_BIT               0x00000100
+#define GL_STENCIL_BUFFER_BIT             0x00000400
+#define GL_COLOR_BUFFER_BIT               0x00004000
+
+/* Boolean */
+#define GL_FALSE                          0
+#define GL_TRUE                           1
+
+/* BeginMode */
+#define GL_POINTS                         0x0000
+#define GL_LINES                          0x0001
+#define GL_LINE_LOOP                      0x0002
+#define GL_LINE_STRIP                     0x0003
+#define GL_TRIANGLES                      0x0004
+#define GL_TRIANGLE_STRIP                 0x0005
+#define GL_TRIANGLE_FAN                   0x0006
+
+/* AlphaFunction (not supported in ES20) */
+/*      GL_NEVER */
+/*      GL_LESS */
+/*      GL_EQUAL */
+/*      GL_LEQUAL */
+/*      GL_GREATER */
+/*      GL_NOTEQUAL */
+/*      GL_GEQUAL */
+/*      GL_ALWAYS */
+
+/* BlendingFactorDest */
+#define GL_ZERO                           0
+#define GL_ONE                            1
+#define GL_SRC_COLOR                      0x0300
+#define GL_ONE_MINUS_SRC_COLOR            0x0301
+#define GL_SRC_ALPHA                      0x0302
+#define GL_ONE_MINUS_SRC_ALPHA            0x0303
+#define GL_DST_ALPHA                      0x0304
+#define GL_ONE_MINUS_DST_ALPHA            0x0305
+
+/* BlendingFactorSrc */
+/*      GL_ZERO */
+/*      GL_ONE */
+#define GL_DST_COLOR                      0x0306
+#define GL_ONE_MINUS_DST_COLOR            0x0307
+#define GL_SRC_ALPHA_SATURATE             0x0308
+/*      GL_SRC_ALPHA */
+/*      GL_ONE_MINUS_SRC_ALPHA */
+/*      GL_DST_ALPHA */
+/*      GL_ONE_MINUS_DST_ALPHA */
+
+/* BlendEquationSeparate */
+#define GL_FUNC_ADD                       0x8006
+#define GL_BLEND_EQUATION                 0x8009
+#define GL_BLEND_EQUATION_RGB             0x8009    /* same as BLEND_EQUATION */
+#define GL_BLEND_EQUATION_ALPHA           0x883D
+
+/* BlendSubtract */
+#define GL_FUNC_SUBTRACT                  0x800A
+#define GL_FUNC_REVERSE_SUBTRACT          0x800B
+
+/* Separate Blend Functions */
+#define GL_BLEND_DST_RGB                  0x80C8
+#define GL_BLEND_SRC_RGB                  0x80C9
+#define GL_BLEND_DST_ALPHA                0x80CA
+#define GL_BLEND_SRC_ALPHA                0x80CB
+#define GL_CONSTANT_COLOR                 0x8001
+#define GL_ONE_MINUS_CONSTANT_COLOR       0x8002
+#define GL_CONSTANT_ALPHA                 0x8003
+#define GL_ONE_MINUS_CONSTANT_ALPHA       0x8004
+#define GL_BLEND_COLOR                    0x8005
+
+/* Buffer Objects */
+#define GL_ARRAY_BUFFER                   0x8892
+#define GL_ELEMENT_ARRAY_BUFFER           0x8893
+#define GL_ARRAY_BUFFER_BINDING           0x8894
+#define GL_ELEMENT_ARRAY_BUFFER_BINDING   0x8895
+
+#define GL_STREAM_DRAW                    0x88E0
+#define GL_STATIC_DRAW                    0x88E4
+#define GL_DYNAMIC_DRAW                   0x88E8
+
+#define GL_BUFFER_SIZE                    0x8764
+#define GL_BUFFER_USAGE                   0x8765
+
+#define GL_CURRENT_VERTEX_ATTRIB          0x8626
+
+/* CullFaceMode */
+#define GL_FRONT                          0x0404
+#define GL_BACK                           0x0405
+#define GL_FRONT_AND_BACK                 0x0408
+
+/* DepthFunction */
+/*      GL_NEVER */
+/*      GL_LESS */
+/*      GL_EQUAL */
+/*      GL_LEQUAL */
+/*      GL_GREATER */
+/*      GL_NOTEQUAL */
+/*      GL_GEQUAL */
+/*      GL_ALWAYS */
+
+/* EnableCap */
+#define GL_TEXTURE_2D                     0x0DE1
+#define GL_CULL_FACE                      0x0B44
+#define GL_BLEND                          0x0BE2
+#define GL_DITHER                         0x0BD0
+#define GL_STENCIL_TEST                   0x0B90
+#define GL_DEPTH_TEST                     0x0B71
+#define GL_SCISSOR_TEST                   0x0C11
+#define GL_POLYGON_OFFSET_FILL            0x8037
+#define GL_SAMPLE_ALPHA_TO_COVERAGE       0x809E
+#define GL_SAMPLE_COVERAGE                0x80A0
+
+/* ErrorCode */
+#define GL_NO_ERROR                       0
+#define GL_INVALID_ENUM                   0x0500
+#define GL_INVALID_VALUE                  0x0501
+#define GL_INVALID_OPERATION              0x0502
+#define GL_OUT_OF_MEMORY                  0x0505
+
+/* FrontFaceDirection */
+#define GL_CW                             0x0900
+#define GL_CCW                            0x0901
+
+/* GetPName */
+#define GL_LINE_WIDTH                     0x0B21
+#define GL_ALIASED_POINT_SIZE_RANGE       0x846D
+#define GL_ALIASED_LINE_WIDTH_RANGE       0x846E
+#define GL_CULL_FACE_MODE                 0x0B45
+#define GL_FRONT_FACE                     0x0B46
+#define GL_DEPTH_RANGE                    0x0B70
+#define GL_DEPTH_WRITEMASK                0x0B72
+#define GL_DEPTH_CLEAR_VALUE              0x0B73
+#define GL_DEPTH_FUNC                     0x0B74
+#define GL_STENCIL_CLEAR_VALUE            0x0B91
+#define GL_STENCIL_FUNC                   0x0B92
+#define GL_STENCIL_FAIL                   0x0B94
+#define GL_STENCIL_PASS_DEPTH_FAIL        0x0B95
+#define GL_STENCIL_PASS_DEPTH_PASS        0x0B96
+#define GL_STENCIL_REF                    0x0B97
+#define GL_STENCIL_VALUE_MASK             0x0B93
+#define GL_STENCIL_WRITEMASK              0x0B98
+#define GL_STENCIL_BACK_FUNC              0x8800
+#define GL_STENCIL_BACK_FAIL              0x8801
+#define GL_STENCIL_BACK_PASS_DEPTH_FAIL   0x8802
+#define GL_STENCIL_BACK_PASS_DEPTH_PASS   0x8803
+#define GL_STENCIL_BACK_REF               0x8CA3
+#define GL_STENCIL_BACK_VALUE_MASK        0x8CA4
+#define GL_STENCIL_BACK_WRITEMASK         0x8CA5
+#define GL_VIEWPORT                       0x0BA2
+#define GL_SCISSOR_BOX                    0x0C10
+/*      GL_SCISSOR_TEST */
+#define GL_COLOR_CLEAR_VALUE              0x0C22
+#define GL_COLOR_WRITEMASK                0x0C23
+#define GL_UNPACK_ALIGNMENT               0x0CF5
+#define GL_PACK_ALIGNMENT                 0x0D05
+#define GL_MAX_TEXTURE_SIZE               0x0D33
+#define GL_MAX_VIEWPORT_DIMS              0x0D3A
+#define GL_SUBPIXEL_BITS                  0x0D50
+#define GL_RED_BITS                       0x0D52
+#define GL_GREEN_BITS                     0x0D53
+#define GL_BLUE_BITS                      0x0D54
+#define GL_ALPHA_BITS                     0x0D55
+#define GL_DEPTH_BITS                     0x0D56
+#define GL_STENCIL_BITS                   0x0D57
+#define GL_POLYGON_OFFSET_UNITS           0x2A00
+/*      GL_POLYGON_OFFSET_FILL */
+#define GL_POLYGON_OFFSET_FACTOR          0x8038
+#define GL_TEXTURE_BINDING_2D             0x8069
+#define GL_SAMPLE_BUFFERS                 0x80A8
+#define GL_SAMPLES                        0x80A9
+#define GL_SAMPLE_COVERAGE_VALUE          0x80AA
+#define GL_SAMPLE_COVERAGE_INVERT         0x80AB
+
+/* GetTextureParameter */
+/*      GL_TEXTURE_MAG_FILTER */
+/*      GL_TEXTURE_MIN_FILTER */
+/*      GL_TEXTURE_WRAP_S */
+/*      GL_TEXTURE_WRAP_T */
+
+#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2
+#define GL_COMPRESSED_TEXTURE_FORMATS     0x86A3
+
+/* HintMode */
+#define GL_DONT_CARE                      0x1100
+#define GL_FASTEST                        0x1101
+#define GL_NICEST                         0x1102
+
+/* HintTarget */
+#define GL_GENERATE_MIPMAP_HINT            0x8192
+
+/* DataType */
+#define GL_BYTE                           0x1400
+#define GL_UNSIGNED_BYTE                  0x1401
+#define GL_SHORT                          0x1402
+#define GL_UNSIGNED_SHORT                 0x1403
+#define GL_INT                            0x1404
+#define GL_UNSIGNED_INT                   0x1405
+#define GL_FLOAT                          0x1406
+#define GL_FIXED                          0x140C
+
+/* PixelFormat */
+#define GL_DEPTH_COMPONENT                0x1902
+#define GL_ALPHA                          0x1906
+#define GL_RGB                            0x1907
+#define GL_RGBA                           0x1908
+#define GL_LUMINANCE                      0x1909
+#define GL_LUMINANCE_ALPHA                0x190A
+
+/* PixelType */
+/*      GL_UNSIGNED_BYTE */
+#define GL_UNSIGNED_SHORT_4_4_4_4         0x8033
+#define GL_UNSIGNED_SHORT_5_5_5_1         0x8034
+#define GL_UNSIGNED_SHORT_5_6_5           0x8363
+
+/* Shaders */
+#define GL_FRAGMENT_SHADER                  0x8B30
+#define GL_VERTEX_SHADER                    0x8B31
+#define GL_MAX_VERTEX_ATTRIBS               0x8869
+#define GL_MAX_VERTEX_UNIFORM_VECTORS       0x8DFB
+#define GL_MAX_VARYING_VECTORS              0x8DFC
+#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D
+#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS   0x8B4C
+#define GL_MAX_TEXTURE_IMAGE_UNITS          0x8872
+#define GL_MAX_FRAGMENT_UNIFORM_VECTORS     0x8DFD
+#define GL_SHADER_TYPE                      0x8B4F
+#define GL_DELETE_STATUS                    0x8B80
+#define GL_LINK_STATUS                      0x8B82
+#define GL_VALIDATE_STATUS                  0x8B83
+#define GL_ATTACHED_SHADERS                 0x8B85
+#define GL_ACTIVE_UNIFORMS                  0x8B86
+#define GL_ACTIVE_UNIFORM_MAX_LENGTH        0x8B87
+#define GL_ACTIVE_ATTRIBUTES                0x8B89
+#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH      0x8B8A
+#define GL_SHADING_LANGUAGE_VERSION         0x8B8C
+#define GL_CURRENT_PROGRAM                  0x8B8D
+
+/* StencilFunction */
+#define GL_NEVER                          0x0200
+#define GL_LESS                           0x0201
+#define GL_EQUAL                          0x0202
+#define GL_LEQUAL                         0x0203
+#define GL_GREATER                        0x0204
+#define GL_NOTEQUAL                       0x0205
+#define GL_GEQUAL                         0x0206
+#define GL_ALWAYS                         0x0207
+
+/* StencilOp */
+/*      GL_ZERO */
+#define GL_KEEP                           0x1E00
+#define GL_REPLACE                        0x1E01
+#define GL_INCR                           0x1E02
+#define GL_DECR                           0x1E03
+#define GL_INVERT                         0x150A
+#define GL_INCR_WRAP                      0x8507
+#define GL_DECR_WRAP                      0x8508
+
+/* StringName */
+#define GL_VENDOR                         0x1F00
+#define GL_RENDERER                       0x1F01
+#define GL_VERSION                        0x1F02
+#define GL_EXTENSIONS                     0x1F03
+
+/* TextureMagFilter */
+#define GL_NEAREST                        0x2600
+#define GL_LINEAR                         0x2601
+
+/* TextureMinFilter */
+/*      GL_NEAREST */
+/*      GL_LINEAR */
+#define GL_NEAREST_MIPMAP_NEAREST         0x2700
+#define GL_LINEAR_MIPMAP_NEAREST          0x2701
+#define GL_NEAREST_MIPMAP_LINEAR          0x2702
+#define GL_LINEAR_MIPMAP_LINEAR           0x2703
+
+/* TextureParameterName */
+#define GL_TEXTURE_MAG_FILTER             0x2800
+#define GL_TEXTURE_MIN_FILTER             0x2801
+#define GL_TEXTURE_WRAP_S                 0x2802
+#define GL_TEXTURE_WRAP_T                 0x2803
+
+/* TextureTarget */
+/*      GL_TEXTURE_2D */
+#define GL_TEXTURE                        0x1702
+
+#define GL_TEXTURE_CUBE_MAP               0x8513
+#define GL_TEXTURE_BINDING_CUBE_MAP       0x8514
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_X    0x8515
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X    0x8516
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y    0x8517
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y    0x8518
+#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z    0x8519
+#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z    0x851A
+#define GL_MAX_CUBE_MAP_TEXTURE_SIZE      0x851C
+
+/* TextureUnit */
+#define GL_TEXTURE0                       0x84C0
+#define GL_TEXTURE1                       0x84C1
+#define GL_TEXTURE2                       0x84C2
+#define GL_TEXTURE3                       0x84C3
+#define GL_TEXTURE4                       0x84C4
+#define GL_TEXTURE5                       0x84C5
+#define GL_TEXTURE6                       0x84C6
+#define GL_TEXTURE7                       0x84C7
+#define GL_TEXTURE8                       0x84C8
+#define GL_TEXTURE9                       0x84C9
+#define GL_TEXTURE10                      0x84CA
+#define GL_TEXTURE11                      0x84CB
+#define GL_TEXTURE12                      0x84CC
+#define GL_TEXTURE13                      0x84CD
+#define GL_TEXTURE14                      0x84CE
+#define GL_TEXTURE15                      0x84CF
+#define GL_TEXTURE16                      0x84D0
+#define GL_TEXTURE17                      0x84D1
+#define GL_TEXTURE18                      0x84D2
+#define GL_TEXTURE19                      0x84D3
+#define GL_TEXTURE20                      0x84D4
+#define GL_TEXTURE21                      0x84D5
+#define GL_TEXTURE22                      0x84D6
+#define GL_TEXTURE23                      0x84D7
+#define GL_TEXTURE24                      0x84D8
+#define GL_TEXTURE25                      0x84D9
+#define GL_TEXTURE26                      0x84DA
+#define GL_TEXTURE27                      0x84DB
+#define GL_TEXTURE28                      0x84DC
+#define GL_TEXTURE29                      0x84DD
+#define GL_TEXTURE30                      0x84DE
+#define GL_TEXTURE31                      0x84DF
+#define GL_ACTIVE_TEXTURE                 0x84E0
+
+/* TextureWrapMode */
+#define GL_REPEAT                         0x2901
+#define GL_CLAMP_TO_EDGE                  0x812F
+#define GL_MIRRORED_REPEAT                0x8370
+
+/* Uniform Types */
+#define GL_FLOAT_VEC2                     0x8B50
+#define GL_FLOAT_VEC3                     0x8B51
+#define GL_FLOAT_VEC4                     0x8B52
+#define GL_INT_VEC2                       0x8B53
+#define GL_INT_VEC3                       0x8B54
+#define GL_INT_VEC4                       0x8B55
+#define GL_BOOL                           0x8B56
+#define GL_BOOL_VEC2                      0x8B57
+#define GL_BOOL_VEC3                      0x8B58
+#define GL_BOOL_VEC4                      0x8B59
+#define GL_FLOAT_MAT2                     0x8B5A
+#define GL_FLOAT_MAT3                     0x8B5B
+#define GL_FLOAT_MAT4                     0x8B5C
+#define GL_SAMPLER_2D                     0x8B5E
+#define GL_SAMPLER_CUBE                   0x8B60
+
+/* Vertex Arrays */
+#define GL_VERTEX_ATTRIB_ARRAY_ENABLED        0x8622
+#define GL_VERTEX_ATTRIB_ARRAY_SIZE           0x8623
+#define GL_VERTEX_ATTRIB_ARRAY_STRIDE         0x8624
+#define GL_VERTEX_ATTRIB_ARRAY_TYPE           0x8625
+#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED     0x886A
+#define GL_VERTEX_ATTRIB_ARRAY_POINTER        0x8645
+#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F
+
+/* Read Format */
+#define GL_IMPLEMENTATION_COLOR_READ_TYPE   0x8B9A
+#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B
+
+/* Shader Source */
+#define GL_COMPILE_STATUS                 0x8B81
+#define GL_INFO_LOG_LENGTH                0x8B84
+#define GL_SHADER_SOURCE_LENGTH           0x8B88
+#define GL_SHADER_COMPILER                0x8DFA
+
+/* Shader Binary */
+#define GL_SHADER_BINARY_FORMATS          0x8DF8
+#define GL_NUM_SHADER_BINARY_FORMATS      0x8DF9
+
+/* Shader Precision-Specified Types */
+#define GL_LOW_FLOAT                      0x8DF0
+#define GL_MEDIUM_FLOAT                   0x8DF1
+#define GL_HIGH_FLOAT                     0x8DF2
+#define GL_LOW_INT                        0x8DF3
+#define GL_MEDIUM_INT                     0x8DF4
+#define GL_HIGH_INT                       0x8DF5
+
+/* Framebuffer Object. */
+#define GL_FRAMEBUFFER                    0x8D40
+#define GL_RENDERBUFFER                   0x8D41
+
+#define GL_RGBA4                          0x8056
+#define GL_RGB5_A1                        0x8057
+#define GL_RGB565                         0x8D62
+#define GL_DEPTH_COMPONENT16              0x81A5
+#define GL_STENCIL_INDEX                  0x1901
+#define GL_STENCIL_INDEX8                 0x8D48
+
+#define GL_RENDERBUFFER_WIDTH             0x8D42
+#define GL_RENDERBUFFER_HEIGHT            0x8D43
+#define GL_RENDERBUFFER_INTERNAL_FORMAT   0x8D44
+#define GL_RENDERBUFFER_RED_SIZE          0x8D50
+#define GL_RENDERBUFFER_GREEN_SIZE        0x8D51
+#define GL_RENDERBUFFER_BLUE_SIZE         0x8D52
+#define GL_RENDERBUFFER_ALPHA_SIZE        0x8D53
+#define GL_RENDERBUFFER_DEPTH_SIZE        0x8D54
+#define GL_RENDERBUFFER_STENCIL_SIZE      0x8D55
+
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE           0x8CD0
+#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME           0x8CD1
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL         0x8CD2
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3
+
+#define GL_COLOR_ATTACHMENT0              0x8CE0
+#define GL_DEPTH_ATTACHMENT               0x8D00
+#define GL_STENCIL_ATTACHMENT             0x8D20
+
+#define GL_NONE                           0
+
+#define GL_FRAMEBUFFER_COMPLETE                      0x8CD5
+#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT         0x8CD6
+#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
+#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS         0x8CD9
+#define GL_FRAMEBUFFER_UNSUPPORTED                   0x8CDD
+
+#define GL_FRAMEBUFFER_BINDING            0x8CA6
+#define GL_RENDERBUFFER_BINDING           0x8CA7
+#define GL_MAX_RENDERBUFFER_SIZE          0x84E8
+
+#define GL_INVALID_FRAMEBUFFER_OPERATION  0x0506
+
+/*-------------------------------------------------------------------------
+ * GL core functions.
+ *-----------------------------------------------------------------------*/
+
+GL_APICALL void         GL_APIENTRY glActiveTexture (GLenum texture);
+GL_APICALL void         GL_APIENTRY glAttachShader (GLuint program, GLuint shader);
+GL_APICALL void         GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const char* name);
+GL_APICALL void         GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer);
+GL_APICALL void         GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer);
+GL_APICALL void         GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer);
+GL_APICALL void         GL_APIENTRY glBindTexture (GLenum target, GLuint texture);
+GL_APICALL void         GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+GL_APICALL void         GL_APIENTRY glBlendEquation ( GLenum mode );
+GL_APICALL void         GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
+GL_APICALL void         GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor);
+GL_APICALL void         GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
+GL_APICALL void         GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const void* data, GLenum usage);
+GL_APICALL void         GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const void* data);
+GL_APICALL GLenum       GL_APIENTRY glCheckFramebufferStatus (GLenum target);
+GL_APICALL void         GL_APIENTRY glClear (GLbitfield mask);
+GL_APICALL void         GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
+GL_APICALL void         GL_APIENTRY glClearDepthf (GLclampf depth);
+GL_APICALL void         GL_APIENTRY glClearStencil (GLint s);
+GL_APICALL void         GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
+GL_APICALL void         GL_APIENTRY glCompileShader (GLuint shader);
+GL_APICALL void         GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data);
+GL_APICALL void         GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data);
+GL_APICALL void         GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
+GL_APICALL void         GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL GLuint       GL_APIENTRY glCreateProgram (void);
+GL_APICALL GLuint       GL_APIENTRY glCreateShader (GLenum type);
+GL_APICALL void         GL_APIENTRY glCullFace (GLenum mode);
+GL_APICALL void         GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers);
+GL_APICALL void         GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers);
+GL_APICALL void         GL_APIENTRY glDeleteProgram (GLuint program);
+GL_APICALL void         GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers);
+GL_APICALL void         GL_APIENTRY glDeleteShader (GLuint shader);
+GL_APICALL void         GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures);
+GL_APICALL void         GL_APIENTRY glDepthFunc (GLenum func);
+GL_APICALL void         GL_APIENTRY glDepthMask (GLboolean flag);
+GL_APICALL void         GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar);
+GL_APICALL void         GL_APIENTRY glDetachShader (GLuint program, GLuint shader);
+GL_APICALL void         GL_APIENTRY glDisable (GLenum cap);
+GL_APICALL void         GL_APIENTRY glDisableVertexAttribArray (GLuint index);
+GL_APICALL void         GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count);
+GL_APICALL void         GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const void* indices);
+GL_APICALL void         GL_APIENTRY glEnable (GLenum cap);
+GL_APICALL void         GL_APIENTRY glEnableVertexAttribArray (GLuint index);
+GL_APICALL void         GL_APIENTRY glFinish (void);
+GL_APICALL void         GL_APIENTRY glFlush (void);
+GL_APICALL void         GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
+GL_APICALL void         GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
+GL_APICALL void         GL_APIENTRY glFrontFace (GLenum mode);
+GL_APICALL void         GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers);
+GL_APICALL void         GL_APIENTRY glGenerateMipmap (GLenum target);
+GL_APICALL void         GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers);
+GL_APICALL void         GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
+GL_APICALL void         GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures);
+GL_APICALL void         GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name);
+GL_APICALL void         GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name);
+GL_APICALL void         GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders);
+GL_APICALL int          GL_APIENTRY glGetAttribLocation (GLuint program, const char* name);
+GL_APICALL void         GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params);
+GL_APICALL void         GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
+GL_APICALL GLenum       GL_APIENTRY glGetError (void);
+GL_APICALL void         GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params);
+GL_APICALL void         GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
+GL_APICALL void         GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params);
+GL_APICALL void         GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params);
+GL_APICALL void         GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, char* infolog);
+GL_APICALL void         GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
+GL_APICALL void         GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
+GL_APICALL void         GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog);
+GL_APICALL void         GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
+GL_APICALL void         GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, char* source);
+GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name);
+GL_APICALL void         GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
+GL_APICALL void         GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
+GL_APICALL void         GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params);
+GL_APICALL void         GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params);
+GL_APICALL int          GL_APIENTRY glGetUniformLocation (GLuint program, const char* name);
+GL_APICALL void         GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
+GL_APICALL void         GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
+GL_APICALL void         GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, void** pointer);
+GL_APICALL void         GL_APIENTRY glHint (GLenum target, GLenum mode);
+GL_APICALL GLboolean    GL_APIENTRY glIsBuffer (GLuint buffer);
+GL_APICALL GLboolean    GL_APIENTRY glIsEnabled (GLenum cap);
+GL_APICALL GLboolean    GL_APIENTRY glIsFramebuffer (GLuint framebuffer);
+GL_APICALL GLboolean    GL_APIENTRY glIsProgram (GLuint program);
+GL_APICALL GLboolean    GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer);
+GL_APICALL GLboolean    GL_APIENTRY glIsShader (GLuint shader);
+GL_APICALL GLboolean    GL_APIENTRY glIsTexture (GLuint texture);
+GL_APICALL void         GL_APIENTRY glLineWidth (GLfloat width);
+GL_APICALL void         GL_APIENTRY glLinkProgram (GLuint program);
+GL_APICALL void         GL_APIENTRY glPixelStorei (GLenum pname, GLint param);
+GL_APICALL void         GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units);
+GL_APICALL void         GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels);
+GL_APICALL void         GL_APIENTRY glReleaseShaderCompiler (void);
+GL_APICALL void         GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
+GL_APICALL void         GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert);
+GL_APICALL void         GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void         GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary, GLsizei length);
+GL_APICALL void         GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const char** string, const GLint* length);
+GL_APICALL void         GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask);
+GL_APICALL void         GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask);
+GL_APICALL void         GL_APIENTRY glStencilMask (GLuint mask);
+GL_APICALL void         GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask);
+GL_APICALL void         GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
+GL_APICALL void         GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass);
+GL_APICALL void         GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat,  GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
+GL_APICALL void         GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param);
+GL_APICALL void         GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params);
+GL_APICALL void         GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param);
+GL_APICALL void         GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params);
+GL_APICALL void         GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels);
+GL_APICALL void         GL_APIENTRY glUniform1f (GLint location, GLfloat x);
+GL_APICALL void         GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v);
+GL_APICALL void         GL_APIENTRY glUniform1i (GLint location, GLint x);
+GL_APICALL void         GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v);
+GL_APICALL void         GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y);
+GL_APICALL void         GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v);
+GL_APICALL void         GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y);
+GL_APICALL void         GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v);
+GL_APICALL void         GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z);
+GL_APICALL void         GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v);
+GL_APICALL void         GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z);
+GL_APICALL void         GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v);
+GL_APICALL void         GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+GL_APICALL void         GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v);
+GL_APICALL void         GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w);
+GL_APICALL void         GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v);
+GL_APICALL void         GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value);
+GL_APICALL void         GL_APIENTRY glUseProgram (GLuint program);
+GL_APICALL void         GL_APIENTRY glValidateProgram (GLuint program);
+GL_APICALL void         GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x);
+GL_APICALL void         GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values);
+GL_APICALL void         GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y);
+GL_APICALL void         GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values);
+GL_APICALL void         GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z);
+GL_APICALL void         GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values);
+GL_APICALL void         GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
+GL_APICALL void         GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values);
+GL_APICALL void         GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* ptr);
+GL_APICALL void         GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __gl2_h_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2ext.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2ext.h
new file mode 100644
index 0000000..72f1ae7
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2ext.h
@@ -0,0 +1,518 @@
+#ifndef __gl2ext_h_
+#define __gl2ext_h_
+
+/* $Revision: 8271 $ on $Date:: 2009-05-21 09:33:40 -0700 #$ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * This document is licensed under the SGI Free Software B License Version
+ * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
+ */
+
+#ifndef GL_APIENTRYP
+#   define GL_APIENTRYP GL_APIENTRY*
+#endif
+
+/*------------------------------------------------------------------------*
+ * OES extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_OES_compressed_ETC1_RGB8_texture */
+#ifndef GL_OES_compressed_ETC1_RGB8_texture
+#define GL_ETC1_RGB8_OES                                        0x8D64
+#endif
+
+/* GL_OES_compressed_paletted_texture */
+#ifndef GL_OES_compressed_paletted_texture
+#define GL_PALETTE4_RGB8_OES                                    0x8B90
+#define GL_PALETTE4_RGBA8_OES                                   0x8B91
+#define GL_PALETTE4_R5_G6_B5_OES                                0x8B92
+#define GL_PALETTE4_RGBA4_OES                                   0x8B93
+#define GL_PALETTE4_RGB5_A1_OES                                 0x8B94
+#define GL_PALETTE8_RGB8_OES                                    0x8B95
+#define GL_PALETTE8_RGBA8_OES                                   0x8B96
+#define GL_PALETTE8_R5_G6_B5_OES                                0x8B97
+#define GL_PALETTE8_RGBA4_OES                                   0x8B98
+#define GL_PALETTE8_RGB5_A1_OES                                 0x8B99
+#endif
+
+/* GL_OES_depth24 */
+#ifndef GL_OES_depth24
+#define GL_DEPTH_COMPONENT24_OES                                0x81A6
+#endif
+
+/* GL_OES_depth32 */
+#ifndef GL_OES_depth32
+#define GL_DEPTH_COMPONENT32_OES                                0x81A7
+#endif
+
+/* GL_OES_depth_texture */
+/* No new tokens introduced by this extension. */
+
+/* GL_OES_EGL_image */
+#ifndef GL_OES_EGL_image
+typedef void* GLeglImageOES;
+#endif
+
+/* GL_OES_get_program_binary */
+#ifndef GL_OES_get_program_binary
+#define GL_PROGRAM_BINARY_LENGTH_OES                            0x8741
+#define GL_NUM_PROGRAM_BINARY_FORMATS_OES                       0x87FE
+#define GL_PROGRAM_BINARY_FORMATS_OES                           0x87FF
+#endif
+
+/* GL_OES_mapbuffer */
+#ifndef GL_OES_mapbuffer
+#define GL_WRITE_ONLY_OES                                       0x88B9
+#define GL_BUFFER_ACCESS_OES                                    0x88BB
+#define GL_BUFFER_MAPPED_OES                                    0x88BC
+#define GL_BUFFER_MAP_POINTER_OES                               0x88BD
+#endif
+
+/* GL_OES_packed_depth_stencil */
+#ifndef GL_OES_packed_depth_stencil
+#define GL_DEPTH_STENCIL_OES                                    0x84F9
+#define GL_UNSIGNED_INT_24_8_OES                                0x84FA
+#define GL_DEPTH24_STENCIL8_OES                                 0x88F0
+#endif
+
+/* GL_OES_rgb8_rgba8 */
+#ifndef GL_OES_rgb8_rgba8
+#define GL_RGB8_OES                                             0x8051
+#define GL_RGBA8_OES                                            0x8058
+#endif
+
+/* GL_OES_standard_derivatives */
+#ifndef GL_OES_standard_derivatives
+#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES                  0x8B8B
+#endif
+
+/* GL_OES_stencil1 */
+#ifndef GL_OES_stencil1
+#define GL_STENCIL_INDEX1_OES                                   0x8D46
+#endif
+
+/* GL_OES_stencil4 */
+#ifndef GL_OES_stencil4
+#define GL_STENCIL_INDEX4_OES                                   0x8D47
+#endif
+
+/* GL_OES_texture3D */
+#ifndef GL_OES_texture3D
+#define GL_TEXTURE_WRAP_R_OES                                   0x8072
+#define GL_TEXTURE_3D_OES                                       0x806F
+#define GL_TEXTURE_BINDING_3D_OES                               0x806A
+#define GL_MAX_3D_TEXTURE_SIZE_OES                              0x8073
+#define GL_SAMPLER_3D_OES                                       0x8B5F
+#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES        0x8CD4
+#endif
+
+/* GL_OES_texture_half_float */
+#ifndef GL_OES_texture_half_float
+#define GL_HALF_FLOAT_OES                                       0x8D61
+#endif
+
+/* GL_OES_vertex_half_float */
+/* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
+
+/* GL_OES_vertex_type_10_10_10_2 */
+#ifndef GL_OES_vertex_type_10_10_10_2
+#define GL_UNSIGNED_INT_10_10_10_2_OES                          0x8DF6
+#define GL_INT_10_10_10_2_OES                                   0x8DF7
+#endif
+
+/*------------------------------------------------------------------------*
+ * AMD extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_AMD_compressed_3DC_texture */
+#ifndef GL_AMD_compressed_3DC_texture
+#define GL_3DC_X_AMD                                            0x87F9
+#define GL_3DC_XY_AMD                                           0x87FA
+#endif
+
+/* GL_AMD_compressed_ATC_texture */
+#ifndef GL_AMD_compressed_ATC_texture
+#define GL_ATC_RGB_AMD                                          0x8C92
+#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD                          0x8C93
+#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD                      0x87EE
+#endif
+
+/* GL_AMD_program_binary_Z400 */
+#ifndef GL_AMD_program_binary_Z400
+#define GL_Z400_BINARY_AMD                                      0x8740
+#endif
+
+/* GL_AMD_performance_monitor */
+#ifndef GL_AMD_performance_monitor
+#define GL_COUNTER_TYPE_AMD                                     0x8BC0
+#define GL_COUNTER_RANGE_AMD                                    0x8BC1
+#define GL_UNSIGNED_INT64_AMD                                   0x8BC2
+#define GL_PERCENTAGE_AMD                                       0x8BC3
+#define GL_PERFMON_RESULT_AVAILABLE_AMD                         0x8BC4
+#define GL_PERFMON_RESULT_SIZE_AMD                              0x8BC5
+#define GL_PERFMON_RESULT_AMD                                   0x8BC6
+#endif
+
+/*------------------------------------------------------------------------*
+ * EXT extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_EXT_texture_filter_anisotropic */
+#ifndef GL_EXT_texture_filter_anisotropic
+#define GL_TEXTURE_MAX_ANISOTROPY_EXT                           0x84FE
+#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT                       0x84FF
+#endif
+
+/* GL_EXT_texture_type_2_10_10_10_REV */
+#ifndef GL_EXT_texture_type_2_10_10_10_REV
+#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT                      0x8368
+#endif
+
+/* GL_EXT_texture_format_BGRA8888 */
+#ifndef GL_EXT_texture_format_BGRA8888
+#define GL_BGRA                                                 0x80E1
+#endif
+
+/*------------------------------------------------------------------------*
+ * IMG extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_IMG_read_format */
+#ifndef GL_IMG_read_format
+#define GL_BGRA                                                 0x80E1
+#define GL_UNSIGNED_SHORT_4_4_4_4_REV                           0x8365
+#define GL_UNSIGNED_SHORT_1_5_5_5_REV                           0x8366
+#endif
+
+/* GL_IMG_texture_compression_pvrtc */
+#ifndef GL_IMG_texture_compression_pvrtc
+#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG                      0x8C00
+#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG                      0x8C01
+#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG                     0x8C02
+#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG                     0x8C03
+#endif
+
+/*------------------------------------------------------------------------*
+ * NV extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_NV_fence */
+#ifndef GL_NV_fence
+#define GL_ALL_COMPLETED_NV                                     0x84F2
+#define GL_FENCE_STATUS_NV                                      0x84F3
+#define GL_FENCE_CONDITION_NV                                   0x84F4
+#endif
+
+/*------------------------------------------------------------------------*
+ * QCOM extension tokens
+ *------------------------------------------------------------------------*/
+
+/* GL_QCOM_driver_control */
+/* No new tokens introduced by this extension. */
+
+/* GL_QCOM_perfmon_global_mode */
+#ifndef GL_QCOM_perfmon_global_mode
+#define GL_PERFMON_GLOBAL_MODE_QCOM                             0x8FA0
+#endif
+
+/*------------------------------------------------------------------------*
+ * End of extension tokens, start of corresponding extension functions
+ *------------------------------------------------------------------------*/
+
+/*------------------------------------------------------------------------*
+ * OES extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_OES_compressed_ETC1_RGB8_texture */
+#ifndef GL_OES_compressed_ETC1_RGB8_texture
+#define GL_OES_compressed_ETC1_RGB8_texture 1
+#endif
+
+/* GL_OES_compressed_paletted_texture */
+#ifndef GL_OES_compressed_paletted_texture
+#define GL_OES_compressed_paletted_texture 1
+#endif
+
+/* GL_OES_EGL_image */
+#ifndef GL_OES_EGL_image
+#define GL_OES_EGL_image 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
+GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
+#endif
+typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
+typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
+#endif
+
+/* GL_OES_depth24 */
+#ifndef GL_OES_depth24
+#define GL_OES_depth24 1
+#endif
+
+/* GL_OES_depth32 */
+#ifndef GL_OES_depth32
+#define GL_OES_depth32 1
+#endif
+
+/* GL_OES_depth_texture */
+#ifndef GL_OES_depth_texture
+#define GL_OES_depth_texture 1
+#endif
+
+/* GL_OES_element_index_uint */
+#ifndef GL_OES_element_index_uint
+#define GL_OES_element_index_uint 1
+#endif
+
+/* GL_OES_fbo_render_mipmap */
+#ifndef GL_OES_fbo_render_mipmap
+#define GL_OES_fbo_render_mipmap 1
+#endif
+
+/* GL_OES_fragment_precision_high */
+#ifndef GL_OES_fragment_precision_high
+#define GL_OES_fragment_precision_high 1
+#endif
+
+/* GL_OES_get_program_binary */
+#ifndef GL_OES_get_program_binary
+#define GL_OES_get_program_binary 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
+GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const void *binary, GLint length);
+#endif
+typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
+typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const void *binary, GLint length);
+#endif
+
+/* GL_OES_mapbuffer */
+#ifndef GL_OES_mapbuffer
+#define GL_OES_mapbuffer 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
+GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
+GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, void** params);
+#endif
+typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
+typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
+typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, void** params);
+#endif
+
+/* GL_OES_packed_depth_stencil */
+#ifndef GL_OES_packed_depth_stencil
+#define GL_OES_packed_depth_stencil 1
+#endif
+
+/* GL_OES_rgb8_rgba8 */
+#ifndef GL_OES_rgb8_rgba8
+#define GL_OES_rgb8_rgba8 1
+#endif
+
+/* GL_OES_standard_derivatives */
+#ifndef GL_OES_standard_derivatives
+#define GL_OES_standard_derivatives 1
+#endif
+
+/* GL_OES_stencil1 */
+#ifndef GL_OES_stencil1
+#define GL_OES_stencil1 1
+#endif
+
+/* GL_OES_stencil4 */
+#ifndef GL_OES_stencil4
+#define GL_OES_stencil4 1
+#endif
+
+/* GL_OES_texture_3D */
+#ifndef GL_OES_texture_3D
+#define GL_OES_texture_3D 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels);
+GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
+GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
+GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
+GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+#endif
+typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
+typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels);
+typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data);
+typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data);
+typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+#endif
+
+/* GL_OES_texture_float_linear */
+#ifndef GL_OES_texture_float_linear
+#define GL_OES_texture_float_linear 1
+#endif
+
+/* GL_OES_texture_half_float_linear */
+#ifndef GL_OES_texture_half_float_linear
+#define GL_OES_texture_half_float_linear 1
+#endif
+
+/* GL_OES_texture_float */
+#ifndef GL_OES_texture_float
+#define GL_OES_texture_float 1
+#endif
+
+/* GL_OES_texture_half_float */
+#ifndef GL_OES_texture_half_float
+#define GL_OES_texture_half_float 1
+#endif
+
+/* GL_OES_texture_npot */
+#ifndef GL_OES_texture_npot
+#define GL_OES_texture_npot 1
+#endif
+
+/* GL_OES_vertex_half_float */
+#ifndef GL_OES_vertex_half_float
+#define GL_OES_vertex_half_float 1
+#endif
+
+/* GL_OES_vertex_type_10_10_10_2 */
+#ifndef GL_OES_vertex_type_10_10_10_2
+#define GL_OES_vertex_type_10_10_10_2 1
+#endif
+
+/*------------------------------------------------------------------------*
+ * AMD extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_AMD_compressed_3DC_texture */
+#ifndef GL_AMD_compressed_3DC_texture
+#define GL_AMD_compressed_3DC_texture 1
+#endif
+
+/* GL_AMD_compressed_ATC_texture */
+#ifndef GL_AMD_compressed_ATC_texture
+#define GL_AMD_compressed_ATC_texture 1
+#endif
+
+/* GL_AMD_program_binary_Z400 */
+#ifndef GL_AMD_program_binary_Z400
+#define GL_AMD_program_binary_Z400 1
+#endif
+
+/* AMD_performance_monitor */
+#ifndef GL_AMD_performance_monitor
+#define GL_AMD_performance_monitor 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, char *groupString);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, char *counterString);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, void *data);
+GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
+GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
+GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
+GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
+GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
+GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
+#endif
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, char *groupString);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, char *counterString);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, void *data);
+typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
+typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
+typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
+typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
+typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
+typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
+#endif
+
+/*------------------------------------------------------------------------*
+ * EXT extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_EXT_texture_filter_anisotropic */
+#ifndef GL_EXT_texture_filter_anisotropic
+#define GL_EXT_texture_filter_anisotropic 1
+#endif
+
+/* GL_EXT_texture_type_2_10_10_10_REV */
+#ifndef GL_EXT_texture_type_2_10_10_10_REV
+#define GL_EXT_texture_type_2_10_10_10_REV 1
+#endif
+
+/* GL_EXT_texture_format_BGRA8888 */
+#ifndef GL_EXT_texture_format_BGRA8888
+#define GL_EXT_texture_format_BGRA8888 1
+#endif
+
+/*------------------------------------------------------------------------*
+ * IMG extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_IMG_read_format */
+#ifndef GL_IMG_read_format
+#define GL_IMG_read_format 1
+#endif
+
+/* GL_IMG_texture_compression_pvrtc */
+#ifndef GL_IMG_texture_compression_pvrtc
+#define GL_IMG_texture_compression_pvrtc 1
+#endif
+
+/*------------------------------------------------------------------------*
+ * NV extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_NV_fence */
+#ifndef GL_NV_fence
+#define GL_NV_fence 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences);
+GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences);
+GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint fence);
+GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint fence);
+GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params);
+GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint fence);
+GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition);
+#endif
+typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
+typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
+typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
+typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
+typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
+typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
+typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
+#endif
+
+/*------------------------------------------------------------------------*
+ * QCOM extension functions
+ *------------------------------------------------------------------------*/
+
+/* GL_QCOM_driver_control */
+#ifndef GL_QCOM_driver_control
+#define GL_QCOM_driver_control 1
+#ifdef GL_GLEXT_PROTOTYPES
+GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
+GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, char *driverControlString);
+GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
+GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
+#endif
+typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
+typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, char *driverControlString);
+typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
+typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
+#endif
+
+/* GL_QCOM_perfmon_global_mode */
+#ifndef GL_QCOM_perfmon_global_mode
+#define GL_QCOM_perfmon_global_mode 1
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __gl2ext_h_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2platform.h b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2platform.h
new file mode 100644
index 0000000..3e9036c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/GLES2/gl2platform.h
@@ -0,0 +1,29 @@
+#ifndef __gl2platform_h_
+#define __gl2platform_h_
+
+/* $Revision: 7173 $ on $Date:: 2009-01-09 11:18:21 -0800 #$ */
+
+/*
+ * This document is licensed under the SGI Free Software B License Version
+ * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
+ */
+
+/* Platform-specific types and definitions for OpenGL ES 2.X  gl2.h
+ * Last modified on 2008/12/19
+ *
+ * Adopters may modify khrplatform.h and this file to suit their platform.
+ * You are encouraged to submit all modifications to the Khronos group so that
+ * they can be included in future versions of this file.  Please submit changes
+ * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
+ * by filing a bug against product "OpenGL-ES" component "Registry".
+ */
+
+#include <KHR/khrplatform.h>
+
+#ifndef GL_APICALL
+#define GL_APICALL  KHRONOS_APICALL
+#endif
+
+#define GL_APIENTRY KHRONOS_APIENTRY
+
+#endif /* __gl2platform_h_ */
diff --git a/ndk/build/platforms/android-4/common/include/KHR/khrplatform.h b/ndk/build/platforms/android-5/arch-arm/usr/include/KHR/khrplatform.h
similarity index 100%
copy from ndk/build/platforms/android-4/common/include/KHR/khrplatform.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/KHR/khrplatform.h
diff --git a/ndk/build/platforms/android-3/common/include/alloca.h b/ndk/build/platforms/android-5/arch-arm/usr/include/alloca.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/alloca.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/alloca.h
diff --git a/ndk/build/platforms/android-3/common/include/android/log.h b/ndk/build/platforms/android-5/arch-arm/usr/include/android/log.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/android/log.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/android/log.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/arm/fenv.h b/ndk/build/platforms/android-5/arch-arm/usr/include/arm/fenv.h
new file mode 100644
index 0000000..e7a8860
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/arm/fenv.h
@@ -0,0 +1,217 @@
+/*-
+ * Copyright (c) 2004-2005 David Schultz <das@FreeBSD.ORG>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD: src/lib/msun/arm/fenv.h,v 1.5 2005/03/16 19:03:45 das Exp $
+ */
+
+#ifndef	_FENV_H_
+#define	_FENV_H_
+
+#include <sys/_types.h>
+
+typedef	__uint32_t	fenv_t;
+typedef	__uint32_t	fexcept_t;
+
+/* Exception flags */
+#define	FE_INVALID	0x0001
+#define	FE_DIVBYZERO	0x0002
+#define	FE_OVERFLOW	0x0004
+#define	FE_UNDERFLOW	0x0008
+#define	FE_INEXACT	0x0010
+#define	FE_ALL_EXCEPT	(FE_DIVBYZERO | FE_INEXACT | \
+			 FE_INVALID | FE_OVERFLOW | FE_UNDERFLOW)
+
+/* Rounding modes */
+#define	FE_TONEAREST	0x0000
+#define	FE_TOWARDZERO	0x0001
+#define	FE_UPWARD	0x0002
+#define	FE_DOWNWARD	0x0003
+#define	_ROUND_MASK	(FE_TONEAREST | FE_DOWNWARD | \
+			 FE_UPWARD | FE_TOWARDZERO)
+__BEGIN_DECLS
+
+/* Default floating-point environment */
+extern const fenv_t	__fe_dfl_env;
+#define	FE_DFL_ENV	(&__fe_dfl_env)
+
+/* We need to be able to map status flag positions to mask flag positions */
+#define _FPUSW_SHIFT	16
+#define	_ENABLE_MASK	(FE_ALL_EXCEPT << _FPUSW_SHIFT)
+
+#ifdef	ARM_HARD_FLOAT
+#define	__rfs(__fpsr)	__asm __volatile("rfs %0" : "=r" (*(__fpsr)))
+#define	__wfs(__fpsr)	__asm __volatile("wfs %0" : : "r" (__fpsr))
+#else
+#define __rfs(__fpsr)
+#define __wfs(__fpsr)
+#endif
+
+static __inline int
+feclearexcept(int __excepts)
+{
+	fexcept_t __fpsr;
+
+	__rfs(&__fpsr);
+	__fpsr &= ~__excepts;
+	__wfs(__fpsr);
+	return (0);
+}
+
+static __inline int
+fegetexceptflag(fexcept_t *__flagp, int __excepts)
+{
+	fexcept_t __fpsr;
+
+	__rfs(&__fpsr);
+	*__flagp = __fpsr & __excepts;
+	return (0);
+}
+
+static __inline int
+fesetexceptflag(const fexcept_t *__flagp, int __excepts)
+{
+	fexcept_t __fpsr;
+
+	__rfs(&__fpsr);
+	__fpsr &= ~__excepts;
+	__fpsr |= *__flagp & __excepts;
+	__wfs(__fpsr);
+	return (0);
+}
+
+static __inline int
+feraiseexcept(int __excepts)
+{
+	fexcept_t __ex = __excepts;
+
+	fesetexceptflag(&__ex, __excepts);	/* XXX */
+	return (0);
+}
+
+static __inline int
+fetestexcept(int __excepts)
+{
+	fexcept_t __fpsr;
+
+	__rfs(&__fpsr);
+	return (__fpsr & __excepts);
+}
+
+static __inline int
+fegetround(void)
+{
+
+	/*
+	 * Apparently, the rounding mode is specified as part of the
+	 * instruction format on ARM, so the dynamic rounding mode is
+	 * indeterminate.  Some FPUs may differ.
+	 */
+	return (-1);
+}
+
+static __inline int
+fesetround(int __round)
+{
+
+	return (-1);
+}
+
+static __inline int
+fegetenv(fenv_t *__envp)
+{
+
+	__rfs(__envp);
+	return (0);
+}
+
+static __inline int
+feholdexcept(fenv_t *__envp)
+{
+	fenv_t __env;
+
+	__rfs(&__env);
+	*__envp = __env;
+	__env &= ~(FE_ALL_EXCEPT | _ENABLE_MASK);
+	__wfs(__env);
+	return (0);
+}
+
+static __inline int
+fesetenv(const fenv_t *__envp)
+{
+
+	__wfs(*__envp);
+	return (0);
+}
+
+static __inline int
+feupdateenv(const fenv_t *__envp)
+{
+	fexcept_t __fpsr;
+
+	__rfs(&__fpsr);
+	__wfs(*__envp);
+	feraiseexcept(__fpsr & FE_ALL_EXCEPT);
+	return (0);
+}
+
+#if __BSD_VISIBLE
+
+static __inline int
+feenableexcept(int __mask)
+{
+	fenv_t __old_fpsr, __new_fpsr;
+
+	__rfs(&__old_fpsr);
+	__new_fpsr = __old_fpsr | (__mask & FE_ALL_EXCEPT) << _FPUSW_SHIFT;
+	__wfs(__new_fpsr);
+	return ((__old_fpsr >> _FPUSW_SHIFT) & FE_ALL_EXCEPT);
+}
+
+static __inline int
+fedisableexcept(int __mask)
+{
+	fenv_t __old_fpsr, __new_fpsr;
+
+	__rfs(&__old_fpsr);
+	__new_fpsr = __old_fpsr & ~((__mask & FE_ALL_EXCEPT) << _FPUSW_SHIFT);
+	__wfs(__new_fpsr);
+	return ((__old_fpsr >> _FPUSW_SHIFT) & FE_ALL_EXCEPT);
+}
+
+static __inline int
+fegetexcept(void)
+{
+	fenv_t __fpsr;
+
+	__rfs(&__fpsr);
+	return ((__fpsr & _ENABLE_MASK) >> _FPUSW_SHIFT);
+}
+
+#endif /* __BSD_VISIBLE */
+
+__END_DECLS
+
+#endif	/* !_FENV_H_ */
diff --git a/ndk/build/platforms/android-3/common/include/arpa/inet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/arpa/inet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/arpa/inet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/arpa/inet.h
diff --git a/ndk/build/platforms/android-3/common/include/arpa/nameser.h b/ndk/build/platforms/android-5/arch-arm/usr/include/arpa/nameser.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/arpa/nameser.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/arpa/nameser.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/4level-fixup.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/4level-fixup.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/4level-fixup.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/4level-fixup.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/audit_dir_write.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/audit_dir_write.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/__ffs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/__ffs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/__ffs.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/atomic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/atomic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/atomic.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/ffz.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/ffz.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/ffz.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/find.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/find.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/find.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/fls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/fls.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/fls64.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/fls64.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/fls64.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/le.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/le.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/le.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bitops/non-atomic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bitops/non-atomic.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/bug.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bug.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/bug.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/bug.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/cputime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/cputime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/cputime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/cputime.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/emergency-restart.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/emergency-restart.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/emergency-restart.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/emergency-restart.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/errno-base.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/errno-base.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/errno-base.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/errno-base.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/errno.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/errno.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/errno.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/fcntl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/fcntl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/fcntl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/fcntl.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/futex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/futex.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/futex.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/futex.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/ipc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/ipc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/ipc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/ipc.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/local.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/local.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/local.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/local.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/memory_model.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/memory_model.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/memory_model.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/memory_model.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/mman.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/mman.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/mman.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/mman.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/mutex-xchg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/mutex-xchg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/mutex-xchg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/mutex-xchg.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/percpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/percpu.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/percpu.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/percpu.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/pgtable-nopud.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/pgtable-nopud.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/pgtable-nopud.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/pgtable-nopud.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/pgtable.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/pgtable.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/pgtable.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/pgtable.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/poll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/poll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/poll.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/resource.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/resource.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/resource.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/resource.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/sections.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/sections.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/sections.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/sections.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/siginfo.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/siginfo.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/siginfo.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/siginfo.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/signal.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/signal.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/signal.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/signal.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/tlb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/tlb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/tlb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/tlb.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/topology.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/topology.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/topology.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/topology.h
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/xor.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/xor.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/xor.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm-generic/xor.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/a.out.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/a.out.h
new file mode 100644
index 0000000..e8f17dc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/a.out.h
@@ -0,0 +1,42 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_A_OUT_H__
+#define __ARM_A_OUT_H__
+
+#include <linux/personality.h>
+#include <asm/types.h>
+
+struct exec
+{
+ __u32 a_info;
+ __u32 a_text;
+ __u32 a_data;
+ __u32 a_bss;
+ __u32 a_syms;
+ __u32 a_entry;
+ __u32 a_trsize;
+ __u32 a_drsize;
+};
+
+#define N_TXTADDR(a) (0x00008000)
+
+#define N_TRSIZE(a) ((a).a_trsize)
+#define N_DRSIZE(a) ((a).a_drsize)
+#define N_SYMSIZE(a) ((a).a_syms)
+
+#define M_ARM 103
+
+#ifndef LIBRARY_START_TEXT
+#define LIBRARY_START_TEXT (0x00c00000)
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board-perseus2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board-perseus2.h
new file mode 100644
index 0000000..c6c5413
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board-perseus2.h
@@ -0,0 +1,27 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_PERSEUS2_H
+#define __ASM_ARCH_OMAP_PERSEUS2_H
+
+#include <asm/arch/fpga.h>
+
+#ifndef OMAP_SDRAM_DEVICE
+#define OMAP_SDRAM_DEVICE D256M_1X16_4B
+#endif
+
+#define MAXIRQNUM IH_BOARD_BASE
+#define MAXFIQNUM MAXIRQNUM
+#define MAXSWINUM MAXIRQNUM
+
+#define NR_IRQS (MAXIRQNUM + 1)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board.h
new file mode 100644
index 0000000..a7a4c66
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/board.h
@@ -0,0 +1,163 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _OMAP_BOARD_H
+#define _OMAP_BOARD_H
+
+#include <linux/types.h>
+
+#include <asm/arch/gpio-switch.h>
+
+#define OMAP_TAG_CLOCK 0x4f01
+#define OMAP_TAG_MMC 0x4f02
+#define OMAP_TAG_SERIAL_CONSOLE 0x4f03
+#define OMAP_TAG_USB 0x4f04
+#define OMAP_TAG_LCD 0x4f05
+#define OMAP_TAG_GPIO_SWITCH 0x4f06
+#define OMAP_TAG_UART 0x4f07
+#define OMAP_TAG_FBMEM 0x4f08
+#define OMAP_TAG_STI_CONSOLE 0x4f09
+#define OMAP_TAG_CAMERA_SENSOR 0x4f0a
+#define OMAP_TAG_BT 0x4f0b
+
+#define OMAP_TAG_BOOT_REASON 0x4f80
+#define OMAP_TAG_FLASH_PART 0x4f81
+#define OMAP_TAG_VERSION_STR 0x4f82
+
+struct omap_clock_config {
+
+ u8 system_clock_type;
+};
+
+struct omap_mmc_conf {
+ unsigned enabled:1;
+
+ unsigned nomux:1;
+
+ unsigned cover:1;
+
+ unsigned wire4:1;
+ s16 power_pin;
+ s16 switch_pin;
+ s16 wp_pin;
+};
+
+struct omap_mmc_config {
+ struct omap_mmc_conf mmc[2];
+};
+
+struct omap_serial_console_config {
+ u8 console_uart;
+ u32 console_speed;
+};
+
+struct omap_sti_console_config {
+ unsigned enable:1;
+ u8 channel;
+};
+
+struct omap_camera_sensor_config {
+ u16 reset_gpio;
+ int (*power_on)(void * data);
+ int (*power_off)(void * data);
+};
+
+struct omap_usb_config {
+
+ unsigned register_host:1;
+ unsigned register_dev:1;
+ u8 otg;
+
+ u8 hmc_mode;
+
+ u8 rwc;
+
+ u8 pins[3];
+};
+
+struct omap_lcd_config {
+ char panel_name[16];
+ char ctrl_name[16];
+ s16 nreset_gpio;
+ u8 data_lines;
+};
+
+struct device;
+struct fb_info;
+struct omap_backlight_config {
+ int default_intensity;
+ int (*set_power)(struct device *dev, int state);
+ int (*check_fb)(struct fb_info *fb);
+};
+
+struct omap_fbmem_config {
+ u32 start;
+ u32 size;
+};
+
+struct omap_pwm_led_platform_data {
+ const char *name;
+ int intensity_timer;
+ int blink_timer;
+ void (*set_power)(struct omap_pwm_led_platform_data *self, int on_off);
+};
+
+struct omap_gpio_switch_config {
+ char name[12];
+ u16 gpio;
+ int flags:4;
+ int type:4;
+ int key_code:24;
+};
+
+struct omap_uart_config {
+
+ unsigned int enabled_uarts;
+};
+
+struct omap_flash_part_config {
+ char part_table[0];
+};
+
+struct omap_boot_reason_config {
+ char reason_str[12];
+};
+
+struct omap_version_config {
+ char component[12];
+ char version[12];
+};
+
+struct omap_board_config_entry {
+ u16 tag;
+ u16 len;
+ u8 data[0];
+};
+
+struct omap_board_config_kernel {
+ u16 tag;
+ const void *data;
+};
+
+struct omap_bluetooth_config {
+ u8 chip_type;
+ u8 bt_uart;
+ u8 bd_addr[6];
+ u8 bt_sysclk;
+ int bt_wakeup_gpio;
+ int host_wakeup_gpio;
+ int reset_gpio;
+};
+
+#define omap_get_config(tag, type)   ((const type *) __omap_get_config((tag), sizeof(type), 0))
+#define omap_get_nr_config(tag, type, nr)   ((const type *) __omap_get_config((tag), sizeof(type), (nr)))
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/cpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/cpu.h
new file mode 100644
index 0000000..fa7a408
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/cpu.h
@@ -0,0 +1,57 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_CPU_H
+#define __ASM_ARCH_OMAP_CPU_H
+
+#define omap2_cpu_rev() ((system_rev >> 8) & 0x0f)
+
+#undef MULTI_OMAP1
+#undef MULTI_OMAP2
+#undef OMAP_NAME
+
+#define GET_OMAP_CLASS (system_rev & 0xff)
+
+#define IS_OMAP_CLASS(class, id)  static inline int is_omap ##class (void)  {   return (GET_OMAP_CLASS == (id)) ? 1 : 0;  }
+
+#define GET_OMAP_SUBCLASS ((system_rev >> 20) & 0x0fff)
+
+#define IS_OMAP_SUBCLASS(subclass, id)  static inline int is_omap ##subclass (void)  {   return (GET_OMAP_SUBCLASS == (id)) ? 1 : 0;  }
+
+#define cpu_is_omap7xx() 0
+#define cpu_is_omap15xx() 0
+#define cpu_is_omap16xx() 0
+#define cpu_is_omap24xx() 0
+#define cpu_is_omap242x() 0
+#define cpu_is_omap243x() 0
+#ifdef MULTI_OMAP1
+#else
+#endif
+#define GET_OMAP_TYPE ((system_rev >> 16) & 0xffff)
+#define IS_OMAP_TYPE(type, id)  static inline int is_omap ##type (void)  {   return (GET_OMAP_TYPE == (id)) ? 1 : 0;  }
+#define cpu_is_omap310() 0
+#define cpu_is_omap730() 0
+#define cpu_is_omap1510() 0
+#define cpu_is_omap1610() 0
+#define cpu_is_omap5912() 0
+#define cpu_is_omap1611() 0
+#define cpu_is_omap1621() 0
+#define cpu_is_omap1710() 0
+#define cpu_is_omap2420() 0
+#define cpu_is_omap2422() 0
+#define cpu_is_omap2423() 0
+#define cpu_is_omap2430() 0
+#ifdef MULTI_OMAP1
+#else
+#endif
+#define cpu_class_is_omap1() (cpu_is_omap730() || cpu_is_omap15xx() ||   cpu_is_omap16xx())
+#define cpu_class_is_omap2() cpu_is_omap24xx()
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/dma.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/dma.h
new file mode 100644
index 0000000..5e5be76
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/dma.h
@@ -0,0 +1,318 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_DMA_H
+#define __ASM_ARCH_DMA_H
+
+#define OMAP_DMA_BASE (0xfffed800)
+#define OMAP_DMA_GCR (OMAP_DMA_BASE + 0x400)
+#define OMAP_DMA_GSCR (OMAP_DMA_BASE + 0x404)
+#define OMAP_DMA_GRST (OMAP_DMA_BASE + 0x408)
+#define OMAP_DMA_HW_ID (OMAP_DMA_BASE + 0x442)
+#define OMAP_DMA_PCH2_ID (OMAP_DMA_BASE + 0x444)
+#define OMAP_DMA_PCH0_ID (OMAP_DMA_BASE + 0x446)
+#define OMAP_DMA_PCH1_ID (OMAP_DMA_BASE + 0x448)
+#define OMAP_DMA_PCHG_ID (OMAP_DMA_BASE + 0x44a)
+#define OMAP_DMA_PCHD_ID (OMAP_DMA_BASE + 0x44c)
+#define OMAP_DMA_CAPS_0_U (OMAP_DMA_BASE + 0x44e)
+#define OMAP_DMA_CAPS_0_L (OMAP_DMA_BASE + 0x450)
+#define OMAP_DMA_CAPS_1_U (OMAP_DMA_BASE + 0x452)
+#define OMAP_DMA_CAPS_1_L (OMAP_DMA_BASE + 0x454)
+#define OMAP_DMA_CAPS_2 (OMAP_DMA_BASE + 0x456)
+#define OMAP_DMA_CAPS_3 (OMAP_DMA_BASE + 0x458)
+#define OMAP_DMA_CAPS_4 (OMAP_DMA_BASE + 0x45a)
+#define OMAP_DMA_PCH2_SR (OMAP_DMA_BASE + 0x460)
+#define OMAP_DMA_PCH0_SR (OMAP_DMA_BASE + 0x480)
+#define OMAP_DMA_PCH1_SR (OMAP_DMA_BASE + 0x482)
+#define OMAP_DMA_PCHD_SR (OMAP_DMA_BASE + 0x4c0)
+
+#define OMAP24XX_DMA_BASE (L4_24XX_BASE + 0x56000)
+#define OMAP_DMA4_REVISION (OMAP24XX_DMA_BASE + 0x00)
+#define OMAP_DMA4_GCR_REG (OMAP24XX_DMA_BASE + 0x78)
+#define OMAP_DMA4_IRQSTATUS_L0 (OMAP24XX_DMA_BASE + 0x08)
+#define OMAP_DMA4_IRQSTATUS_L1 (OMAP24XX_DMA_BASE + 0x0c)
+#define OMAP_DMA4_IRQSTATUS_L2 (OMAP24XX_DMA_BASE + 0x10)
+#define OMAP_DMA4_IRQSTATUS_L3 (OMAP24XX_DMA_BASE + 0x14)
+#define OMAP_DMA4_IRQENABLE_L0 (OMAP24XX_DMA_BASE + 0x18)
+#define OMAP_DMA4_IRQENABLE_L1 (OMAP24XX_DMA_BASE + 0x1c)
+#define OMAP_DMA4_IRQENABLE_L2 (OMAP24XX_DMA_BASE + 0x20)
+#define OMAP_DMA4_IRQENABLE_L3 (OMAP24XX_DMA_BASE + 0x24)
+#define OMAP_DMA4_SYSSTATUS (OMAP24XX_DMA_BASE + 0x28)
+#define OMAP_DMA4_CAPS_0 (OMAP24XX_DMA_BASE + 0x64)
+#define OMAP_DMA4_CAPS_2 (OMAP24XX_DMA_BASE + 0x6c)
+#define OMAP_DMA4_CAPS_3 (OMAP24XX_DMA_BASE + 0x70)
+#define OMAP_DMA4_CAPS_4 (OMAP24XX_DMA_BASE + 0x74)
+
+#define OMAP_LOGICAL_DMA_CH_COUNT 32  
+
+#define OMAP_DMA_CCR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x80)
+#define OMAP_DMA_CLNK_CTRL_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x84)
+#define OMAP_DMA_CICR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x88)
+#define OMAP_DMA_CSR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x8c)
+#define OMAP_DMA_CSDP_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x90)
+#define OMAP_DMA_CEN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x94)
+#define OMAP_DMA_CFN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x98)
+#define OMAP_DMA_CSEI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa4)
+#define OMAP_DMA_CSFI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa8)
+#define OMAP_DMA_CDEI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xac)
+#define OMAP_DMA_CDFI_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb0)
+#define OMAP_DMA_CSAC_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb4)
+#define OMAP_DMA_CDAC_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xb8)
+
+#define OMAP1_DMA_CSSA_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x08)
+#define OMAP1_DMA_CSSA_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0a)
+#define OMAP1_DMA_CDSA_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0c)
+#define OMAP1_DMA_CDSA_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x0e)
+#define OMAP1_DMA_COLOR_L_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x20)
+#define OMAP1_DMA_CCR2_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x24)
+#define OMAP1_DMA_COLOR_U_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x22)
+#define OMAP1_DMA_LCH_CTRL_REG(n) __REG16(OMAP_DMA_BASE + 0x40 * (n) + 0x2a)
+
+#define OMAP2_DMA_CSSA_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0x9c)
+#define OMAP2_DMA_CDSA_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xa0)
+#define OMAP2_DMA_CCEN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xbc)
+#define OMAP2_DMA_CCFN_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xc0)
+#define OMAP2_DMA_COLOR_REG(n) __REG32(OMAP24XX_DMA_BASE + 0x60 * (n) + 0xc4)
+
+#define OMAP_DMA_NO_DEVICE 0
+#define OMAP_DMA_MCSI1_TX 1
+#define OMAP_DMA_MCSI1_RX 2
+#define OMAP_DMA_I2C_RX 3
+#define OMAP_DMA_I2C_TX 4
+#define OMAP_DMA_EXT_NDMA_REQ 5
+#define OMAP_DMA_EXT_NDMA_REQ2 6
+#define OMAP_DMA_UWIRE_TX 7
+#define OMAP_DMA_MCBSP1_TX 8
+#define OMAP_DMA_MCBSP1_RX 9
+#define OMAP_DMA_MCBSP3_TX 10
+#define OMAP_DMA_MCBSP3_RX 11
+#define OMAP_DMA_UART1_TX 12
+#define OMAP_DMA_UART1_RX 13
+#define OMAP_DMA_UART2_TX 14
+#define OMAP_DMA_UART2_RX 15
+#define OMAP_DMA_MCBSP2_TX 16
+#define OMAP_DMA_MCBSP2_RX 17
+#define OMAP_DMA_UART3_TX 18
+#define OMAP_DMA_UART3_RX 19
+#define OMAP_DMA_CAMERA_IF_RX 20
+#define OMAP_DMA_MMC_TX 21
+#define OMAP_DMA_MMC_RX 22
+#define OMAP_DMA_NAND 23
+#define OMAP_DMA_IRQ_LCD_LINE 24
+#define OMAP_DMA_MEMORY_STICK 25
+#define OMAP_DMA_USB_W2FC_RX0 26
+#define OMAP_DMA_USB_W2FC_RX1 27
+#define OMAP_DMA_USB_W2FC_RX2 28
+#define OMAP_DMA_USB_W2FC_TX0 29
+#define OMAP_DMA_USB_W2FC_TX1 30
+#define OMAP_DMA_USB_W2FC_TX2 31
+
+#define OMAP_DMA_CRYPTO_DES_IN 32
+#define OMAP_DMA_SPI_TX 33
+#define OMAP_DMA_SPI_RX 34
+#define OMAP_DMA_CRYPTO_HASH 35
+#define OMAP_DMA_CCP_ATTN 36
+#define OMAP_DMA_CCP_FIFO_NOT_EMPTY 37
+#define OMAP_DMA_CMT_APE_TX_CHAN_0 38
+#define OMAP_DMA_CMT_APE_RV_CHAN_0 39
+#define OMAP_DMA_CMT_APE_TX_CHAN_1 40
+#define OMAP_DMA_CMT_APE_RV_CHAN_1 41
+#define OMAP_DMA_CMT_APE_TX_CHAN_2 42
+#define OMAP_DMA_CMT_APE_RV_CHAN_2 43
+#define OMAP_DMA_CMT_APE_TX_CHAN_3 44
+#define OMAP_DMA_CMT_APE_RV_CHAN_3 45
+#define OMAP_DMA_CMT_APE_TX_CHAN_4 46
+#define OMAP_DMA_CMT_APE_RV_CHAN_4 47
+#define OMAP_DMA_CMT_APE_TX_CHAN_5 48
+#define OMAP_DMA_CMT_APE_RV_CHAN_5 49
+#define OMAP_DMA_CMT_APE_TX_CHAN_6 50
+#define OMAP_DMA_CMT_APE_RV_CHAN_6 51
+#define OMAP_DMA_CMT_APE_TX_CHAN_7 52
+#define OMAP_DMA_CMT_APE_RV_CHAN_7 53
+#define OMAP_DMA_MMC2_TX 54
+#define OMAP_DMA_MMC2_RX 55
+#define OMAP_DMA_CRYPTO_DES_OUT 56
+
+#define OMAP24XX_DMA_NO_DEVICE 0
+#define OMAP24XX_DMA_XTI_DMA 1  
+#define OMAP24XX_DMA_EXT_DMAREQ0 2  
+#define OMAP24XX_DMA_EXT_DMAREQ1 3  
+#define OMAP24XX_DMA_GPMC 4  
+#define OMAP24XX_DMA_GFX 5  
+#define OMAP24XX_DMA_DSS 6  
+#define OMAP24XX_DMA_VLYNQ_TX 7  
+#define OMAP24XX_DMA_CWT 8  
+#define OMAP24XX_DMA_AES_TX 9  
+#define OMAP24XX_DMA_AES_RX 10  
+#define OMAP24XX_DMA_DES_TX 11  
+#define OMAP24XX_DMA_DES_RX 12  
+#define OMAP24XX_DMA_SHA1MD5_RX 13  
+#define OMAP24XX_DMA_EXT_DMAREQ2 14  
+#define OMAP24XX_DMA_EXT_DMAREQ3 15  
+#define OMAP24XX_DMA_EXT_DMAREQ4 16  
+#define OMAP24XX_DMA_EAC_AC_RD 17  
+#define OMAP24XX_DMA_EAC_AC_WR 18  
+#define OMAP24XX_DMA_EAC_MD_UL_RD 19  
+#define OMAP24XX_DMA_EAC_MD_UL_WR 20  
+#define OMAP24XX_DMA_EAC_MD_DL_RD 21  
+#define OMAP24XX_DMA_EAC_MD_DL_WR 22  
+#define OMAP24XX_DMA_EAC_BT_UL_RD 23  
+#define OMAP24XX_DMA_EAC_BT_UL_WR 24  
+#define OMAP24XX_DMA_EAC_BT_DL_RD 25  
+#define OMAP24XX_DMA_EAC_BT_DL_WR 26  
+#define OMAP24XX_DMA_I2C1_TX 27  
+#define OMAP24XX_DMA_I2C1_RX 28  
+#define OMAP24XX_DMA_I2C2_TX 29  
+#define OMAP24XX_DMA_I2C2_RX 30  
+#define OMAP24XX_DMA_MCBSP1_TX 31  
+#define OMAP24XX_DMA_MCBSP1_RX 32  
+#define OMAP24XX_DMA_MCBSP2_TX 33  
+#define OMAP24XX_DMA_MCBSP2_RX 34  
+#define OMAP24XX_DMA_SPI1_TX0 35  
+#define OMAP24XX_DMA_SPI1_RX0 36  
+#define OMAP24XX_DMA_SPI1_TX1 37  
+#define OMAP24XX_DMA_SPI1_RX1 38  
+#define OMAP24XX_DMA_SPI1_TX2 39  
+#define OMAP24XX_DMA_SPI1_RX2 40  
+#define OMAP24XX_DMA_SPI1_TX3 41  
+#define OMAP24XX_DMA_SPI1_RX3 42  
+#define OMAP24XX_DMA_SPI2_TX0 43  
+#define OMAP24XX_DMA_SPI2_RX0 44  
+#define OMAP24XX_DMA_SPI2_TX1 45  
+#define OMAP24XX_DMA_SPI2_RX1 46  
+
+#define OMAP24XX_DMA_UART1_TX 49  
+#define OMAP24XX_DMA_UART1_RX 50  
+#define OMAP24XX_DMA_UART2_TX 51  
+#define OMAP24XX_DMA_UART2_RX 52  
+#define OMAP24XX_DMA_UART3_TX 53  
+#define OMAP24XX_DMA_UART3_RX 54  
+#define OMAP24XX_DMA_USB_W2FC_TX0 55  
+#define OMAP24XX_DMA_USB_W2FC_RX0 56  
+#define OMAP24XX_DMA_USB_W2FC_TX1 57  
+#define OMAP24XX_DMA_USB_W2FC_RX1 58  
+#define OMAP24XX_DMA_USB_W2FC_TX2 59  
+#define OMAP24XX_DMA_USB_W2FC_RX2 60  
+#define OMAP24XX_DMA_MMC1_TX 61  
+#define OMAP24XX_DMA_MMC1_RX 62  
+#define OMAP24XX_DMA_MS 63  
+#define OMAP24XX_DMA_EXT_DMAREQ5 64  
+
+#define OMAP1510_DMA_LCD_BASE (0xfffedb00)
+#define OMAP1510_DMA_LCD_CTRL (OMAP1510_DMA_LCD_BASE + 0x00)
+#define OMAP1510_DMA_LCD_TOP_F1_L (OMAP1510_DMA_LCD_BASE + 0x02)
+#define OMAP1510_DMA_LCD_TOP_F1_U (OMAP1510_DMA_LCD_BASE + 0x04)
+#define OMAP1510_DMA_LCD_BOT_F1_L (OMAP1510_DMA_LCD_BASE + 0x06)
+#define OMAP1510_DMA_LCD_BOT_F1_U (OMAP1510_DMA_LCD_BASE + 0x08)
+
+#define OMAP1610_DMA_LCD_BASE (0xfffee300)
+#define OMAP1610_DMA_LCD_CSDP (OMAP1610_DMA_LCD_BASE + 0xc0)
+#define OMAP1610_DMA_LCD_CCR (OMAP1610_DMA_LCD_BASE + 0xc2)
+#define OMAP1610_DMA_LCD_CTRL (OMAP1610_DMA_LCD_BASE + 0xc4)
+#define OMAP1610_DMA_LCD_TOP_B1_L (OMAP1610_DMA_LCD_BASE + 0xc8)
+#define OMAP1610_DMA_LCD_TOP_B1_U (OMAP1610_DMA_LCD_BASE + 0xca)
+#define OMAP1610_DMA_LCD_BOT_B1_L (OMAP1610_DMA_LCD_BASE + 0xcc)
+#define OMAP1610_DMA_LCD_BOT_B1_U (OMAP1610_DMA_LCD_BASE + 0xce)
+#define OMAP1610_DMA_LCD_TOP_B2_L (OMAP1610_DMA_LCD_BASE + 0xd0)
+#define OMAP1610_DMA_LCD_TOP_B2_U (OMAP1610_DMA_LCD_BASE + 0xd2)
+#define OMAP1610_DMA_LCD_BOT_B2_L (OMAP1610_DMA_LCD_BASE + 0xd4)
+#define OMAP1610_DMA_LCD_BOT_B2_U (OMAP1610_DMA_LCD_BASE + 0xd6)
+#define OMAP1610_DMA_LCD_SRC_EI_B1 (OMAP1610_DMA_LCD_BASE + 0xd8)
+#define OMAP1610_DMA_LCD_SRC_FI_B1_L (OMAP1610_DMA_LCD_BASE + 0xda)
+#define OMAP1610_DMA_LCD_SRC_EN_B1 (OMAP1610_DMA_LCD_BASE + 0xe0)
+#define OMAP1610_DMA_LCD_SRC_FN_B1 (OMAP1610_DMA_LCD_BASE + 0xe4)
+#define OMAP1610_DMA_LCD_LCH_CTRL (OMAP1610_DMA_LCD_BASE + 0xea)
+#define OMAP1610_DMA_LCD_SRC_FI_B1_U (OMAP1610_DMA_LCD_BASE + 0xf4)
+
+#define OMAP1_DMA_TOUT_IRQ (1 << 0)
+#define OMAP_DMA_DROP_IRQ (1 << 1)
+#define OMAP_DMA_HALF_IRQ (1 << 2)
+#define OMAP_DMA_FRAME_IRQ (1 << 3)
+#define OMAP_DMA_LAST_IRQ (1 << 4)
+#define OMAP_DMA_BLOCK_IRQ (1 << 5)
+#define OMAP1_DMA_SYNC_IRQ (1 << 6)
+#define OMAP2_DMA_PKT_IRQ (1 << 7)
+#define OMAP2_DMA_TRANS_ERR_IRQ (1 << 8)
+#define OMAP2_DMA_SECURE_ERR_IRQ (1 << 9)
+#define OMAP2_DMA_SUPERVISOR_ERR_IRQ (1 << 10)
+#define OMAP2_DMA_MISALIGNED_ERR_IRQ (1 << 11)
+
+#define OMAP_DMA_DATA_TYPE_S8 0x00
+#define OMAP_DMA_DATA_TYPE_S16 0x01
+#define OMAP_DMA_DATA_TYPE_S32 0x02
+
+#define OMAP_DMA_SYNC_ELEMENT 0x00
+#define OMAP_DMA_SYNC_FRAME 0x01
+#define OMAP_DMA_SYNC_BLOCK 0x02
+
+#define OMAP_DMA_PORT_EMIFF 0x00
+#define OMAP_DMA_PORT_EMIFS 0x01
+#define OMAP_DMA_PORT_OCP_T1 0x02
+#define OMAP_DMA_PORT_TIPB 0x03
+#define OMAP_DMA_PORT_OCP_T2 0x04
+#define OMAP_DMA_PORT_MPUI 0x05
+
+#define OMAP_DMA_AMODE_CONSTANT 0x00
+#define OMAP_DMA_AMODE_POST_INC 0x01
+#define OMAP_DMA_AMODE_SINGLE_IDX 0x02
+#define OMAP_DMA_AMODE_DOUBLE_IDX 0x03
+
+enum {
+ OMAP_LCD_DMA_B1_TOP,
+ OMAP_LCD_DMA_B1_BOTTOM,
+ OMAP_LCD_DMA_B2_TOP,
+ OMAP_LCD_DMA_B2_BOTTOM
+};
+
+enum omap_dma_burst_mode {
+ OMAP_DMA_DATA_BURST_DIS = 0,
+ OMAP_DMA_DATA_BURST_4,
+ OMAP_DMA_DATA_BURST_8,
+ OMAP_DMA_DATA_BURST_16,
+};
+
+enum omap_dma_color_mode {
+ OMAP_DMA_COLOR_DIS = 0,
+ OMAP_DMA_CONSTANT_FILL,
+ OMAP_DMA_TRANSPARENT_COPY
+};
+
+enum omap_dma_write_mode {
+ OMAP_DMA_WRITE_NON_POSTED = 0,
+ OMAP_DMA_WRITE_POSTED,
+ OMAP_DMA_WRITE_LAST_NON_POSTED
+};
+
+struct omap_dma_channel_params {
+ int data_type;
+ int elem_count;
+ int frame_count;
+
+ int src_port;
+ int src_amode;
+ unsigned long src_start;
+ int src_ei;
+ int src_fi;
+
+ int dst_port;
+ int dst_amode;
+ unsigned long dst_start;
+ int dst_ei;
+ int dst_fi;
+
+ int trigger;
+ int sync_mode;
+ int src_or_dst_synch;
+
+ int ie;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/fpga.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/fpga.h
new file mode 100644
index 0000000..a1b210d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/fpga.h
@@ -0,0 +1,160 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_FPGA_H
+#define __ASM_ARCH_OMAP_FPGA_H
+
+#define omap1510_fpga_init_irq() (0)
+
+#define fpga_read(reg) __raw_readb(reg)
+#define fpga_write(val, reg) __raw_writeb(val, reg)
+
+#define H2P2_DBG_FPGA_BASE 0xE8000000  
+#define H2P2_DBG_FPGA_SIZE SZ_4K  
+#define H2P2_DBG_FPGA_START 0x04000000  
+
+#define H2P2_DBG_FPGA_ETHR_START (H2P2_DBG_FPGA_START + 0x300)
+#define H2P2_DBG_FPGA_FPGA_REV (H2P2_DBG_FPGA_BASE + 0x10)  
+#define H2P2_DBG_FPGA_BOARD_REV (H2P2_DBG_FPGA_BASE + 0x12)  
+#define H2P2_DBG_FPGA_GPIO (H2P2_DBG_FPGA_BASE + 0x14)  
+#define H2P2_DBG_FPGA_LEDS (H2P2_DBG_FPGA_BASE + 0x16)  
+#define H2P2_DBG_FPGA_MISC_INPUTS (H2P2_DBG_FPGA_BASE + 0x18)  
+#define H2P2_DBG_FPGA_LAN_STATUS (H2P2_DBG_FPGA_BASE + 0x1A)  
+#define H2P2_DBG_FPGA_LAN_RESET (H2P2_DBG_FPGA_BASE + 0x1C)  
+
+struct h2p2_dbg_fpga {
+
+ u16 smc91x[8];
+
+ u16 fpga_rev;
+ u16 board_rev;
+ u16 gpio_outputs;
+ u16 leds;
+
+ u16 misc_inputs;
+ u16 lan_status;
+ u16 lan_reset;
+ u16 reserved0;
+
+ u16 ps2_data;
+ u16 ps2_ctrl;
+
+};
+
+#define H2P2_DBG_FPGA_LED_GREEN (1 << 15)
+#define H2P2_DBG_FPGA_LED_AMBER (1 << 14)
+#define H2P2_DBG_FPGA_LED_RED (1 << 13)
+#define H2P2_DBG_FPGA_LED_BLUE (1 << 12)
+
+#define H2P2_DBG_FPGA_LOAD_METER (1 << 0) 
+#define H2P2_DBG_FPGA_LOAD_METER_SIZE 11
+#define H2P2_DBG_FPGA_LOAD_METER_MASK ((1 << H2P2_DBG_FPGA_LOAD_METER_SIZE) - 1)
+
+#define H2P2_DBG_FPGA_P2_LED_TIMER (1 << 0)
+#define H2P2_DBG_FPGA_P2_LED_IDLE (1 << 1)
+
+#define OMAP1510_FPGA_BASE 0xE8000000  
+#define OMAP1510_FPGA_SIZE SZ_4K
+#define OMAP1510_FPGA_START 0x08000000  
+
+#define OMAP1510_FPGA_REV_LOW (OMAP1510_FPGA_BASE + 0x0)
+#define OMAP1510_FPGA_REV_HIGH (OMAP1510_FPGA_BASE + 0x1)
+
+#define OMAP1510_FPGA_LCD_PANEL_CONTROL (OMAP1510_FPGA_BASE + 0x2)
+#define OMAP1510_FPGA_LED_DIGIT (OMAP1510_FPGA_BASE + 0x3)
+#define INNOVATOR_FPGA_HID_SPI (OMAP1510_FPGA_BASE + 0x4)
+#define OMAP1510_FPGA_POWER (OMAP1510_FPGA_BASE + 0x5)
+
+#define OMAP1510_FPGA_ISR_LO (OMAP1510_FPGA_BASE + 0x6)
+#define OMAP1510_FPGA_ISR_HI (OMAP1510_FPGA_BASE + 0x7)
+
+#define OMAP1510_FPGA_IMR_LO (OMAP1510_FPGA_BASE + 0x8)
+#define OMAP1510_FPGA_IMR_HI (OMAP1510_FPGA_BASE + 0x9)
+
+#define OMAP1510_FPGA_HOST_RESET (OMAP1510_FPGA_BASE + 0xa)
+#define OMAP1510_FPGA_RST (OMAP1510_FPGA_BASE + 0xb)
+
+#define OMAP1510_FPGA_AUDIO (OMAP1510_FPGA_BASE + 0xc)
+#define OMAP1510_FPGA_DIP (OMAP1510_FPGA_BASE + 0xe)
+#define OMAP1510_FPGA_FPGA_IO (OMAP1510_FPGA_BASE + 0xf)
+#define OMAP1510_FPGA_UART1 (OMAP1510_FPGA_BASE + 0x14)
+#define OMAP1510_FPGA_UART2 (OMAP1510_FPGA_BASE + 0x15)
+#define OMAP1510_FPGA_OMAP1510_STATUS (OMAP1510_FPGA_BASE + 0x16)
+#define OMAP1510_FPGA_BOARD_REV (OMAP1510_FPGA_BASE + 0x18)
+#define OMAP1510P1_PPT_DATA (OMAP1510_FPGA_BASE + 0x100)
+#define OMAP1510P1_PPT_STATUS (OMAP1510_FPGA_BASE + 0x101)
+#define OMAP1510P1_PPT_CONTROL (OMAP1510_FPGA_BASE + 0x102)
+
+#define OMAP1510_FPGA_TOUCHSCREEN (OMAP1510_FPGA_BASE + 0x204)
+
+#define INNOVATOR_FPGA_INFO (OMAP1510_FPGA_BASE + 0x205)
+#define INNOVATOR_FPGA_LCD_BRIGHT_LO (OMAP1510_FPGA_BASE + 0x206)
+#define INNOVATOR_FPGA_LCD_BRIGHT_HI (OMAP1510_FPGA_BASE + 0x207)
+#define INNOVATOR_FPGA_LED_GRN_LO (OMAP1510_FPGA_BASE + 0x208)
+#define INNOVATOR_FPGA_LED_GRN_HI (OMAP1510_FPGA_BASE + 0x209)
+#define INNOVATOR_FPGA_LED_RED_LO (OMAP1510_FPGA_BASE + 0x20a)
+#define INNOVATOR_FPGA_LED_RED_HI (OMAP1510_FPGA_BASE + 0x20b)
+#define INNOVATOR_FPGA_CAM_USB_CONTROL (OMAP1510_FPGA_BASE + 0x20c)
+#define INNOVATOR_FPGA_EXP_CONTROL (OMAP1510_FPGA_BASE + 0x20d)
+#define INNOVATOR_FPGA_ISR2 (OMAP1510_FPGA_BASE + 0x20e)
+#define INNOVATOR_FPGA_IMR2 (OMAP1510_FPGA_BASE + 0x210)
+
+#define OMAP1510_FPGA_ETHR_START (OMAP1510_FPGA_START + 0x300)
+
+#define OMAP1510_FPGA_RESET_VALUE 0x42
+
+#define OMAP1510_FPGA_PCR_IF_PD0 (1 << 7)
+#define OMAP1510_FPGA_PCR_COM2_EN (1 << 6)
+#define OMAP1510_FPGA_PCR_COM1_EN (1 << 5)
+#define OMAP1510_FPGA_PCR_EXP_PD0 (1 << 4)
+#define OMAP1510_FPGA_PCR_EXP_PD1 (1 << 3)
+#define OMAP1510_FPGA_PCR_48MHZ_CLK (1 << 2)
+#define OMAP1510_FPGA_PCR_4MHZ_CLK (1 << 1)
+#define OMAP1510_FPGA_PCR_RSRVD_BIT0 (1 << 0)
+
+#define OMAP1510_FPGA_HID_SCLK (1<<0)  
+#define OMAP1510_FPGA_HID_MOSI (1<<1)  
+#define OMAP1510_FPGA_HID_nSS (1<<2)  
+#define OMAP1510_FPGA_HID_nHSUS (1<<3)  
+#define OMAP1510_FPGA_HID_MISO (1<<4)  
+#define OMAP1510_FPGA_HID_ATN (1<<5)  
+#define OMAP1510_FPGA_HID_rsrvd (1<<6)
+#define OMAP1510_FPGA_HID_RESETn (1<<7)  
+
+#define OMAP1510_INT_FPGA (IH_GPIO_BASE + 13)
+
+#define OMAP1510_IH_FPGA_BASE IH_BOARD_BASE
+#define OMAP1510_INT_FPGA_ATN (OMAP1510_IH_FPGA_BASE + 0)
+#define OMAP1510_INT_FPGA_ACK (OMAP1510_IH_FPGA_BASE + 1)
+#define OMAP1510_INT_FPGA2 (OMAP1510_IH_FPGA_BASE + 2)
+#define OMAP1510_INT_FPGA3 (OMAP1510_IH_FPGA_BASE + 3)
+#define OMAP1510_INT_FPGA4 (OMAP1510_IH_FPGA_BASE + 4)
+#define OMAP1510_INT_FPGA5 (OMAP1510_IH_FPGA_BASE + 5)
+#define OMAP1510_INT_FPGA6 (OMAP1510_IH_FPGA_BASE + 6)
+#define OMAP1510_INT_FPGA7 (OMAP1510_IH_FPGA_BASE + 7)
+#define OMAP1510_INT_FPGA8 (OMAP1510_IH_FPGA_BASE + 8)
+#define OMAP1510_INT_FPGA9 (OMAP1510_IH_FPGA_BASE + 9)
+#define OMAP1510_INT_FPGA10 (OMAP1510_IH_FPGA_BASE + 10)
+#define OMAP1510_INT_FPGA11 (OMAP1510_IH_FPGA_BASE + 11)
+#define OMAP1510_INT_FPGA12 (OMAP1510_IH_FPGA_BASE + 12)
+#define OMAP1510_INT_ETHER (OMAP1510_IH_FPGA_BASE + 13)
+#define OMAP1510_INT_FPGAUART1 (OMAP1510_IH_FPGA_BASE + 14)
+#define OMAP1510_INT_FPGAUART2 (OMAP1510_IH_FPGA_BASE + 15)
+#define OMAP1510_INT_FPGA_TS (OMAP1510_IH_FPGA_BASE + 16)
+#define OMAP1510_INT_FPGA17 (OMAP1510_IH_FPGA_BASE + 17)
+#define OMAP1510_INT_FPGA_CAM (OMAP1510_IH_FPGA_BASE + 18)
+#define OMAP1510_INT_FPGA_RTC_A (OMAP1510_IH_FPGA_BASE + 19)
+#define OMAP1510_INT_FPGA_RTC_B (OMAP1510_IH_FPGA_BASE + 20)
+#define OMAP1510_INT_FPGA_CD (OMAP1510_IH_FPGA_BASE + 21)
+#define OMAP1510_INT_FPGA22 (OMAP1510_IH_FPGA_BASE + 22)
+#define OMAP1510_INT_FPGA23 (OMAP1510_IH_FPGA_BASE + 23)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio-switch.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio-switch.h
new file mode 100644
index 0000000..20ea3f2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio-switch.h
@@ -0,0 +1,37 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_GPIO_SWITCH_H
+#define __ASM_ARCH_OMAP_GPIO_SWITCH_H
+
+#include <linux/types.h>
+
+#define OMAP_GPIO_SWITCH_TYPE_COVER 0x0000
+#define OMAP_GPIO_SWITCH_TYPE_CONNECTION 0x0001
+#define OMAP_GPIO_SWITCH_TYPE_ACTIVITY 0x0002
+#define OMAP_GPIO_SWITCH_FLAG_INVERTED 0x0001
+#define OMAP_GPIO_SWITCH_FLAG_OUTPUT 0x0002
+
+struct omap_gpio_switch {
+ const char *name;
+ s16 gpio;
+ unsigned flags:4;
+ unsigned type:4;
+
+ u16 debounce_rising;
+
+ u16 debounce_falling;
+
+ void (* notify)(void *data, int state);
+ void *notify_data;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio.h
new file mode 100644
index 0000000..332246d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/gpio.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_GPIO_H
+#define __ASM_ARCH_OMAP_GPIO_H
+
+#include <asm/hardware.h>
+#include <asm/arch/irqs.h>
+#include <asm/io.h>
+
+#define OMAP_MPUIO_BASE (void __iomem *)0xfffb5000
+
+#define OMAP_MPUIO_INPUT_LATCH 0x00
+#define OMAP_MPUIO_OUTPUT 0x04
+#define OMAP_MPUIO_IO_CNTL 0x08
+#define OMAP_MPUIO_KBR_LATCH 0x10
+#define OMAP_MPUIO_KBC 0x14
+#define OMAP_MPUIO_GPIO_EVENT_MODE 0x18
+#define OMAP_MPUIO_GPIO_INT_EDGE 0x1c
+#define OMAP_MPUIO_KBD_INT 0x20
+#define OMAP_MPUIO_GPIO_INT 0x24
+#define OMAP_MPUIO_KBD_MASKIT 0x28
+#define OMAP_MPUIO_GPIO_MASKIT 0x2c
+#define OMAP_MPUIO_GPIO_DEBOUNCING 0x30
+#define OMAP_MPUIO_LATCH 0x34
+
+#define OMAP_MPUIO(nr) (OMAP_MAX_GPIO_LINES + (nr))
+#define OMAP_GPIO_IS_MPUIO(nr) ((nr) >= OMAP_MAX_GPIO_LINES)
+
+#define OMAP_GPIO_IRQ(nr) (OMAP_GPIO_IS_MPUIO(nr) ?   IH_MPUIO_BASE + ((nr) & 0x0f) :   IH_GPIO_BASE + (nr))
+
+struct omap_machine_gpio_bank {
+ int start;
+ int end;
+
+ void (*set_gpio_direction)(int gpio, int is_input);
+ void (*set_gpio_dataout)(int gpio, int enable);
+ int (*get_gpio_datain)(int gpio);
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/hardware.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/hardware.h
new file mode 100644
index 0000000..e515ee8
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/hardware.h
@@ -0,0 +1,157 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_HARDWARE_H
+#define __ASM_ARCH_OMAP_HARDWARE_H
+
+#include <asm/sizes.h>
+#ifndef __ASSEMBLER__
+#include <asm/types.h>
+#include <asm/arch/cpu.h>
+#endif
+#include <asm/arch/io.h>
+#include <asm/arch/serial.h>
+
+#define OMAP_MPU_TIMER1_BASE (0xfffec500)
+#define OMAP_MPU_TIMER2_BASE (0xfffec600)
+#define OMAP_MPU_TIMER3_BASE (0xfffec700)
+#define MPU_TIMER_FREE (1 << 6)
+#define MPU_TIMER_CLOCK_ENABLE (1 << 5)
+#define MPU_TIMER_AR (1 << 1)
+#define MPU_TIMER_ST (1 << 0)
+
+#define CLKGEN_REG_BASE (0xfffece00)
+#define ARM_CKCTL (CLKGEN_REG_BASE + 0x0)
+#define ARM_IDLECT1 (CLKGEN_REG_BASE + 0x4)
+#define ARM_IDLECT2 (CLKGEN_REG_BASE + 0x8)
+#define ARM_EWUPCT (CLKGEN_REG_BASE + 0xC)
+#define ARM_RSTCT1 (CLKGEN_REG_BASE + 0x10)
+#define ARM_RSTCT2 (CLKGEN_REG_BASE + 0x14)
+#define ARM_SYSST (CLKGEN_REG_BASE + 0x18)
+#define ARM_IDLECT3 (CLKGEN_REG_BASE + 0x24)
+
+#define CK_RATEF 1
+#define CK_IDLEF 2
+#define CK_ENABLEF 4
+#define CK_SELECTF 8
+#define SETARM_IDLE_SHIFT
+
+#define DPLL_CTL (0xfffecf00)
+
+#define DSP_CONFIG_REG_BASE (0xe1008000)
+#define DSP_CKCTL (DSP_CONFIG_REG_BASE + 0x0)
+#define DSP_IDLECT1 (DSP_CONFIG_REG_BASE + 0x4)
+#define DSP_IDLECT2 (DSP_CONFIG_REG_BASE + 0x8)
+#define DSP_RSTCT2 (DSP_CONFIG_REG_BASE + 0x14)
+
+#define ULPD_REG_BASE (0xfffe0800)
+#define ULPD_IT_STATUS (ULPD_REG_BASE + 0x14)
+#define ULPD_SETUP_ANALOG_CELL_3 (ULPD_REG_BASE + 0x24)
+#define ULPD_CLOCK_CTRL (ULPD_REG_BASE + 0x30)
+#define DIS_USB_PVCI_CLK (1 << 5)  
+#define USB_MCLK_EN (1 << 4)  
+#define ULPD_SOFT_REQ (ULPD_REG_BASE + 0x34)
+#define SOFT_UDC_REQ (1 << 4)
+#define SOFT_USB_CLK_REQ (1 << 3)
+#define SOFT_DPLL_REQ (1 << 0)
+#define ULPD_DPLL_CTRL (ULPD_REG_BASE + 0x3c)
+#define ULPD_STATUS_REQ (ULPD_REG_BASE + 0x40)
+#define ULPD_APLL_CTRL (ULPD_REG_BASE + 0x4c)
+#define ULPD_POWER_CTRL (ULPD_REG_BASE + 0x50)
+#define ULPD_SOFT_DISABLE_REQ_REG (ULPD_REG_BASE + 0x68)
+#define DIS_MMC2_DPLL_REQ (1 << 11)
+#define DIS_MMC1_DPLL_REQ (1 << 10)
+#define DIS_UART3_DPLL_REQ (1 << 9)
+#define DIS_UART2_DPLL_REQ (1 << 8)
+#define DIS_UART1_DPLL_REQ (1 << 7)
+#define DIS_USB_HOST_DPLL_REQ (1 << 6)
+#define ULPD_SDW_CLK_DIV_CTRL_SEL (ULPD_REG_BASE + 0x74)
+#define ULPD_CAM_CLK_CTRL (ULPD_REG_BASE + 0x7c)
+
+#define OMAP_MPU_WATCHDOG_BASE (0xfffec800)
+#define OMAP_WDT_TIMER (OMAP_MPU_WATCHDOG_BASE + 0x0)
+#define OMAP_WDT_LOAD_TIM (OMAP_MPU_WATCHDOG_BASE + 0x4)
+#define OMAP_WDT_READ_TIM (OMAP_MPU_WATCHDOG_BASE + 0x4)
+#define OMAP_WDT_TIMER_MODE (OMAP_MPU_WATCHDOG_BASE + 0x8)
+
+#define MOD_CONF_CTRL_0 0xfffe1080
+#define MOD_CONF_CTRL_1 0xfffe1110
+
+#define FUNC_MUX_CTRL_0 0xfffe1000
+#define FUNC_MUX_CTRL_1 0xfffe1004
+#define FUNC_MUX_CTRL_2 0xfffe1008
+#define COMP_MODE_CTRL_0 0xfffe100c
+#define FUNC_MUX_CTRL_3 0xfffe1010
+#define FUNC_MUX_CTRL_4 0xfffe1014
+#define FUNC_MUX_CTRL_5 0xfffe1018
+#define FUNC_MUX_CTRL_6 0xfffe101C
+#define FUNC_MUX_CTRL_7 0xfffe1020
+#define FUNC_MUX_CTRL_8 0xfffe1024
+#define FUNC_MUX_CTRL_9 0xfffe1028
+#define FUNC_MUX_CTRL_A 0xfffe102C
+#define FUNC_MUX_CTRL_B 0xfffe1030
+#define FUNC_MUX_CTRL_C 0xfffe1034
+#define FUNC_MUX_CTRL_D 0xfffe1038
+#define PULL_DWN_CTRL_0 0xfffe1040
+#define PULL_DWN_CTRL_1 0xfffe1044
+#define PULL_DWN_CTRL_2 0xfffe1048
+#define PULL_DWN_CTRL_3 0xfffe104c
+#define PULL_DWN_CTRL_4 0xfffe10ac
+
+#define FUNC_MUX_CTRL_E 0xfffe1090
+#define FUNC_MUX_CTRL_F 0xfffe1094
+#define FUNC_MUX_CTRL_10 0xfffe1098
+#define FUNC_MUX_CTRL_11 0xfffe109c
+#define FUNC_MUX_CTRL_12 0xfffe10a0
+#define PU_PD_SEL_0 0xfffe10b4
+#define PU_PD_SEL_1 0xfffe10b8
+#define PU_PD_SEL_2 0xfffe10bc
+#define PU_PD_SEL_3 0xfffe10c0
+#define PU_PD_SEL_4 0xfffe10c4
+
+#define OMAP_TIMER32K_BASE 0xFFFBC400
+
+#define TIPB_PUBLIC_CNTL_BASE 0xfffed300
+#define MPU_PUBLIC_TIPB_CNTL (TIPB_PUBLIC_CNTL_BASE + 0x8)
+#define TIPB_PRIVATE_CNTL_BASE 0xfffeca00
+#define MPU_PRIVATE_TIPB_CNTL (TIPB_PRIVATE_CNTL_BASE + 0x8)
+
+#define MPUI_BASE (0xfffec900)
+#define MPUI_CTRL (MPUI_BASE + 0x0)
+#define MPUI_DEBUG_ADDR (MPUI_BASE + 0x4)
+#define MPUI_DEBUG_DATA (MPUI_BASE + 0x8)
+#define MPUI_DEBUG_FLAG (MPUI_BASE + 0xc)
+#define MPUI_STATUS_REG (MPUI_BASE + 0x10)
+#define MPUI_DSP_STATUS (MPUI_BASE + 0x14)
+#define MPUI_DSP_BOOT_CONFIG (MPUI_BASE + 0x18)
+#define MPUI_DSP_API_CONFIG (MPUI_BASE + 0x1c)
+
+#define OMAP_LPG1_BASE 0xfffbd000
+#define OMAP_LPG2_BASE 0xfffbd800
+#define OMAP_LPG1_LCR (OMAP_LPG1_BASE + 0x00)
+#define OMAP_LPG1_PMR (OMAP_LPG1_BASE + 0x04)
+#define OMAP_LPG2_LCR (OMAP_LPG2_BASE + 0x00)
+#define OMAP_LPG2_PMR (OMAP_LPG2_BASE + 0x04)
+
+#define OMAP_PWL_BASE 0xfffb5800
+#define OMAP_PWL_ENABLE (OMAP_PWL_BASE + 0x00)
+#define OMAP_PWL_CLK_ENABLE (OMAP_PWL_BASE + 0x04)
+
+#include "omap730.h"
+#include "omap1510.h"
+#include "omap24xx.h"
+#include "omap16xx.h"
+
+#ifndef __ASSEMBLER__
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/io.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/io.h
new file mode 100644
index 0000000..12ac3d4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/io.h
@@ -0,0 +1,54 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_ARCH_IO_H
+#define __ASM_ARM_ARCH_IO_H
+
+#include <asm/hardware.h>
+
+#define IO_SPACE_LIMIT 0xffffffff
+
+#define __io(a) ((void __iomem *)(PCIO_BASE + (a)))
+#define __mem_pci(a) (a)
+
+#define PCIO_BASE 0
+
+#ifndef __ASSEMBLER__
+
+#define omap_readb(a) (*(volatile unsigned char *)IO_ADDRESS(a))
+#define omap_readw(a) (*(volatile unsigned short *)IO_ADDRESS(a))
+#define omap_readl(a) (*(volatile unsigned int *)IO_ADDRESS(a))
+
+#define omap_writeb(v,a) (*(volatile unsigned char *)IO_ADDRESS(a) = (v))
+#define omap_writew(v,a) (*(volatile unsigned short *)IO_ADDRESS(a) = (v))
+#define omap_writel(v,a) (*(volatile unsigned int *)IO_ADDRESS(a) = (v))
+
+typedef struct { volatile u16 offset[256]; } __regbase16;
+#define __REGV16(vaddr) ((__regbase16 *)((vaddr)&~0xff))   ->offset[((vaddr)&0xff)>>1]
+#define __REG16(paddr) __REGV16(io_p2v(paddr))
+
+typedef struct { volatile u8 offset[4096]; } __regbase8;
+#define __REGV8(vaddr) ((__regbase8 *)((vaddr)&~4095))   ->offset[((vaddr)&4095)>>0]
+#define __REG8(paddr) __REGV8(io_p2v(paddr))
+
+typedef struct { volatile u32 offset[4096]; } __regbase32;
+#define __REGV32(vaddr) ((__regbase32 *)((vaddr)&~4095))   ->offset[((vaddr)&4095)>>2]
+#define __REG32(paddr) __REGV32(io_p2v(paddr))
+
+#else
+
+#define __REG8(paddr) io_p2v(paddr)
+#define __REG16(paddr) io_p2v(paddr)
+#define __REG32(paddr) io_p2v(paddr)
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/irqs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/irqs.h
new file mode 100644
index 0000000..3e94487
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/irqs.h
@@ -0,0 +1,242 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP15XX_IRQS_H
+#define __ASM_ARCH_OMAP15XX_IRQS_H
+
+#define INT_CAMERA 1
+#define INT_FIQ 3
+#define INT_RTDX 6
+#define INT_DSP_MMU_ABORT 7
+#define INT_HOST 8
+#define INT_ABORT 9
+#define INT_DSP_MAILBOX1 10
+#define INT_DSP_MAILBOX2 11
+#define INT_BRIDGE_PRIV 13
+#define INT_GPIO_BANK1 14
+#define INT_UART3 15
+#define INT_TIMER3 16
+#define INT_DMA_CH0_6 19
+#define INT_DMA_CH1_7 20
+#define INT_DMA_CH2_8 21
+#define INT_DMA_CH3 22
+#define INT_DMA_CH4 23
+#define INT_DMA_CH5 24
+#define INT_DMA_LCD 25
+#define INT_TIMER1 26
+#define INT_WD_TIMER 27
+#define INT_BRIDGE_PUB 28
+#define INT_TIMER2 30
+#define INT_LCD_CTRL 31
+
+#define INT_1510_IH2_IRQ 0
+#define INT_1510_RES2 2
+#define INT_1510_SPI_TX 4
+#define INT_1510_SPI_RX 5
+#define INT_1510_RES12 12
+#define INT_1510_LB_MMU 17
+#define INT_1510_RES18 18
+#define INT_1510_LOCAL_BUS 29
+
+#define INT_1610_IH2_IRQ 0
+#define INT_1610_IH2_FIQ 2
+#define INT_1610_McBSP2_TX 4
+#define INT_1610_McBSP2_RX 5
+#define INT_1610_LCD_LINE 12
+#define INT_1610_GPTIMER1 17
+#define INT_1610_GPTIMER2 18
+#define INT_1610_SSR_FIFO_0 29
+
+#define INT_730_IH2_FIQ 0
+#define INT_730_IH2_IRQ 1
+#define INT_730_USB_NON_ISO 2
+#define INT_730_USB_ISO 3
+#define INT_730_ICR 4
+#define INT_730_EAC 5
+#define INT_730_GPIO_BANK1 6
+#define INT_730_GPIO_BANK2 7
+#define INT_730_GPIO_BANK3 8
+#define INT_730_McBSP2TX 10
+#define INT_730_McBSP2RX 11
+#define INT_730_McBSP2RX_OVF 12
+#define INT_730_LCD_LINE 14
+#define INT_730_GSM_PROTECT 15
+#define INT_730_TIMER3 16
+#define INT_730_GPIO_BANK5 17
+#define INT_730_GPIO_BANK6 18
+#define INT_730_SPGIO_WR 29
+
+#define IH2_BASE 32
+
+#define INT_KEYBOARD (1 + IH2_BASE)
+#define INT_uWireTX (2 + IH2_BASE)
+#define INT_uWireRX (3 + IH2_BASE)
+#define INT_I2C (4 + IH2_BASE)
+#define INT_MPUIO (5 + IH2_BASE)
+#define INT_USB_HHC_1 (6 + IH2_BASE)
+#define INT_McBSP3TX (10 + IH2_BASE)
+#define INT_McBSP3RX (11 + IH2_BASE)
+#define INT_McBSP1TX (12 + IH2_BASE)
+#define INT_McBSP1RX (13 + IH2_BASE)
+#define INT_UART2 (14 + IH2_BASE)
+#define INT_UART1 (15 + IH2_BASE)
+#define INT_BT_MCSI1TX (16 + IH2_BASE)
+#define INT_BT_MCSI1RX (17 + IH2_BASE)
+#define INT_USB_W2FC (20 + IH2_BASE)
+#define INT_1WIRE (21 + IH2_BASE)
+#define INT_OS_TIMER (22 + IH2_BASE)
+#define INT_MMC (23 + IH2_BASE)
+#define INT_GAUGE_32K (24 + IH2_BASE)
+#define INT_RTC_TIMER (25 + IH2_BASE)
+#define INT_RTC_ALARM (26 + IH2_BASE)
+#define INT_MEM_STICK (27 + IH2_BASE)
+#define INT_DSP_MMU (28 + IH2_BASE)
+
+#define INT_1510_COM_SPI_RO (31 + IH2_BASE)
+
+#define INT_1610_FAC (0 + IH2_BASE)
+#define INT_1610_USB_HHC_2 (7 + IH2_BASE)
+#define INT_1610_USB_OTG (8 + IH2_BASE)
+#define INT_1610_SoSSI (9 + IH2_BASE)
+#define INT_1610_SoSSI_MATCH (19 + IH2_BASE)
+#define INT_1610_McBSP2RX_OF (31 + IH2_BASE)
+#define INT_1610_STI (32 + IH2_BASE)
+#define INT_1610_STI_WAKEUP (33 + IH2_BASE)
+#define INT_1610_GPTIMER3 (34 + IH2_BASE)
+#define INT_1610_GPTIMER4 (35 + IH2_BASE)
+#define INT_1610_GPTIMER5 (36 + IH2_BASE)
+#define INT_1610_GPTIMER6 (37 + IH2_BASE)
+#define INT_1610_GPTIMER7 (38 + IH2_BASE)
+#define INT_1610_GPTIMER8 (39 + IH2_BASE)
+#define INT_1610_GPIO_BANK2 (40 + IH2_BASE)
+#define INT_1610_GPIO_BANK3 (41 + IH2_BASE)
+#define INT_1610_MMC2 (42 + IH2_BASE)
+#define INT_1610_CF (43 + IH2_BASE)
+#define INT_1610_WAKE_UP_REQ (46 + IH2_BASE)
+#define INT_1610_GPIO_BANK4 (48 + IH2_BASE)
+#define INT_1610_SPI (49 + IH2_BASE)
+#define INT_1610_DMA_CH6 (53 + IH2_BASE)
+#define INT_1610_DMA_CH7 (54 + IH2_BASE)
+#define INT_1610_DMA_CH8 (55 + IH2_BASE)
+#define INT_1610_DMA_CH9 (56 + IH2_BASE)
+#define INT_1610_DMA_CH10 (57 + IH2_BASE)
+#define INT_1610_DMA_CH11 (58 + IH2_BASE)
+#define INT_1610_DMA_CH12 (59 + IH2_BASE)
+#define INT_1610_DMA_CH13 (60 + IH2_BASE)
+#define INT_1610_DMA_CH14 (61 + IH2_BASE)
+#define INT_1610_DMA_CH15 (62 + IH2_BASE)
+#define INT_1610_NAND (63 + IH2_BASE)
+
+#define INT_730_HW_ERRORS (0 + IH2_BASE)
+#define INT_730_NFIQ_PWR_FAIL (1 + IH2_BASE)
+#define INT_730_CFCD (2 + IH2_BASE)
+#define INT_730_CFIREQ (3 + IH2_BASE)
+#define INT_730_I2C (4 + IH2_BASE)
+#define INT_730_PCC (5 + IH2_BASE)
+#define INT_730_MPU_EXT_NIRQ (6 + IH2_BASE)
+#define INT_730_SPI_100K_1 (7 + IH2_BASE)
+#define INT_730_SYREN_SPI (8 + IH2_BASE)
+#define INT_730_VLYNQ (9 + IH2_BASE)
+#define INT_730_GPIO_BANK4 (10 + IH2_BASE)
+#define INT_730_McBSP1TX (11 + IH2_BASE)
+#define INT_730_McBSP1RX (12 + IH2_BASE)
+#define INT_730_McBSP1RX_OF (13 + IH2_BASE)
+#define INT_730_UART_MODEM_IRDA_2 (14 + IH2_BASE)
+#define INT_730_UART_MODEM_1 (15 + IH2_BASE)
+#define INT_730_MCSI (16 + IH2_BASE)
+#define INT_730_uWireTX (17 + IH2_BASE)
+#define INT_730_uWireRX (18 + IH2_BASE)
+#define INT_730_SMC_CD (19 + IH2_BASE)
+#define INT_730_SMC_IREQ (20 + IH2_BASE)
+#define INT_730_HDQ_1WIRE (21 + IH2_BASE)
+#define INT_730_TIMER32K (22 + IH2_BASE)
+#define INT_730_MMC_SDIO (23 + IH2_BASE)
+#define INT_730_UPLD (24 + IH2_BASE)
+#define INT_730_USB_HHC_1 (27 + IH2_BASE)
+#define INT_730_USB_HHC_2 (28 + IH2_BASE)
+#define INT_730_USB_GENI (29 + IH2_BASE)
+#define INT_730_USB_OTG (30 + IH2_BASE)
+#define INT_730_CAMERA_IF (31 + IH2_BASE)
+#define INT_730_RNG (32 + IH2_BASE)
+#define INT_730_DUAL_MODE_TIMER (33 + IH2_BASE)
+#define INT_730_DBB_RF_EN (34 + IH2_BASE)
+#define INT_730_MPUIO_KEYPAD (35 + IH2_BASE)
+#define INT_730_SHA1_MD5 (36 + IH2_BASE)
+#define INT_730_SPI_100K_2 (37 + IH2_BASE)
+#define INT_730_RNG_IDLE (38 + IH2_BASE)
+#define INT_730_MPUIO (39 + IH2_BASE)
+#define INT_730_LLPC_LCD_CTRL_CAN_BE_OFF (40 + IH2_BASE)
+#define INT_730_LLPC_OE_FALLING (41 + IH2_BASE)
+#define INT_730_LLPC_OE_RISING (42 + IH2_BASE)
+#define INT_730_LLPC_VSYNC (43 + IH2_BASE)
+#define INT_730_WAKE_UP_REQ (46 + IH2_BASE)
+#define INT_730_DMA_CH6 (53 + IH2_BASE)
+#define INT_730_DMA_CH7 (54 + IH2_BASE)
+#define INT_730_DMA_CH8 (55 + IH2_BASE)
+#define INT_730_DMA_CH9 (56 + IH2_BASE)
+#define INT_730_DMA_CH10 (57 + IH2_BASE)
+#define INT_730_DMA_CH11 (58 + IH2_BASE)
+#define INT_730_DMA_CH12 (59 + IH2_BASE)
+#define INT_730_DMA_CH13 (60 + IH2_BASE)
+#define INT_730_DMA_CH14 (61 + IH2_BASE)
+#define INT_730_DMA_CH15 (62 + IH2_BASE)
+#define INT_730_NAND (63 + IH2_BASE)
+
+#define INT_24XX_SYS_NIRQ 7
+#define INT_24XX_SDMA_IRQ0 12
+#define INT_24XX_SDMA_IRQ1 13
+#define INT_24XX_SDMA_IRQ2 14
+#define INT_24XX_SDMA_IRQ3 15
+#define INT_24XX_CAM_IRQ 24
+#define INT_24XX_DSS_IRQ 25
+#define INT_24XX_GPIO_BANK1 29
+#define INT_24XX_GPIO_BANK2 30
+#define INT_24XX_GPIO_BANK3 31
+#define INT_24XX_GPIO_BANK4 32
+#define INT_24XX_GPTIMER1 37
+#define INT_24XX_GPTIMER2 38
+#define INT_24XX_GPTIMER3 39
+#define INT_24XX_GPTIMER4 40
+#define INT_24XX_GPTIMER5 41
+#define INT_24XX_GPTIMER6 42
+#define INT_24XX_GPTIMER7 43
+#define INT_24XX_GPTIMER8 44
+#define INT_24XX_GPTIMER9 45
+#define INT_24XX_GPTIMER10 46
+#define INT_24XX_GPTIMER11 47
+#define INT_24XX_GPTIMER12 48
+#define INT_24XX_MCBSP1_IRQ_TX 59
+#define INT_24XX_MCBSP1_IRQ_RX 60
+#define INT_24XX_MCBSP2_IRQ_TX 62
+#define INT_24XX_MCBSP2_IRQ_RX 63
+#define INT_24XX_UART1_IRQ 72
+#define INT_24XX_UART2_IRQ 73
+#define INT_24XX_UART3_IRQ 74
+#define INT_24XX_MMC_IRQ 83
+
+#define OMAP_MAX_GPIO_LINES 192
+#define IH_GPIO_BASE (128 + IH2_BASE)
+#define IH_MPUIO_BASE (OMAP_MAX_GPIO_LINES + IH_GPIO_BASE)
+#define IH_BOARD_BASE (16 + IH_MPUIO_BASE)
+
+#define OMAP_IRQ_BIT(irq) (1 << ((irq) % 32))
+
+#ifndef __ASSEMBLY__
+
+#endif
+
+#include <asm/hardware.h>
+
+#ifndef NR_IRQS
+#define NR_IRQS IH_BOARD_BASE
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mcbsp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mcbsp.h
new file mode 100644
index 0000000..cae5e3b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mcbsp.h
@@ -0,0 +1,185 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_MCBSP_H
+#define __ASM_ARCH_OMAP_MCBSP_H
+
+#include <asm/hardware.h>
+
+#define OMAP730_MCBSP1_BASE 0xfffb1000
+#define OMAP730_MCBSP2_BASE 0xfffb1800
+
+#define OMAP1510_MCBSP1_BASE 0xe1011800
+#define OMAP1510_MCBSP2_BASE 0xfffb1000
+#define OMAP1510_MCBSP3_BASE 0xe1017000
+
+#define OMAP1610_MCBSP1_BASE 0xe1011800
+#define OMAP1610_MCBSP2_BASE 0xfffb1000
+#define OMAP1610_MCBSP3_BASE 0xe1017000
+
+#define OMAP24XX_MCBSP1_BASE 0x48074000
+#define OMAP24XX_MCBSP2_BASE 0x48076000
+
+#define OMAP_MCBSP_READ(base, reg) __raw_readw((base) + OMAP_MCBSP_REG_##reg)
+#define OMAP_MCBSP_WRITE(base, reg, val) __raw_writew((val), (base) + OMAP_MCBSP_REG_##reg)
+
+#define RRST 0x0001
+#define RRDY 0x0002
+#define RFULL 0x0004
+#define RSYNC_ERR 0x0008
+#define RINTM(value) ((value)<<4)  
+#define ABIS 0x0040
+#define DXENA 0x0080
+#define CLKSTP(value) ((value)<<11)  
+#define RJUST(value) ((value)<<13)  
+#define DLB 0x8000
+
+#define XRST 0x0001
+#define XRDY 0x0002
+#define XEMPTY 0x0004
+#define XSYNC_ERR 0x0008
+#define XINTM(value) ((value)<<4)  
+#define GRST 0x0040
+#define FRST 0x0080
+#define SOFT 0x0100
+#define FREE 0x0200
+
+#define CLKRP 0x0001
+#define CLKXP 0x0002
+#define FSRP 0x0004
+#define FSXP 0x0008
+#define DR_STAT 0x0010
+#define DX_STAT 0x0020
+#define CLKS_STAT 0x0040
+#define SCLKME 0x0080
+#define CLKRM 0x0100
+#define CLKXM 0x0200
+#define FSRM 0x0400
+#define FSXM 0x0800
+#define RIOEN 0x1000
+#define XIOEN 0x2000
+#define IDLE_EN 0x4000
+
+#define RWDLEN1(value) ((value)<<5)  
+#define RFRLEN1(value) ((value)<<8)  
+
+#define XWDLEN1(value) ((value)<<5)  
+#define XFRLEN1(value) ((value)<<8)  
+
+#define RDATDLY(value) (value)  
+#define RFIG 0x0004
+#define RCOMPAND(value) ((value)<<3)  
+#define RWDLEN2(value) ((value)<<5)  
+#define RFRLEN2(value) ((value)<<8)  
+#define RPHASE 0x8000
+
+#define XDATDLY(value) (value)  
+#define XFIG 0x0004
+#define XCOMPAND(value) ((value)<<3)  
+#define XWDLEN2(value) ((value)<<5)  
+#define XFRLEN2(value) ((value)<<8)  
+#define XPHASE 0x8000
+
+#define CLKGDV(value) (value)  
+#define FWID(value) ((value)<<8)  
+
+#define FPER(value) (value)  
+#define FSGM 0x1000
+#define CLKSM 0x2000
+#define CLKSP 0x4000
+#define GSYNC 0x8000
+
+#define RMCM 0x0001
+#define RCBLK(value) ((value)<<2)  
+#define RPABLK(value) ((value)<<5)  
+#define RPBBLK(value) ((value)<<7)  
+
+#define XMCM(value) (value)  
+#define XCBLK(value) ((value)<<2)  
+#define XPABLK(value) ((value)<<5)  
+#define XPBBLK(value) ((value)<<7)  
+
+struct omap_mcbsp_reg_cfg {
+ u16 spcr2;
+ u16 spcr1;
+ u16 rcr2;
+ u16 rcr1;
+ u16 xcr2;
+ u16 xcr1;
+ u16 srgr2;
+ u16 srgr1;
+ u16 mcr2;
+ u16 mcr1;
+ u16 pcr0;
+ u16 rcerc;
+ u16 rcerd;
+ u16 xcerc;
+ u16 xcerd;
+ u16 rcere;
+ u16 rcerf;
+ u16 xcere;
+ u16 xcerf;
+ u16 rcerg;
+ u16 rcerh;
+ u16 xcerg;
+ u16 xcerh;
+};
+
+typedef enum {
+ OMAP_MCBSP1 = 0,
+ OMAP_MCBSP2,
+ OMAP_MCBSP3,
+} omap_mcbsp_id;
+
+typedef int __bitwise omap_mcbsp_io_type_t;
+#define OMAP_MCBSP_IRQ_IO ((__force omap_mcbsp_io_type_t) 1)
+#define OMAP_MCBSP_POLL_IO ((__force omap_mcbsp_io_type_t) 2)
+
+typedef enum {
+ OMAP_MCBSP_WORD_8 = 0,
+ OMAP_MCBSP_WORD_12,
+ OMAP_MCBSP_WORD_16,
+ OMAP_MCBSP_WORD_20,
+ OMAP_MCBSP_WORD_24,
+ OMAP_MCBSP_WORD_32,
+} omap_mcbsp_word_length;
+
+typedef enum {
+ OMAP_MCBSP_CLK_RISING = 0,
+ OMAP_MCBSP_CLK_FALLING,
+} omap_mcbsp_clk_polarity;
+
+typedef enum {
+ OMAP_MCBSP_FS_ACTIVE_HIGH = 0,
+ OMAP_MCBSP_FS_ACTIVE_LOW,
+} omap_mcbsp_fs_polarity;
+
+typedef enum {
+ OMAP_MCBSP_CLK_STP_MODE_NO_DELAY = 0,
+ OMAP_MCBSP_CLK_STP_MODE_DELAY,
+} omap_mcbsp_clk_stp_mode;
+
+typedef enum {
+ OMAP_MCBSP_SPI_MASTER = 0,
+ OMAP_MCBSP_SPI_SLAVE,
+} omap_mcbsp_spi_mode;
+
+struct omap_mcbsp_spi_cfg {
+ omap_mcbsp_spi_mode spi_mode;
+ omap_mcbsp_clk_polarity rx_clock_polarity;
+ omap_mcbsp_clk_polarity tx_clock_polarity;
+ omap_mcbsp_fs_polarity fsx_polarity;
+ u8 clk_div;
+ omap_mcbsp_clk_stp_mode clk_stp_mode;
+ omap_mcbsp_word_length word_length;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/memory.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/memory.h
new file mode 100644
index 0000000..8b064b8
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/memory.h
@@ -0,0 +1,19 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_MEMORY_H
+#define __ASM_ARCH_MEMORY_H
+
+#define __virt_to_bus(x) __virt_to_phys(x)
+#define __bus_to_virt(x) __phys_to_virt(x)
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mtd-xip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mtd-xip.h
new file mode 100644
index 0000000..9b60aef
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mtd-xip.h
@@ -0,0 +1,31 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARCH_OMAP_MTD_XIP_H__
+#define __ARCH_OMAP_MTD_XIP_H__
+
+#include <asm/hardware.h>
+#define OMAP_MPU_TIMER_BASE (0xfffec500)
+#define OMAP_MPU_TIMER_OFFSET 0x100
+
+typedef struct {
+ u32 cntl;
+ u32 load_tim;
+ u32 read_tim;
+} xip_omap_mpu_timer_regs_t;
+
+#define xip_omap_mpu_timer_base(n)  ((volatile xip_omap_mpu_timer_regs_t*)IO_ADDRESS(OMAP_MPU_TIMER_BASE +   (n)*OMAP_MPU_TIMER_OFFSET))
+
+#define xip_irqpending()   (omap_readl(OMAP_IH1_ITR) & ~omap_readl(OMAP_IH1_MIR))
+#define xip_currtime() (~xip_omap_mpu_timer_read(0))
+#define xip_elapsed_since(x) (signed)((~xip_omap_mpu_timer_read(0) - (x)) / 6)
+#define xip_cpu_idle() asm volatile ("mcr p15, 0, %0, c7, c0, 4" :: "r" (1))
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mux.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mux.h
new file mode 100644
index 0000000..72da54e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/mux.h
@@ -0,0 +1,391 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_MUX_H
+#define __ASM_ARCH_MUX_H
+
+#define PU_PD_SEL_NA 0  
+#define PULL_DWN_CTRL_NA 0  
+
+#define MUX_REG(reg, mode_offset, mode) .mux_reg = FUNC_MUX_CTRL_##reg,   .mask_offset = mode_offset,   .mask = mode,
+
+#define PULL_REG(reg, bit, status) .pull_reg = PULL_DWN_CTRL_##reg,   .pull_bit = bit,   .pull_val = status,
+
+#define PU_PD_REG(reg, status) .pu_pd_reg = PU_PD_SEL_##reg,   .pu_pd_val = status,
+
+#define MUX_REG_730(reg, mode_offset, mode)   .mux_reg = OMAP730_IO_CONF_##reg,   .mask_offset = mode_offset,   .mask = mode,
+
+#define PULL_REG_730(reg, bit, status) .pull_reg = OMAP730_IO_CONF_##reg,   .pull_bit = bit,   .pull_val = status,
+
+#define MUX_CFG(desc, mux_reg, mode_offset, mode,   pull_reg, pull_bit, pull_status,   pu_pd_reg, pu_pd_status, debug_status)  {   .name = desc,   .debug = debug_status,   MUX_REG(mux_reg, mode_offset, mode)   PULL_REG(pull_reg, pull_bit, !pull_status)   PU_PD_REG(pu_pd_reg, pu_pd_status)  },
+
+#define MUX_CFG_730(desc, mux_reg, mode_offset, mode,   pull_bit, pull_status, debug_status) {   .name = desc,   .debug = debug_status,   MUX_REG_730(mux_reg, mode_offset, mode)   PULL_REG_730(mux_reg, pull_bit, pull_status)   PU_PD_REG(NA, 0)  },
+
+#define MUX_CFG_24XX(desc, reg_offset, mode,   pull_en, pull_mode, dbg)  {   .name = desc,   .debug = dbg,   .mux_reg = reg_offset,   .mask = mode,   .pull_val = pull_en,   .pu_pd_val = pull_mode,  },
+
+#define PULL_DISABLED 0
+#define PULL_ENABLED 1
+
+#define PULL_DOWN 0
+#define PULL_UP 1
+
+struct pin_config {
+ char *name;
+ unsigned char busy;
+ unsigned char debug;
+
+ const char *mux_reg_name;
+ const unsigned int mux_reg;
+ const unsigned char mask_offset;
+ const unsigned char mask;
+
+ const char *pull_name;
+ const unsigned int pull_reg;
+ const unsigned char pull_val;
+ const unsigned char pull_bit;
+
+ const char *pu_pd_name;
+ const unsigned int pu_pd_reg;
+ const unsigned char pu_pd_val;
+};
+
+enum omap730_index {
+
+ E2_730_KBR0,
+ J7_730_KBR1,
+ E1_730_KBR2,
+ F3_730_KBR3,
+ D2_730_KBR4,
+ AA20_730_KBR5,
+ V17_730_KBR6,
+ C2_730_KBC0,
+ D3_730_KBC1,
+ E4_730_KBC2,
+ F4_730_KBC3,
+ E3_730_KBC4,
+
+ AA17_730_USB_DM,
+ W16_730_USB_PU_EN,
+ W17_730_USB_VBUSI,
+
+ V19_730_GPIO_15,
+ M19_730_GPIO_77,
+ C21_730_GPIO_121_122,
+ K19_730_GPIO_126,
+ K15_730_GPIO_127,
+
+ P15_730_GPIO_16_17,
+
+ M15_730_GPIO_83,
+ N20_730_GPIO_82,
+ N18_730_GPIO_81,
+ N19_730_GPIO_80,
+ L15_730_GPIO_76,
+
+ UART1_CTS_RTS,
+ OMAP_730_GPIOS_42_43,
+ UART1_TX_RX,
+ OMAP_730_GPIOS_40_41,
+ UART1_USB_RX_TX,
+ UART1_USB_RTS,
+ UART1_USB_CTS
+};
+
+enum omap1xxx_index {
+
+ UART1_TX = 0,
+ UART1_RTS,
+
+ UART2_TX,
+ UART2_RX,
+ UART2_CTS,
+ UART2_RTS,
+
+ UART3_TX,
+ UART3_RX,
+ UART3_CTS,
+ UART3_RTS,
+ UART3_CLKREQ,
+ UART3_BCLK,
+ Y15_1610_UART3_RTS,
+
+ PWT,
+ PWL,
+
+ R18_USB_VBUS,
+ R18_1510_USB_GPIO0,
+ W4_USB_PUEN,
+ W4_USB_CLKO,
+ W4_USB_HIGHZ,
+ W4_GPIO58,
+
+ USB1_SUSP,
+ USB1_SEO,
+ W13_1610_USB1_SE0,
+ USB1_TXEN,
+ USB1_TXD,
+ USB1_VP,
+ USB1_VM,
+ USB1_RCV,
+ USB1_SPEED,
+ R13_1610_USB1_SPEED,
+ R13_1710_USB1_SE0,
+
+ USB2_SUSP,
+ USB2_VP,
+ USB2_TXEN,
+ USB2_VM,
+ USB2_RCV,
+ USB2_SEO,
+ USB2_TXD,
+
+ R18_1510_GPIO0,
+ R19_1510_GPIO1,
+ M14_1510_GPIO2,
+
+ P18_1610_GPIO3,
+ Y15_1610_GPIO17,
+
+ R18_1710_GPIO0,
+ V2_1710_GPIO10,
+ N21_1710_GPIO14,
+ W15_1710_GPIO40,
+
+ MPUIO2,
+ N15_1610_MPUIO2,
+ MPUIO4,
+ MPUIO5,
+ T20_1610_MPUIO5,
+ W11_1610_MPUIO6,
+ V10_1610_MPUIO7,
+ W11_1610_MPUIO9,
+ V10_1610_MPUIO10,
+ W10_1610_MPUIO11,
+ E20_1610_MPUIO13,
+ U20_1610_MPUIO14,
+ E19_1610_MPUIO15,
+
+ MCBSP2_CLKR,
+ MCBSP2_CLKX,
+ MCBSP2_DR,
+ MCBSP2_DX,
+ MCBSP2_FSR,
+ MCBSP2_FSX,
+
+ MCBSP3_CLKX,
+
+ BALLOUT_V8_ARMIO3,
+ N20_HDQ,
+
+ W8_1610_MMC2_DAT0,
+ V8_1610_MMC2_DAT1,
+ W15_1610_MMC2_DAT2,
+ R10_1610_MMC2_DAT3,
+ Y10_1610_MMC2_CLK,
+ Y8_1610_MMC2_CMD,
+ V9_1610_MMC2_CMDDIR,
+ V5_1610_MMC2_DATDIR0,
+ W19_1610_MMC2_DATDIR1,
+ R18_1610_MMC2_CLKIN,
+
+ M19_1610_ETM_PSTAT0,
+ L15_1610_ETM_PSTAT1,
+ L18_1610_ETM_PSTAT2,
+ L19_1610_ETM_D0,
+ J19_1610_ETM_D6,
+ J18_1610_ETM_D7,
+
+ P20_1610_GPIO4,
+ V9_1610_GPIO7,
+ W8_1610_GPIO9,
+ N20_1610_GPIO11,
+ N19_1610_GPIO13,
+ P10_1610_GPIO22,
+ V5_1610_GPIO24,
+ AA20_1610_GPIO_41,
+ W19_1610_GPIO48,
+ M7_1610_GPIO62,
+ V14_16XX_GPIO37,
+ R9_16XX_GPIO18,
+ L14_16XX_GPIO49,
+
+ V19_1610_UWIRE_SCLK,
+ U18_1610_UWIRE_SDI,
+ W21_1610_UWIRE_SDO,
+ N14_1610_UWIRE_CS0,
+ P15_1610_UWIRE_CS3,
+ N15_1610_UWIRE_CS1,
+
+ U19_1610_SPIF_SCK,
+ U18_1610_SPIF_DIN,
+ P20_1610_SPIF_DIN,
+ W21_1610_SPIF_DOUT,
+ R18_1610_SPIF_DOUT,
+ N14_1610_SPIF_CS0,
+ N15_1610_SPIF_CS1,
+ T19_1610_SPIF_CS2,
+ P15_1610_SPIF_CS3,
+
+ L3_1610_FLASH_CS2B_OE,
+ M8_1610_FLASH_CS2B_WE,
+
+ MMC_CMD,
+ MMC_DAT1,
+ MMC_DAT2,
+ MMC_DAT0,
+ MMC_CLK,
+ MMC_DAT3,
+
+ M15_1710_MMC_CLKI,
+ P19_1710_MMC_CMDDIR,
+ P20_1710_MMC_DATDIR0,
+
+ W9_USB0_TXEN,
+ AA9_USB0_VP,
+ Y5_USB0_RCV,
+ R9_USB0_VM,
+ V6_USB0_TXD,
+ W5_USB0_SE0,
+ V9_USB0_SPEED,
+ V9_USB0_SUSP,
+
+ W9_USB2_TXEN,
+ AA9_USB2_VP,
+ Y5_USB2_RCV,
+ R9_USB2_VM,
+ V6_USB2_TXD,
+ W5_USB2_SE0,
+
+ R13_1610_UART1_TX,
+ V14_16XX_UART1_RX,
+ R14_1610_UART1_CTS,
+ AA15_1610_UART1_RTS,
+ R9_16XX_UART2_RX,
+ L14_16XX_UART3_RX,
+
+ I2C_SCL,
+ I2C_SDA,
+
+ F18_1610_KBC0,
+ D20_1610_KBC1,
+ D19_1610_KBC2,
+ E18_1610_KBC3,
+ C21_1610_KBC4,
+ G18_1610_KBR0,
+ F19_1610_KBR1,
+ H14_1610_KBR2,
+ E20_1610_KBR3,
+ E19_1610_KBR4,
+ N19_1610_KBR5,
+
+ T20_1610_LOW_PWR,
+
+ V5_1710_MCLK_ON,
+ V5_1710_MCLK_OFF,
+ R10_1610_MCLK_ON,
+ R10_1610_MCLK_OFF,
+
+ P11_1610_CF_CD2,
+ R11_1610_CF_IOIS16,
+ V10_1610_CF_IREQ,
+ W10_1610_CF_RESET,
+ W11_1610_CF_CD1,
+};
+
+enum omap24xx_index {
+
+ M19_24XX_I2C1_SCL,
+ L15_24XX_I2C1_SDA,
+ J15_24XX_I2C2_SCL,
+ H19_24XX_I2C2_SDA,
+
+ W19_24XX_SYS_NIRQ,
+
+ W14_24XX_SYS_CLKOUT,
+
+ L3_GPMC_WAIT0,
+ N7_GPMC_WAIT1,
+ M1_GPMC_WAIT2,
+ P1_GPMC_WAIT3,
+
+ Y15_24XX_MCBSP2_CLKX,
+ R14_24XX_MCBSP2_FSX,
+ W15_24XX_MCBSP2_DR,
+ V15_24XX_MCBSP2_DX,
+
+ M21_242X_GPIO11,
+ AA10_242X_GPIO13,
+ AA6_242X_GPIO14,
+ AA4_242X_GPIO15,
+ Y11_242X_GPIO16,
+ AA12_242X_GPIO17,
+ AA8_242X_GPIO58,
+ Y20_24XX_GPIO60,
+ W4__24XX_GPIO74,
+ M15_24XX_GPIO92,
+ V14_24XX_GPIO117,
+
+ V4_242X_GPIO49,
+ W2_242X_GPIO50,
+ U4_242X_GPIO51,
+ V3_242X_GPIO52,
+ V2_242X_GPIO53,
+ V6_242X_GPIO53,
+ T4_242X_GPIO54,
+ Y4_242X_GPIO54,
+ T3_242X_GPIO55,
+ U2_242X_GPIO56,
+
+ AA10_242X_DMAREQ0,
+ AA6_242X_DMAREQ1,
+ E4_242X_DMAREQ2,
+ G4_242X_DMAREQ3,
+ D3_242X_DMAREQ4,
+ E3_242X_DMAREQ5,
+
+ P20_24XX_TSC_IRQ,
+
+ K15_24XX_UART3_TX,
+ K14_24XX_UART3_RX,
+
+ G19_24XX_MMC_CLKO,
+ H18_24XX_MMC_CMD,
+ F20_24XX_MMC_DAT0,
+ H14_24XX_MMC_DAT1,
+ E19_24XX_MMC_DAT2,
+ D19_24XX_MMC_DAT3,
+ F19_24XX_MMC_DAT_DIR0,
+ E20_24XX_MMC_DAT_DIR1,
+ F18_24XX_MMC_DAT_DIR2,
+ E18_24XX_MMC_DAT_DIR3,
+ G18_24XX_MMC_CMD_DIR,
+ H15_24XX_MMC_CLKI,
+
+ T19_24XX_KBR0,
+ R19_24XX_KBR1,
+ V18_24XX_KBR2,
+ M21_24XX_KBR3,
+ E5__24XX_KBR4,
+ M18_24XX_KBR5,
+ R20_24XX_KBC0,
+ M14_24XX_KBC1,
+ H19_24XX_KBC2,
+ V17_24XX_KBC3,
+ P21_24XX_KBC4,
+ L14_24XX_KBC5,
+ N19_24XX_KBC6,
+
+ B3__24XX_KBR5,
+ AA4_24XX_KBC2,
+ B13_24XX_KBC6,
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/omap24xx.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/omap24xx.h
new file mode 100644
index 0000000..37def2f
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/omap24xx.h
@@ -0,0 +1,30 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP24XX_H
+#define __ASM_ARCH_OMAP24XX_H
+
+#define L4_24XX_BASE 0x48000000
+#define L3_24XX_BASE 0x68000000
+
+#define OMAP24XX_IC_BASE (L4_24XX_BASE + 0xfe000)
+#define VA_IC_BASE IO_ADDRESS(OMAP24XX_IC_BASE)
+#define OMAP24XX_IVA_INTC_BASE 0x40000000
+#define IRQ_SIR_IRQ 0x0040
+
+#define OMAP24XX_32KSYNCT_BASE (L4_24XX_BASE + 0x4000)
+#define OMAP24XX_PRCM_BASE (L4_24XX_BASE + 0x8000)
+#define OMAP24XX_SDRC_BASE (L3_24XX_BASE + 0x9000)
+
+#define OMAP242X_CONTROL_STATUS (L4_24XX_BASE + 0x2f8)
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/serial.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/serial.h
new file mode 100644
index 0000000..6ab8613
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/serial.h
@@ -0,0 +1,21 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_SERIAL_H
+#define __ASM_ARCH_SERIAL_H
+
+#define OMAP_MAX_NR_PORTS 3
+#define OMAP1510_BASE_BAUD (12000000/16)
+#define OMAP16XX_BASE_BAUD (48000000/16)
+
+#define is_omap_port(p) ({int __ret = 0;   if (p == IO_ADDRESS(OMAP_UART1_BASE) ||   p == IO_ADDRESS(OMAP_UART2_BASE) ||   p == IO_ADDRESS(OMAP_UART3_BASE))   __ret = 1;   __ret;   })
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/timex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/timex.h
new file mode 100644
index 0000000..2c9234c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/timex.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARCH_OMAP_TIMEX_H
+#define __ASM_ARCH_OMAP_TIMEX_H
+
+#define CLOCK_TICK_RATE (HZ * 100000UL)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/vmalloc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/vmalloc.h
new file mode 100644
index 0000000..f2b5b44
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/arch/vmalloc.h
@@ -0,0 +1,13 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#define VMALLOC_END (PAGE_OFFSET + 0x10000000)
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/atomic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/atomic.h
new file mode 100644
index 0000000..6f1921a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/atomic.h
@@ -0,0 +1,21 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_ATOMIC_H
+#define __ASM_ARM_ATOMIC_H
+
+#include <linux/compiler.h>
+
+typedef struct { volatile int counter; } atomic_t;
+
+#define ATOMIC_INIT(i) { (i) }
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/auxvec.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/auxvec.h
new file mode 100644
index 0000000..c7e839c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/auxvec.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_AUXVEC_H
+#define __ASMARM_AUXVEC_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/bitops.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/bitops.h
new file mode 100644
index 0000000..ff76a68
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/bitops.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_BITOPS_H
+#define __ASM_ARM_BITOPS_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h
new file mode 100644
index 0000000..4da37bf
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h
@@ -0,0 +1,51 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_BYTEORDER_H
+#define __ASM_ARM_BYTEORDER_H
+
+#include <linux/compiler.h>
+#include <asm/types.h>
+
+static inline __attribute_const__ __u32 ___arch__swab32(__u32 x)
+{
+ __u32 t;
+
+#ifndef __thumb__
+ if (!__builtin_constant_p(x)) {
+
+ asm ("eor\t%0, %1, %1, ror #16" : "=r" (t) : "r" (x));
+ } else
+#endif
+ t = x ^ ((x << 16) | (x >> 16));
+
+ x = (x << 24) | (x >> 8);
+ t &= ~0x00FF0000;
+ x ^= (t >> 8);
+
+ return x;
+}
+
+#define __arch__swab32(x) ___arch__swab32(x)
+
+#ifndef __STRICT_ANSI__
+#define __BYTEORDER_HAS_U64__
+#define __SWAB_64_THRU_32__
+#endif
+
+#ifdef __ARMEB__
+#include <linux/byteorder/big_endian.h>
+#else
+#include <linux/byteorder/little_endian.h>
+#endif
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cache.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cache.h
new file mode 100644
index 0000000..be26423
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cache.h
@@ -0,0 +1,18 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_CACHE_H
+#define __ASMARM_CACHE_H
+
+#define L1_CACHE_SHIFT 5
+#define L1_CACHE_BYTES (1 << L1_CACHE_SHIFT)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cacheflush.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cacheflush.h
new file mode 100644
index 0000000..3ffa87a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cacheflush.h
@@ -0,0 +1,107 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_CACHEFLUSH_H
+#define _ASMARM_CACHEFLUSH_H
+
+#include <linux/sched.h>
+#include <linux/mm.h>
+
+#include <asm/glue.h>
+#include <asm/shmparam.h>
+
+#define CACHE_COLOUR(vaddr) ((vaddr & (SHMLBA - 1)) >> PAGE_SHIFT)
+
+#undef _CACHE
+#undef MULTI_CACHE
+
+#if !defined(_CACHE) && !defined(MULTI_CACHE)
+#error Unknown cache maintainence model
+#endif
+
+#define PG_dcache_dirty PG_arch_1
+
+struct cpu_cache_fns {
+ void (*flush_kern_all)(void);
+ void (*flush_user_all)(void);
+ void (*flush_user_range)(unsigned long, unsigned long, unsigned int);
+
+ void (*coherent_kern_range)(unsigned long, unsigned long);
+ void (*coherent_user_range)(unsigned long, unsigned long);
+ void (*flush_kern_dcache_page)(void *);
+
+ void (*dma_inv_range)(unsigned long, unsigned long);
+ void (*dma_clean_range)(unsigned long, unsigned long);
+ void (*dma_flush_range)(unsigned long, unsigned long);
+};
+
+#ifdef MULTI_CACHE
+
+#define __cpuc_flush_kern_all cpu_cache.flush_kern_all
+#define __cpuc_flush_user_all cpu_cache.flush_user_all
+#define __cpuc_flush_user_range cpu_cache.flush_user_range
+#define __cpuc_coherent_kern_range cpu_cache.coherent_kern_range
+#define __cpuc_coherent_user_range cpu_cache.coherent_user_range
+#define __cpuc_flush_dcache_page cpu_cache.flush_kern_dcache_page
+
+#define dmac_inv_range cpu_cache.dma_inv_range
+#define dmac_clean_range cpu_cache.dma_clean_range
+#define dmac_flush_range cpu_cache.dma_flush_range
+
+#else
+
+#define __cpuc_flush_kern_all __glue(_CACHE,_flush_kern_cache_all)
+#define __cpuc_flush_user_all __glue(_CACHE,_flush_user_cache_all)
+#define __cpuc_flush_user_range __glue(_CACHE,_flush_user_cache_range)
+#define __cpuc_coherent_kern_range __glue(_CACHE,_coherent_kern_range)
+#define __cpuc_coherent_user_range __glue(_CACHE,_coherent_user_range)
+#define __cpuc_flush_dcache_page __glue(_CACHE,_flush_kern_dcache_page)
+
+#define dmac_inv_range __glue(_CACHE,_dma_inv_range)
+#define dmac_clean_range __glue(_CACHE,_dma_clean_range)
+#define dmac_flush_range __glue(_CACHE,_dma_flush_range)
+
+#endif
+
+#define flush_cache_vmap(start, end) flush_cache_all()
+#define flush_cache_vunmap(start, end) flush_cache_all()
+
+#define copy_to_user_page(vma, page, vaddr, dst, src, len)   do {   memcpy(dst, src, len);   flush_ptrace_access(vma, page, vaddr, dst, len, 1);  } while (0)
+
+#define copy_from_user_page(vma, page, vaddr, dst, src, len)   do {   memcpy(dst, src, len);   } while (0)
+
+#define flush_cache_all() __cpuc_flush_kern_all()
+#define flush_cache_user_range(vma,start,end)   __cpuc_coherent_user_range((start) & PAGE_MASK, PAGE_ALIGN(end))
+#define flush_icache_range(s,e) __cpuc_coherent_kern_range(s,e)
+#define clean_dcache_area(start,size) cpu_dcache_clean_area(start, size)
+
+#define flush_dcache_mmap_lock(mapping)   write_lock_irq(&(mapping)->tree_lock)
+#define flush_dcache_mmap_unlock(mapping)   write_unlock_irq(&(mapping)->tree_lock)
+
+#define flush_icache_user_range(vma,page,addr,len)   flush_dcache_page(page)
+
+#define flush_icache_page(vma,page) do { } while (0)
+
+#define __cacheid_present(val) (val != read_cpuid(CPUID_ID))
+#define __cacheid_vivt(val) ((val & (15 << 25)) != (14 << 25))
+#define __cacheid_vipt(val) ((val & (15 << 25)) == (14 << 25))
+#define __cacheid_vipt_nonaliasing(val) ((val & (15 << 25 | 1 << 23)) == (14 << 25))
+#define __cacheid_vipt_aliasing(val) ((val & (15 << 25 | 1 << 23)) == (14 << 25 | 1 << 23))
+
+#define cache_is_vivt()   ({   unsigned int __val = read_cpuid(CPUID_CACHETYPE);   (!__cacheid_present(__val)) || __cacheid_vivt(__val);   })
+
+#define cache_is_vipt()   ({   unsigned int __val = read_cpuid(CPUID_CACHETYPE);   __cacheid_present(__val) && __cacheid_vipt(__val);   })
+
+#define cache_is_vipt_nonaliasing()   ({   unsigned int __val = read_cpuid(CPUID_CACHETYPE);   __cacheid_present(__val) &&   __cacheid_vipt_nonaliasing(__val);   })
+
+#define cache_is_vipt_aliasing()   ({   unsigned int __val = read_cpuid(CPUID_CACHETYPE);   __cacheid_present(__val) &&   __cacheid_vipt_aliasing(__val);   })
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cputime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cputime.h
new file mode 100644
index 0000000..4a4097f
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/cputime.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_CPUTIME_H
+#define __ARM_CPUTIME_H
+
+#include <asm-generic/cputime.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/delay.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/delay.h
new file mode 100644
index 0000000..631fd9b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/delay.h
@@ -0,0 +1,22 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_DELAY_H
+#define __ASM_ARM_DELAY_H
+
+#include <asm/param.h>  
+
+#define MAX_UDELAY_MS 2
+
+#define udelay(n)   (__builtin_constant_p(n) ?   ((n) > (MAX_UDELAY_MS * 1000) ? __bad_udelay() :   __const_udelay((n) * ((2199023U*HZ)>>11))) :   __udelay(n))
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/div64.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/div64.h
new file mode 100644
index 0000000..c03a0e4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/div64.h
@@ -0,0 +1,27 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_DIV64
+#define __ASM_ARM_DIV64
+
+#include <asm/system.h>
+
+#ifdef __ARMEB__
+#define __xh "r0"
+#define __xl "r1"
+#else
+#define __xl "r0"
+#define __xh "r1"
+#endif
+
+#define do_div(n,base)  ({   register unsigned int __base asm("r4") = base;   register unsigned long long __n asm("r0") = n;   register unsigned long long __res asm("r2");   register unsigned int __rem asm(__xh);   asm( __asmeq("%0", __xh)   __asmeq("%1", "r2")   __asmeq("%2", "r0")   __asmeq("%3", "r4")   "bl	__do_div64"   : "=r" (__rem), "=r" (__res)   : "r" (__n), "r" (__base)   : "ip", "lr", "cc");   n = __res;   __rem;  })
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma-mapping.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma-mapping.h
new file mode 100644
index 0000000..7e65009
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma-mapping.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef ASMARM_DMA_MAPPING_H
+#define ASMARM_DMA_MAPPING_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma.h
new file mode 100644
index 0000000..7eeeb78
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dma.h
@@ -0,0 +1,45 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_DMA_H
+#define __ASM_ARM_DMA_H
+
+typedef unsigned int dmach_t;
+
+#include <linux/spinlock.h>
+#include <asm/system.h>
+#include <asm/scatterlist.h>
+#include <asm/arch/dma.h>
+
+#ifndef MAX_DMA_ADDRESS
+#define MAX_DMA_ADDRESS 0xffffffff
+#endif
+
+typedef unsigned int dmamode_t;
+
+#define DMA_MODE_MASK 3
+
+#define DMA_MODE_READ 0
+#define DMA_MODE_WRITE 1
+#define DMA_MODE_CASCADE 2
+#define DMA_AUTOINIT 4
+
+#define clear_dma_ff(channel)
+
+#define set_dma_addr(channel, addr)   __set_dma_addr(channel, bus_to_virt(addr))
+
+#ifndef NO_DMA
+#define NO_DMA 255
+#endif
+
+#define isa_dma_bridge_buggy (0)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/domain.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/domain.h
new file mode 100644
index 0000000..973109e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/domain.h
@@ -0,0 +1,32 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PROC_DOMAIN_H
+#define __ASM_PROC_DOMAIN_H
+
+#define DOMAIN_KERNEL 0
+#define DOMAIN_TABLE 0
+#define DOMAIN_USER 1
+#define DOMAIN_IO 2
+
+#define DOMAIN_NOACCESS 0
+#define DOMAIN_CLIENT 1
+#define DOMAIN_MANAGER 3
+
+#define domain_val(dom,type) ((type) << (2*(dom)))
+
+#ifndef __ASSEMBLY__
+
+#define set_domain(x) do { } while (0)
+#define modify_domain(dom,type) do { } while (0)
+
+#endif
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dyntick.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dyntick.h
new file mode 100644
index 0000000..1f323f2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/dyntick.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_DYNTICK_H
+#define _ASMARM_DYNTICK_H
+
+#include <asm/mach/time.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/elf.h
new file mode 100644
index 0000000..e9d095e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/elf.h
@@ -0,0 +1,63 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_ELF_H
+#define __ASMARM_ELF_H
+
+#include <asm/ptrace.h>
+#include <asm/user.h>
+#ifdef __KERNEL
+#include <asm/procinfo.h>
+#endif
+
+typedef unsigned long elf_greg_t;
+typedef unsigned long elf_freg_t[3];
+
+#define EM_ARM 40
+#define EF_ARM_APCS26 0x08
+#define EF_ARM_SOFT_FLOAT 0x200
+#define EF_ARM_EABI_MASK 0xFF000000
+
+#define R_ARM_NONE 0
+#define R_ARM_PC24 1
+#define R_ARM_ABS32 2
+#define R_ARM_CALL 28
+#define R_ARM_JUMP24 29
+
+#define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t))
+typedef elf_greg_t elf_gregset_t[ELF_NGREG];
+
+typedef struct user_fp elf_fpregset_t;
+
+#define elf_check_arch(x) ( ((x)->e_machine == EM_ARM) && (ELF_PROC_OK((x))) )
+
+#define ELF_CLASS ELFCLASS32
+#ifdef __ARMEB__
+#define ELF_DATA ELFDATA2MSB
+#else
+#define ELF_DATA ELFDATA2LSB
+#endif
+#define ELF_ARCH EM_ARM
+
+#define USE_ELF_CORE_DUMP
+#define ELF_EXEC_PAGESIZE 4096
+
+#define ELF_ET_DYN_BASE (2 * TASK_SIZE / 3)
+
+#define ELF_PLAT_INIT(_r, load_addr) (_r)->ARM_r0 = 0
+
+#define ELF_HWCAP (elf_hwcap)
+
+#define ELF_PLATFORM_SIZE 8
+
+#define ELF_PLATFORM (elf_platform)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/errno.h
new file mode 100644
index 0000000..6be7048
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/errno.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARM_ERRNO_H
+#define _ARM_ERRNO_H
+
+#include <asm-generic/errno.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fcntl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fcntl.h
new file mode 100644
index 0000000..42351ea
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fcntl.h
@@ -0,0 +1,22 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARM_FCNTL_H
+#define _ARM_FCNTL_H
+
+#define O_DIRECTORY 040000  
+#define O_NOFOLLOW 0100000  
+#define O_DIRECT 0200000  
+#define O_LARGEFILE 0400000
+
+#include <asm-generic/fcntl.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fpstate.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fpstate.h
new file mode 100644
index 0000000..b362b14
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/fpstate.h
@@ -0,0 +1,68 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_FPSTATE_H
+#define __ASM_ARM_FPSTATE_H
+
+#ifndef __ASSEMBLY__
+
+struct vfp_hard_struct {
+ __u64 fpregs[16];
+#if __LINUX_ARM_ARCH__ < 6
+ __u32 fpmx_state;
+#endif
+ __u32 fpexc;
+ __u32 fpscr;
+
+ __u32 fpinst;
+ __u32 fpinst2;
+};
+
+union vfp_state {
+ struct vfp_hard_struct hard;
+};
+
+#define FP_HARD_SIZE 35
+
+struct fp_hard_struct {
+ unsigned int save[FP_HARD_SIZE];
+};
+
+#define FP_SOFT_SIZE 35
+
+struct fp_soft_struct {
+ unsigned int save[FP_SOFT_SIZE];
+};
+
+#define IWMMXT_SIZE 0x98
+
+struct iwmmxt_struct {
+ unsigned int save[IWMMXT_SIZE / sizeof(unsigned int)];
+};
+
+union fp_state {
+ struct fp_hard_struct hard;
+ struct fp_soft_struct soft;
+};
+
+#define FP_SIZE (sizeof(union fp_state) / sizeof(int))
+
+struct crunch_state {
+ unsigned int mvdx[16][2];
+ unsigned int mvax[4][3];
+ unsigned int dspsc[2];
+};
+
+#define CRUNCH_SIZE sizeof(struct crunch_state)
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/glue.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/asm-generic/audit_dir_write.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/asm/glue.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardirq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardirq.h
new file mode 100644
index 0000000..54207e3
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardirq.h
@@ -0,0 +1,38 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_HARDIRQ_H
+#define __ASM_HARDIRQ_H
+
+#include <linux/cache.h>
+#include <linux/threads.h>
+#include <asm/irq.h>
+
+typedef struct {
+ unsigned int __softirq_pending;
+ unsigned int local_timer_irqs;
+} ____cacheline_aligned irq_cpustat_t;
+
+#include <linux/irq_cpustat.h>  
+
+#if NR_IRQS > 256
+#define HARDIRQ_BITS 9
+#else
+#define HARDIRQ_BITS 8
+#endif
+
+#if 1 << HARDIRQ_BITS < NR_IRQS
+#error HARDIRQ_BITS is too low!
+#endif
+
+#define __ARCH_IRQ_EXIT_IRQS_DISABLED 1
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardware.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardware.h
new file mode 100644
index 0000000..0b381d1
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hardware.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_HARDWARE_H
+#define __ASM_HARDWARE_H
+
+#include <asm/arch/hardware.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hw_irq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hw_irq.h
new file mode 100644
index 0000000..a34b390
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/hw_irq.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARCH_ARM_HW_IRQ_H
+#define _ARCH_ARM_HW_IRQ_H
+
+#include <asm/mach/irq.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ide.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ide.h
new file mode 100644
index 0000000..f52d5ca
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ide.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_IDE_H
+#define __ASMARM_IDE_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/io.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/io.h
new file mode 100644
index 0000000..6794022
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/io.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_IO_H
+#define __ASM_ARM_IO_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctl.h
new file mode 100644
index 0000000..6e446b6
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctl.h
@@ -0,0 +1,12 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#include <asm-generic/ioctl.h>
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctls.h
new file mode 100644
index 0000000..9df82bc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ioctls.h
@@ -0,0 +1,88 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_IOCTLS_H
+#define __ASM_ARM_IOCTLS_H
+
+#include <asm/ioctl.h>
+
+#define TCGETS 0x5401
+#define TCSETS 0x5402
+#define TCSETSW 0x5403
+#define TCSETSF 0x5404
+#define TCGETA 0x5405
+#define TCSETA 0x5406
+#define TCSETAW 0x5407
+#define TCSETAF 0x5408
+#define TCSBRK 0x5409
+#define TCXONC 0x540A
+#define TCFLSH 0x540B
+#define TIOCEXCL 0x540C
+#define TIOCNXCL 0x540D
+#define TIOCSCTTY 0x540E
+#define TIOCGPGRP 0x540F
+#define TIOCSPGRP 0x5410
+#define TIOCOUTQ 0x5411
+#define TIOCSTI 0x5412
+#define TIOCGWINSZ 0x5413
+#define TIOCSWINSZ 0x5414
+#define TIOCMGET 0x5415
+#define TIOCMBIS 0x5416
+#define TIOCMBIC 0x5417
+#define TIOCMSET 0x5418
+#define TIOCGSOFTCAR 0x5419
+#define TIOCSSOFTCAR 0x541A
+#define FIONREAD 0x541B
+#define TIOCINQ FIONREAD
+#define TIOCLINUX 0x541C
+#define TIOCCONS 0x541D
+#define TIOCGSERIAL 0x541E
+#define TIOCSSERIAL 0x541F
+#define TIOCPKT 0x5420
+#define FIONBIO 0x5421
+#define TIOCNOTTY 0x5422
+#define TIOCSETD 0x5423
+#define TIOCGETD 0x5424
+#define TCSBRKP 0x5425  
+#define TIOCSBRK 0x5427  
+#define TIOCCBRK 0x5428  
+#define TIOCGSID 0x5429  
+#define TIOCGPTN _IOR('T',0x30, unsigned int)  
+#define TIOCSPTLCK _IOW('T',0x31, int)  
+
+#define FIONCLEX 0x5450  
+#define FIOCLEX 0x5451
+#define FIOASYNC 0x5452
+#define TIOCSERCONFIG 0x5453
+#define TIOCSERGWILD 0x5454
+#define TIOCSERSWILD 0x5455
+#define TIOCGLCKTRMIOS 0x5456
+#define TIOCSLCKTRMIOS 0x5457
+#define TIOCSERGSTRUCT 0x5458  
+#define TIOCSERGETLSR 0x5459  
+#define TIOCSERGETMULTI 0x545A  
+#define TIOCSERSETMULTI 0x545B  
+
+#define TIOCMIWAIT 0x545C  
+#define TIOCGICOUNT 0x545D  
+#define FIOQSIZE 0x545E
+
+#define TIOCPKT_DATA 0
+#define TIOCPKT_FLUSHREAD 1
+#define TIOCPKT_FLUSHWRITE 2
+#define TIOCPKT_STOP 4
+#define TIOCPKT_START 8
+#define TIOCPKT_NOSTOP 16
+#define TIOCPKT_DOSTOP 32
+
+#define TIOCSER_TEMT 0x01  
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ipcbuf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ipcbuf.h
new file mode 100644
index 0000000..0e47507
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ipcbuf.h
@@ -0,0 +1,30 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_IPCBUF_H
+#define __ASMARM_IPCBUF_H
+
+struct ipc64_perm
+{
+ __kernel_key_t key;
+ __kernel_uid32_t uid;
+ __kernel_gid32_t gid;
+ __kernel_uid32_t cuid;
+ __kernel_gid32_t cgid;
+ __kernel_mode_t mode;
+ unsigned short __pad1;
+ unsigned short seq;
+ unsigned short __pad2;
+ unsigned long __unused1;
+ unsigned long __unused2;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/irq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/irq.h
new file mode 100644
index 0000000..2085a21
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/irq.h
@@ -0,0 +1,45 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_IRQ_H
+#define __ASM_ARM_IRQ_H
+
+#include <asm/arch/irqs.h>
+
+#ifndef irq_canonicalize
+#define irq_canonicalize(i) (i)
+#endif
+
+#ifndef NR_IRQS
+#define NR_IRQS 128
+#endif
+
+#ifndef NO_IRQ
+#define NO_IRQ ((unsigned int)(-1))
+#endif
+
+struct irqaction;
+
+#define __IRQT_FALEDGE IRQ_TYPE_EDGE_FALLING
+#define __IRQT_RISEDGE IRQ_TYPE_EDGE_RISING
+#define __IRQT_LOWLVL IRQ_TYPE_LEVEL_LOW
+#define __IRQT_HIGHLVL IRQ_TYPE_LEVEL_HIGH
+
+#define IRQT_NOEDGE (0)
+#define IRQT_RISING (__IRQT_RISEDGE)
+#define IRQT_FALLING (__IRQT_FALEDGE)
+#define IRQT_BOTHEDGE (__IRQT_RISEDGE|__IRQT_FALEDGE)
+#define IRQT_LOW (__IRQT_LOWLVL)
+#define IRQT_HIGH (__IRQT_HIGHLVL)
+#define IRQT_PROBE IRQ_TYPE_PROBE
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/linkage.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/linkage.h
new file mode 100644
index 0000000..1fb628e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/linkage.h
@@ -0,0 +1,18 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_LINKAGE_H
+#define __ASM_LINKAGE_H
+
+#define __ALIGN .align 0
+#define __ALIGN_STR ".align 0"
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/local.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/local.h
new file mode 100644
index 0000000..10d6a60
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/local.h
@@ -0,0 +1,12 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#include <asm-generic/local.h>
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/locks.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/locks.h
new file mode 100644
index 0000000..f48485c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/locks.h
@@ -0,0 +1,55 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PROC_LOCKS_H
+#define __ASM_PROC_LOCKS_H
+
+#if __LINUX_ARM_ARCH__ >= 6
+
+#define __down_op(ptr,fail)   ({   __asm__ __volatile__(   "@ down_op\n"  "1:	ldrex	lr, [%0]\n"  "	sub	lr, lr, %1\n"  "	strex	ip, lr, [%0]\n"  "	teq	ip, #0\n"  "	bne	1b\n"  "	teq	lr, #0\n"  "	movmi	ip, %0\n"  "	blmi	" #fail   :   : "r" (ptr), "I" (1)   : "ip", "lr", "cc");   smp_mb();   })
+
+#define __down_op_ret(ptr,fail)   ({   unsigned int ret;   __asm__ __volatile__(   "@ down_op_ret\n"  "1:	ldrex	lr, [%1]\n"  "	sub	lr, lr, %2\n"  "	strex	ip, lr, [%1]\n"  "	teq	ip, #0\n"  "	bne	1b\n"  "	teq	lr, #0\n"  "	movmi	ip, %1\n"  "	movpl	ip, #0\n"  "	blmi	" #fail "\n"  "	mov	%0, ip"   : "=&r" (ret)   : "r" (ptr), "I" (1)   : "ip", "lr", "cc");   smp_mb();   ret;   })
+
+#define __up_op(ptr,wake)   ({   smp_mb();   __asm__ __volatile__(   "@ up_op\n"  "1:	ldrex	lr, [%0]\n"  "	add	lr, lr, %1\n"  "	strex	ip, lr, [%0]\n"  "	teq	ip, #0\n"  "	bne	1b\n"  "	cmp	lr, #0\n"  "	movle	ip, %0\n"  "	blle	" #wake   :   : "r" (ptr), "I" (1)   : "ip", "lr", "cc");   })
+
+#define RW_LOCK_BIAS 0x01000000
+#define RW_LOCK_BIAS_STR "0x01000000"
+
+#define __down_op_write(ptr,fail)   ({   __asm__ __volatile__(   "@ down_op_write\n"  "1:	ldrex	lr, [%0]\n"  "	sub	lr, lr, %1\n"  "	strex	ip, lr, [%0]\n"  "	teq	ip, #0\n"  "	bne	1b\n"  "	teq	lr, #0\n"  "	movne	ip, %0\n"  "	blne	" #fail   :   : "r" (ptr), "I" (RW_LOCK_BIAS)   : "ip", "lr", "cc");   smp_mb();   })
+
+#define __up_op_write(ptr,wake)   ({   smp_mb();   __asm__ __volatile__(   "@ up_op_write\n"  "1:	ldrex	lr, [%0]\n"  "	adds	lr, lr, %1\n"  "	strex	ip, lr, [%0]\n"  "	teq	ip, #0\n"  "	bne	1b\n"  "	movcs	ip, %0\n"  "	blcs	" #wake   :   : "r" (ptr), "I" (RW_LOCK_BIAS)   : "ip", "lr", "cc");   })
+
+#define __down_op_read(ptr,fail)   __down_op(ptr, fail)
+
+#define __up_op_read(ptr,wake)   ({   smp_mb();   __asm__ __volatile__(   "@ up_op_read\n"  "1:	ldrex	lr, [%0]\n"  "	add	lr, lr, %1\n"  "	strex	ip, lr, [%0]\n"  "	teq	ip, #0\n"  "	bne	1b\n"  "	teq	lr, #0\n"  "	moveq	ip, %0\n"  "	bleq	" #wake   :   : "r" (ptr), "I" (1)   : "ip", "lr", "cc");   })
+
+#else
+
+#define __down_op(ptr,fail)   ({   __asm__ __volatile__(   "@ down_op\n"  "	mrs	ip, cpsr\n"  "	orr	lr, ip, #128\n"  "	msr	cpsr_c, lr\n"  "	ldr	lr, [%0]\n"  "	subs	lr, lr, %1\n"  "	str	lr, [%0]\n"  "	msr	cpsr_c, ip\n"  "	movmi	ip, %0\n"  "	blmi	" #fail   :   : "r" (ptr), "I" (1)   : "ip", "lr", "cc");   smp_mb();   })
+
+#define __down_op_ret(ptr,fail)   ({   unsigned int ret;   __asm__ __volatile__(   "@ down_op_ret\n"  "	mrs	ip, cpsr\n"  "	orr	lr, ip, #128\n"  "	msr	cpsr_c, lr\n"  "	ldr	lr, [%1]\n"  "	subs	lr, lr, %2\n"  "	str	lr, [%1]\n"  "	msr	cpsr_c, ip\n"  "	movmi	ip, %1\n"  "	movpl	ip, #0\n"  "	blmi	" #fail "\n"  "	mov	%0, ip"   : "=&r" (ret)   : "r" (ptr), "I" (1)   : "ip", "lr", "cc");   smp_mb();   ret;   })
+
+#define __up_op(ptr,wake)   ({   smp_mb();   __asm__ __volatile__(   "@ up_op\n"  "	mrs	ip, cpsr\n"  "	orr	lr, ip, #128\n"  "	msr	cpsr_c, lr\n"  "	ldr	lr, [%0]\n"  "	adds	lr, lr, %1\n"  "	str	lr, [%0]\n"  "	msr	cpsr_c, ip\n"  "	movle	ip, %0\n"  "	blle	" #wake   :   : "r" (ptr), "I" (1)   : "ip", "lr", "cc");   })
+
+#define RW_LOCK_BIAS 0x01000000
+#define RW_LOCK_BIAS_STR "0x01000000"
+
+#define __down_op_write(ptr,fail)   ({   __asm__ __volatile__(   "@ down_op_write\n"  "	mrs	ip, cpsr\n"  "	orr	lr, ip, #128\n"  "	msr	cpsr_c, lr\n"  "	ldr	lr, [%0]\n"  "	subs	lr, lr, %1\n"  "	str	lr, [%0]\n"  "	msr	cpsr_c, ip\n"  "	movne	ip, %0\n"  "	blne	" #fail   :   : "r" (ptr), "I" (RW_LOCK_BIAS)   : "ip", "lr", "cc");   smp_mb();   })
+
+#define __up_op_write(ptr,wake)   ({   __asm__ __volatile__(   "@ up_op_write\n"  "	mrs	ip, cpsr\n"  "	orr	lr, ip, #128\n"  "	msr	cpsr_c, lr\n"  "	ldr	lr, [%0]\n"  "	adds	lr, lr, %1\n"  "	str	lr, [%0]\n"  "	msr	cpsr_c, ip\n"  "	movcs	ip, %0\n"  "	blcs	" #wake   :   : "r" (ptr), "I" (RW_LOCK_BIAS)   : "ip", "lr", "cc");   smp_mb();   })
+
+#define __down_op_read(ptr,fail)   __down_op(ptr, fail)
+
+#define __up_op_read(ptr,wake)   ({   smp_mb();   __asm__ __volatile__(   "@ up_op_read\n"  "	mrs	ip, cpsr\n"  "	orr	lr, ip, #128\n"  "	msr	cpsr_c, lr\n"  "	ldr	lr, [%0]\n"  "	adds	lr, lr, %1\n"  "	str	lr, [%0]\n"  "	msr	cpsr_c, ip\n"  "	moveq	ip, %0\n"  "	bleq	" #wake   :   : "r" (ptr), "I" (1)   : "ip", "lr", "cc");   })
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mc146818rtc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mc146818rtc.h
new file mode 100644
index 0000000..5a86724
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mc146818rtc.h
@@ -0,0 +1,26 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASM_MC146818RTC_H
+#define _ASM_MC146818RTC_H
+
+#include <asm/arch/irqs.h>
+#include <asm/io.h>
+
+#ifndef RTC_PORT
+#define RTC_PORT(x) (0x70 + (x))
+#define RTC_ALWAYS_BCD 1  
+#endif
+
+#define CMOS_READ(addr) ({  outb_p((addr),RTC_PORT(0));  inb_p(RTC_PORT(1));  })
+#define CMOS_WRITE(val, addr) ({  outb_p((addr),RTC_PORT(0));  outb_p((val),RTC_PORT(1));  })
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/memory.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/memory.h
new file mode 100644
index 0000000..c1137a7
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/memory.h
@@ -0,0 +1,95 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_MEMORY_H
+#define __ASM_ARM_MEMORY_H
+
+#ifndef __ASSEMBLY__
+#define UL(x) (x##UL)
+#else
+#define UL(x) (x)
+#endif
+
+#include <linux/compiler.h>
+#include <asm/arch/memory.h>
+#include <asm/sizes.h>
+
+#ifndef TASK_SIZE
+#define TASK_SIZE (CONFIG_DRAM_SIZE)
+#endif
+
+#ifndef TASK_UNMAPPED_BASE
+#define TASK_UNMAPPED_BASE UL(0x00000000)
+#endif
+
+#ifndef PHYS_OFFSET
+#define PHYS_OFFSET (CONFIG_DRAM_BASE)
+#endif
+
+#ifndef END_MEM
+#define END_MEM (CONFIG_DRAM_BASE + CONFIG_DRAM_SIZE)
+#endif
+
+#ifndef PAGE_OFFSET
+#define PAGE_OFFSET (PHYS_OFFSET)
+#endif
+
+#define MODULE_END (END_MEM)
+#define MODULE_START (PHYS_OFFSET)
+
+#ifndef CONSISTENT_DMA_SIZE
+#define CONSISTENT_DMA_SIZE SZ_2M
+#endif
+
+#ifndef __virt_to_phys
+#define __virt_to_phys(x) ((x) - PAGE_OFFSET + PHYS_OFFSET)
+#define __phys_to_virt(x) ((x) - PHYS_OFFSET + PAGE_OFFSET)
+#endif
+
+#define __phys_to_pfn(paddr) ((paddr) >> PAGE_SHIFT)
+#define __pfn_to_phys(pfn) ((pfn) << PAGE_SHIFT)
+
+#ifndef __ASSEMBLY__
+
+#ifndef ISA_DMA_THRESHOLD
+#define ISA_DMA_THRESHOLD (0xffffffffULL)
+#endif
+
+#ifndef arch_adjust_zones
+#define arch_adjust_zones(node,size,holes) do { } while (0)
+#endif
+
+#define PHYS_PFN_OFFSET (PHYS_OFFSET >> PAGE_SHIFT)
+
+#define __pa(x) __virt_to_phys((unsigned long)(x))
+#define __va(x) ((void *)__phys_to_virt((unsigned long)(x)))
+#define pfn_to_kaddr(pfn) __va((pfn) << PAGE_SHIFT)
+#define ARCH_PFN_OFFSET PHYS_PFN_OFFSET
+#define pfn_valid(pfn) ((pfn) >= PHYS_PFN_OFFSET && (pfn) < (PHYS_PFN_OFFSET + max_mapnr))
+#define virt_to_page(kaddr) pfn_to_page(__pa(kaddr) >> PAGE_SHIFT)
+#define virt_addr_valid(kaddr) ((unsigned long)(kaddr) >= PAGE_OFFSET && (unsigned long)(kaddr) < (unsigned long)high_memory)
+#define PHYS_TO_NID(addr) (0)
+#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT)
+#ifndef __arch_page_to_dma
+#define page_to_dma(dev, page) ((dma_addr_t)__virt_to_bus((unsigned long)page_address(page)))
+#define dma_to_virt(dev, addr) ((void *)__bus_to_virt(addr))
+#define virt_to_dma(dev, addr) ((dma_addr_t)__virt_to_bus((unsigned long)(addr)))
+#else
+#define page_to_dma(dev, page) (__arch_page_to_dma(dev, page))
+#define dma_to_virt(dev, addr) (__arch_dma_to_virt(dev, addr))
+#define virt_to_dma(dev, addr) (__arch_virt_to_dma(dev, addr))
+#endif
+#ifndef arch_is_coherent
+#define arch_is_coherent() 0
+#endif
+#endif
+#include <asm-generic/memory_model.h>
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mman.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mman.h
new file mode 100644
index 0000000..8f71d1b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mman.h
@@ -0,0 +1,28 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_MMAN_H__
+#define __ARM_MMAN_H__
+
+#include <asm-generic/mman.h>
+
+#define MAP_GROWSDOWN 0x0100  
+#define MAP_DENYWRITE 0x0800  
+#define MAP_EXECUTABLE 0x1000  
+#define MAP_LOCKED 0x2000  
+#define MAP_NORESERVE 0x4000  
+#define MAP_POPULATE 0x8000  
+#define MAP_NONBLOCK 0x10000  
+
+#define MCL_CURRENT 1  
+#define MCL_FUTURE 2  
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/module.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/module.h
new file mode 100644
index 0000000..68b806a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/module.h
@@ -0,0 +1,26 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASM_ARM_MODULE_H
+#define _ASM_ARM_MODULE_H
+
+struct mod_arch_specific
+{
+ int foo;
+};
+
+#define Elf_Shdr Elf32_Shdr
+#define Elf_Sym Elf32_Sym
+#define Elf_Ehdr Elf32_Ehdr
+
+#define MODULE_ARCH_VERMAGIC "ARMv" __stringify(__LINUX_ARM_ARCH__) " "
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/msgbuf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/msgbuf.h
new file mode 100644
index 0000000..84d614c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/msgbuf.h
@@ -0,0 +1,32 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_MSGBUF_H
+#define _ASMARM_MSGBUF_H
+
+struct msqid64_ds {
+ struct ipc64_perm msg_perm;
+ __kernel_time_t msg_stime;
+ unsigned long __unused1;
+ __kernel_time_t msg_rtime;
+ unsigned long __unused2;
+ __kernel_time_t msg_ctime;
+ unsigned long __unused3;
+ unsigned long msg_cbytes;
+ unsigned long msg_qnum;
+ unsigned long msg_qbytes;
+ __kernel_pid_t msg_lspid;
+ __kernel_pid_t msg_lrpid;
+ unsigned long __unused4;
+ unsigned long __unused5;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mtd-xip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mtd-xip.h
new file mode 100644
index 0000000..6c53f6f
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/mtd-xip.h
@@ -0,0 +1,20 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_MTD_XIP_H__
+#define __ARM_MTD_XIP_H__
+
+#include <asm/hardware.h>
+#include <asm/arch/mtd-xip.h>
+
+#define xip_iprefetch() do { asm volatile (".rep 8; nop; .endr"); } while (0)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/page.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/page.h
new file mode 100644
index 0000000..f980343
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/page.h
@@ -0,0 +1,19 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_PAGE_H
+#define _ASMARM_PAGE_H
+
+#define PAGE_SHIFT 12
+#define PAGE_SIZE (1UL << PAGE_SHIFT)
+#define PAGE_MASK (~(PAGE_SIZE-1))
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/param.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/param.h
new file mode 100644
index 0000000..6814fe3
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/param.h
@@ -0,0 +1,25 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PARAM_H
+#define __ASM_PARAM_H
+
+#define HZ 100
+
+#define EXEC_PAGESIZE 4096
+
+#ifndef NOGROUP
+#define NOGROUP (-1)
+#endif
+
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/percpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/percpu.h
new file mode 100644
index 0000000..2500345
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/percpu.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARM_PERCPU
+#define __ARM_PERCPU
+
+#include <asm-generic/percpu.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgalloc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgalloc.h
new file mode 100644
index 0000000..5d45e65
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgalloc.h
@@ -0,0 +1,23 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_PGALLOC_H
+#define _ASMARM_PGALLOC_H
+
+#include <asm/domain.h>
+#include <asm/pgtable-hwdef.h>
+#include <asm/processor.h>
+#include <asm/cacheflush.h>
+#include <asm/tlbflush.h>
+
+#define check_pgt_cache() do { } while (0)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable-hwdef.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable-hwdef.h
new file mode 100644
index 0000000..47e8675
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable-hwdef.h
@@ -0,0 +1,70 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_PGTABLE_HWDEF_H
+#define _ASMARM_PGTABLE_HWDEF_H
+
+#define PMD_TYPE_MASK (3 << 0)
+#define PMD_TYPE_FAULT (0 << 0)
+#define PMD_TYPE_TABLE (1 << 0)
+#define PMD_TYPE_SECT (2 << 0)
+#define PMD_BIT4 (1 << 4)
+#define PMD_DOMAIN(x) ((x) << 5)
+#define PMD_PROTECTION (1 << 9)  
+
+#define PMD_SECT_BUFFERABLE (1 << 2)
+#define PMD_SECT_CACHEABLE (1 << 3)
+#define PMD_SECT_XN (1 << 4)  
+#define PMD_SECT_AP_WRITE (1 << 10)
+#define PMD_SECT_AP_READ (1 << 11)
+#define PMD_SECT_TEX(x) ((x) << 12)  
+#define PMD_SECT_APX (1 << 15)  
+#define PMD_SECT_S (1 << 16)  
+#define PMD_SECT_nG (1 << 17)  
+#define PMD_SECT_SUPER (1 << 18)  
+
+#define PMD_SECT_UNCACHED (0)
+#define PMD_SECT_BUFFERED (PMD_SECT_BUFFERABLE)
+#define PMD_SECT_WT (PMD_SECT_CACHEABLE)
+#define PMD_SECT_WB (PMD_SECT_CACHEABLE | PMD_SECT_BUFFERABLE)
+#define PMD_SECT_MINICACHE (PMD_SECT_TEX(1) | PMD_SECT_CACHEABLE)
+#define PMD_SECT_WBWA (PMD_SECT_TEX(1) | PMD_SECT_CACHEABLE | PMD_SECT_BUFFERABLE)
+#define PMD_SECT_NONSHARED_DEV (PMD_SECT_TEX(2))
+
+#define PTE_TYPE_MASK (3 << 0)
+#define PTE_TYPE_FAULT (0 << 0)
+#define PTE_TYPE_LARGE (1 << 0)
+#define PTE_TYPE_SMALL (2 << 0)
+#define PTE_TYPE_EXT (3 << 0)  
+#define PTE_BUFFERABLE (1 << 2)
+#define PTE_CACHEABLE (1 << 3)
+
+#define PTE_EXT_XN (1 << 0)  
+#define PTE_EXT_AP_MASK (3 << 4)
+#define PTE_EXT_AP0 (1 << 4)
+#define PTE_EXT_AP1 (2 << 4)
+#define PTE_EXT_AP_UNO_SRO (0 << 4)
+#define PTE_EXT_AP_UNO_SRW (PTE_EXT_AP0)
+#define PTE_EXT_AP_URO_SRW (PTE_EXT_AP1)
+#define PTE_EXT_AP_URW_SRW (PTE_EXT_AP1|PTE_EXT_AP0)
+#define PTE_EXT_TEX(x) ((x) << 6)  
+#define PTE_EXT_APX (1 << 9)  
+#define PTE_EXT_COHERENT (1 << 9)  
+#define PTE_EXT_SHARED (1 << 10)  
+#define PTE_EXT_NG (1 << 11)  
+
+#define PTE_SMALL_AP_MASK (0xff << 4)
+#define PTE_SMALL_AP_UNO_SRO (0x00 << 4)
+#define PTE_SMALL_AP_UNO_SRW (0x55 << 4)
+#define PTE_SMALL_AP_URO_SRW (0xaa << 4)
+#define PTE_SMALL_AP_URW_SRW (0xff << 4)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable.h
new file mode 100644
index 0000000..cbac611
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/pgtable.h
@@ -0,0 +1,20 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_PGTABLE_H
+#define _ASMARM_PGTABLE_H
+
+#include <asm-generic/4level-fixup.h>
+#include <asm/proc-fns.h>
+
+#include "pgtable-nommu.h"
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/poll.h
new file mode 100644
index 0000000..c5b80a5
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/poll.h
@@ -0,0 +1,36 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASMARM_POLL_H
+#define __ASMARM_POLL_H
+
+#define POLLIN 0x0001
+#define POLLPRI 0x0002
+#define POLLOUT 0x0004
+#define POLLERR 0x0008
+#define POLLHUP 0x0010
+#define POLLNVAL 0x0020
+
+#define POLLRDNORM 0x0040
+#define POLLRDBAND 0x0080
+#define POLLWRNORM 0x0100
+#define POLLWRBAND 0x0200
+#define POLLMSG 0x0400
+#define POLLREMOVE 0x1000
+#define POLLRDHUP 0x2000
+
+struct pollfd {
+ int fd;
+ short events;
+ short revents;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/posix_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/posix_types.h
new file mode 100644
index 0000000..bc85217
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/posix_types.h
@@ -0,0 +1,70 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARCH_ARM_POSIX_TYPES_H
+#define __ARCH_ARM_POSIX_TYPES_H
+
+typedef unsigned long __kernel_ino_t;
+typedef unsigned short __kernel_mode_t;
+typedef unsigned short __kernel_nlink_t;
+typedef long __kernel_off_t;
+typedef int __kernel_pid_t;
+typedef unsigned short __kernel_ipc_pid_t;
+typedef unsigned short __kernel_uid_t;
+typedef unsigned short __kernel_gid_t;
+typedef unsigned int __kernel_size_t;
+typedef int __kernel_ssize_t;
+typedef int __kernel_ptrdiff_t;
+typedef long __kernel_time_t;
+typedef long __kernel_suseconds_t;
+typedef long __kernel_clock_t;
+typedef int __kernel_timer_t;
+typedef int __kernel_clockid_t;
+typedef int __kernel_daddr_t;
+typedef char * __kernel_caddr_t;
+typedef unsigned short __kernel_uid16_t;
+typedef unsigned short __kernel_gid16_t;
+typedef unsigned int __kernel_uid32_t;
+typedef unsigned int __kernel_gid32_t;
+
+typedef unsigned short __kernel_old_uid_t;
+typedef unsigned short __kernel_old_gid_t;
+typedef unsigned short __kernel_old_dev_t;
+
+#ifdef __GNUC__
+typedef long long __kernel_loff_t;
+#endif
+
+typedef struct {
+#ifdef __USE_ALL
+ int val[2];
+#else
+ int __val[2];
+#endif
+} __kernel_fsid_t;
+
+#if !defined(__GLIBC__) || __GLIBC__ < 2
+
+#undef __FD_SET
+#define __FD_SET(fd, fdsetp)   (((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] |= (1<<((fd) & 31)))
+
+#undef __FD_CLR
+#define __FD_CLR(fd, fdsetp)   (((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] &= ~(1<<((fd) & 31)))
+
+#undef __FD_ISSET
+#define __FD_ISSET(fd, fdsetp)   ((((fd_set *)(fdsetp))->fds_bits[(fd) >> 5] & (1<<((fd) & 31))) != 0)
+
+#undef __FD_ZERO
+#define __FD_ZERO(fdsetp)   (memset (fdsetp, 0, sizeof (*(fd_set *)(fdsetp))))
+
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/proc-fns.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/proc-fns.h
new file mode 100644
index 0000000..4a560d0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/proc-fns.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PROCFNS_H
+#define __ASM_PROCFNS_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/processor.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/processor.h
new file mode 100644
index 0000000..f93cbc1
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/processor.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_PROCESSOR_H
+#define __ASM_ARM_PROCESSOR_H
+
+#define current_text_addr() ({ __label__ _l; _l: &&_l;})
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/procinfo.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/procinfo.h
new file mode 100644
index 0000000..d774e0b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/procinfo.h
@@ -0,0 +1,51 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_PROCINFO_H
+#define __ASM_PROCINFO_H
+
+#ifndef __ASSEMBLY__
+
+struct cpu_tlb_fns;
+struct cpu_user_fns;
+struct cpu_cache_fns;
+struct processor;
+
+struct proc_info_list {
+ unsigned int cpu_val;
+ unsigned int cpu_mask;
+ unsigned long __cpu_mm_mmu_flags;
+ unsigned long __cpu_io_mmu_flags;
+ unsigned long __cpu_flush;
+ const char *arch_name;
+ const char *elf_name;
+ unsigned int elf_hwcap;
+ const char *cpu_name;
+ struct processor *proc;
+ struct cpu_tlb_fns *tlb;
+ struct cpu_user_fns *user;
+ struct cpu_cache_fns *cache;
+};
+
+#endif
+
+#define HWCAP_SWP 1
+#define HWCAP_HALF 2
+#define HWCAP_THUMB 4
+#define HWCAP_26BIT 8  
+#define HWCAP_FAST_MULT 16
+#define HWCAP_FPA 32
+#define HWCAP_VFP 64
+#define HWCAP_EDSP 128
+#define HWCAP_JAVA 256
+#define HWCAP_IWMMXT 512
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ptrace.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ptrace.h
new file mode 100644
index 0000000..c6dfea1
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/ptrace.h
@@ -0,0 +1,95 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_PTRACE_H
+#define __ASM_ARM_PTRACE_H
+
+#define PTRACE_GETREGS 12
+#define PTRACE_SETREGS 13
+#define PTRACE_GETFPREGS 14
+#define PTRACE_SETFPREGS 15
+
+#define PTRACE_GETWMMXREGS 18
+#define PTRACE_SETWMMXREGS 19
+
+#define PTRACE_OLDSETOPTIONS 21
+
+#define PTRACE_GET_THREAD_AREA 22
+
+#define PTRACE_SET_SYSCALL 23
+
+#define PTRACE_GETCRUNCHREGS 25
+#define PTRACE_SETCRUNCHREGS 26
+
+#define USR26_MODE 0x00000000
+#define FIQ26_MODE 0x00000001
+#define IRQ26_MODE 0x00000002
+#define SVC26_MODE 0x00000003
+#define USR_MODE 0x00000010
+#define FIQ_MODE 0x00000011
+#define IRQ_MODE 0x00000012
+#define SVC_MODE 0x00000013
+#define ABT_MODE 0x00000017
+#define UND_MODE 0x0000001b
+#define SYSTEM_MODE 0x0000001f
+#define MODE32_BIT 0x00000010
+#define MODE_MASK 0x0000001f
+#define PSR_T_BIT 0x00000020
+#define PSR_F_BIT 0x00000040
+#define PSR_I_BIT 0x00000080
+#define PSR_J_BIT 0x01000000
+#define PSR_Q_BIT 0x08000000
+#define PSR_V_BIT 0x10000000
+#define PSR_C_BIT 0x20000000
+#define PSR_Z_BIT 0x40000000
+#define PSR_N_BIT 0x80000000
+#define PCMASK 0
+
+#define PSR_f 0xff000000  
+#define PSR_s 0x00ff0000  
+#define PSR_x 0x0000ff00  
+#define PSR_c 0x000000ff  
+
+#ifndef __ASSEMBLY__
+
+struct pt_regs {
+ long uregs[18];
+};
+
+#define ARM_cpsr uregs[16]
+#define ARM_pc uregs[15]
+#define ARM_lr uregs[14]
+#define ARM_sp uregs[13]
+#define ARM_ip uregs[12]
+#define ARM_fp uregs[11]
+#define ARM_r10 uregs[10]
+#define ARM_r9 uregs[9]
+#define ARM_r8 uregs[8]
+#define ARM_r7 uregs[7]
+#define ARM_r6 uregs[6]
+#define ARM_r5 uregs[5]
+#define ARM_r4 uregs[4]
+#define ARM_r3 uregs[3]
+#define ARM_r2 uregs[2]
+#define ARM_r1 uregs[1]
+#define ARM_r0 uregs[0]
+#define ARM_ORIG_r0 uregs[17]
+
+#define pc_pointer(v)   ((v) & ~PCMASK)
+
+#define instruction_pointer(regs)   (pc_pointer((regs)->ARM_pc))
+
+#define profile_pc(regs) instruction_pointer(regs)
+
+#endif
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/resource.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/resource.h
new file mode 100644
index 0000000..7546dd4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/resource.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARM_RESOURCE_H
+#define _ARM_RESOURCE_H
+
+#include <asm-generic/resource.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/scatterlist.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/scatterlist.h
new file mode 100644
index 0000000..a2c06ca
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/scatterlist.h
@@ -0,0 +1,28 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SCATTERLIST_H
+#define _ASMARM_SCATTERLIST_H
+
+#include <asm/memory.h>
+#include <asm/types.h>
+
+struct scatterlist {
+ struct page *page;
+ unsigned int offset;
+ dma_addr_t dma_address;
+ unsigned int length;
+};
+
+#define sg_dma_address(sg) ((sg)->dma_address)
+#define sg_dma_len(sg) ((sg)->length)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/semaphore.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/semaphore.h
new file mode 100644
index 0000000..7c5618a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/semaphore.h
@@ -0,0 +1,36 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_SEMAPHORE_H
+#define __ASM_ARM_SEMAPHORE_H
+
+#include <linux/linkage.h>
+#include <linux/spinlock.h>
+#include <linux/wait.h>
+#include <linux/rwsem.h>
+
+#include <asm/atomic.h>
+#include <asm/locks.h>
+
+struct semaphore {
+ atomic_t count;
+ int sleepers;
+ wait_queue_head_t wait;
+};
+
+#define __SEMAPHORE_INIT(name, cnt)  {   .count = ATOMIC_INIT(cnt),   .wait = __WAIT_QUEUE_HEAD_INITIALIZER((name).wait),  }
+
+#define __DECLARE_SEMAPHORE_GENERIC(name,count)   struct semaphore name = __SEMAPHORE_INIT(name,count)
+
+#define DECLARE_MUTEX(name) __DECLARE_SEMAPHORE_GENERIC(name,1)
+#define DECLARE_MUTEX_LOCKED(name) __DECLARE_SEMAPHORE_GENERIC(name,0)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sembuf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sembuf.h
new file mode 100644
index 0000000..a2f5dd0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sembuf.h
@@ -0,0 +1,26 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SEMBUF_H
+#define _ASMARM_SEMBUF_H
+
+struct semid64_ds {
+ struct ipc64_perm sem_perm;
+ __kernel_time_t sem_otime;
+ unsigned long __unused1;
+ __kernel_time_t sem_ctime;
+ unsigned long __unused2;
+ unsigned long sem_nsems;
+ unsigned long __unused3;
+ unsigned long __unused4;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmbuf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmbuf.h
new file mode 100644
index 0000000..1d4d78c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmbuf.h
@@ -0,0 +1,43 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SHMBUF_H
+#define _ASMARM_SHMBUF_H
+
+struct shmid64_ds {
+ struct ipc64_perm shm_perm;
+ size_t shm_segsz;
+ __kernel_time_t shm_atime;
+ unsigned long __unused1;
+ __kernel_time_t shm_dtime;
+ unsigned long __unused2;
+ __kernel_time_t shm_ctime;
+ unsigned long __unused3;
+ __kernel_pid_t shm_cpid;
+ __kernel_pid_t shm_lpid;
+ unsigned long shm_nattch;
+ unsigned long __unused4;
+ unsigned long __unused5;
+};
+
+struct shminfo64 {
+ unsigned long shmmax;
+ unsigned long shmmin;
+ unsigned long shmmni;
+ unsigned long shmseg;
+ unsigned long shmall;
+ unsigned long __unused1;
+ unsigned long __unused2;
+ unsigned long __unused3;
+ unsigned long __unused4;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmparam.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmparam.h
new file mode 100644
index 0000000..ea53a8d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/shmparam.h
@@ -0,0 +1,19 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SHMPARAM_H
+#define _ASMARM_SHMPARAM_H
+
+#define SHMLBA (4 * PAGE_SIZE)  
+
+#define __ARCH_FORCE_SHMLBA
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sigcontext.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sigcontext.h
new file mode 100644
index 0000000..3c4fcf3
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sigcontext.h
@@ -0,0 +1,39 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SIGCONTEXT_H
+#define _ASMARM_SIGCONTEXT_H
+
+struct sigcontext {
+ unsigned long trap_no;
+ unsigned long error_code;
+ unsigned long oldmask;
+ unsigned long arm_r0;
+ unsigned long arm_r1;
+ unsigned long arm_r2;
+ unsigned long arm_r3;
+ unsigned long arm_r4;
+ unsigned long arm_r5;
+ unsigned long arm_r6;
+ unsigned long arm_r7;
+ unsigned long arm_r8;
+ unsigned long arm_r9;
+ unsigned long arm_r10;
+ unsigned long arm_fp;
+ unsigned long arm_ip;
+ unsigned long arm_sp;
+ unsigned long arm_lr;
+ unsigned long arm_pc;
+ unsigned long arm_cpsr;
+ unsigned long fault_address;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/siginfo.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/siginfo.h
new file mode 100644
index 0000000..225685e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/siginfo.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SIGINFO_H
+#define _ASMARM_SIGINFO_H
+
+#include <asm-generic/siginfo.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/signal.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/signal.h
new file mode 100644
index 0000000..212d9f1
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/signal.h
@@ -0,0 +1,103 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SIGNAL_H
+#define _ASMARM_SIGNAL_H
+
+#include <linux/types.h>
+
+struct siginfo;
+
+#define NSIG 32
+typedef unsigned long sigset_t;
+
+#define SIGHUP 1
+#define SIGINT 2
+#define SIGQUIT 3
+#define SIGILL 4
+#define SIGTRAP 5
+#define SIGABRT 6
+#define SIGIOT 6
+#define SIGBUS 7
+#define SIGFPE 8
+#define SIGKILL 9
+#define SIGUSR1 10
+#define SIGSEGV 11
+#define SIGUSR2 12
+#define SIGPIPE 13
+#define SIGALRM 14
+#define SIGTERM 15
+#define SIGSTKFLT 16
+#define SIGCHLD 17
+#define SIGCONT 18
+#define SIGSTOP 19
+#define SIGTSTP 20
+#define SIGTTIN 21
+#define SIGTTOU 22
+#define SIGURG 23
+#define SIGXCPU 24
+#define SIGXFSZ 25
+#define SIGVTALRM 26
+#define SIGPROF 27
+#define SIGWINCH 28
+#define SIGIO 29
+#define SIGPOLL SIGIO
+
+#define SIGPWR 30
+#define SIGSYS 31
+#define SIGUNUSED 31
+
+#define SIGRTMIN 32
+#define SIGRTMAX _NSIG
+
+#define SIGSWI 32
+
+#define SA_NOCLDSTOP 0x00000001
+#define SA_NOCLDWAIT 0x00000002
+#define SA_SIGINFO 0x00000004
+#define SA_THIRTYTWO 0x02000000
+#define SA_RESTORER 0x04000000
+#define SA_ONSTACK 0x08000000
+#define SA_RESTART 0x10000000
+#define SA_NODEFER 0x40000000
+#define SA_RESETHAND 0x80000000
+
+#define SA_NOMASK SA_NODEFER
+#define SA_ONESHOT SA_RESETHAND
+
+#define SS_ONSTACK 1
+#define SS_DISABLE 2
+
+#define MINSIGSTKSZ 2048
+#define SIGSTKSZ 8192
+
+#include <asm-generic/signal.h>
+
+struct sigaction {
+ union {
+ __sighandler_t _sa_handler;
+ void (*_sa_sigaction)(int, struct siginfo *, void *);
+ } _u;
+ sigset_t sa_mask;
+ unsigned long sa_flags;
+ void (*sa_restorer)(void);
+};
+
+#define sa_handler _u._sa_handler
+#define sa_sigaction _u._sa_sigaction
+
+typedef struct sigaltstack {
+ void __user *ss_sp;
+ int ss_flags;
+ size_t ss_size;
+} stack_t;
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sizes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sizes.h
new file mode 100644
index 0000000..90c1c71
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sizes.h
@@ -0,0 +1,39 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __sizes_h
+#define __sizes_h 1
+
+#define SZ_1K 0x00000400
+#define SZ_4K 0x00001000
+#define SZ_8K 0x00002000
+#define SZ_16K 0x00004000
+#define SZ_64K 0x00010000
+#define SZ_128K 0x00020000
+#define SZ_256K 0x00040000
+#define SZ_512K 0x00080000
+
+#define SZ_1M 0x00100000
+#define SZ_2M 0x00200000
+#define SZ_4M 0x00400000
+#define SZ_8M 0x00800000
+#define SZ_16M 0x01000000
+#define SZ_32M 0x02000000
+#define SZ_64M 0x04000000
+#define SZ_128M 0x08000000
+#define SZ_256M 0x10000000
+#define SZ_512M 0x20000000
+
+#define SZ_1G 0x40000000
+#define SZ_2G 0x80000000
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/smp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/smp.h
new file mode 100644
index 0000000..e6c1e41
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/smp.h
@@ -0,0 +1,34 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_SMP_H
+#define __ASM_ARM_SMP_H
+
+#include <linux/threads.h>
+#include <linux/cpumask.h>
+#include <linux/thread_info.h>
+
+#include <asm/arch/smp.h>
+
+#error "<asm-arm/smp.h> included in non-SMP build"
+
+#define raw_smp_processor_id() (current_thread_info()->cpu)
+
+#define PROC_CHANGE_PENALTY 15
+
+struct seq_file;
+
+struct secondary_data {
+ unsigned long pgdir;
+ void *stack;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/socket.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/socket.h
new file mode 100644
index 0000000..1f0050a
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/socket.h
@@ -0,0 +1,61 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SOCKET_H
+#define _ASMARM_SOCKET_H
+
+#include <asm/sockios.h>
+
+#define SOL_SOCKET 1
+
+#define SO_DEBUG 1
+#define SO_REUSEADDR 2
+#define SO_TYPE 3
+#define SO_ERROR 4
+#define SO_DONTROUTE 5
+#define SO_BROADCAST 6
+#define SO_SNDBUF 7
+#define SO_RCVBUF 8
+#define SO_SNDBUFFORCE 32
+#define SO_RCVBUFFORCE 33
+#define SO_KEEPALIVE 9
+#define SO_OOBINLINE 10
+#define SO_NO_CHECK 11
+#define SO_PRIORITY 12
+#define SO_LINGER 13
+#define SO_BSDCOMPAT 14
+
+#define SO_PASSCRED 16
+#define SO_PEERCRED 17
+#define SO_RCVLOWAT 18
+#define SO_SNDLOWAT 19
+#define SO_RCVTIMEO 20
+#define SO_SNDTIMEO 21
+
+#define SO_SECURITY_AUTHENTICATION 22
+#define SO_SECURITY_ENCRYPTION_TRANSPORT 23
+#define SO_SECURITY_ENCRYPTION_NETWORK 24
+
+#define SO_BINDTODEVICE 25
+
+#define SO_ATTACH_FILTER 26
+#define SO_DETACH_FILTER 27
+
+#define SO_PEERNAME 28
+#define SO_TIMESTAMP 29
+#define SCM_TIMESTAMP SO_TIMESTAMP
+
+#define SO_ACCEPTCONN 30
+
+#define SO_PEERSEC 31
+#define SO_PASSSEC 34
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sockios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sockios.h
new file mode 100644
index 0000000..cab86b8
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/sockios.h
@@ -0,0 +1,22 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ARCH_ARM_SOCKIOS_H
+#define __ARCH_ARM_SOCKIOS_H
+
+#define FIOSETOWN 0x8901
+#define SIOCSPGRP 0x8902
+#define FIOGETOWN 0x8903
+#define SIOCGPGRP 0x8904
+#define SIOCATMARK 0x8905
+#define SIOCGSTAMP 0x8906  
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock.h
new file mode 100644
index 0000000..3ae2173
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock.h
@@ -0,0 +1,27 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_SPINLOCK_H
+#define __ASM_SPINLOCK_H
+
+#if __LINUX_ARM_ARCH__ < 6
+#error SMP not supported on pre-ARMv6 CPUs
+#endif
+
+#define __raw_spin_is_locked(x) ((x)->lock != 0)
+#define __raw_spin_unlock_wait(lock)   do { while (__raw_spin_is_locked(lock)) cpu_relax(); } while (0)
+
+#define __raw_spin_lock_flags(lock, flags) __raw_spin_lock(lock)
+
+#define rwlock_is_locked(x) (*((volatile unsigned int *)(x)) != 0)
+#define __raw_write_can_lock(x) ((x)->lock == 0x80000000)
+#define __raw_read_can_lock(x) ((x)->lock < 0x80000000)
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock_types.h
new file mode 100644
index 0000000..ee77f20
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/spinlock_types.h
@@ -0,0 +1,31 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_SPINLOCK_TYPES_H
+#define __ASM_SPINLOCK_TYPES_H
+
+#ifndef __LINUX_SPINLOCK_TYPES_H
+#error "please don't include this file directly"
+#endif
+
+typedef struct {
+ volatile unsigned int lock;
+} raw_spinlock_t;
+
+#define __RAW_SPIN_LOCK_UNLOCKED { 0 }
+
+typedef struct {
+ volatile unsigned int lock;
+} raw_rwlock_t;
+
+#define __RAW_RW_LOCK_UNLOCKED { 0 }
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/stat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/stat.h
new file mode 100644
index 0000000..49b85f9
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/stat.h
@@ -0,0 +1,93 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_STAT_H
+#define _ASMARM_STAT_H
+
+struct __old_kernel_stat {
+ unsigned short st_dev;
+ unsigned short st_ino;
+ unsigned short st_mode;
+ unsigned short st_nlink;
+ unsigned short st_uid;
+ unsigned short st_gid;
+ unsigned short st_rdev;
+ unsigned long st_size;
+ unsigned long st_atime;
+ unsigned long st_mtime;
+ unsigned long st_ctime;
+};
+
+#define STAT_HAVE_NSEC 
+
+struct stat {
+#ifdef __ARMEB__
+ unsigned short st_dev;
+ unsigned short __pad1;
+#else
+ unsigned long st_dev;
+#endif
+ unsigned long st_ino;
+ unsigned short st_mode;
+ unsigned short st_nlink;
+ unsigned short st_uid;
+ unsigned short st_gid;
+#ifdef __ARMEB__
+ unsigned short st_rdev;
+ unsigned short __pad2;
+#else
+ unsigned long st_rdev;
+#endif
+ unsigned long st_size;
+ unsigned long st_blksize;
+ unsigned long st_blocks;
+ unsigned long st_atime;
+ unsigned long st_atime_nsec;
+ unsigned long st_mtime;
+ unsigned long st_mtime_nsec;
+ unsigned long st_ctime;
+ unsigned long st_ctime_nsec;
+ unsigned long __unused4;
+ unsigned long __unused5;
+};
+
+struct stat64 {
+ unsigned long long st_dev;
+ unsigned char __pad0[4];
+
+#define STAT64_HAS_BROKEN_ST_INO 1
+ unsigned long __st_ino;
+ unsigned int st_mode;
+ unsigned int st_nlink;
+
+ unsigned long st_uid;
+ unsigned long st_gid;
+
+ unsigned long long st_rdev;
+ unsigned char __pad3[4];
+
+ long long st_size;
+ unsigned long st_blksize;
+ unsigned long long st_blocks;
+
+ unsigned long st_atime;
+ unsigned long st_atime_nsec;
+
+ unsigned long st_mtime;
+ unsigned long st_mtime_nsec;
+
+ unsigned long st_ctime;
+ unsigned long st_ctime_nsec;
+
+ unsigned long long st_ino;
+};
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/statfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/statfs.h
new file mode 100644
index 0000000..7963eab
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/statfs.h
@@ -0,0 +1,43 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_STATFS_H
+#define _ASMARM_STATFS_H
+
+struct statfs {
+ __u32 f_type;
+ __u32 f_bsize;
+ __u32 f_blocks;
+ __u32 f_bfree;
+ __u32 f_bavail;
+ __u32 f_files;
+ __u32 f_ffree;
+ __kernel_fsid_t f_fsid;
+ __u32 f_namelen;
+ __u32 f_frsize;
+ __u32 f_spare[5];
+};
+
+struct statfs64 {
+ __u32 f_type;
+ __u32 f_bsize;
+ __u64 f_blocks;
+ __u64 f_bfree;
+ __u64 f_bavail;
+ __u64 f_files;
+ __u64 f_ffree;
+ __kernel_fsid_t f_fsid;
+ __u32 f_namelen;
+ __u32 f_frsize;
+ __u32 f_spare[5];
+} __attribute__ ((packed,aligned(4)));
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/suspend.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/suspend.h
new file mode 100644
index 0000000..156c171
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/suspend.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_SUSPEND_H
+#define _ASMARM_SUSPEND_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/system.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/system.h
new file mode 100644
index 0000000..8e85039
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/system.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_SYSTEM_H
+#define __ASM_ARM_SYSTEM_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termbits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termbits.h
new file mode 100644
index 0000000..640bd27
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termbits.h
@@ -0,0 +1,174 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_TERMBITS_H
+#define __ASM_ARM_TERMBITS_H
+
+typedef unsigned char cc_t;
+typedef unsigned int speed_t;
+typedef unsigned int tcflag_t;
+
+#define NCCS 19
+struct termios {
+ tcflag_t c_iflag;
+ tcflag_t c_oflag;
+ tcflag_t c_cflag;
+ tcflag_t c_lflag;
+ cc_t c_line;
+ cc_t c_cc[NCCS];
+};
+
+#define VINTR 0
+#define VQUIT 1
+#define VERASE 2
+#define VKILL 3
+#define VEOF 4
+#define VTIME 5
+#define VMIN 6
+#define VSWTC 7
+#define VSTART 8
+#define VSTOP 9
+#define VSUSP 10
+#define VEOL 11
+#define VREPRINT 12
+#define VDISCARD 13
+#define VWERASE 14
+#define VLNEXT 15
+#define VEOL2 16
+
+#define IGNBRK 0000001
+#define BRKINT 0000002
+#define IGNPAR 0000004
+#define PARMRK 0000010
+#define INPCK 0000020
+#define ISTRIP 0000040
+#define INLCR 0000100
+#define IGNCR 0000200
+#define ICRNL 0000400
+#define IUCLC 0001000
+#define IXON 0002000
+#define IXANY 0004000
+#define IXOFF 0010000
+#define IMAXBEL 0020000
+#define IUTF8 0040000
+
+#define OPOST 0000001
+#define OLCUC 0000002
+#define ONLCR 0000004
+#define OCRNL 0000010
+#define ONOCR 0000020
+#define ONLRET 0000040
+#define OFILL 0000100
+#define OFDEL 0000200
+#define NLDLY 0000400
+#define NL0 0000000
+#define NL1 0000400
+#define CRDLY 0003000
+#define CR0 0000000
+#define CR1 0001000
+#define CR2 0002000
+#define CR3 0003000
+#define TABDLY 0014000
+#define TAB0 0000000
+#define TAB1 0004000
+#define TAB2 0010000
+#define TAB3 0014000
+#define XTABS 0014000
+#define BSDLY 0020000
+#define BS0 0000000
+#define BS1 0020000
+#define VTDLY 0040000
+#define VT0 0000000
+#define VT1 0040000
+#define FFDLY 0100000
+#define FF0 0000000
+#define FF1 0100000
+
+#define CBAUD 0010017
+#define B0 0000000  
+#define B50 0000001
+#define B75 0000002
+#define B110 0000003
+#define B134 0000004
+#define B150 0000005
+#define B200 0000006
+#define B300 0000007
+#define B600 0000010
+#define B1200 0000011
+#define B1800 0000012
+#define B2400 0000013
+#define B4800 0000014
+#define B9600 0000015
+#define B19200 0000016
+#define B38400 0000017
+#define EXTA B19200
+#define EXTB B38400
+#define CSIZE 0000060
+#define CS5 0000000
+#define CS6 0000020
+#define CS7 0000040
+#define CS8 0000060
+#define CSTOPB 0000100
+#define CREAD 0000200
+#define PARENB 0000400
+#define PARODD 0001000
+#define HUPCL 0002000
+#define CLOCAL 0004000
+#define CBAUDEX 0010000
+#define B57600 0010001
+#define B115200 0010002
+#define B230400 0010003
+#define B460800 0010004
+#define B500000 0010005
+#define B576000 0010006
+#define B921600 0010007
+#define B1000000 0010010
+#define B1152000 0010011
+#define B1500000 0010012
+#define B2000000 0010013
+#define B2500000 0010014
+#define B3000000 0010015
+#define B3500000 0010016
+#define B4000000 0010017
+#define CIBAUD 002003600000  
+#define CMSPAR 010000000000  
+#define CRTSCTS 020000000000  
+
+#define ISIG 0000001
+#define ICANON 0000002
+#define XCASE 0000004
+#define ECHO 0000010
+#define ECHOE 0000020
+#define ECHOK 0000040
+#define ECHONL 0000100
+#define NOFLSH 0000200
+#define TOSTOP 0000400
+#define ECHOCTL 0001000
+#define ECHOPRT 0002000
+#define ECHOKE 0004000
+#define FLUSHO 0010000
+#define PENDIN 0040000
+#define IEXTEN 0100000
+
+#define TCOOFF 0
+#define TCOON 1
+#define TCIOFF 2
+#define TCION 3
+
+#define TCIFLUSH 0
+#define TCOFLUSH 1
+#define TCIOFLUSH 2
+
+#define TCSANOW 0
+#define TCSADRAIN 1
+#define TCSAFLUSH 2
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termios.h
new file mode 100644
index 0000000..ba43ac2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/termios.h
@@ -0,0 +1,67 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_TERMIOS_H
+#define __ASM_ARM_TERMIOS_H
+
+#include <asm/termbits.h>
+#include <asm/ioctls.h>
+
+struct winsize {
+ unsigned short ws_row;
+ unsigned short ws_col;
+ unsigned short ws_xpixel;
+ unsigned short ws_ypixel;
+};
+
+#define NCC 8
+struct termio {
+ unsigned short c_iflag;
+ unsigned short c_oflag;
+ unsigned short c_cflag;
+ unsigned short c_lflag;
+ unsigned char c_line;
+ unsigned char c_cc[NCC];
+};
+
+#define TIOCM_LE 0x001
+#define TIOCM_DTR 0x002
+#define TIOCM_RTS 0x004
+#define TIOCM_ST 0x008
+#define TIOCM_SR 0x010
+#define TIOCM_CTS 0x020
+#define TIOCM_CAR 0x040
+#define TIOCM_RNG 0x080
+#define TIOCM_DSR 0x100
+#define TIOCM_CD TIOCM_CAR
+#define TIOCM_RI TIOCM_RNG
+#define TIOCM_OUT1 0x2000
+#define TIOCM_OUT2 0x4000
+#define TIOCM_LOOP 0x8000
+
+#define N_TTY 0
+#define N_SLIP 1
+#define N_MOUSE 2
+#define N_PPP 3
+#define N_STRIP 4
+#define N_AX25 5
+#define N_X25 6  
+#define N_6PACK 7
+#define N_MASC 8  
+#define N_R3964 9  
+#define N_PROFIBUS_FDL 10  
+#define N_IRDA 11  
+#define N_SMSBLOCK 12  
+#define N_HDLC 13  
+#define N_SYNC_PPP 14
+#define N_HCI 15  
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/thread_info.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/thread_info.h
new file mode 100644
index 0000000..a30d2dc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/thread_info.h
@@ -0,0 +1,15 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_THREAD_INFO_H
+#define __ASM_ARM_THREAD_INFO_H
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/timex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/timex.h
new file mode 100644
index 0000000..110c471
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/timex.h
@@ -0,0 +1,19 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_TIMEX_H
+#define _ASMARM_TIMEX_H
+
+#include <asm/arch/timex.h>
+
+typedef unsigned long cycles_t;
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/tlbflush.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/tlbflush.h
new file mode 100644
index 0000000..70a23dc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/tlbflush.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_TLBFLUSH_H
+#define _ASMARM_TLBFLUSH_H
+
+#define tlb_flush(tlb) ((void) tlb)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/topology.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/topology.h
new file mode 100644
index 0000000..9eccfd4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/topology.h
@@ -0,0 +1,17 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASM_ARM_TOPOLOGY_H
+#define _ASM_ARM_TOPOLOGY_H
+
+#include <asm-generic/topology.h>
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/types.h
new file mode 100644
index 0000000..ec60f10
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/types.h
@@ -0,0 +1,36 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_TYPES_H
+#define __ASM_ARM_TYPES_H
+
+#ifndef __ASSEMBLY__
+
+typedef unsigned short umode_t;
+
+typedef __signed__ char __s8;
+typedef unsigned char __u8;
+
+typedef __signed__ short __s16;
+typedef unsigned short __u16;
+
+typedef __signed__ int __s32;
+typedef unsigned int __u32;
+
+#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
+typedef __signed__ long long __s64;
+typedef unsigned long long __u64;
+#endif
+
+#endif
+
+#endif
+
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/uaccess.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/uaccess.h
new file mode 100644
index 0000000..21fc3f2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/uaccess.h
@@ -0,0 +1,77 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ASMARM_UACCESS_H
+#define _ASMARM_UACCESS_H
+
+#include <linux/sched.h>
+#include <asm/errno.h>
+#include <asm/memory.h>
+#include <asm/domain.h>
+#include <asm/system.h>
+
+#define VERIFY_READ 0
+#define VERIFY_WRITE 1
+
+struct exception_table_entry
+{
+ unsigned long insn, fixup;
+};
+
+#define KERNEL_DS 0x00000000
+#define get_ds() (KERNEL_DS)
+
+#define USER_DS KERNEL_DS
+
+#define segment_eq(a,b) (1)
+#define __addr_ok(addr) (1)
+#define __range_ok(addr,size) (0)
+#define get_fs() (KERNEL_DS)
+
+#define get_user(x,p) __get_user(x,p)
+#define put_user(x,p) __put_user(x,p)
+#define access_ok(type,addr,size) (__range_ok(addr,size) == 0)
+#define __get_user(x,ptr)  ({   long __gu_err = 0;   __get_user_err((x),(ptr),__gu_err);   __gu_err;  })
+#define __get_user_error(x,ptr,err)  ({   __get_user_err((x),(ptr),err);   (void) 0;  })
+#define __get_user_err(x,ptr,err)  do {   unsigned long __gu_addr = (unsigned long)(ptr);   unsigned long __gu_val;   __chk_user_ptr(ptr);   switch (sizeof(*(ptr))) {   case 1: __get_user_asm_byte(__gu_val,__gu_addr,err); break;   case 2: __get_user_asm_half(__gu_val,__gu_addr,err); break;   case 4: __get_user_asm_word(__gu_val,__gu_addr,err); break;   default: (__gu_val) = __get_user_bad();   }   (x) = (__typeof__(*(ptr)))__gu_val;  } while (0)
+#define __get_user_asm_byte(x,addr,err)   __asm__ __volatile__(   "1:	ldrbt	%1,[%2],#0\n"   "2:\n"   "	.section .fixup,\"ax\"\n"   "	.align	2\n"   "3:	mov	%0, %3\n"   "	mov	%1, #0\n"   "	b	2b\n"   "	.previous\n"   "	.section __ex_table,\"a\"\n"   "	.align	3\n"   "	.long	1b, 3b\n"   "	.previous"   : "+r" (err), "=&r" (x)   : "r" (addr), "i" (-EFAULT)   : "cc")
+#ifndef __ARMEB__
+#define __get_user_asm_half(x,__gu_addr,err)  ({   unsigned long __b1, __b2;   __get_user_asm_byte(__b1, __gu_addr, err);   __get_user_asm_byte(__b2, __gu_addr + 1, err);   (x) = __b1 | (__b2 << 8);  })
+#else
+#define __get_user_asm_half(x,__gu_addr,err)  ({   unsigned long __b1, __b2;   __get_user_asm_byte(__b1, __gu_addr, err);   __get_user_asm_byte(__b2, __gu_addr + 1, err);   (x) = (__b1 << 8) | __b2;  })
+#endif
+#define __get_user_asm_word(x,addr,err)   __asm__ __volatile__(   "1:	ldrt	%1,[%2],#0\n"   "2:\n"   "	.section .fixup,\"ax\"\n"   "	.align	2\n"   "3:	mov	%0, %3\n"   "	mov	%1, #0\n"   "	b	2b\n"   "	.previous\n"   "	.section __ex_table,\"a\"\n"   "	.align	3\n"   "	.long	1b, 3b\n"   "	.previous"   : "+r" (err), "=&r" (x)   : "r" (addr), "i" (-EFAULT)   : "cc")
+#define __put_user(x,ptr)  ({   long __pu_err = 0;   __put_user_err((x),(ptr),__pu_err);   __pu_err;  })
+#define __put_user_error(x,ptr,err)  ({   __put_user_err((x),(ptr),err);   (void) 0;  })
+#define __put_user_err(x,ptr,err)  do {   unsigned long __pu_addr = (unsigned long)(ptr);   __typeof__(*(ptr)) __pu_val = (x);   __chk_user_ptr(ptr);   switch (sizeof(*(ptr))) {   case 1: __put_user_asm_byte(__pu_val,__pu_addr,err); break;   case 2: __put_user_asm_half(__pu_val,__pu_addr,err); break;   case 4: __put_user_asm_word(__pu_val,__pu_addr,err); break;   case 8: __put_user_asm_dword(__pu_val,__pu_addr,err); break;   default: __put_user_bad();   }  } while (0)
+#define __put_user_asm_byte(x,__pu_addr,err)   __asm__ __volatile__(   "1:	strbt	%1,[%2],#0\n"   "2:\n"   "	.section .fixup,\"ax\"\n"   "	.align	2\n"   "3:	mov	%0, %3\n"   "	b	2b\n"   "	.previous\n"   "	.section __ex_table,\"a\"\n"   "	.align	3\n"   "	.long	1b, 3b\n"   "	.previous"   : "+r" (err)   : "r" (x), "r" (__pu_addr), "i" (-EFAULT)   : "cc")
+#ifndef __ARMEB__
+#define __put_user_asm_half(x,__pu_addr,err)  ({   unsigned long __temp = (unsigned long)(x);   __put_user_asm_byte(__temp, __pu_addr, err);   __put_user_asm_byte(__temp >> 8, __pu_addr + 1, err);  })
+#else
+#define __put_user_asm_half(x,__pu_addr,err)  ({   unsigned long __temp = (unsigned long)(x);   __put_user_asm_byte(__temp >> 8, __pu_addr, err);   __put_user_asm_byte(__temp, __pu_addr + 1, err);  })
+#endif
+#define __put_user_asm_word(x,__pu_addr,err)   __asm__ __volatile__(   "1:	strt	%1,[%2],#0\n"   "2:\n"   "	.section .fixup,\"ax\"\n"   "	.align	2\n"   "3:	mov	%0, %3\n"   "	b	2b\n"   "	.previous\n"   "	.section __ex_table,\"a\"\n"   "	.align	3\n"   "	.long	1b, 3b\n"   "	.previous"   : "+r" (err)   : "r" (x), "r" (__pu_addr), "i" (-EFAULT)   : "cc")
+#ifndef __ARMEB__
+#define __reg_oper0 "%R2"
+#define __reg_oper1 "%Q2"
+#else
+#define __reg_oper0 "%Q2"
+#define __reg_oper1 "%R2"
+#endif
+#define __put_user_asm_dword(x,__pu_addr,err)   __asm__ __volatile__(   "1:	strt	" __reg_oper1 ", [%1], #4\n"   "2:	strt	" __reg_oper0 ", [%1], #0\n"   "3:\n"   "	.section .fixup,\"ax\"\n"   "	.align	2\n"   "4:	mov	%0, %3\n"   "	b	3b\n"   "	.previous\n"   "	.section __ex_table,\"a\"\n"   "	.align	3\n"   "	.long	1b, 4b\n"   "	.long	2b, 4b\n"   "	.previous"   : "+r" (err), "+r" (__pu_addr)   : "r" (x), "i" (-EFAULT)   : "cc")
+#define __copy_from_user(to,from,n) (memcpy(to, (void __force *)from, n), 0)
+#define __copy_to_user(to,from,n) (memcpy((void __force *)to, from, n), 0)
+#define __clear_user(addr,n) (memset((void __force *)addr, 0, n), 0)
+
+#define __copy_to_user_inatomic __copy_to_user
+#define __copy_from_user_inatomic __copy_from_user
+#define strlen_user(s) strnlen_user(s, ~0UL >> 1)
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unaligned.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unaligned.h
new file mode 100644
index 0000000..8b9b096
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unaligned.h
@@ -0,0 +1,38 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_UNALIGNED_H
+#define __ASM_ARM_UNALIGNED_H
+
+#include <asm/types.h>
+
+#define __get_unaligned_2_le(__p)   (__p[0] | __p[1] << 8)
+
+#define __get_unaligned_2_be(__p)   (__p[0] << 8 | __p[1])
+
+#define __get_unaligned_4_le(__p)   (__p[0] | __p[1] << 8 | __p[2] << 16 | __p[3] << 24)
+
+#define __get_unaligned_4_be(__p)   (__p[0] << 24 | __p[1] << 16 | __p[2] << 8 | __p[3])
+
+#define __get_unaligned_le(ptr)   ({   __typeof__(*(ptr)) __v;   __u8 *__p = (__u8 *)(ptr);   switch (sizeof(*(ptr))) {   case 1: __v = *(ptr); break;   case 2: __v = __get_unaligned_2_le(__p); break;   case 4: __v = __get_unaligned_4_le(__p); break;   case 8: {   unsigned int __v1, __v2;   __v2 = __get_unaligned_4_le((__p+4));   __v1 = __get_unaligned_4_le(__p);   __v = ((unsigned long long)__v2 << 32 | __v1);   }   break;   default: __v = __bug_unaligned_x(__p); break;   }   __v;   })
+
+#define __get_unaligned_be(ptr)   ({   __typeof__(*(ptr)) __v;   __u8 *__p = (__u8 *)(ptr);   switch (sizeof(*(ptr))) {   case 1: __v = *(ptr); break;   case 2: __v = __get_unaligned_2_be(__p); break;   case 4: __v = __get_unaligned_4_be(__p); break;   case 8: {   unsigned int __v1, __v2;   __v2 = __get_unaligned_4_be(__p);   __v1 = __get_unaligned_4_be((__p+4));   __v = ((unsigned long long)__v2 << 32 | __v1);   }   break;   default: __v = __bug_unaligned_x(__p); break;   }   __v;   })
+
+#define __put_unaligned_le(val,ptr)   ({   switch (sizeof(*(ptr))) {   case 1:   *(ptr) = (val);   break;   case 2: __put_unaligned_2_le((val),(__u8 *)(ptr));   break;   case 4: __put_unaligned_4_le((val),(__u8 *)(ptr));   break;   case 8: __put_unaligned_8_le((val),(__u8 *)(ptr));   break;   default: __bug_unaligned_x(ptr);   break;   }   (void) 0;   })
+#define __put_unaligned_be(val,ptr)   ({   switch (sizeof(*(ptr))) {   case 1:   *(ptr) = (val);   break;   case 2: __put_unaligned_2_be((val),(__u8 *)(ptr));   break;   case 4: __put_unaligned_4_be((val),(__u8 *)(ptr));   break;   case 8: __put_unaligned_8_be((val),(__u8 *)(ptr));   break;   default: __bug_unaligned_x(ptr);   break;   }   (void) 0;   })
+#ifndef __ARMEB__
+#define get_unaligned __get_unaligned_le
+#define put_unaligned __put_unaligned_le
+#else
+#define get_unaligned __get_unaligned_be
+#define put_unaligned __put_unaligned_be
+#endif
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unistd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unistd.h
new file mode 100644
index 0000000..9a30ddc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/unistd.h
@@ -0,0 +1,359 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef __ASM_ARM_UNISTD_H
+#define __ASM_ARM_UNISTD_H
+
+#define __NR_OABI_SYSCALL_BASE 0x900000
+
+#if defined(__thumb__) || defined(__ARM_EABI__)
+#define __NR_SYSCALL_BASE 0
+#else
+#define __NR_SYSCALL_BASE __NR_OABI_SYSCALL_BASE
+#endif
+
+#define __NR_restart_syscall (__NR_SYSCALL_BASE+ 0)
+#define __NR_exit (__NR_SYSCALL_BASE+ 1)
+#define __NR_fork (__NR_SYSCALL_BASE+ 2)
+#define __NR_read (__NR_SYSCALL_BASE+ 3)
+#define __NR_write (__NR_SYSCALL_BASE+ 4)
+#define __NR_open (__NR_SYSCALL_BASE+ 5)
+#define __NR_close (__NR_SYSCALL_BASE+ 6)
+
+#define __NR_creat (__NR_SYSCALL_BASE+ 8)
+#define __NR_link (__NR_SYSCALL_BASE+ 9)
+#define __NR_unlink (__NR_SYSCALL_BASE+ 10)
+#define __NR_execve (__NR_SYSCALL_BASE+ 11)
+#define __NR_chdir (__NR_SYSCALL_BASE+ 12)
+#define __NR_time (__NR_SYSCALL_BASE+ 13)
+#define __NR_mknod (__NR_SYSCALL_BASE+ 14)
+#define __NR_chmod (__NR_SYSCALL_BASE+ 15)
+#define __NR_lchown (__NR_SYSCALL_BASE+ 16)
+
+#define __NR_lseek (__NR_SYSCALL_BASE+ 19)
+#define __NR_getpid (__NR_SYSCALL_BASE+ 20)
+#define __NR_mount (__NR_SYSCALL_BASE+ 21)
+#define __NR_umount (__NR_SYSCALL_BASE+ 22)
+#define __NR_setuid (__NR_SYSCALL_BASE+ 23)
+#define __NR_getuid (__NR_SYSCALL_BASE+ 24)
+#define __NR_stime (__NR_SYSCALL_BASE+ 25)
+#define __NR_ptrace (__NR_SYSCALL_BASE+ 26)
+#define __NR_alarm (__NR_SYSCALL_BASE+ 27)
+
+#define __NR_pause (__NR_SYSCALL_BASE+ 29)
+#define __NR_utime (__NR_SYSCALL_BASE+ 30)
+
+#define __NR_access (__NR_SYSCALL_BASE+ 33)
+#define __NR_nice (__NR_SYSCALL_BASE+ 34)
+
+#define __NR_sync (__NR_SYSCALL_BASE+ 36)
+#define __NR_kill (__NR_SYSCALL_BASE+ 37)
+#define __NR_rename (__NR_SYSCALL_BASE+ 38)
+#define __NR_mkdir (__NR_SYSCALL_BASE+ 39)
+#define __NR_rmdir (__NR_SYSCALL_BASE+ 40)
+#define __NR_dup (__NR_SYSCALL_BASE+ 41)
+#define __NR_pipe (__NR_SYSCALL_BASE+ 42)
+#define __NR_times (__NR_SYSCALL_BASE+ 43)
+
+#define __NR_brk (__NR_SYSCALL_BASE+ 45)
+#define __NR_setgid (__NR_SYSCALL_BASE+ 46)
+#define __NR_getgid (__NR_SYSCALL_BASE+ 47)
+
+#define __NR_geteuid (__NR_SYSCALL_BASE+ 49)
+#define __NR_getegid (__NR_SYSCALL_BASE+ 50)
+#define __NR_acct (__NR_SYSCALL_BASE+ 51)
+#define __NR_umount2 (__NR_SYSCALL_BASE+ 52)
+
+#define __NR_ioctl (__NR_SYSCALL_BASE+ 54)
+#define __NR_fcntl (__NR_SYSCALL_BASE+ 55)
+
+#define __NR_setpgid (__NR_SYSCALL_BASE+ 57)
+
+#define __NR_umask (__NR_SYSCALL_BASE+ 60)
+#define __NR_chroot (__NR_SYSCALL_BASE+ 61)
+#define __NR_ustat (__NR_SYSCALL_BASE+ 62)
+#define __NR_dup2 (__NR_SYSCALL_BASE+ 63)
+#define __NR_getppid (__NR_SYSCALL_BASE+ 64)
+#define __NR_getpgrp (__NR_SYSCALL_BASE+ 65)
+#define __NR_setsid (__NR_SYSCALL_BASE+ 66)
+#define __NR_sigaction (__NR_SYSCALL_BASE+ 67)
+
+#define __NR_setreuid (__NR_SYSCALL_BASE+ 70)
+#define __NR_setregid (__NR_SYSCALL_BASE+ 71)
+#define __NR_sigsuspend (__NR_SYSCALL_BASE+ 72)
+#define __NR_sigpending (__NR_SYSCALL_BASE+ 73)
+#define __NR_sethostname (__NR_SYSCALL_BASE+ 74)
+#define __NR_setrlimit (__NR_SYSCALL_BASE+ 75)
+#define __NR_getrlimit (__NR_SYSCALL_BASE+ 76)  
+#define __NR_getrusage (__NR_SYSCALL_BASE+ 77)
+#define __NR_gettimeofday (__NR_SYSCALL_BASE+ 78)
+#define __NR_settimeofday (__NR_SYSCALL_BASE+ 79)
+#define __NR_getgroups (__NR_SYSCALL_BASE+ 80)
+#define __NR_setgroups (__NR_SYSCALL_BASE+ 81)
+#define __NR_select (__NR_SYSCALL_BASE+ 82)
+#define __NR_symlink (__NR_SYSCALL_BASE+ 83)
+
+#define __NR_readlink (__NR_SYSCALL_BASE+ 85)
+#define __NR_uselib (__NR_SYSCALL_BASE+ 86)
+#define __NR_swapon (__NR_SYSCALL_BASE+ 87)
+#define __NR_reboot (__NR_SYSCALL_BASE+ 88)
+#define __NR_readdir (__NR_SYSCALL_BASE+ 89)
+#define __NR_mmap (__NR_SYSCALL_BASE+ 90)
+#define __NR_munmap (__NR_SYSCALL_BASE+ 91)
+#define __NR_truncate (__NR_SYSCALL_BASE+ 92)
+#define __NR_ftruncate (__NR_SYSCALL_BASE+ 93)
+#define __NR_fchmod (__NR_SYSCALL_BASE+ 94)
+#define __NR_fchown (__NR_SYSCALL_BASE+ 95)
+#define __NR_getpriority (__NR_SYSCALL_BASE+ 96)
+#define __NR_setpriority (__NR_SYSCALL_BASE+ 97)
+
+#define __NR_statfs (__NR_SYSCALL_BASE+ 99)
+#define __NR_fstatfs (__NR_SYSCALL_BASE+100)
+
+#define __NR_socketcall (__NR_SYSCALL_BASE+102)
+#define __NR_syslog (__NR_SYSCALL_BASE+103)
+#define __NR_setitimer (__NR_SYSCALL_BASE+104)
+#define __NR_getitimer (__NR_SYSCALL_BASE+105)
+#define __NR_stat (__NR_SYSCALL_BASE+106)
+#define __NR_lstat (__NR_SYSCALL_BASE+107)
+#define __NR_fstat (__NR_SYSCALL_BASE+108)
+
+#define __NR_vhangup (__NR_SYSCALL_BASE+111)
+
+#define __NR_syscall (__NR_SYSCALL_BASE+113)  
+#define __NR_wait4 (__NR_SYSCALL_BASE+114)
+#define __NR_swapoff (__NR_SYSCALL_BASE+115)
+#define __NR_sysinfo (__NR_SYSCALL_BASE+116)
+#define __NR_ipc (__NR_SYSCALL_BASE+117)
+#define __NR_fsync (__NR_SYSCALL_BASE+118)
+#define __NR_sigreturn (__NR_SYSCALL_BASE+119)
+#define __NR_clone (__NR_SYSCALL_BASE+120)
+#define __NR_setdomainname (__NR_SYSCALL_BASE+121)
+#define __NR_uname (__NR_SYSCALL_BASE+122)
+
+#define __NR_adjtimex (__NR_SYSCALL_BASE+124)
+#define __NR_mprotect (__NR_SYSCALL_BASE+125)
+#define __NR_sigprocmask (__NR_SYSCALL_BASE+126)
+
+#define __NR_init_module (__NR_SYSCALL_BASE+128)
+#define __NR_delete_module (__NR_SYSCALL_BASE+129)
+
+#define __NR_quotactl (__NR_SYSCALL_BASE+131)
+#define __NR_getpgid (__NR_SYSCALL_BASE+132)
+#define __NR_fchdir (__NR_SYSCALL_BASE+133)
+#define __NR_bdflush (__NR_SYSCALL_BASE+134)
+#define __NR_sysfs (__NR_SYSCALL_BASE+135)
+#define __NR_personality (__NR_SYSCALL_BASE+136)
+
+#define __NR_setfsuid (__NR_SYSCALL_BASE+138)
+#define __NR_setfsgid (__NR_SYSCALL_BASE+139)
+#define __NR__llseek (__NR_SYSCALL_BASE+140)
+#define __NR_getdents (__NR_SYSCALL_BASE+141)
+#define __NR__newselect (__NR_SYSCALL_BASE+142)
+#define __NR_flock (__NR_SYSCALL_BASE+143)
+#define __NR_msync (__NR_SYSCALL_BASE+144)
+#define __NR_readv (__NR_SYSCALL_BASE+145)
+#define __NR_writev (__NR_SYSCALL_BASE+146)
+#define __NR_getsid (__NR_SYSCALL_BASE+147)
+#define __NR_fdatasync (__NR_SYSCALL_BASE+148)
+#define __NR__sysctl (__NR_SYSCALL_BASE+149)
+#define __NR_mlock (__NR_SYSCALL_BASE+150)
+#define __NR_munlock (__NR_SYSCALL_BASE+151)
+#define __NR_mlockall (__NR_SYSCALL_BASE+152)
+#define __NR_munlockall (__NR_SYSCALL_BASE+153)
+#define __NR_sched_setparam (__NR_SYSCALL_BASE+154)
+#define __NR_sched_getparam (__NR_SYSCALL_BASE+155)
+#define __NR_sched_setscheduler (__NR_SYSCALL_BASE+156)
+#define __NR_sched_getscheduler (__NR_SYSCALL_BASE+157)
+#define __NR_sched_yield (__NR_SYSCALL_BASE+158)
+#define __NR_sched_get_priority_max (__NR_SYSCALL_BASE+159)
+#define __NR_sched_get_priority_min (__NR_SYSCALL_BASE+160)
+#define __NR_sched_rr_get_interval (__NR_SYSCALL_BASE+161)
+#define __NR_nanosleep (__NR_SYSCALL_BASE+162)
+#define __NR_mremap (__NR_SYSCALL_BASE+163)
+#define __NR_setresuid (__NR_SYSCALL_BASE+164)
+#define __NR_getresuid (__NR_SYSCALL_BASE+165)
+
+#define __NR_poll (__NR_SYSCALL_BASE+168)
+#define __NR_nfsservctl (__NR_SYSCALL_BASE+169)
+#define __NR_setresgid (__NR_SYSCALL_BASE+170)
+#define __NR_getresgid (__NR_SYSCALL_BASE+171)
+#define __NR_prctl (__NR_SYSCALL_BASE+172)
+#define __NR_rt_sigreturn (__NR_SYSCALL_BASE+173)
+#define __NR_rt_sigaction (__NR_SYSCALL_BASE+174)
+#define __NR_rt_sigprocmask (__NR_SYSCALL_BASE+175)
+#define __NR_rt_sigpending (__NR_SYSCALL_BASE+176)
+#define __NR_rt_sigtimedwait (__NR_SYSCALL_BASE+177)
+#define __NR_rt_sigqueueinfo (__NR_SYSCALL_BASE+178)
+#define __NR_rt_sigsuspend (__NR_SYSCALL_BASE+179)
+#define __NR_pread64 (__NR_SYSCALL_BASE+180)
+#define __NR_pwrite64 (__NR_SYSCALL_BASE+181)
+#define __NR_chown (__NR_SYSCALL_BASE+182)
+#define __NR_getcwd (__NR_SYSCALL_BASE+183)
+#define __NR_capget (__NR_SYSCALL_BASE+184)
+#define __NR_capset (__NR_SYSCALL_BASE+185)
+#define __NR_sigaltstack (__NR_SYSCALL_BASE+186)
+#define __NR_sendfile (__NR_SYSCALL_BASE+187)
+
+#define __NR_vfork (__NR_SYSCALL_BASE+190)
+#define __NR_ugetrlimit (__NR_SYSCALL_BASE+191)  
+#define __NR_mmap2 (__NR_SYSCALL_BASE+192)
+#define __NR_truncate64 (__NR_SYSCALL_BASE+193)
+#define __NR_ftruncate64 (__NR_SYSCALL_BASE+194)
+#define __NR_stat64 (__NR_SYSCALL_BASE+195)
+#define __NR_lstat64 (__NR_SYSCALL_BASE+196)
+#define __NR_fstat64 (__NR_SYSCALL_BASE+197)
+#define __NR_lchown32 (__NR_SYSCALL_BASE+198)
+#define __NR_getuid32 (__NR_SYSCALL_BASE+199)
+#define __NR_getgid32 (__NR_SYSCALL_BASE+200)
+#define __NR_geteuid32 (__NR_SYSCALL_BASE+201)
+#define __NR_getegid32 (__NR_SYSCALL_BASE+202)
+#define __NR_setreuid32 (__NR_SYSCALL_BASE+203)
+#define __NR_setregid32 (__NR_SYSCALL_BASE+204)
+#define __NR_getgroups32 (__NR_SYSCALL_BASE+205)
+#define __NR_setgroups32 (__NR_SYSCALL_BASE+206)
+#define __NR_fchown32 (__NR_SYSCALL_BASE+207)
+#define __NR_setresuid32 (__NR_SYSCALL_BASE+208)
+#define __NR_getresuid32 (__NR_SYSCALL_BASE+209)
+#define __NR_setresgid32 (__NR_SYSCALL_BASE+210)
+#define __NR_getresgid32 (__NR_SYSCALL_BASE+211)
+#define __NR_chown32 (__NR_SYSCALL_BASE+212)
+#define __NR_setuid32 (__NR_SYSCALL_BASE+213)
+#define __NR_setgid32 (__NR_SYSCALL_BASE+214)
+#define __NR_setfsuid32 (__NR_SYSCALL_BASE+215)
+#define __NR_setfsgid32 (__NR_SYSCALL_BASE+216)
+#define __NR_getdents64 (__NR_SYSCALL_BASE+217)
+#define __NR_pivot_root (__NR_SYSCALL_BASE+218)
+#define __NR_mincore (__NR_SYSCALL_BASE+219)
+#define __NR_madvise (__NR_SYSCALL_BASE+220)
+#define __NR_fcntl64 (__NR_SYSCALL_BASE+221)
+
+#define __NR_gettid (__NR_SYSCALL_BASE+224)
+#define __NR_readahead (__NR_SYSCALL_BASE+225)
+#define __NR_setxattr (__NR_SYSCALL_BASE+226)
+#define __NR_lsetxattr (__NR_SYSCALL_BASE+227)
+#define __NR_fsetxattr (__NR_SYSCALL_BASE+228)
+#define __NR_getxattr (__NR_SYSCALL_BASE+229)
+#define __NR_lgetxattr (__NR_SYSCALL_BASE+230)
+#define __NR_fgetxattr (__NR_SYSCALL_BASE+231)
+#define __NR_listxattr (__NR_SYSCALL_BASE+232)
+#define __NR_llistxattr (__NR_SYSCALL_BASE+233)
+#define __NR_flistxattr (__NR_SYSCALL_BASE+234)
+#define __NR_removexattr (__NR_SYSCALL_BASE+235)
+#define __NR_lremovexattr (__NR_SYSCALL_BASE+236)
+#define __NR_fremovexattr (__NR_SYSCALL_BASE+237)
+#define __NR_tkill (__NR_SYSCALL_BASE+238)
+#define __NR_sendfile64 (__NR_SYSCALL_BASE+239)
+#define __NR_futex (__NR_SYSCALL_BASE+240)
+#define __NR_sched_setaffinity (__NR_SYSCALL_BASE+241)
+#define __NR_sched_getaffinity (__NR_SYSCALL_BASE+242)
+#define __NR_io_setup (__NR_SYSCALL_BASE+243)
+#define __NR_io_destroy (__NR_SYSCALL_BASE+244)
+#define __NR_io_getevents (__NR_SYSCALL_BASE+245)
+#define __NR_io_submit (__NR_SYSCALL_BASE+246)
+#define __NR_io_cancel (__NR_SYSCALL_BASE+247)
+#define __NR_exit_group (__NR_SYSCALL_BASE+248)
+#define __NR_lookup_dcookie (__NR_SYSCALL_BASE+249)
+#define __NR_epoll_create (__NR_SYSCALL_BASE+250)
+#define __NR_epoll_ctl (__NR_SYSCALL_BASE+251)
+#define __NR_epoll_wait (__NR_SYSCALL_BASE+252)
+#define __NR_remap_file_pages (__NR_SYSCALL_BASE+253)
+
+#define __NR_set_tid_address (__NR_SYSCALL_BASE+256)
+#define __NR_timer_create (__NR_SYSCALL_BASE+257)
+#define __NR_timer_settime (__NR_SYSCALL_BASE+258)
+#define __NR_timer_gettime (__NR_SYSCALL_BASE+259)
+#define __NR_timer_getoverrun (__NR_SYSCALL_BASE+260)
+#define __NR_timer_delete (__NR_SYSCALL_BASE+261)
+#define __NR_clock_settime (__NR_SYSCALL_BASE+262)
+#define __NR_clock_gettime (__NR_SYSCALL_BASE+263)
+#define __NR_clock_getres (__NR_SYSCALL_BASE+264)
+#define __NR_clock_nanosleep (__NR_SYSCALL_BASE+265)
+#define __NR_statfs64 (__NR_SYSCALL_BASE+266)
+#define __NR_fstatfs64 (__NR_SYSCALL_BASE+267)
+#define __NR_tgkill (__NR_SYSCALL_BASE+268)
+#define __NR_utimes (__NR_SYSCALL_BASE+269)
+#define __NR_arm_fadvise64_64 (__NR_SYSCALL_BASE+270)
+#define __NR_pciconfig_iobase (__NR_SYSCALL_BASE+271)
+#define __NR_pciconfig_read (__NR_SYSCALL_BASE+272)
+#define __NR_pciconfig_write (__NR_SYSCALL_BASE+273)
+#define __NR_mq_open (__NR_SYSCALL_BASE+274)
+#define __NR_mq_unlink (__NR_SYSCALL_BASE+275)
+#define __NR_mq_timedsend (__NR_SYSCALL_BASE+276)
+#define __NR_mq_timedreceive (__NR_SYSCALL_BASE+277)
+#define __NR_mq_notify (__NR_SYSCALL_BASE+278)
+#define __NR_mq_getsetattr (__NR_SYSCALL_BASE+279)
+#define __NR_waitid (__NR_SYSCALL_BASE+280)
+#define __NR_socket (__NR_SYSCALL_BASE+281)
+#define __NR_bind (__NR_SYSCALL_BASE+282)
+#define __NR_connect (__NR_SYSCALL_BASE+283)
+#define __NR_listen (__NR_SYSCALL_BASE+284)
+#define __NR_accept (__NR_SYSCALL_BASE+285)
+#define __NR_getsockname (__NR_SYSCALL_BASE+286)
+#define __NR_getpeername (__NR_SYSCALL_BASE+287)
+#define __NR_socketpair (__NR_SYSCALL_BASE+288)
+#define __NR_send (__NR_SYSCALL_BASE+289)
+#define __NR_sendto (__NR_SYSCALL_BASE+290)
+#define __NR_recv (__NR_SYSCALL_BASE+291)
+#define __NR_recvfrom (__NR_SYSCALL_BASE+292)
+#define __NR_shutdown (__NR_SYSCALL_BASE+293)
+#define __NR_setsockopt (__NR_SYSCALL_BASE+294)
+#define __NR_getsockopt (__NR_SYSCALL_BASE+295)
+#define __NR_sendmsg (__NR_SYSCALL_BASE+296)
+#define __NR_recvmsg (__NR_SYSCALL_BASE+297)
+#define __NR_semop (__NR_SYSCALL_BASE+298)
+#define __NR_semget (__NR_SYSCALL_BASE+299)
+#define __NR_semctl (__NR_SYSCALL_BASE+300)
+#define __NR_msgsnd (__NR_SYSCALL_BASE+301)
+#define __NR_msgrcv (__NR_SYSCALL_BASE+302)
+#define __NR_msgget (__NR_SYSCALL_BASE+303)
+#define __NR_msgctl (__NR_SYSCALL_BASE+304)
+#define __NR_shmat (__NR_SYSCALL_BASE+305)
+#define __NR_shmdt (__NR_SYSCALL_BASE+306)
+#define __NR_shmget (__NR_SYSCALL_BASE+307)
+#define __NR_shmctl (__NR_SYSCALL_BASE+308)
+#define __NR_add_key (__NR_SYSCALL_BASE+309)
+#define __NR_request_key (__NR_SYSCALL_BASE+310)
+#define __NR_keyctl (__NR_SYSCALL_BASE+311)
+#define __NR_semtimedop (__NR_SYSCALL_BASE+312)
+#define __NR_vserver (__NR_SYSCALL_BASE+313)
+#define __NR_ioprio_set (__NR_SYSCALL_BASE+314)
+#define __NR_ioprio_get (__NR_SYSCALL_BASE+315)
+#define __NR_inotify_init (__NR_SYSCALL_BASE+316)
+#define __NR_inotify_add_watch (__NR_SYSCALL_BASE+317)
+#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE+318)
+#define __NR_mbind (__NR_SYSCALL_BASE+319)
+#define __NR_get_mempolicy (__NR_SYSCALL_BASE+320)
+#define __NR_set_mempolicy (__NR_SYSCALL_BASE+321)
+
+#define __ARM_NR_BASE (__NR_SYSCALL_BASE+0x0f0000)
+#define __ARM_NR_breakpoint (__ARM_NR_BASE+1)
+#define __ARM_NR_cacheflush (__ARM_NR_BASE+2)
+#define __ARM_NR_usr26 (__ARM_NR_BASE+3)
+#define __ARM_NR_usr32 (__ARM_NR_BASE+4)
+#define __ARM_NR_set_tls (__ARM_NR_BASE+5)
+
+#if defined(__ARM_EABI__) && !defined(__KERNEL__)
+#undef __NR_time
+#undef __NR_umount
+#undef __NR_stime
+#undef __NR_alarm
+#undef __NR_utime
+#undef __NR_getrlimit
+#undef __NR_select
+#undef __NR_readdir
+#undef __NR_mmap
+#undef __NR_socketcall
+#undef __NR_syscall
+#undef __NR_ipc
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/user.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/user.h
new file mode 100644
index 0000000..5f25850
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/user.h
@@ -0,0 +1,61 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _ARM_USER_H
+#define _ARM_USER_H
+
+#include <asm/page.h>
+#include <asm/ptrace.h>
+
+struct user_fp {
+ struct fp_reg {
+ unsigned int sign1:1;
+ unsigned int unused:15;
+ unsigned int sign2:1;
+ unsigned int exponent:14;
+ unsigned int j:1;
+ unsigned int mantissa1:31;
+ unsigned int mantissa0:32;
+ } fpregs[8];
+ unsigned int fpsr:32;
+ unsigned int fpcr:32;
+ unsigned char ftype[8];
+ unsigned int init_flag;
+};
+
+struct user{
+
+ struct pt_regs regs;
+
+ int u_fpvalid;
+
+ unsigned long int u_tsize;
+ unsigned long int u_dsize;
+ unsigned long int u_ssize;
+ unsigned long start_code;
+ unsigned long start_stack;
+ long int signal;
+ int reserved;
+ struct pt_regs * u_ar0;
+
+ unsigned long magic;
+ char u_comm[32];
+ int u_debugreg[8];
+ struct user_fp u_fp;
+ struct user_fp_struct * u_fp0;
+
+};
+#define NBPG PAGE_SIZE
+#define UPAGES 1
+#define HOST_TEXT_START_ADDR (u.start_code)
+#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG)
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/asm/vga.h b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/vga.h
new file mode 100644
index 0000000..7875dbf
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/asm/vga.h
@@ -0,0 +1,23 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef ASMARM_VGA_H
+#define ASMARM_VGA_H
+
+#include <asm/hardware.h>
+#include <asm/io.h>
+
+#define VGA_MAP_MEM(x,s) (PCIMEM_BASE + (x))
+
+#define vga_readb(x) (*((volatile unsigned char *)x))
+#define vga_writeb(x,y) (*((volatile unsigned char *)y) = (x))
+
+#endif
diff --git a/ndk/build/platforms/android-3/common/include/assert.h b/ndk/build/platforms/android-5/arch-arm/usr/include/assert.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/assert.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/assert.h
diff --git a/ndk/build/platforms/android-3/common/include/byteswap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/byteswap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/byteswap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/byteswap.h
diff --git a/ndk/build/platforms/android-3/common/include/cstddef b/ndk/build/platforms/android-5/arch-arm/usr/include/cstddef
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/cstddef
copy to ndk/build/platforms/android-5/arch-arm/usr/include/cstddef
diff --git a/ndk/build/platforms/android-3/common/include/ctype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/ctype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/ctype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/ctype.h
diff --git a/ndk/build/platforms/android-3/common/include/dirent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/dirent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/dirent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/dirent.h
diff --git a/ndk/build/platforms/android-3/common/include/dlfcn.h b/ndk/build/platforms/android-5/arch-arm/usr/include/dlfcn.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/dlfcn.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/dlfcn.h
diff --git a/ndk/build/platforms/android-3/common/include/elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/elf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/elf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/elf.h
diff --git a/ndk/build/platforms/android-3/common/include/endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/endian.h
similarity index 100%
rename from ndk/build/platforms/android-3/common/include/endian.h
rename to ndk/build/platforms/android-5/arch-arm/usr/include/endian.h
diff --git a/ndk/build/platforms/android-3/common/include/err.h b/ndk/build/platforms/android-5/arch-arm/usr/include/err.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/err.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/err.h
diff --git a/ndk/build/platforms/android-3/common/include/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/errno.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/errno.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/errno.h
diff --git a/ndk/build/platforms/android-3/common/include/fcntl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/fcntl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/fcntl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/fcntl.h
diff --git a/ndk/build/platforms/android-3/common/include/features.h b/ndk/build/platforms/android-5/arch-arm/usr/include/features.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/features.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/features.h
diff --git a/ndk/build/platforms/android-3/common/include/fnmatch.h b/ndk/build/platforms/android-5/arch-arm/usr/include/fnmatch.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/fnmatch.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/fnmatch.h
diff --git a/ndk/build/platforms/android-3/common/include/getopt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/getopt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/getopt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/getopt.h
diff --git a/ndk/build/platforms/android-3/common/include/grp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/grp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/grp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/grp.h
diff --git a/ndk/build/platforms/android-3/common/include/inttypes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/inttypes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/inttypes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/inttypes.h
diff --git a/ndk/build/platforms/android-3/common/include/jni.h b/ndk/build/platforms/android-5/arch-arm/usr/include/jni.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/jni.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/jni.h
diff --git a/ndk/build/platforms/android-3/common/include/lastlog.h b/ndk/build/platforms/android-5/arch-arm/usr/include/lastlog.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/lastlog.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/lastlog.h
diff --git a/ndk/build/platforms/android-3/common/include/libgen.h b/ndk/build/platforms/android-5/arch-arm/usr/include/libgen.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/libgen.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/libgen.h
diff --git a/ndk/build/platforms/android-3/common/include/limits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/limits.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/limits.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/limits.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/a.out.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/a.out.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/a.out.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/a.out.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/aio_abi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/aio_abi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/aio_abi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/aio_abi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/akm8976.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/akm8976.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/akm8976.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/akm8976.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_alarm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_alarm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/android_alarm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_alarm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_pmem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_pmem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/android_pmem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_pmem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/android_power.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_power.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/android_power.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/android_power.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/apm_bios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/apm_bios.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/apm_bios.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/apm_bios.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ashmem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ashmem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ashmem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ashmem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ata.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ata.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ata.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ata.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmapi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmapi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmapi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmapi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmioc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmioc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmioc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmioc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmppp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmppp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmppp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmppp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/atmsap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmsap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/atmsap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/atmsap.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/attribute_container.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/attribute_container.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/attribute_container.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/attribute_container.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/auto_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/auto_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/auto_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/auto_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/autoconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/autoconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/autoconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/autoconf.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/auxvec.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/auxvec.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/auxvec.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/auxvec.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/backing-dev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/backing-dev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/backing-dev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/backing-dev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/binder.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/binder.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/binder.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/binder.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/binfmts.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/binfmts.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/binfmts.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/binfmts.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/bio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/bio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/bio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/bio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/bitmap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/bitmap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/bitmap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/bitmap.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/bitops.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/bitops.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/bitops.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/bitops.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/blkdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/blkdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/blkdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/blkdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/blkpg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/blkpg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/blkpg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/blkpg.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/blockgroup_lock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/blockgroup_lock.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/blockgroup_lock.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/blockgroup_lock.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/big_endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/big_endian.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/big_endian.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/big_endian.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/generic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/generic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/generic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/generic.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/little_endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/little_endian.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/little_endian.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/little_endian.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/swab.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/swab.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/swab.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/swab.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/byteorder/swabb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/swabb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/byteorder/swabb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/byteorder/swabb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cache.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cache.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cache.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cache.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/calc64.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/calc64.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/calc64.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/calc64.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/capability.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/capability.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/capability.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/capability.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/capi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/capi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/capi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/capi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cdrom.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cdrom.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cdrom.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cdrom.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/circ_buf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/circ_buf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/circ_buf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/circ_buf.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/clk.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/clk.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/clk.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/clk.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/coda.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/coda.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/coda.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/coda.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/coda_fs_i.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/coda_fs_i.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/coda_fs_i.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/coda_fs_i.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/compat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/compat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/compat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/compat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/compiler-gcc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/compiler-gcc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/compiler-gcc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/compiler-gcc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/compiler.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/compiler.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/compiler.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/compiler.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/completion.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/completion.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/completion.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/completion.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/config.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/config.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/config.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/config.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/console_struct.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/console_struct.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/console_struct.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/console_struct.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cpu.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cpu.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cpu.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/cpumask.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/cpumask.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/cpumask.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/cpumask.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ctype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ctype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ctype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ctype.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dccp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dccp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dccp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dccp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/debug_locks.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/debug_locks.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/debug_locks.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/debug_locks.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/delay.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/delay.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/delay.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/delay.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/device.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/device.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/device.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/device.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dirent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dirent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dirent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dirent.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dm-ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dm-ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dm-ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dm-ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dma-mapping.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dma-mapping.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dma-mapping.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dma-mapping.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/dmaengine.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/dmaengine.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/dmaengine.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/dmaengine.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_dir.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_dir.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/efs_dir.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_dir.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_fs_i.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_fs_i.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/efs_fs_i.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_fs_i.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/efs_fs_sb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_fs_sb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/efs_fs_sb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/efs_fs_sb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/elevator.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/elevator.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/elevator.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/elevator.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/elf-em.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/elf-em.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/elf-em.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/elf-em.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/elf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/elf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/elf.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/err.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/err.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/err.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/err.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/errno.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/errno.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/errno.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/errqueue.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/errqueue.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/errqueue.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/errqueue.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/etherdevice.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/etherdevice.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/etherdevice.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/etherdevice.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ext2_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ext2_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ext2_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ext2_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ext3_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ext3_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ext3_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ext3_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fadvise.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fadvise.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fadvise.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fadvise.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fcntl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fcntl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fcntl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fcntl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/file.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/file.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/file.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/file.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/filter.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/filter.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/filter.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/filter.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ftape.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ftape.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ftape.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ftape.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/futex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/futex.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/futex.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/futex.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/genhd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/genhd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/genhd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/genhd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/gfp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/gfp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/gfp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/gfp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hardirq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hardirq.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hardirq.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hardirq.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdlc/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdlc/ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hdlc/ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdlc/ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdreg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdreg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hdreg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdreg.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hdsmart.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdsmart.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hdsmart.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hdsmart.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/highmem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/highmem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/highmem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/highmem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/hil.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/hil.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/hil.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/hil.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/i2c.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/i2c.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/i2c.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/i2c.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/icmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/icmp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/icmp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/icmp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_arcnet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_arcnet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_arcnet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_arcnet.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_arp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_arp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_arp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_arp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_bridge.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_bridge.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_bridge.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_bridge.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_ether.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_ether.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_ether.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_ether.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_fc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_fc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_fc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_fc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_fddi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_fddi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_fddi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_fddi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_hippi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_hippi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_hippi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_hippi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_packet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_packet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_packet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_packet.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_ppp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_ppp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_ppp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_ppp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_tr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_tr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_tr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_tr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_tun.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_tun.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_tun.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_tun.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/if_vlan.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_vlan.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/if_vlan.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/if_vlan.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/in.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/in.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/in.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/in.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/in6.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/in6.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/in6.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/in6.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/init.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/init.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/init.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/init.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/inotify.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/inotify.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/inotify.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/inotify.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/input.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/input.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/input.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/input.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/interrupt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/interrupt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/interrupt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/interrupt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioport.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioport.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ioport.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioport.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ioprio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioprio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ioprio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ioprio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ip.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ip.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ip.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ipc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipmi_msgdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipmi_msgdefs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ipmi_msgdefs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipmi_msgdefs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipmi_smi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipmi_smi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ipmi_smi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipmi_smi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ipx.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipx.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ipx.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ipx.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/irq.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/irq.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/irq.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/irq.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/irq_cpustat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/irq_cpustat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/irq_cpustat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/irq_cpustat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/irqflags.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/irqflags.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/irqflags.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/irqflags.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/irqreturn.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/irqreturn.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/irqreturn.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/irqreturn.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/jbd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/jbd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/jbd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/jbd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/jiffies.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/jiffies.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/jiffies.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/jiffies.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kdev_t.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kdev_t.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kdev_t.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kdev_t.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernel.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernel.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kernel.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernel.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernel_stat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernel_stat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kernel_stat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernel_stat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kernelcapi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernelcapi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kernelcapi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kernelcapi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kexec.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kexec.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kexec.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kexec.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/key.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/key.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/key.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/key.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/keyboard.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/keyboard.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/keyboard.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/keyboard.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/keychord.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/keychord.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/keychord.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/keychord.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/klist.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/klist.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/klist.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/klist.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kmod.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kmod.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kmod.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kmod.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kobject.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kobject.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kobject.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kobject.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/kref.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/kref.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/kref.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/kref.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ktime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ktime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ktime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ktime.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/limits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/limits.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/limits.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/limits.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/linkage.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/linkage.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/linkage.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/linkage.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/list.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/list.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/list.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/list.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockd/nlm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockd/nlm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/lockd/nlm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockd/nlm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockd/xdr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockd/xdr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/lockd/xdr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockd/xdr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/lockdep.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockdep.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/lockdep.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/lockdep.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/loop.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/loop.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/loop.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/loop.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/magic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/magic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/magic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/magic.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/major.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/major.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/major.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/major.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mc146818rtc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mc146818rtc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mc146818rtc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mc146818rtc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mca.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mca.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mca.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mca.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mempolicy.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mempolicy.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mempolicy.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mempolicy.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mempool.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mempool.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mempool.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mempool.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/miscdevice.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/miscdevice.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/miscdevice.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/miscdevice.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/card.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/card.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mmc/card.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/card.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/host.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/host.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mmc/host.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/host.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmc/mmc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/mmc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mmc/mmc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmc/mmc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mmzone.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmzone.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mmzone.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mmzone.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mod_devicetable.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mod_devicetable.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mod_devicetable.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mod_devicetable.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/module.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/module.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/module.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/module.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/moduleparam.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/moduleparam.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/moduleparam.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/moduleparam.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mount.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mount.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mount.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mount.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msdos_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msdos_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msdos_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msdos_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msg.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_adsp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_adsp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msm_adsp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_adsp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_audio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_audio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msm_audio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_audio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/msm_mdp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_mdp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/msm_mdp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/msm_mdp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mt9t013.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mt9t013.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mt9t013.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mt9t013.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/bbm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/bbm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/bbm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/bbm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/blktrans.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/blktrans.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/blktrans.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/blktrans.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/cfi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/cfi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/cfi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/cfi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/cfi_endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/cfi_endian.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/cfi_endian.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/cfi_endian.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/compatmac.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/compatmac.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/compatmac.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/compatmac.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/flashchip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/flashchip.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/flashchip.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/flashchip.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/map.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/map.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/map.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/map.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/mtd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/mtd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/mtd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/mtd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nand.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nand.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/nand.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nand.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nand_ecc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nand_ecc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/nand_ecc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nand_ecc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/nftl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nftl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/nftl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/nftl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/onenand_regs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/onenand_regs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/onenand_regs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/onenand_regs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtd/partitions.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/partitions.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtd/partitions.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtd/partitions.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mtio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mtio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mtio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mutex-debug.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mutex-debug.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mutex-debug.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mutex-debug.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/mutex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/mutex.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/mutex.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/mutex.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ncp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp_mount.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp_mount.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ncp_mount.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp_mount.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ncp_no.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp_no.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ncp_no.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ncp_no.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/net.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/net.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/net.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/net.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netdevice.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netdevice.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netdevice.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netdevice.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_common.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_common.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_common.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_ftp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_ftp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_ftp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_sctp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_sctp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_sctp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tcp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tcp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_tcp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tuple_common.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nf_conntrack_tuple_common.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nf_conntrack_tuple_common.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nfnetlink.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nfnetlink.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink_conntrack.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/nfnetlink_conntrack.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/nfnetlink_conntrack.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/x_tables.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/x_tables.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/x_tables.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/x_tables.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CLASSIFY.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CLASSIFY.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CONNSECMARK.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_CONNSECMARK.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_CONNSECMARK.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_NFQUEUE.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_NFQUEUE.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_SECMARK.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_SECMARK.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_SECMARK.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_comment.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_comment.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_comment.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_comment.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_connbytes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_connbytes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_connbytes.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_conntrack.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_conntrack.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_conntrack.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_dccp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_dccp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_dccp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_dccp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_esp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_esp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_esp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_esp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_helper.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_helper.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_helper.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_helper.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_length.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_length.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_length.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_length.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_limit.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_limit.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_limit.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_limit.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_mac.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_mac.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_mac.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_mac.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_multiport.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_multiport.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_multiport.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_multiport.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_physdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_physdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_physdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_physdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_pkttype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_pkttype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_pkttype.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_quota.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_quota.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_quota.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_quota.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_realm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_realm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_realm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_realm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_sctp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_sctp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_sctp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_sctp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_state.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_state.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_state.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_state.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_statistic.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_statistic.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_statistic.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_statistic.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_string.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_string.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_string.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_string.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpmss.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpmss.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_tcpmss.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpudp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter/xt_tcpudp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter/xt_tcpudp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_arp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_arp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_arp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_arp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_arp/arp_tables.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_arp/arp_tables.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_arp/arp_tables.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_bridge.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_bridge.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_bridge.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_bridge.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_conntrack_tuple.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat_rule.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_nat_rule.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_nat_rule.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_queue.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_queue.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_queue.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_tables.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ip_tables.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ip_tables.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_CLASSIFY.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_DSCP.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_DSCP.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_DSCP.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ECN.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ECN.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ECN.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_LOG.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_LOG.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_LOG.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_NFQUEUE.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_REJECT.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_REJECT.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_REJECT.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TCPMSS.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TCPMSS.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TOS.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TOS.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TOS.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TTL.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_TTL.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_TTL.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ULOG.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ULOG.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ULOG.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_addrtype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_addrtype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_addrtype.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ah.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_ah.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_ah.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_comment.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_comment.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_comment.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_connbytes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_connbytes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_connbytes.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dccp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dccp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dccp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dscp_.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_dscp_.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_dscp_.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_esp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_esp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_esp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_hashlimit.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_hashlimit.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_hashlimit.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_helper.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_helper.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_helper.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_iprange.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_iprange.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_iprange.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_length.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_length.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_length.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_mac.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_mac.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_mac.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_owner.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_owner.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_owner.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_physdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_physdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_physdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_pkttype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_pkttype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_pkttype.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_realm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_realm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_realm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_recent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_recent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_recent.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_sctp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_sctp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_sctp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_state.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_state.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_state.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_string.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_string.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_string.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_tos_.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv4/ipt_tos_.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv4/ipt_tos_.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6_tables.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6_tables.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6_tables.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_LOG.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_LOG.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_LOG.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_REJECT.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_REJECT.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ah.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ah.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ah.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_esp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_esp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_esp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_frag.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_frag.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_frag.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_ipv6header.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_length.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_length.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_length.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_mac.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_mac.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_mac.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_opts.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_opts.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_opts.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_owner.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_owner.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_owner.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_physdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_physdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_physdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_rt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netfilter_ipv6/ip6t_rt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netfilter_ipv6/ip6t_rt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/netlink.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/netlink.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/netlink.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/netlink.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs2.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs2.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs2.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs3.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs3.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs3.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs3.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs4.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs4.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs4.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs4.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfs_xdr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs_xdr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfs_xdr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfs_xdr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsacl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsacl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsacl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsacl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/auth.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/auth.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/auth.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/auth.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/const.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/const.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/const.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/const.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/debug.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/debug.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/debug.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/debug.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/export.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/export.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/export.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/export.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/interface.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/interface.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/interface.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/interface.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/nfsfh.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/nfsfh.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/nfsfh.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/nfsfh.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/stats.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/stats.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/stats.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/stats.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nfsd/xdr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/xdr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nfsd/xdr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nfsd/xdr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/node.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/node.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/node.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/node.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nodemask.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nodemask.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nodemask.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nodemask.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/notifier.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/notifier.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/notifier.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/notifier.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/numa.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/numa.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/numa.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/numa.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/nvram.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/nvram.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/nvram.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/nvram.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/omap_csmi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/omap_csmi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/omap_csmi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/omap_csmi.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pagemap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pagemap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pagemap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pagemap.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/param.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/param.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/param.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/param.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/patchkey.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/patchkey.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/patchkey.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/patchkey.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pci.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci_ids.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci_ids.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pci_ids.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci_ids.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pci_regs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci_regs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pci_regs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pci_regs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/percpu.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/percpu.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/percpu.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/percpu.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/percpu_counter.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/percpu_counter.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/percpu_counter.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/percpu_counter.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/personality.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/personality.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/personality.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/personality.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pfkeyv2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pfkeyv2.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pfkeyv2.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pfkeyv2.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pkt_cls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pkt_cls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pkt_cls.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pkt_cls.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pkt_sched.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pkt_sched.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pkt_sched.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pkt_sched.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/platform_device.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/platform_device.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/platform_device.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/platform_device.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/plist.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/plist.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/plist.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/plist.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/pnp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/pnp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/pnp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/pnp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/poll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/poll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/poll.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/posix_acl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/posix_acl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/posix_acl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/posix_acl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/posix_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/posix_types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/posix_types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/posix_types.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ppdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ppdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ppdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ppdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ppp_defs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ppp_defs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ppp_defs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ppp_defs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/prctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/prctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/prctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/prctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/preempt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/preempt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/preempt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/preempt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/proc_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/proc_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/proc_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/proc_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ptrace.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ptrace.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ptrace.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ptrace.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/qic117.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/qic117.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/qic117.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/qic117.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/qnxtypes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/qnxtypes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/qnxtypes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/qnxtypes.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/quota.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/quota.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/quota.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/quota.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/md.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_k.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_k.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/md_k.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_k.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_p.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_p.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/md_p.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_p.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/md_u.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_u.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/md_u.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/md_u.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/raid/xor.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/xor.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/raid/xor.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/raid/xor.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/random.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/random.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/random.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/random.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rbtree.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rbtree.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rbtree.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rbtree.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rcupdate.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rcupdate.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rcupdate.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rcupdate.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/reboot.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/reboot.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/reboot.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/reboot.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/relay.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/relay.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/relay.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/relay.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/resource.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/resource.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/resource.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/resource.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/route.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/route.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/route.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/route.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rtc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rtc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rtc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rtc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rtnetlink.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rtnetlink.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rtnetlink.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rtnetlink.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/rwsem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/rwsem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/rwsem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/rwsem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sched.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sched.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sched.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sched.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sem.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sem.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sem.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sem.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/seq_file.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/seq_file.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/seq_file.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/seq_file.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/seqlock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/seqlock.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/seqlock.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/seqlock.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/serial_core.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/serial_core.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/serial_core.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/serial_core.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/serial_reg.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/serial_reg.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/serial_reg.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/serial_reg.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/serio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/serio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/serio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/serio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/shm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/shm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/shm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/shm.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/signal.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/signal.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/signal.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/signal.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/skbuff.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/skbuff.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/skbuff.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/skbuff.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/slab.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/slab.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/slab.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/slab.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/smb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/smb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/smb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/smb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/smp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/smp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/smp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/smp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/smp_lock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/smp_lock.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/smp_lock.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/smp_lock.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/socket.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/socket.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/socket.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/socket.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sockios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sockios.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sockios.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sockios.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/soundcard.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/soundcard.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/soundcard.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/soundcard.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_api_smp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_api_smp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_api_smp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_api_smp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_api_up.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_api_up.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_api_up.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_api_up.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_types.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_types_up.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_types_up.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_types_up.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_types_up.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/spinlock_up.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_up.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/spinlock_up.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/spinlock_up.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/stacktrace.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/stacktrace.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/stacktrace.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/stacktrace.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/stat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/stat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/stat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/stat.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/statfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/statfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/statfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/statfs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/stddef.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/stddef.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/stddef.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/stddef.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/string.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/string.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/string.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/string.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/stringify.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/stringify.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/stringify.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/stringify.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/auth.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/auth.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/auth.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/auth.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/auth_gss.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/auth_gss.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/auth_gss.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/auth_gss.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/clnt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/clnt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/clnt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/clnt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/debug.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/debug.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/debug.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/debug.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_api.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_api.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_api.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_api.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_asn1.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_asn1.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_asn1.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_err.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_err.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/gss_err.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/gss_err.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/msg_prot.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/msg_prot.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/msg_prot.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/msg_prot.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/sched.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/sched.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/sched.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/sched.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/stats.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/stats.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/stats.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/stats.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/svc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/svc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/svc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/svc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/svcauth.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/svcauth.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/svcauth.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/svcauth.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/timer.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/timer.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/timer.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/timer.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/types.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/xdr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/xdr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/xdr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/xdr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sunrpc/xprt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/xprt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sunrpc/xprt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sunrpc/xprt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/swap.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/swap.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/swap.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/swap.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sysctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysctl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysdev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysdev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sysdev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysdev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/sysfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/sysfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/sysfs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/taskstats.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/taskstats.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/taskstats.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/taskstats.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/taskstats_kern.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/taskstats_kern.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/taskstats_kern.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/taskstats_kern.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/tcp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/tcp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/tcp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/tcp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/telephony.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/telephony.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/telephony.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/telephony.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/termios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/termios.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/termios.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/termios.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/textsearch.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/textsearch.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/textsearch.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/textsearch.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/thread_info.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/thread_info.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/thread_info.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/thread_info.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/threads.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/threads.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/threads.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/threads.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/time.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/time.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/time.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/time.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/timer.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/timer.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/timer.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/timer.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/times.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/times.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/times.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/times.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/timex.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/timex.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/timex.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/timex.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/tiocl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/tiocl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/tiocl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/tiocl.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/transport_class.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/transport_class.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/transport_class.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/transport_class.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/tty.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/tty.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/tty.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/tty.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/types.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/udp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/udp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/udp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/udp.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ufs_fs_i.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ufs_fs_i.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ufs_fs_i.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ufs_fs_i.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/ufs_fs_sb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/ufs_fs_sb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/ufs_fs_sb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/ufs_fs_sb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/uio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/uio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/uio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/uio.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/un.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/un.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/un.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/un.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/unistd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/unistd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/unistd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/unistd.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/usb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/usb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/usb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/usb.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/usb_ch9.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/usb_ch9.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/usb_ch9.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/usb_ch9.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/usbdevice_fs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/usbdevice_fs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/usbdevice_fs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/usbdevice_fs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/user.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/user.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/user.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/user.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/utime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/utime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/utime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/utime.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/utsname.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/utsname.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/utsname.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/utsname.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/version.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/version.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/version.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/version.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/vfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/vfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/vfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/vfs.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/videodev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/videodev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/videodev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/videodev.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/videodev2.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/videodev2.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/videodev2.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/videodev2.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/vmalloc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/vmalloc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/vmalloc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/vmalloc.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/vt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/vt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/vt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/vt.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/vt_buffer.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/vt_buffer.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/vt_buffer.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/vt_buffer.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/wait.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/wait.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/wait.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/wait.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/wanrouter.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/wanrouter.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/wanrouter.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/wanrouter.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/wireless.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/wireless.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/wireless.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/wireless.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/workqueue.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/workqueue.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/workqueue.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/workqueue.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/xattr.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/xattr.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/xattr.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/xattr.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/zconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/zconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/zconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/zconf.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/zlib.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/zlib.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/zlib.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/zlib.h
diff --git a/ndk/build/platforms/android-3/common/include/linux/zorro_ids.h b/ndk/build/platforms/android-5/arch-arm/usr/include/linux/zorro_ids.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/linux/zorro_ids.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/linux/zorro_ids.h
diff --git a/ndk/build/platforms/android-3/common/include/locale.h b/ndk/build/platforms/android-5/arch-arm/usr/include/locale.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/locale.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/locale.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/_types.h
new file mode 100644
index 0000000..6d10e12
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/_types.h
@@ -0,0 +1,127 @@
+/*	$OpenBSD: _types.h,v 1.3 2006/02/14 18:12:58 miod Exp $	*/
+
+/*-
+ * Copyright (c) 1990, 1993
+ *	The Regents of the University of California.  All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *	@(#)types.h	8.3 (Berkeley) 1/5/94
+ *	@(#)ansi.h	8.2 (Berkeley) 1/4/94
+ */
+
+#ifndef _ARM__TYPES_H_
+#define _ARM__TYPES_H_
+
+
+#if !defined(__ARM_EABI__)
+/* the kernel defines size_t as unsigned int, but g++ wants it to be unsigned long */
+#define _SIZE_T
+#define _SSIZE_T
+#define _PTRDIFF_T
+typedef unsigned long  size_t;
+typedef long           ssize_t;
+typedef long           ptrdiff_t;
+#endif
+
+//#include <linux/types.h>
+
+/* 7.18.1.1 Exact-width integer types */
+typedef	__signed char		__int8_t;
+typedef	unsigned char		__uint8_t;
+typedef	short			__int16_t;
+typedef	unsigned short		__uint16_t;
+typedef	int			__int32_t;
+typedef	unsigned int		__uint32_t;
+/* LONGLONG */
+typedef	long long		__int64_t;
+/* LONGLONG */
+typedef	unsigned long long	__uint64_t;
+
+/* 7.18.1.2 Minimum-width integer types */
+typedef	__int8_t		__int_least8_t;
+typedef	__uint8_t		__uint_least8_t;
+typedef	__int16_t		__int_least16_t;
+typedef	__uint16_t		__uint_least16_t;
+typedef	__int32_t		__int_least32_t;
+typedef	__uint32_t		__uint_least32_t;
+typedef	__int64_t		__int_least64_t;
+typedef	__uint64_t		__uint_least64_t;
+
+/* 7.18.1.3 Fastest minimum-width integer types */
+typedef	__int32_t		__int_fast8_t;
+typedef	__uint32_t		__uint_fast8_t;
+typedef	__int32_t		__int_fast16_t;
+typedef	__uint32_t		__uint_fast16_t;
+typedef	__int32_t		__int_fast32_t;
+typedef	__uint32_t		__uint_fast32_t;
+typedef	__int64_t		__int_fast64_t;
+typedef	__uint64_t		__uint_fast64_t;
+
+/* 7.18.1.4 Integer types capable of holding object pointers */
+typedef	int 			__intptr_t;
+typedef	unsigned int 		__uintptr_t;
+
+/* 7.18.1.5 Greatest-width integer types */
+typedef	__int64_t		__intmax_t;
+typedef	__uint64_t		__uintmax_t;
+
+/* Register size */
+typedef __int32_t		__register_t;
+
+/* VM system types */
+typedef unsigned long		__vaddr_t;
+typedef unsigned long		__paddr_t;
+typedef unsigned long		__vsize_t;
+typedef unsigned long		__psize_t;
+
+/* Standard system types */
+typedef int			__clock_t;
+typedef int			__clockid_t;
+typedef long			__ptrdiff_t;
+typedef	int			__time_t;
+typedef int			__timer_t;
+#if defined(__GNUC__) && __GNUC__ >= 3
+typedef	__builtin_va_list	__va_list;
+#else
+typedef	char *			__va_list;
+#endif
+
+/* Wide character support types */
+#ifndef __cplusplus
+typedef	int			__wchar_t;
+#endif
+typedef int			__wint_t;
+typedef	int			__rune_t;
+typedef	void *			__wctrans_t;
+typedef	void *			__wctype_t;
+
+#ifdef __ARMEB__
+#define _BYTE_ORDER _BIG_ENDIAN
+#else
+#define _BYTE_ORDER _LITTLE_ENDIAN
+#endif
+
+#endif	/* _ARM__TYPES_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/asm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/asm.h
new file mode 100644
index 0000000..c7bd017
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/asm.h
@@ -0,0 +1,130 @@
+/*	$OpenBSD: asm.h,v 1.1 2004/02/01 05:09:49 drahn Exp $	*/
+/*	$NetBSD: asm.h,v 1.4 2001/07/16 05:43:32 matt Exp $	*/
+
+/*
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * William Jolitz.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *	from: @(#)asm.h	5.5 (Berkeley) 5/7/91
+ */
+
+#ifndef _ARM32_ASM_H_
+#define _ARM32_ASM_H_
+
+#ifdef __ELF__
+# define _C_LABEL(x)	x
+#else
+# ifdef __STDC__
+#  define _C_LABEL(x)	_ ## x
+# else
+#  define _C_LABEL(x)	_/**/x
+# endif
+#endif
+#define	_ASM_LABEL(x)	x
+
+#ifdef __STDC__
+# define __CONCAT(x,y)	x ## y
+# define __STRING(x)	#x
+#else
+# define __CONCAT(x,y)	x/**/y
+# define __STRING(x)	"x"
+#endif
+
+#ifndef _ALIGN_TEXT
+# define _ALIGN_TEXT .align 0
+#endif
+
+/*
+ * gas/arm uses @ as a single comment character and thus cannot be used here
+ * Instead it recognised the # instead of an @ symbols in .type directives
+ * We define a couple of macros so that assembly code will not be dependant
+ * on one or the other.
+ */
+#define _ASM_TYPE_FUNCTION	#function
+#define _ASM_TYPE_OBJECT	#object
+#define _ENTRY(x) \
+	.text; _ALIGN_TEXT; .globl x; .type x,_ASM_TYPE_FUNCTION; x:
+
+#ifdef GPROF
+# ifdef __ELF__
+#  define _PROF_PROLOGUE	\
+	mov ip, lr; bl __mcount
+# else
+#  define _PROF_PROLOGUE	\
+	mov ip,lr; bl mcount
+# endif
+#else
+# define _PROF_PROLOGUE
+#endif
+
+#define	ENTRY(y)	_ENTRY(_C_LABEL(y)); _PROF_PROLOGUE
+#define	ENTRY_NP(y)	_ENTRY(_C_LABEL(y))
+#define	ASENTRY(y)	_ENTRY(_ASM_LABEL(y)); _PROF_PROLOGUE
+#define	ASENTRY_NP(y)	_ENTRY(_ASM_LABEL(y))
+
+#define	ASMSTR		.asciz
+
+#if defined(__ELF__) && defined(PIC)
+#ifdef __STDC__
+#define	PIC_SYM(x,y)	x ## ( ## y ## )
+#else
+#define	PIC_SYM(x,y)	x/**/(/**/y/**/)
+#endif
+#else
+#define	PIC_SYM(x,y)	x
+#endif
+
+#ifdef __ELF__
+#define RCSID(x)	.section ".ident"; .asciz x
+#else
+#define RCSID(x)	.text; .asciz x
+#endif
+
+#ifdef __ELF__
+#define	WEAK_ALIAS(alias,sym)						\
+	.weak alias;							\
+	alias = sym
+#endif
+
+#ifdef __STDC__
+#define	WARN_REFERENCES(sym,msg)					\
+	.stabs msg ## ,30,0,0,0 ;					\
+	.stabs __STRING(_C_LABEL(sym)) ## ,1,0,0,0
+#elif defined(__ELF__)
+#define	WARN_REFERENCES(sym,msg)					\
+	.stabs msg,30,0,0,0 ;						\
+	.stabs __STRING(sym),1,0,0,0
+#else
+#define	WARN_REFERENCES(sym,msg)					\
+	.stabs msg,30,0,0,0 ;						\
+	.stabs __STRING(_/**/sym),1,0,0,0
+#endif /* __STDC__ */
+
+#endif /* !_ARM_ASM_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cdefs.h
new file mode 100644
index 0000000..44f1542
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cdefs.h
@@ -0,0 +1,19 @@
+/*	$OpenBSD: cdefs.h,v 1.2 2005/11/24 20:46:44 deraadt Exp $	*/
+
+#ifndef	_MACHINE_CDEFS_H_
+#define	_MACHINE_CDEFS_H_
+
+#if defined(lint)
+#define __indr_reference(sym,alias)	__lint_equal__(sym,alias)
+#define __warn_references(sym,msg)
+#define __weak_alias(alias,sym)		__lint_equal__(sym,alias)
+#elif defined(__GNUC__) && defined(__STDC__)
+#define __weak_alias(alias,sym)					\
+	__asm__(".weak " __STRING(alias) " ; " __STRING(alias)	\
+	    " = " __STRING(sym));
+#define	__warn_references(sym,msg)				\
+	__asm__(".section .gnu.warning." __STRING(sym)		\
+	    " ; .ascii \"" msg "\" ; .text");
+#endif
+
+#endif /* !_MACHINE_CDEFS_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cpu-features.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cpu-features.h
new file mode 100644
index 0000000..f836006
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/cpu-features.h
@@ -0,0 +1,164 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _ARM_MACHINE_CPU_FEATURES_H
+#define _ARM_MACHINE_CPU_FEATURES_H
+
+/* The purpose of this file is to define several macros corresponding
+ * to CPU features that may or may not be available at build time on
+ * on the target CPU.
+ *
+ * This is done to abstract us from the various ARM Architecture
+ * quirks and alphabet soup.
+ *
+ * IMPORTANT: We have no intention to support anything below an ARMv4T !
+ */
+
+/* _ARM_ARCH_REVISION is a number corresponding to the ARM revision
+ * we're going to support
+ *
+ * it looks like our toolchain doesn't define __ARM_ARCH__
+ * so try to guess it.
+ *
+ *
+ *
+ */
+#ifndef __ARM_ARCH__
+
+#  if defined __ARM_ARCH_7__   || defined __ARM_ARCH_7A__ || \
+      defined __ARM_ARCH_7R__  || defined __ARM_ARCH_7M__
+
+#    define __ARM_ARCH__ 7
+
+#  elif defined __ARM_ARCH_6__   || defined __ARM_ARCH_6J__ || \
+      defined __ARM_ARCH_6K__  || defined __ARM_ARCH_6Z__ || \
+      defined __ARM_ARCH_6KZ__ || defined __ARM_ARCH_6T2__
+#
+#    define __ARM_ARCH__ 6
+#
+#  elif defined __ARM_ARCH_5__ || defined __ARM_ARCH_5T__ || \
+        defined __ARM_ARCH_5TE__ || defined __ARM_ARCH_5TEJ__
+#
+#    define __ARM_ARCH__ 5
+#
+#  elif defined __ARM_ARCH_4T__
+#
+#    define __ARM_ARCH__ 4
+#
+#  elif defined __ARM_ARCH_4__
+#    error ARMv4 is not supported, please use ARMv4T at a minimum
+#  else
+#    error Unknown or unsupported ARM architecture
+#  endif
+#endif
+
+/* experimental feature used to check that our ARMv4 workarounds
+ * work correctly without a real ARMv4 machine */
+#ifdef BIONIC_EXPERIMENTAL_FORCE_ARMV4
+#  undef  __ARM_ARCH__
+#  define __ARM_ARCH__  4
+#endif
+
+/* define __ARM_HAVE_5TE if we have the ARMv5TE instructions */
+#if __ARM_ARCH__ > 5
+#  define  __ARM_HAVE_5TE  1
+#elif __ARM_ARCH__ == 5
+#  if defined __ARM_ARCH_5TE__ || defined __ARM_ARCH_5TEJ__
+#    define __ARM_HAVE_5TE  1
+#  endif
+#endif
+
+/* instructions introduced in ARMv5 */
+#if __ARM_ARCH__ >= 5
+#  define  __ARM_HAVE_BLX  1
+#  define  __ARM_HAVE_CLZ  1
+#  define  __ARM_HAVE_LDC2 1
+#  define  __ARM_HAVE_MCR2 1
+#  define  __ARM_HAVE_MRC2 1
+#  define  __ARM_HAVE_STC2 1
+#endif
+
+/* ARMv5TE introduces a few instructions */
+#if __ARM_HAVE_5TE
+#  define  __ARM_HAVE_PLD   1
+#  define  __ARM_HAVE_MCRR  1
+#  define  __ARM_HAVE_MRRC  1
+#endif
+
+/* define __ARM_HAVE_HALFWORD_MULTIPLY when half-word multiply instructions
+ * this means variants of: smul, smulw, smla, smlaw, smlal
+ */
+#if __ARM_HAVE_5TE
+#  define  __ARM_HAVE_HALFWORD_MULTIPLY  1
+#endif
+
+/* define __ARM_HAVE_PAIR_LOAD_STORE when 64-bit memory loads and stored
+ * into/from a pair of 32-bit registers is supported throuhg 'ldrd' and 'strd'
+ */
+#if __ARM_HAVE_5TE
+#  define  __ARM_HAVE_PAIR_LOAD_STORE 1
+#endif
+
+/* define __ARM_HAVE_SATURATED_ARITHMETIC is you have the saturated integer
+ * arithmetic instructions: qdd, qdadd, qsub, qdsub
+ */
+#if __ARM_HAVE_5TE
+#  define  __ARM_HAVE_SATURATED_ARITHMETIC 1
+#endif
+
+/* define __ARM_HAVE_PC_INTERWORK when a direct assignment to the
+ * pc register will switch into thumb/ARM mode depending on bit 0
+ * of the new instruction address. Before ARMv5, this was not the
+ * case, and you have to write:
+ *
+ *     mov  r0, [<some address>]
+ *     bx   r0
+ *
+ * instead of:
+ *
+ *     ldr  pc, [<some address>]
+ *
+ * note that this affects any instruction that explicitely changes the
+ * value of the pc register, including ldm { ...,pc } or 'add pc, #offset'
+ */
+#if __ARM_ARCH__ >= 5
+#  define __ARM_HAVE_PC_INTERWORK
+#endif
+
+
+/* Assembly-only macros */
+
+/* define a handy PLD(address) macro since the cache preload
+ * is an optional opcode
+ */
+#if __ARM_HAVE_PLD
+#  define  PLD(reg,offset)    pld    [reg, offset]
+#else
+#  define  PLD(reg,offset)    /* nothing */
+#endif
+
+#endif /* _ARM_MACHINE_CPU_FEATURES_H */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/exec.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/exec.h
new file mode 100644
index 0000000..227b207
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/exec.h
@@ -0,0 +1,50 @@
+/*	$OpenBSD: exec.h,v 1.9 2003/04/17 03:42:14 drahn Exp $	*/
+/*	$NetBSD: exec.h,v 1.6 1994/10/27 04:16:05 cgd Exp $	*/
+
+/*
+ * Copyright (c) 1993 Christopher G. Demetriou
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ *    derived from this software without specific prior written permission
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _ARM_EXEC_H_
+#define _ARM_EXEC_H_
+
+#define __LDPGSZ	4096
+
+#define NATIVE_EXEC_ELF
+
+#define ARCH_ELFSIZE		32
+
+#define ELF_TARG_CLASS		ELFCLASS32
+#define ELF_TARG_DATA		ELFDATA2LSB
+#define ELF_TARG_MACH		EM_ARM
+
+#define _NLIST_DO_AOUT
+#define _NLIST_DO_ELF
+
+#define _KERN_DO_AOUT
+#define _KERN_DO_ELF
+
+#endif  /* _ARM_EXEC_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/ieee.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/ieee.h
new file mode 100644
index 0000000..5f9b89e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/ieee.h
@@ -0,0 +1,191 @@
+/*	$OpenBSD: ieee.h,v 1.1 2004/02/01 05:09:49 drahn Exp $	*/
+/*	$NetBSD: ieee.h,v 1.2 2001/02/21 17:43:50 bjh21 Exp $	*/
+
+/*
+ * Copyright (c) 1992, 1993
+ *	The Regents of the University of California.  All rights reserved.
+ *
+ * This software was developed by the Computer Systems Engineering group
+ * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and
+ * contributed to Berkeley.
+ *
+ * All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ *	This product includes software developed by the University of
+ *	California, Lawrence Berkeley Laboratory.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *	This product includes software developed by the University of
+ *	California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *	@(#)ieee.h	8.1 (Berkeley) 6/11/93
+ */
+
+/*
+ * ieee.h defines the machine-dependent layout of the machine's IEEE
+ * floating point.
+ */
+
+/*
+ * Define the number of bits in each fraction and exponent.
+ *
+ *		     k	         k+1
+ * Note that  1.0 x 2  == 0.1 x 2      and that denorms are represented
+ *
+ *					  (-exp_bias+1)
+ * as fractions that look like 0.fffff x 2             .  This means that
+ *
+ *			 -126
+ * the number 0.10000 x 2    , for instance, is the same as the normalized
+ *
+ *		-127			   -128
+ * float 1.0 x 2    .  Thus, to represent 2    , we need one leading zero
+ *
+ *				  -129
+ * in the fraction; to represent 2    , we need two, and so on.  This
+ *
+ *						     (-exp_bias-fracbits+1)
+ * implies that the smallest denormalized number is 2
+ *
+ * for whichever format we are talking about: for single precision, for
+ *
+ *						-126		-149
+ * instance, we get .00000000000000000000001 x 2    , or 1.0 x 2    , and
+ *
+ * -149 == -127 - 23 + 1.
+ */
+
+/*
+ * The ARM has two sets of FP data formats.  The FPA supports 32-bit, 64-bit
+ * and 96-bit IEEE formats, with the words in big-endian order.  VFP supports
+ * 32-bin and 64-bit IEEE formats with the words in the CPU's native byte
+ * order.
+ *
+ * The FPA also has two packed decimal formats, but we ignore them here.
+ */
+
+#define	SNG_EXPBITS	8
+#define	SNG_FRACBITS	23
+
+#define	DBL_EXPBITS	11
+#define	DBL_FRACBITS	52
+
+#ifndef __VFP_FP__
+#define	E80_EXPBITS	15
+#define	E80_FRACBITS	64
+
+#define	EXT_EXPBITS	15
+#define	EXT_FRACBITS	112
+#endif
+
+struct ieee_single {
+	u_int	sng_frac:23;
+	u_int	sng_exponent:8;
+	u_int	sng_sign:1;
+};
+
+#ifdef __VFP_FP__
+struct ieee_double {
+#ifdef __ARMEB__
+	u_int	dbl_sign:1;
+	u_int	dbl_exp:11;
+	u_int	dbl_frach:20;
+	u_int	dbl_fracl;
+#else /* !__ARMEB__ */
+	u_int	dbl_fracl;
+	u_int	dbl_frach:20;
+	u_int	dbl_exp:11;
+	u_int	dbl_sign:1;
+#endif /* !__ARMEB__ */
+};
+#else /* !__VFP_FP__ */
+struct ieee_double {
+	u_int	dbl_frach:20;
+	u_int	dbl_exp:11;
+	u_int	dbl_sign:1;
+	u_int	dbl_fracl;
+};
+
+union ieee_double_u {
+	double                  dblu_d;
+	struct ieee_double      dblu_dbl;
+};
+
+
+struct ieee_e80 {
+	u_int	e80_exp:15;
+	u_int	e80_zero:16;
+	u_int	e80_sign:1;
+	u_int	e80_frach:31;
+	u_int	e80_j:1;
+	u_int	e80_fracl;
+};
+
+struct ieee_ext {
+	u_int	ext_frach:16;
+	u_int	ext_exp:15;
+	u_int	ext_sign:1;
+	u_int	ext_frachm;
+	u_int	ext_fraclm;
+	u_int	ext_fracl;
+};
+#endif /* !__VFP_FP__ */
+
+/*
+ * Floats whose exponent is in [1..INFNAN) (of whatever type) are
+ * `normal'.  Floats whose exponent is INFNAN are either Inf or NaN.
+ * Floats whose exponent is zero are either zero (iff all fraction
+ * bits are zero) or subnormal values.
+ *
+ * A NaN is a `signalling NaN' if its QUIETNAN bit is clear in its
+ * high fraction; if the bit is set, it is a `quiet NaN'.
+ */
+#define	SNG_EXP_INFNAN	255
+#define	DBL_EXP_INFNAN	2047
+#ifndef __VFP_FP__
+#define	E80_EXP_INFNAN	32767
+#define	EXT_EXP_INFNAN	32767
+#endif /* !__VFP_FP__ */
+
+#if 0
+#define	SNG_QUIETNAN	(1 << 22)
+#define	DBL_QUIETNAN	(1 << 19)
+#ifndef __VFP_FP__
+#define	E80_QUIETNAN	(1 << 15)
+#define	EXT_QUIETNAN	(1 << 15)
+#endif /* !__VFP_FP__ */
+#endif
+
+/*
+ * Exponent biases.
+ */
+#define	SNG_EXP_BIAS	127
+#define	DBL_EXP_BIAS	1023
+#ifndef __VFP_FP__
+#define	E80_EXP_BIAS	16383
+#define	EXT_EXP_BIAS	16383
+#endif /* !__VFP_FP__ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/internal_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/internal_types.h
new file mode 100644
index 0000000..7e610b0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/internal_types.h
@@ -0,0 +1,10 @@
+/* $OpenBSD: internal_types.h,v 1.2 2004/05/06 15:53:39 drahn Exp $ */
+/* Public domain */
+#ifndef _ARM_INTERNAL_TYPES_H_
+#define _ARM_INTERNAL_TYPES_H_
+
+#ifdef __CHAR_UNSIGNED__
+#define __machine_has_unsigned_chars
+#endif
+
+#endif
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/kernel.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/kernel.h
new file mode 100644
index 0000000..462b8e3
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/kernel.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _ARCH_ARM_KERNEL_H
+#define _ARCH_ARM_KERNEL_H
+
+/* this file contains kernel-specific definitions that were optimized out of
+   our processed kernel headers, but still useful nonetheless... */
+
+typedef unsigned long   __kernel_blkcnt_t;
+typedef unsigned long   __kernel_blksize_t;
+
+/* these aren't really defined by the kernel headers though... */
+typedef unsigned long   __kernel_fsblkcnt_t;
+typedef unsigned long   __kernel_fsfilcnt_t;
+typedef unsigned int    __kernel_id_t;
+
+#endif /* _ARCH_ARM_KERNEL_H */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/limits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/limits.h
new file mode 100644
index 0000000..f9c04fa
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/limits.h
@@ -0,0 +1,63 @@
+/*	$OpenBSD: limits.h,v 1.3 2006/01/06 22:48:46 millert Exp $	*/
+/*	$NetBSD: limits.h,v 1.4 2003/04/28 23:16:18 bjh21 Exp $	*/
+
+/*
+ * Copyright (c) 1988 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ *	from: @(#)limits.h	7.2 (Berkeley) 6/28/90
+ */
+
+#ifndef	_ARM32_LIMITS_H_
+#define	_ARM32_LIMITS_H_
+
+#include <sys/cdefs.h>
+
+#define	MB_LEN_MAX	1		/* no multibyte characters */
+
+#ifndef	SIZE_MAX
+#define	SIZE_MAX	UINT_MAX	/* max value for a size_t */
+#endif
+#ifndef SSIZE_MAX
+#define	SSIZE_MAX	INT_MAX		/* max value for a ssize_t */
+#endif
+
+#if __BSD_VISIBLE
+#define	SIZE_T_MAX	UINT_MAX	/* max value for a size_t (historic) */
+
+#define	UQUAD_MAX	0xffffffffffffffffULL		/* max unsigned quad */
+#define	QUAD_MAX	0x7fffffffffffffffLL		/* max signed quad */
+#define	QUAD_MIN	(-0x7fffffffffffffffLL-1)	/* min signed quad */
+
+#endif /* __BSD_VISIBLE */
+
+#define LONGLONG_BIT    64
+#define LONGLONG_MIN    (-9223372036854775807LL-1)
+#define LONGLONG_MAX    9223372036854775807LL
+#define ULONGLONG_MAX   18446744073709551615ULL
+
+#endif	/* _ARM32_LIMITS_H_ */
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/machine/setjmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/setjmp.h
new file mode 100644
index 0000000..f20cab2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/machine/setjmp.h
@@ -0,0 +1,87 @@
+/*	$OpenBSD: setjmp.h,v 1.1 2004/02/01 05:09:49 drahn Exp $	*/
+/*	$NetBSD: setjmp.h,v 1.2 2001/08/25 14:45:59 bjh21 Exp $	*/
+
+/*
+ * machine/setjmp.h: machine dependent setjmp-related information.
+ */
+
+#ifdef __ELF__
+#define	_JBLEN	64		/* size, in longs, of a jmp_buf */
+#else
+#define	_JBLEN	29		/* size, in longs, of a jmp_buf */
+#endif
+
+/*
+ * NOTE: The internal structure of a jmp_buf is *PRIVATE*
+ *       This information is provided as there is software
+ *       that fiddles with this with obtain the stack pointer
+ *	 (yes really ! and its commercial !).
+ *
+ * Description of the setjmp buffer
+ *
+ * word  0	magic number	(dependant on creator)
+ *       1 -  3	f4		fp register 4
+ *	 4 -  6	f5		fp register 5
+ *	 7 -  9 f6		fp register 6
+ *	10 - 12	f7		fp register 7
+ *	13	fpsr		fp status register
+ *	14	r4		register 4
+ *	15	r5		register 5
+ *	16	r6		register 6
+ *	17	r7		register 7
+ *	18	r8		register 8
+ *	19	r9		register 9
+ *	20	r10		register 10 (sl)
+ *	21	r11		register 11 (fp)
+ *	22	r12		register 12 (ip)
+ *	23	r13		register 13 (sp)
+ *	24	r14		register 14 (lr)
+ *	25	signal mask	(dependant on magic)
+ *	26	(con't)
+ *	27	(con't)
+ *	28	(con't)
+ *
+ * The magic number number identifies the jmp_buf and
+ * how the buffer was created as well as providing
+ * a sanity check
+ *
+ * A side note I should mention - Please do not tamper
+ * with the floating point fields. While they are
+ * always saved and restored at the moment this cannot
+ * be garenteed especially if the compiler happens
+ * to be generating soft-float code so no fp
+ * registers will be used.
+ *
+ * Whilst this can be seen an encouraging people to
+ * use the setjmp buffer in this way I think that it
+ * is for the best then if changes occur compiles will
+ * break rather than just having new builds falling over
+ * mysteriously.
+ */
+
+#define _JB_MAGIC__SETJMP	0x4278f500
+#define _JB_MAGIC_SETJMP	0x4278f501
+
+/* Valid for all jmp_buf's */
+
+#define _JB_MAGIC		 0
+#define _JB_REG_F4		 1
+#define _JB_REG_F5		 4
+#define _JB_REG_F6		 7
+#define _JB_REG_F7		10
+#define _JB_REG_FPSR		13
+#define _JB_REG_R4		14
+#define _JB_REG_R5		15
+#define _JB_REG_R6		16
+#define _JB_REG_R7		17
+#define _JB_REG_R8		18
+#define _JB_REG_R9		19
+#define _JB_REG_R10		20
+#define _JB_REG_R11		21
+#define _JB_REG_R12		22
+#define _JB_REG_R13		23
+#define _JB_REG_R14		24
+
+/* Only valid with the _JB_MAGIC_SETJMP magic */
+
+#define _JB_SIGMASK		25
diff --git a/ndk/build/platforms/android-3/common/include/malloc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/malloc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/malloc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/malloc.h
diff --git a/ndk/build/platforms/android-3/common/include/math.h b/ndk/build/platforms/android-5/arch-arm/usr/include/math.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/math.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/math.h
diff --git a/ndk/build/platforms/android-3/common/include/memory.h b/ndk/build/platforms/android-5/arch-arm/usr/include/memory.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/memory.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/memory.h
diff --git a/ndk/build/platforms/android-3/common/include/mntent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/mntent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/mntent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/mntent.h
diff --git a/ndk/build/platforms/android-3/common/include/mtd/mtd-abi.h b/ndk/build/platforms/android-5/arch-arm/usr/include/mtd/mtd-abi.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/mtd/mtd-abi.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/mtd/mtd-abi.h
diff --git a/ndk/build/platforms/android-3/common/include/mtd/mtd-user.h b/ndk/build/platforms/android-5/arch-arm/usr/include/mtd/mtd-user.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/mtd/mtd-user.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/mtd/mtd-user.h
diff --git a/ndk/build/platforms/android-3/common/include/net/ethertypes.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/ethertypes.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/ethertypes.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/ethertypes.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_arp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_arp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_arp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_arp.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_dl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_dl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_dl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_dl.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_ether.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_ether.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_ether.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_ether.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_ieee1394.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_ieee1394.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_ieee1394.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_ieee1394.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_packet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_packet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_packet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_packet.h
diff --git a/ndk/build/platforms/android-3/common/include/net/if_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/if_types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/if_types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/if_types.h
diff --git a/ndk/build/platforms/android-3/common/include/net/route.h b/ndk/build/platforms/android-5/arch-arm/usr/include/net/route.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/net/route.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/net/route.h
diff --git a/ndk/build/platforms/android-3/common/include/netdb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netdb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netdb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netdb.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ether.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ether.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/ether.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ether.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/if_ether.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/if_ether.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/if_ether.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/if_ether.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/in.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in6.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in6.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/in6.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in6.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/in_systm.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in_systm.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/in_systm.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/in_systm.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ip.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ip.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/ip.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ip.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/ip_icmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ip_icmp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/ip_icmp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/ip_icmp.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/tcp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/tcp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/tcp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/tcp.h
diff --git a/ndk/build/platforms/android-3/common/include/netinet/udp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netinet/udp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netinet/udp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netinet/udp.h
diff --git a/ndk/build/platforms/android-3/common/include/netpacket/packet.h b/ndk/build/platforms/android-5/arch-arm/usr/include/netpacket/packet.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/netpacket/packet.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/netpacket/packet.h
diff --git a/ndk/build/platforms/android-3/common/include/new b/ndk/build/platforms/android-5/arch-arm/usr/include/new
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/new
copy to ndk/build/platforms/android-5/arch-arm/usr/include/new
diff --git a/ndk/build/platforms/android-3/common/include/nsswitch.h b/ndk/build/platforms/android-5/arch-arm/usr/include/nsswitch.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/nsswitch.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/nsswitch.h
diff --git a/ndk/build/platforms/android-3/common/include/pathconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/pathconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/pathconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/pathconf.h
diff --git a/ndk/build/platforms/android-3/common/include/paths.h b/ndk/build/platforms/android-5/arch-arm/usr/include/paths.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/paths.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/paths.h
diff --git a/ndk/build/platforms/android-3/common/include/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/poll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/poll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/poll.h
diff --git a/ndk/build/platforms/android-3/common/include/pthread.h b/ndk/build/platforms/android-5/arch-arm/usr/include/pthread.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/pthread.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/pthread.h
diff --git a/ndk/build/platforms/android-3/common/include/pwd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/pwd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/pwd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/pwd.h
diff --git a/ndk/build/platforms/android-3/common/include/resolv.h b/ndk/build/platforms/android-5/arch-arm/usr/include/resolv.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/resolv.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/resolv.h
diff --git a/ndk/build/platforms/android-3/common/include/sched.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sched.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sched.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sched.h
diff --git a/ndk/build/platforms/android-3/common/include/semaphore.h b/ndk/build/platforms/android-5/arch-arm/usr/include/semaphore.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/semaphore.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/semaphore.h
diff --git a/ndk/build/platforms/android-3/common/include/setjmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/setjmp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/setjmp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/setjmp.h
diff --git a/ndk/build/platforms/android-3/common/include/sgtty.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sgtty.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sgtty.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sgtty.h
diff --git a/ndk/build/platforms/android-3/common/include/sha1.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sha1.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sha1.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sha1.h
diff --git a/ndk/build/platforms/android-3/common/include/signal.h b/ndk/build/platforms/android-5/arch-arm/usr/include/signal.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/signal.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/signal.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/stdint.h b/ndk/build/platforms/android-5/arch-arm/usr/include/stdint.h
new file mode 100644
index 0000000..237baa2
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/stdint.h
@@ -0,0 +1,266 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _STDINT_H
+#define _STDINT_H
+
+#include <stddef.h>
+#include <sys/_types.h>
+
+
+
+#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)
+#  define __STDINT_LIMITS
+#endif
+
+#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)
+#  define  __STDINT_MACROS
+#endif
+
+/* the definitions of STDINT_LIMITS depend on those of STDINT_MACROS */
+#if defined __STDINT_LIMITS && !defined __STDINT_MACROS
+#  define  __STDINT_MACROS
+#endif
+
+#if !defined __STRICT_ANSI__ || __STDC_VERSION__ >= 199901L
+#  define __STDC_INT64__
+#endif
+
+typedef __int8_t      int8_t;
+typedef __uint8_t     uint8_t;
+typedef __int16_t     int16_t;
+typedef __uint16_t    uint16_t;
+typedef __int32_t     int32_t;
+typedef __uint32_t    uint32_t;
+#if defined(__STDC_INT64__)
+typedef __int64_t     int64_t;
+typedef __uint64_t    uint64_t;
+#endif
+
+/*
+ * int8_t & uint8_t
+ */
+
+typedef int8_t        int_least8_t;
+typedef int8_t        int_fast8_t;
+
+typedef uint8_t       uint_least8_t;
+typedef uint8_t       uint_fast8_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT8_MIN         (-128)
+#  define INT8_MAX         (127)
+#  define INT_LEAST8_MIN   INT8_MIN
+#  define INT_LEAST8_MAX   INT8_MAX
+#  define INT_FAST8_MIN    INT8_MIN
+#  define INT_FAST8_MAX    INT8_MAX
+
+#  define UINT8_MAX           (255U)
+#  define UINT_LEAST8_MAX     UINT8_MAX
+#  define UINT_FAST8_MAX      UINT8_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT8_C(c)	c
+#  define INT_LEAST8_C(c)	 INT8_C(c)
+#  define INT_FAST8_C(c)	INT8_C(c)
+
+#  define UINT8_C(c)	c ## U
+#  define UINT_LEAST8_C(c)  UINT8_C(c)
+#  define UINT_FAST8_C(c)  UINT8_C(c)
+#endif
+
+/*
+ * int16_t & uint16_t
+ */
+
+
+typedef int16_t       int_least16_t;
+typedef int32_t       int_fast16_t;
+
+typedef uint16_t      uint_least16_t;
+typedef uint32_t      uint_fast16_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT16_MIN	(-32768)
+#  define INT16_MAX	(32767)
+#  define INT_LEAST16_MIN	INT16_MIN
+#  define INT_LEAST16_MAX	INT16_MAX
+#  define INT_FAST16_MIN	INT32_MIN
+#  define INT_FAST16_MAX	INT32_MAX
+
+#  define UINT16_MAX	(65535U)
+#  define UINT_LEAST16_MAX UINT16_MAX
+#  define UINT_FAST16_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT16_C(c)	c
+#  define INT_LEAST16_C(c) INT16_C(c)
+#  define INT_FAST16_C(c)	 INT32_C(c)
+
+#  define UINT16_C(c)	c ## U
+#  define UINT_LEAST16_C(c) UINT16_C(c)
+#  define UINT_FAST16_C(c) UINT32_C(c)
+#endif
+
+/*
+ * int32_t & uint32_t
+ */
+
+typedef int32_t       int_least32_t;
+typedef int32_t       int_fast32_t;
+
+typedef uint32_t      uint_least32_t;
+typedef uint32_t      uint_fast32_t;
+
+#ifdef __STDINT_LIMITS
+#  define INT32_MIN	(-2147483647-1)
+#  define INT32_MAX	(2147483647)
+#  define INT_LEAST32_MIN	INT32_MIN
+#  define INT_LEAST32_MAX	INT32_MAX
+#  define INT_FAST32_MIN	INT32_MIN
+#  define INT_FAST32_MAX	INT32_MAX
+
+#  define UINT32_MAX	(4294967295U)
+#  define UINT_LEAST32_MAX UINT32_MAX
+#  define UINT_FAST32_MAX UINT32_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define INT32_C(c)	c
+#  define INT_LEAST32_C(c) INT32_C(c)
+#  define INT_FAST32_C(c)  INT32_C(c)
+
+#  define UINT32_C(c)	c ## U
+#  define UINT_LEAST32_C(c) UINT32_C(c)
+#  define UINT_FAST32_C(c) UINT32_C(c)
+#endif
+
+#if defined(__STDC_INT64__)
+/*
+ *  int64_t
+ */
+typedef int64_t       int_least64_t;
+typedef int64_t       int_fast64_t;
+
+typedef uint64_t      uint_least64_t;
+typedef uint64_t      uint_fast64_t;
+
+
+#ifdef __STDINT_LIMITS
+#  define INT64_MIN        (__INT64_C(-9223372036854775807)-1)
+#  define INT64_MAX        (__INT64_C(9223372036854775807))
+#  define INT_LEAST64_MIN  INT64_MIN
+#  define INT_LEAST64_MAX  INT64_MAX
+#  define INT_FAST64_MIN   INT64_MIN
+#  define INT_FAST64_MAX   INT64_MAX
+#  define UINT64_MAX       (__UINT64_C(18446744073709551615))
+
+#  define UINT_LEAST64_MAX UINT64_MAX
+#  define UINT_FAST64_MAX UINT64_MAX
+#endif
+
+#ifdef __STDINT_MACROS
+#  define __INT64_C(c)     c ## LL
+#  define INT64_C(c)       __INT64_C(c)
+#  define INT_LEAST64_C(c) INT64_C(c)
+#  define INT_FAST64_C(c)  INT64_C(c)
+
+#  define __UINT64_C(c)     c ## ULL
+#  define UINT64_C(c)       __UINT64_C(c)
+#  define UINT_LEAST64_C(c) UINT64_C(c)
+#  define UINT_FAST64_C(c)  UINT64_C(c)
+#endif
+
+
+#  define __PRI64_RANK   "ll"
+#  define __PRIFAST_RANK ""
+#  define __PRIPTR_RANK  ""
+
+#endif /* __STDC_INT64__ */
+
+/*
+ * intptr_t & uintptr_t
+ */
+
+typedef int           intptr_t;
+typedef unsigned int  uintptr_t;
+
+#  define INTPTR_MIN    INT32_MIN
+#  define INTPTR_MAX    INT32_MAX
+#  define UINTPTR_MAX   UINT32_MAX
+#  define INTPTR_C(c)   INT32_C(c)
+#  define UINTPTR_C(c)  UINT32_C(c)
+#  define PTRDIFF_C(c)  INT32_C(c)
+#  define PTRDIFF_MIN   INT32_MIN
+#  define PTRDIFF_MAX   INT32_MAX
+
+
+/*
+ *  intmax_t & uintmax_t
+ */
+
+#if defined(__STDC_INT64__)
+
+typedef uint64_t uintmax_t;
+typedef int64_t  intmax_t;
+
+#define INTMAX_MIN	INT64_MIN
+#define INTMAX_MAX	INT64_MAX
+#define UINTMAX_MAX	UINT64_MAX
+
+#define INTMAX_C(c)	INT64_C(c)
+#define UINTMAX_C(c)	UINT64_C(c)
+
+#else /* !__STDC_INT64__ */
+
+typedef uint32_t  uintmax_t;
+typedef int32_t   intmax_t;
+
+#define  INTMAX_MIN    INT32_MIN
+#define  INTMAX_MAX    INT32_MAX
+#define  UINTMAX_MAX   UINT32_MAX
+
+#define INTMAX_C(c)	INT32_C(c)
+#define UINTMAX_C(c)	UINT32_C(c)
+
+#endif /* !__STDC_INT64__ */
+
+
+/* size_t is defined by the GCC-specific <stddef.h> */
+#ifndef _SSIZE_T_DEFINED_
+#define _SSIZE_T_DEFINED_
+typedef long int  ssize_t;
+#endif
+
+#define _BITSIZE 32
+
+/* Keep the kernel from trying to define these types... */
+#define __BIT_TYPES_DEFINED__
+
+#endif /* _STDINT_H */
diff --git a/ndk/build/platforms/android-3/common/include/stdio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/stdio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/stdio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/stdio.h
diff --git a/ndk/build/platforms/android-3/common/include/stdlib.h b/ndk/build/platforms/android-5/arch-arm/usr/include/stdlib.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/stdlib.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/stdlib.h
diff --git a/ndk/build/platforms/android-3/common/include/stl_pair.h b/ndk/build/platforms/android-5/arch-arm/usr/include/stl_pair.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/stl_pair.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/stl_pair.h
diff --git a/ndk/build/platforms/android-3/common/include/string.h b/ndk/build/platforms/android-5/arch-arm/usr/include/string.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/string.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/string.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/strings.h b/ndk/build/platforms/android-5/arch-arm/usr/include/strings.h
new file mode 100644
index 0000000..fee7dc4
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/strings.h
@@ -0,0 +1,56 @@
+/*	$NetBSD: strings.h,v 1.10 2005/02/03 04:39:32 perry Exp $	*/
+
+/*-
+ * Copyright (c) 1998 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Klaus Klein.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *        This product includes software developed by the NetBSD
+ *        Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ *    contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _STRINGS_H_
+#define _STRINGS_H_
+
+#include <sys/types.h>
+#include <sys/cdefs.h>
+
+__BEGIN_DECLS
+int	 bcmp(const void *, const void *, size_t);
+void	 bcopy(const void *, void *, size_t);
+void	 bzero(void *, size_t);
+int	 ffs(int);
+char	*index(const char *, int);
+char	*rindex(const char *, int);
+int	 strcasecmp(const char *, const char *);
+int	 strncasecmp(const char *, const char *, size_t);
+__END_DECLS
+
+#endif /* !defined(_STRINGS_H_) */
diff --git a/ndk/build/platforms/android-3/common/include/sys/_errdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/_errdefs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/_errdefs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/_errdefs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/_sigdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/_sigdefs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/_sigdefs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/_sigdefs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/_system_properties.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/_system_properties.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/_system_properties.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/_system_properties.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/_types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/_types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/_types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/_types.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/atomics.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/atomics.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/atomics.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/atomics.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/cdefs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/cdefs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/cdefs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/cdefs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/cdefs_elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/cdefs_elf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/cdefs_elf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/cdefs_elf.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/dirent.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/dirent.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/dirent.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/dirent.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/endian.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/endian.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/endian.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/endian.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/epoll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/epoll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/epoll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/epoll.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/errno.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/errno.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/errno.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/errno.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/exec_elf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/exec_elf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/exec_elf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/exec_elf.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/file.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/file.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/file.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/file.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/fsuid.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/fsuid.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/fsuid.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/fsuid.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/inotify.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/inotify.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/inotify.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/inotify.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ioctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ioctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ioctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ioctl.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ioctl_compat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ioctl_compat.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ioctl_compat.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ioctl_compat.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ipc.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ipc.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ipc.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ipc.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/klog.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/klog.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/klog.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/klog.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/limits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/limits.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/limits.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/limits.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/linux-syscalls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/linux-syscalls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/linux-syscalls.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/linux-syscalls.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/linux-unistd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/linux-unistd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/linux-unistd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/linux-unistd.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/mman.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/mman.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/mman.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/mman.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/mount.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/mount.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/mount.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/mount.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/param.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/param.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/param.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/param.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/poll.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/poll.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/poll.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/poll.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/prctl.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/prctl.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/prctl.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/prctl.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ptrace.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ptrace.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ptrace.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ptrace.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/reboot.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/reboot.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/reboot.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/reboot.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/resource.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/resource.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/resource.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/resource.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/select.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/select.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/select.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/select.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/sendfile.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/sendfile.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/sendfile.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/sendfile.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/socket.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/socket.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/socket.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/socket.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/socketcalls.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/socketcalls.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/socketcalls.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/socketcalls.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/sys/stat.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/stat.h
new file mode 100644
index 0000000..091ee6d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/stat.h
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _SYS_STAT_H_
+#define _SYS_STAT_H_
+
+#include <sys/cdefs.h>
+#include <sys/types.h>
+#include <sys/time.h>
+#include <linux/stat.h>
+
+#include <endian.h>
+
+__BEGIN_DECLS
+
+/* really matches stat64 in the kernel, hence the padding
+ * Note: The kernel zero's the padded region because glibc might read them
+ * in the hope that the kernel has stretched to using larger sizes.
+ */
+struct stat {
+    unsigned long long  st_dev;
+    unsigned char       __pad0[4];
+
+    unsigned long       __st_ino;
+    unsigned int        st_mode;
+    unsigned int        st_nlink;
+
+    unsigned long       st_uid;
+    unsigned long       st_gid;
+
+    unsigned long long  st_rdev;
+    unsigned char       __pad3[4];
+
+    long long           st_size;
+    unsigned long	st_blksize;
+    unsigned long long  st_blocks;
+
+    unsigned long       st_atime;
+    unsigned long       st_atime_nsec;
+
+    unsigned long       st_mtime;
+    unsigned long       st_mtime_nsec;
+
+    unsigned long       st_ctime;
+    unsigned long       st_ctime_nsec;
+
+    unsigned long long  st_ino;
+};
+
+/* For compatibility with GLibc, we provide macro aliases
+ * for the non-Posix nano-seconds accessors.
+ */
+#define  st_atimensec  st_atime_nsec
+#define  st_mtimensec  st_mtime_nsec
+#define  st_ctimensec  st_ctime_nsec
+
+extern int    chmod(const char *, mode_t);
+extern int    fchmod(int, mode_t);
+extern int    mkdir(const char *, mode_t);
+
+extern int    stat(const char *, struct stat *);
+extern int    fstat(int, struct stat *);
+extern int    lstat(const char *, struct stat *);
+extern int    mknod(const char *, mode_t, dev_t);
+extern mode_t umask(mode_t);
+
+#define  stat64    stat
+#define  fstat64   fstat
+#define  lstat64   lstat
+
+static __inline__ int mkfifo(const char *__p, mode_t __m)
+{
+  return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t)0);
+}
+
+extern int  fstatat(int dirfd, const char *path, struct stat *buf, int flags);
+extern int  mkdirat(int dirfd, const char *pathname, mode_t mode);
+extern int fchownat(int dirfd, const char *path, uid_t owner, gid_t group, int flags);
+extern int fchmodat(int dirfd, const char *path, mode_t mode, int flags);
+extern int renameat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);
+
+__END_DECLS
+
+#endif /* _SYS_STAT_H_ */
diff --git a/ndk/build/platforms/android-3/common/include/sys/statfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/statfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/statfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/statfs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/syscall.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/syscall.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/syscall.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/syscall.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/sysconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysconf.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysinfo.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysinfo.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/sysinfo.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysinfo.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/syslimits.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/syslimits.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/syslimits.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/syslimits.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/sysmacros.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysmacros.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/sysmacros.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/sysmacros.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/system_properties.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/system_properties.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/system_properties.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/system_properties.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/time.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/time.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/time.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/time.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/timeb.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/timeb.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/timeb.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/timeb.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/times.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/times.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/times.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/times.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ttychars.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ttychars.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ttychars.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ttychars.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/ttydev.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/ttydev.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/ttydev.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/ttydev.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/types.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/types.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/types.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/types.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/uio.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/uio.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/uio.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/uio.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/un.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/un.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/un.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/un.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/utime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/utime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/utime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/utime.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/utsname.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/utsname.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/utsname.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/utsname.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/vfs.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/vfs.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/vfs.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/vfs.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/vt.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/vt.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/vt.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/vt.h
diff --git a/ndk/build/platforms/android-3/common/include/sys/wait.h b/ndk/build/platforms/android-5/arch-arm/usr/include/sys/wait.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/sys/wait.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/sys/wait.h
diff --git a/ndk/build/platforms/android-3/common/include/syslog.h b/ndk/build/platforms/android-5/arch-arm/usr/include/syslog.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/syslog.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/syslog.h
diff --git a/ndk/build/platforms/android-3/common/include/termios.h b/ndk/build/platforms/android-5/arch-arm/usr/include/termios.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/termios.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/termios.h
diff --git a/ndk/build/platforms/android-3/common/include/thread_db.h b/ndk/build/platforms/android-5/arch-arm/usr/include/thread_db.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/thread_db.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/thread_db.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/include/time.h b/ndk/build/platforms/android-5/arch-arm/usr/include/time.h
new file mode 100644
index 0000000..6163c6d
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/include/time.h
@@ -0,0 +1,115 @@
+/*
+ * Copyright (C) 2008 The Android Open Source Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *  * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *  * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in
+ *    the documentation and/or other materials provided with the
+ *    distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+#ifndef _TIME_H_
+#define _TIME_H_
+
+#include <sys/cdefs.h>
+#include <sys/time.h>
+
+#define __ARCH_SI_UID_T __kernel_uid32_t
+#include <asm/siginfo.h>
+#undef __ARCH_SI_UID_T
+
+__BEGIN_DECLS
+
+extern time_t   time(time_t *);
+extern int      nanosleep(const struct timespec *, struct timespec *);
+
+extern char *strtotimeval(const char *str, struct timeval *tv);
+
+struct tm {
+   int     tm_sec;         /* seconds */
+   int     tm_min;         /* minutes */
+   int     tm_hour;        /* hours */
+   int     tm_mday;        /* day of the month */
+   int     tm_mon;         /* month */
+   int     tm_year;        /* year */
+   int     tm_wday;        /* day of the week */
+   int     tm_yday;        /* day in the year */
+   int     tm_isdst;       /* daylight saving time */
+
+   long int tm_gmtoff;     /* Seconds east of UTC.  */
+   const char *tm_zone;    /* Timezone abbreviation.  */
+
+};
+
+/* defining TM_ZONE indicates that we have a "timezone abbreviation" field in
+ * struct tm, the value should be the field name
+ */
+#define   TM_ZONE   tm_zone
+
+extern char* asctime(const struct tm* a);
+extern char* asctime_r(const struct tm* a, char* buf);
+
+/* Return the difference between TIME1 and TIME0.  */
+extern double difftime (time_t __time1, time_t __time0);
+extern time_t mktime (struct tm *a);
+
+extern struct tm*  localtime(const time_t *t);
+extern struct tm*  localtime_r(const time_t *timep, struct tm *result);
+
+extern struct tm*  gmtime(const time_t *timep);
+extern struct tm*  gmtime_r(const time_t *timep, struct tm *result);
+
+extern char*       strptime(const char *buf, const char *fmt, struct tm *tm);
+extern size_t      strftime(char *s, size_t max, const char *format, const struct tm *tm);
+
+extern char *ctime(const time_t *timep);
+extern char *ctime_r(const time_t *timep, char *buf);
+
+extern void  tzset(void);
+
+/* global includes */
+extern char*     tzname[];
+extern int       daylight;
+extern long int  timezone;
+
+#define CLOCKS_PER_SEC     1000000
+
+extern clock_t   clock(void);
+
+/* BIONIC: extra linux clock goodies */
+extern int clock_getres(int, struct timespec *);
+extern int clock_gettime(int, struct timespec *);
+
+#define CLOCK_REALTIME             0
+#define CLOCK_MONOTONIC            1
+#define CLOCK_PROCESS_CPUTIME_ID   2
+#define CLOCK_THREAD_CPUTIME_ID    3
+#define CLOCK_REALTIME_HR          4
+#define CLOCK_MONOTONIC_HR         5
+
+extern int  timer_create(int, struct sigevent*, timer_t*);
+extern int  timer_delete(timer_t);
+extern int  timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue);
+extern int  timer_gettime(timer_t timerid, struct itimerspec *value);
+extern int  timer_getoverrun(timer_t  timerid);
+
+__END_DECLS
+
+#endif /* _TIME_H_ */
diff --git a/ndk/build/platforms/android-3/common/include/time64.h b/ndk/build/platforms/android-5/arch-arm/usr/include/time64.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/time64.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/time64.h
diff --git a/ndk/build/platforms/android-3/common/include/typeinfo b/ndk/build/platforms/android-5/arch-arm/usr/include/typeinfo
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/typeinfo
copy to ndk/build/platforms/android-5/arch-arm/usr/include/typeinfo
diff --git a/ndk/build/platforms/android-3/common/include/unistd.h b/ndk/build/platforms/android-5/arch-arm/usr/include/unistd.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/unistd.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/unistd.h
diff --git a/ndk/build/platforms/android-3/common/include/util.h b/ndk/build/platforms/android-5/arch-arm/usr/include/util.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/util.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/util.h
diff --git a/ndk/build/platforms/android-3/common/include/utility b/ndk/build/platforms/android-5/arch-arm/usr/include/utility
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/utility
copy to ndk/build/platforms/android-5/arch-arm/usr/include/utility
diff --git a/ndk/build/platforms/android-3/common/include/utime.h b/ndk/build/platforms/android-5/arch-arm/usr/include/utime.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/utime.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/utime.h
diff --git a/ndk/build/platforms/android-3/common/include/utmp.h b/ndk/build/platforms/android-5/arch-arm/usr/include/utmp.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/utmp.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/utmp.h
diff --git a/ndk/build/platforms/android-3/common/include/wchar.h b/ndk/build/platforms/android-5/arch-arm/usr/include/wchar.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/wchar.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/wchar.h
diff --git a/ndk/build/platforms/android-3/common/include/wctype.h b/ndk/build/platforms/android-5/arch-arm/usr/include/wctype.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/wctype.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/wctype.h
diff --git a/ndk/build/platforms/android-3/common/include/zconf.h b/ndk/build/platforms/android-5/arch-arm/usr/include/zconf.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/zconf.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/zconf.h
diff --git a/ndk/build/platforms/android-3/common/include/zlib.h b/ndk/build/platforms/android-5/arch-arm/usr/include/zlib.h
similarity index 100%
copy from ndk/build/platforms/android-3/common/include/zlib.h
copy to ndk/build/platforms/android-5/arch-arm/usr/include/zlib.h
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_dynamic.o b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_dynamic.o
new file mode 100644
index 0000000..63d4efa
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_dynamic.o
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_static.o b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_static.o
new file mode 100644
index 0000000..d11c79e
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtbegin_static.o
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/crtend_android.o b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtend_android.o
new file mode 100644
index 0000000..5b76af8
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/crtend_android.o
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv1_CM.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv1_CM.so
new file mode 100644
index 0000000..f61f631
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv1_CM.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv2.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv2.so
new file mode 100644
index 0000000..fa6557b
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libGLESv2.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.a b/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.a
new file mode 100644
index 0000000..4fdcafc
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.a
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.so
new file mode 100644
index 0000000..9714e97
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libc.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libdl.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libdl.so
new file mode 100644
index 0000000..e2a589c
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libdl.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/liblog.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/liblog.so
new file mode 100644
index 0000000..92bf1a7
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/liblog.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.a b/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.a
new file mode 100644
index 0000000..3e1ccb0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.a
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.so
new file mode 100644
index 0000000..87f4446
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libm.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.a b/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.a
new file mode 100644
index 0000000..8f495a5
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.a
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.so
new file mode 100644
index 0000000..d3d103f
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libstdc++.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.a b/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.a
new file mode 100644
index 0000000..9d634be
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.a
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.so
new file mode 100644
index 0000000..ea603f0
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libthread_db.so
Binary files differ
diff --git a/ndk/build/platforms/android-5/arch-arm/usr/lib/libz.so b/ndk/build/platforms/android-5/arch-arm/usr/lib/libz.so
new file mode 100644
index 0000000..f50a0ff
--- /dev/null
+++ b/ndk/build/platforms/android-5/arch-arm/usr/lib/libz.so
Binary files differ
diff --git a/ndk/build/toolchains/arm-eabi-4.2.1/config.mk b/ndk/build/toolchains/arm-eabi-4.2.1/config.mk
index 1b5cf02..c6297c2 100644
--- a/ndk/build/toolchains/arm-eabi-4.2.1/config.mk
+++ b/ndk/build/toolchains/arm-eabi-4.2.1/config.mk
@@ -16,4 +16,4 @@
 # config file for the arm-eabi-4.2.1 toolchain for the Android NDK
 # the real meat is in the setup.mk file adjacent to this one
 #
-TOOLCHAIN_ABIS := arm
+TOOLCHAIN_ABIS := armeabi
diff --git a/ndk/build/toolchains/arm-eabi-4.4.0/config.mk b/ndk/build/toolchains/arm-eabi-4.4.0/config.mk
new file mode 100644
index 0000000..43a28fa
--- /dev/null
+++ b/ndk/build/toolchains/arm-eabi-4.4.0/config.mk
@@ -0,0 +1,19 @@
+# Copyright (C) 2009 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.
+#
+
+# config file for the arm-eabi-4.4.0 toolchain for the Android NDK
+# the real meat is in the setup.mk file adjacent to this one
+#
+TOOLCHAIN_ABIS := armeabi armeabi-v7a
diff --git a/ndk/build/toolchains/arm-eabi-4.4.0/setup.mk b/ndk/build/toolchains/arm-eabi-4.4.0/setup.mk
new file mode 100644
index 0000000..cbdeed5
--- /dev/null
+++ b/ndk/build/toolchains/arm-eabi-4.4.0/setup.mk
@@ -0,0 +1,139 @@
+# Copyright (C) 2009 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.
+#
+
+# this file is used to prepare the NDK to build with the arm-eabi-4.4.0
+# toolchain any number of source files
+#
+# its purpose is to define (or re-define) templates used to build
+# various sources into target object files, libraries or executables.
+#
+# Note that this file may end up being parsed several times in future
+# revisions of the NDK.
+#
+
+TOOLCHAIN_NAME   := arm-eabi-4.4.0
+TOOLCHAIN_PREFIX := $(HOST_PREBUILT)/$(TOOLCHAIN_NAME)/bin/arm-eabi-
+
+TARGET_CFLAGS.common := \
+    -I$(SYSROOT)/usr/include \
+    -fpic \
+    -mthumb-interwork \
+    -ffunction-sections \
+    -funwind-tables \
+    -fstack-protector \
+    -fno-short-enums \
+    -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ \
+    -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ \
+
+ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
+    TARGET_ARCH_CFLAGS := -march=armv7-a \
+                            -mfloat-abi=softfp \
+                            -mfpu=neon
+    TARGET_ARCH_LDFLAGS := -Wl,--fix-cortex-a8
+else
+    TARGET_ARCH_CFLAGS := -march=armv5te \
+                            -mtune=xscale \
+                            -msoft-float
+    TARGET_ARCH_LDFLAGS :=
+endif
+
+TARGET_arm_release_CFLAGS :=  -O2 \
+                              -fomit-frame-pointer \
+                              -fstrict-aliasing    \
+                              -funswitch-loops     \
+                              -finline-limit=300
+
+TARGET_thumb_release_CFLAGS := -mthumb \
+                               -Os \
+                               -fomit-frame-pointer \
+                               -fno-strict-aliasing \
+                               -finline-limit=64
+
+# When building for debug, compile everything as arm.
+TARGET_arm_debug_CFLAGS := $(TARGET_arm_release_CFLAGS) \
+                           -fno-omit-frame-pointer \
+                           -fno-strict-aliasing
+
+TARGET_thumb_debug_CFLAGS := $(TARGET_thumb_release_CFLAGS) \
+                             -marm \
+                             -fno-omit-frame-pointer
+
+TARGET_CC       := $(TOOLCHAIN_PREFIX)gcc
+TARGET_CFLAGS   := $(TARGET_CFLAGS.common) $(TARGET_ARCH_CFLAGS)
+
+
+TARGET_CXX      := $(TOOLCHAIN_PREFIX)g++
+TARGET_CXXFLAGS := $(TARGET_CFLAGS.common) $(TARGET_ARCH_CFLAGS) -fno-exceptions -fno-rtti
+
+TARGET_LD      := $(TOOLCHAIN_PREFIX)ld
+TARGET_LDFLAGS := $(TARGET_ARCH_LDFLAGS)
+
+TARGET_AR      := $(TOOLCHAIN_PREFIX)ar
+TARGET_ARFLAGS := crs
+
+TARGET_LIBGCC := $(shell $(TARGET_CC) -mthumb-interwork -print-libgcc-file-name)
+TARGET_LDLIBS := -Wl,-rpath-link=$(SYSROOT)/usr/lib
+
+# These flags are used to ensure that a binary doesn't reference undefined
+# flags.
+TARGET_NO_UNDEFINED_LDFLAGS := -Wl,--no-undefined
+
+# NOTE: Ensure that TARGET_LIBGCC is placed after all private objects
+#       and static libraries, but before any other library in the link
+#       command line when generating shared libraries and executables.
+#
+#       This ensures that all libgcc.a functions required by the target
+#       will be included into it, instead of relying on what's available
+#       on other libraries like libc.so, which may change between system
+#       releases due to toolchain or library changes.
+#
+define cmd-build-shared-library
+$(TARGET_CC) \
+    -nostdlib -Wl,-soname,$(notdir $@) \
+    -Wl,-shared,-Bsymbolic \
+    $(PRIVATE_OBJECTS) \
+    -Wl,--whole-archive \
+    $(PRIVATE_WHOLE_STATIC_LIBRARIES) \
+    -Wl,--no-whole-archive \
+    $(PRIVATE_STATIC_LIBRARIES) \
+    $(TARGET_LIBGCC) \
+    $(PRIVATE_SHARED_LIBRARIES) \
+    $(PRIVATE_LDFLAGS) \
+    $(PRIVATE_LDLIBS) \
+    -o $@
+endef
+
+define cmd-build-executable
+$(TARGET_CC) \
+    -nostdlib -Bdynamic \
+    -Wl,-dynamic-linker,/system/bin/linker \
+    -Wl,--gc-sections \
+    -Wl,-z,nocopyreloc \
+    $(TARGET_CRTBEGIN_DYNAMIC_O) \
+    $(PRIVATE_OBJECTS) \
+    $(PRIVATE_STATIC_LIBRARIES) \
+    $(TARGET_LIBGCC) \
+    $(PRIVATE_SHARED_LIBRARIES) \
+    $(PRIVATE_LDFLAGS) \
+    $(PRIVATE_LDLIBS) \
+    $(TARGET_CRTEND_O) \
+    -o $@
+endef
+
+define cmd-build-static-library
+$(TARGET_AR) $(TARGET_ARFLAGS) $@ $(PRIVATE_OBJECTS)
+endef
+
+cmd-strip = $(TOOLCHAIN_PREFIX)strip --strip-debug $1
diff --git a/ndk/build/tools/build-ndk-sysroot.sh b/ndk/build/tools/build-ndk-sysroot.sh
index 8741220..c9f3285 100755
--- a/ndk/build/tools/build-ndk-sysroot.sh
+++ b/ndk/build/tools/build-ndk-sysroot.sh
@@ -28,7 +28,7 @@
 # WARNING: For now, only a single target ABI/Architecture us supported
 #
 
-source `dirname $0`/../core/ndk-common.sh
+. `dirname $0`/../core/ndk-common.sh
 
 # PLATFORM is the name of the current Android system platform
 PLATFORM=android-3
diff --git a/ndk/build/tools/build-toolchain.sh b/ndk/build/tools/build-toolchain.sh
index 95bf100..7bed99a 100755
--- a/ndk/build/tools/build-toolchain.sh
+++ b/ndk/build/tools/build-toolchain.sh
@@ -21,70 +21,101 @@
 #
 
 # include common function and variable definitions
-source `dirname $0`/../core/ndk-common.sh
+. `dirname $0`/../core/ndk-common.sh
 
 # number of jobs to run in parallel when running make
 JOBS=$HOST_NUM_CPUS
 
-TOOLCHAIN_NAME=arm-eabi-4.2.1
 PLATFORM=android-3
 ABI=arm
+GCC_VERSION=4.2.1
+GDB_VERSION=6.6
+BINUTILS_VERSION=2.17
+RELEASE=`date +%Y%m%d`
+BUILD_OUT=`mktemp -d /tmp/ndk-toolchain-XXX`
 
 OPTION_HELP=no
 OPTION_PLATFORM=
 OPTION_FORCE_32=no
 OPTION_REBUILD=no
+OPTION_GCC_VERSION=
+OPTION_GDB_VERSION=
+OPTION_PACKAGE=
+OPTION_RELEASE=
+OPTION_BUILD_OUT=
 
 VERBOSE=no
 for opt do
-  optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
-  case "$opt" in
-  --help|-h|-\?) OPTION_HELP=yes
-  ;;
-  --verbose)
-    if [ "$VERBOSE" = "yes" ] ; then
-        VERBOSE2=yes
-    else
+    optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
+    case "$opt" in
+    --help|-h|-\?) OPTION_HELP=yes
+    ;;
+    --verbose)
+        if [ "$VERBOSE" = "yes" ] ; then
+            VERBOSE2=yes
+        else
+            VERBOSE=yes
+        fi
+        ;;
+    --gcc-version=*)
+        OPTION_GCC_VERSION=$optarg
+        ;;
+    --gdb-version=*)
+        OPTION_GDB_VERSION=$optarg
+        ;;
+    --package=*)
+        OPTION_PACKAGE="$optarg"
+        ;;
+    --platform=*)
+        PLATFORM=$optarg
+        ;;
+    --build-out=*)
+        OPTION_BUILD_OUT="$optarg"
+        ;;
+    --abi=*)
+        ABI=$optarg
+        ;;
+    --release=*)
+        OPTION_RELEASE=$optarg
+        ;;
+    --force-download)
+        OPTION_FORCE_DOWNLOAD=yes
+        OPTION_FORCE_BUILD=yes
+        ;;
+    --force-build)
+        OPTION_FORCE_BUILD=yes
+        ;;
+    --verbose)
         VERBOSE=yes
-    fi
-    ;;
-  --toolchain=*)
-    TOOLCHAIN_NAME=$optarg
-    ;;
-  --platform=*)
-    PLATFORM=$optarg
-    ;;
-  --abi=*)
-    ABI=$optarg
-    ;;
-  --force-download)
-    OPTION_FORCE_DOWNLOAD=yes
-    OPTION_FORCE_BUILD=yes
-    ;;
-  --force-build)
-    OPTION_FORCE_BUILD=yes
-    ;;
-  --verbose)
-    VERBOSE=yes
-    ;;
-  *)
-    echo "unknown option '$opt', use --help"
-    exit 1
-  esac
+        ;;
+    *)
+        echo "unknown option '$opt', use --help"
+        exit 1
+    esac
 done
 
 if [ $OPTION_HELP = "yes" ] ; then
     echo "Rebuild the prebuilt binaries for the Android NDK toolchain."
+    echo "This script will automatically download the sources from the"
+    echo "Internet, unless you use the --package=<file> option to specify"
+    echo "the exact source package to use."
     echo ""
-    echo "options:"
+    echo "See build/tools/download-toolchain-sources.sh for a tool that"
+    echo "can create a compatible source package from the current"
+    echo "git repositories."
     echo ""
-    echo "  --help             print this message"
-    echo "  --toolchain=<name> toolchain name (default is $TOOLCHAIN_NAME)"
-    echo "  --platform=<name>  generate toolchain from platform <name> (default is $PLATFORM)"
-    echo "  --abi=<name>       generate toolchain from abi <name> (default is $ABI)"
-    echo "  --build-out=<path> set Android build out directory"
-    echo "  --force-download   force a download and unpacking of the toolchain sources"
-    echo "  --force-build      force a rebuild of the sources"
+    echo "options (defaults are within brackets):"
+    echo ""
+    echo "  --help                   print this message"
+    echo "  --gcc-version=<version>  select GCC version [$GCC_VERSION]"
+    echo "  --gdb-version=<version>  select GDB version [$GDB_VERSION]"
+    echo "  --package=<file>         specify download source package"
+    echo "  --platform=<name>        generate toolchain from platform <name> [$PLATFORM]"
+    echo "  --abi=<name>             generate toolchain from abi <name> [$ABI]"
+    echo "  --release=<name>         specify prebuilt release name [$RELEASE]"
+    echo "  --build-out=<path>       set temporary build out directory [/tmp/<random>]"
+    echo "  --force-download         force a download and unpacking of the toolchain sources"
+    echo "  --force-build            force a rebuild of the sources"
     echo ""
     exit 0
 fi
@@ -105,17 +136,60 @@
     run ()
     {
         echo "##### NEW COMMAND"
-        echo $@
-        $@ 2>&1 | tee $TMPLOG
+        echo "$@"
+        $@ 2>&1
+    }
+    log ()
+    {
+        echo "LOG: $@"
     }
 else
-    echo "To follow build long, please use in another terminal: tail -F $TMPLOG"
+    echo "To follow build, please use in another terminal: tail -F $TMPLOG"
     run ()
     {
         echo "##### NEW COMMAND" >> $TMPLOG
         echo "$@" >> $TMPLOG
-        $@ 1>$TMPLOG 2>&1
+        $@ >>$TMPLOG 2>&1
     }
+    log ()
+    {
+        echo "$@" > /dev/null
+    }
+fi
+
+if [ -n "$OPTION_GCC_VERSION" ] ; then
+    GCC_VERSION="$OPTION_GCC_VERSION"
+    log "Using gcc version $GCC_VERSION"
+else
+    log "Using default gcc version $GCC_VERSION"
+fi
+
+if [ -n "$OPTION_GDB_VERSION" ] ; then
+    GDB_VERSION="$OPTION_GDB_VERSION"
+    log "Using gdb version $GDB_VERSION"
+else
+    log "Using default gdb version $GDB_VERSION"
+fi
+
+if [ -n "$OPTION_RELEASE" ] ; then
+    RELEASE="$RELEASE"
+    log "Using toolchain release name '$RELEASE'"
+else
+    log "Using default toolchain name '$RELEASE'"
+fi
+
+if [ -n "$OPTION_PACKAGE" ] ; then
+    if [ ! -f "$OPTION_PACKAGE" ] ; then
+        echo "Package is not a file: $OPTION_PACKAGE"
+        exit 1
+    fi
+fi
+
+if [ -n "$OPTION_BUILD_OUT" ] ; then
+    BUILD_OUT=$OPTION_BUILD_OUT
+    log "Using specific build out directory: $BUILD_OUT"
+else
+    log "Using default random build out directory: $BUILD_OUT"
 fi
 
 ANDROID_NDK_ROOT=`cd $ANDROID_NDK_ROOT && pwd`
@@ -123,23 +197,14 @@
 ANDROID_PLATFORMS_ROOT=$ANDROID_NDK_ROOT/build/platforms
 
 # where all generated files will be placed
-OUT=$ANDROID_NDK_ROOT/out/$TOOLCHAIN_NAME
+OUT=$BUILD_OUT
 PACKAGE_OUT=$OUT/packages
 TIMESTAMP_OUT=$OUT/timestamps
 
 # where the sysroot is located
+ANDROID_TOOLCHAIN_SRC=$OUT/src
 ANDROID_SYSROOT=$ANDROID_NDK_ROOT/build/platforms/$PLATFORM/arch-$ABI
 
-# where the toolchain binaries will be placed
-ANDROID_TOOLCHAIN_OUT=$OUT/toolchain
-ANDROID_TOOLCHAIN_SRC=$ANDROID_TOOLCHAIN_OUT/src
-ANDROID_TOOLCHAIN_BUILD=$ANDROID_TOOLCHAIN_OUT/build
-
-# where the gdbserver binaries will be placed
-ANDROID_GDBSERVER_OUT=$OUT/gdbserver
-ANDROID_GDBSERVER_BUILD=$ANDROID_GDBSERVER_OUT/build
-ANDROID_GDBSERVER_DEST=$ANDROID_SYSROOT/usr/bin
-
 # Let's check that we have a working md5sum here
 A_MD5=`echo "A" | md5sum | cut -d' ' -f1`
 if [ "$A_MD5" != "bf072e9119077b4e76437a93986787ef" ] ; then
@@ -190,11 +255,6 @@
     fi
 }
 
-TOOLCHAIN_SRC=$ANDROID_TOOLCHAIN_SRC
-TOOLCHAIN_BUILD=$ANDROID_TOOLCHAIN_BUILD
-TOOLCHAIN_PREFIX=$ANDROID_NDK_ROOT/build/prebuilt/$HOST_TAG/$TOOLCHAIN_NAME
-
-GDBSERVER_BUILD=$ANDROID_GDBSERVER_BUILD
 
 timestamp_check ()
 {
@@ -218,8 +278,9 @@
 }
 
 # this function will be used to download and verify a toolchain
-# package 
-# $1: directory name under build/archive  (e.g. 'android-toolchain')
+# package.
+#
+# $1: directory name under build/archive  (e.g. 'toolchain')
 #
 download_package ()
 {
@@ -315,10 +376,10 @@
         echo "Unpack  : $1 sources"
         echo "          from $SRCPKG"
         echo "          into $SRCDIR"
-        rm -rf $SRCDIR
-        mkdir -p $SRCDIR
+        run rm -rf $SRCDIR
+        run mkdir -p $SRCDIR
         TARFLAGS=xjf
-        if [ $VERBOSE = yes ]; then
+        if [ $VERBOSE2 = yes ]; then
           TARFLAGS="v$TARFLAGS"
         fi
         run tar $TARFLAGS $SRCPKG -C $SRCDIR
@@ -350,8 +411,13 @@
     exit 2
 fi
 
-download_package toolchain
-unpack_package   toolchain $ANDROID_TOOLCHAIN_SRC
+if [ -n "$OPTION_PACKAGE" ] ; then
+    PKG_toolchain="$OPTION_PACKAGE"
+else
+    download_package toolchain
+fi
+
+unpack_package toolchain $ANDROID_TOOLCHAIN_SRC
 
 # remove all info files from the unpacked toolchain sources
 # they create countless little problems during the build
@@ -360,119 +426,206 @@
 #
 find $ANDROID_TOOLCHAIN_SRC -type f -a -name "*.info" -print0 | xargs -0 rm -f
 
-# configure the toolchain
-if ! timestamp_check toolchain configure; then
-    echo "Configure: toolchain build"
-    mkdir -p $TOOLCHAIN_BUILD &&
-    cd $TOOLCHAIN_BUILD &&
-    export CFLAGS="$HOST_CFLAGS" &&
-    export LDFLAGS="$HOST_LDFLAGS" && run \
-    $TOOLCHAIN_SRC/configure --target=arm-eabi \
-                             --disable-nls \
-                             --prefix=$TOOLCHAIN_PREFIX \
-                             --with-sysroot=$ANDROID_SYSROOT
 
-    if [ $? != 0 ] ; then
-        echo "Error while trying to configure toolchain build. See $TMPLOG"
-        exit 1
+# Setup variables to properly build a new toolchain
+# $1: toolchain name, e.g. arm-eabi-4.2.1
+build_toolchain ()
+{
+    TOOLCHAIN_NAME=$1
+
+    # where the toolchain is going to be built
+    TOOLCHAIN_BUILD=$OUT/$TOOLCHAIN_NAME
+
+    # where the gdbserver binaries will be placed
+    GDBSERVER_BUILD=$TOOLCHAIN_BUILD/gdbserver
+
+    TOOLCHAIN_SRC=$ANDROID_TOOLCHAIN_SRC
+    TOOLCHAIN_PREFIX=$OUT/build/prebuilt/$HOST_TAG/$TOOLCHAIN_NAME
+    TOOLCHAIN_LICENSES=$ANDROID_NDK_ROOT/build/tools/toolchain-licenses
+
+    # configure the toolchain
+    if ! timestamp_check $TOOLCHAIN_NAME configure; then
+        echo "Configure: $TOOLCHAIN_NAME toolchain build"
+        # Old versions of the toolchain source packages placed the
+        # configure script at the top-level. Newer ones place it under
+        # the build directory though. Probe the file system to check
+        # this.
+        BUILD_SRCDIR=$TOOLCHAIN_SRC/build
+        if [ ! -d $BUILD_SRCDIR ] ; then
+            BUILD_SRCDIR=$TOOLCHAIN_SRC
+        fi
+        OLD_ABI="$ABI"
+        OLD_CFLAGS="$CFLAGS"
+        OLD_LDFLAGS="$LDFLAGS"
+        mkdir -p $TOOLCHAIN_BUILD &&
+        cd $TOOLCHAIN_BUILD &&
+        export ABI="32" &&  # needed to build a 32-bit gmp
+        export CFLAGS="$HOST_CFLAGS" &&
+        export LDFLAGS="$HOST_LDFLAGS" && run \
+        $BUILD_SRCDIR/configure --target=arm-eabi \
+                                --disable-nls \
+                                --prefix=$TOOLCHAIN_PREFIX \
+                                --with-sysroot=$ANDROID_SYSROOT \
+                                --with-binutils-version=$BINUTILS_VERSION \
+                                --with-gcc-version=$GCC_VERSION \
+                                --with-gdb-version=$GDB_VERSION
+        if [ $? != 0 ] ; then
+            echo "Error while trying to configure toolchain build. See $TMPLOG"
+            exit 1
+        fi
+        ABI="$OLD_ABI"
+        CFLAGS="$OLD_CFLAGS"
+        LDFLAGS="$OLD_LDFLAGS"
+        timestamp_set   $TOOLCHAIN_NAME configure
+        timestamp_force $TOOLCHAIN_NAME build
     fi
-    timestamp_set   toolchain configure
-    timestamp_force toolchain build
-fi
 
-# build the toolchain
-if ! timestamp_check toolchain build ; then
-    echo "Building : toolchain [this can take a long time]."
-    cd $TOOLCHAIN_BUILD &&
-    export CFLAGS="$HOST_CFLAGS" &&
-    export LDFLAGS="$HOST_LDFLAGS" &&
-    run make -j$JOBS
-    if [ $? != 0 ] ; then
-        echo "Error while building toolchain. See $TMPLOG"
-        exit 1
+    # build the toolchain
+    if ! timestamp_check $TOOLCHAIN_NAME build ; then
+        echo "Building : $TOOLCHAIN_NAME toolchain [this can take a long time]."
+        OLD_CFLAGS="$CFLAGS"
+        OLD_LDFLAGS="$LDFLAGS"
+        OLD_ABI="$ABI"
+        cd $TOOLCHAIN_BUILD &&
+        export CFLAGS="$HOST_CFLAGS" &&
+        export LDFLAGS="$HOST_LDFLAGS" &&
+        export ABI="32" &&
+        run make -j$JOBS
+        if [ $? != 0 ] ; then
+            echo "Error while building toolchain. See $TMPLOG"
+            exit 1
+        fi
+        CFLAGS="$OLD_CFLAGS"
+        LDFLAGS="$OLD_LDFLAGS"
+        ABI="$OLD_ABI"
+        timestamp_set   $TOOLCHAIN_NAME build
+        timestamp_force $TOOLCHAIN_NAME install
     fi
-    timestamp_set   toolchain build
-    timestamp_force toolchain install
-fi
 
-# install the toolchain to its final location
-if ! timestamp_check toolchain install ; then
-    echo "Install  : toolchain binaries."
-    cd $TOOLCHAIN_BUILD &&
-    run make install
-    if [ $? != 0 ] ; then
-        echo "Error while installing toolchain. See $TMPLOG"
-        exit 1
+    # install the toolchain to its final location
+    if ! timestamp_check $TOOLCHAIN_NAME install ; then
+        echo "Install  : $TOOLCHAIN_NAME toolchain binaries."
+        cd $TOOLCHAIN_BUILD &&
+        run make install
+        if [ $? != 0 ] ; then
+            echo "Error while installing toolchain. See $TMPLOG"
+            exit 1
+        fi
+        # don't forget to copy the GPL and LGPL license files
+        cp -f $TOOLCHAIN_LICENSES/COPYING $TOOLCHAIN_LICENSES/COPYING.LIB $TOOLCHAIN_PREFIX
+        # remove some unneeded files
+        rm -f $TOOLCHAIN_PREFIX/bin/*-gccbug
+        rm -rf $TOOLCHAIN_PREFIX/man $TOOLCHAIN_PREFIX/info
+        # strip binaries to reduce final package size
+        strip $TOOLCHAIN_PREFIX/bin/*
+        strip $TOOLCHAIN_PREFIX/arm-eabi/bin/*
+        strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/cc1
+        strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/cc1plus
+        strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/collect2
+        timestamp_set   $TOOLCHAIN_NAME install
+        timestamp_force $TOOLCHAIN_NAME-gdbserver configure
     fi
-    # don't forget to copy the GPL and LGPL license files
-    cp -f $TOOLCHAIN_SRC/COPYING $TOOLCHAIN_SRC/COPYING.LIB $TOOLCHAIN_PREFIX
-    # remove some unneeded files
-    rm -f $TOOLCHAIN_PREFIX/bin/*-gccbug
-    rm -rf $TOOLCHAIN_PREFIX/man $TOOLCHAIN_PREFIX/info
-    # strip binaries to reduce final package size
-    strip $TOOLCHAIN_PREFIX/bin/*
-    strip $TOOLCHAIN_PREFIX/arm-eabi/bin/*
-    strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/cc1
-    strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/cc1plus
-    strip $TOOLCHAIN_PREFIX/libexec/gcc/*/*/collect2
-    timestamp_set   toolchain install
-    timestamp_force gdbserver configure
-fi
 
-# configure the gdbserver build now
-if ! timestamp_check gdbserver configure; then
-    echo "Configure: gdbserver build."
-    mkdir -p $GDBSERVER_BUILD
-    cd $GDBSERVER_BUILD &&
-    CFLAGS="-g -O2 -static -mandroid -I$ANDROID_SYSROOT/usr/include" \
-    LDFLAGS= \
-    CC="$TOOLCHAIN_PREFIX/bin/arm-eabi-gcc" \
-    run $TOOLCHAIN_SRC/gdb-6.6/gdb/gdbserver/configure \
-    --host=arm-eabi-linux \
-    --with-sysroot=$ANDROID_SYSROOT
-    if [ $? != 0 ] ; then
-        echo "Could not configure gdbserver build. See $TMPLOG"
-        exit 1
+    # configure the gdbserver build now
+    if ! timestamp_check $TOOLCHAIN_NAME-gdbserver configure; then
+        echo "Configure: $TOOLCHAIN_NAME gdbserver build."
+        # Old toolchain source packages placed the gdb sources at
+        # the top-level, while newer ones place them under the 'gdb'
+        # directory. Probe the filesystem to check which one is appropriate.
+        GDB_SRCDIR=$TOOLCHAIN_SRC/gdb/gdb-$GDB_VERSION
+        if [ ! -d $GDB_SRCDIR ] ; then
+            GDB_SRCDIR=$TOOLCHAIN_SRC/gdb-$GDB_VERSION
+        fi
+        mkdir -p $GDBSERVER_BUILD
+        OLD_CC="$CC"
+        OLD_CFLAGS="$CFLAGS"
+        OLD_LDFLAGS="$LDFLAGS"
+        cd $GDBSERVER_BUILD &&
+        export CC="$TOOLCHAIN_PREFIX/bin/arm-eabi-gcc" &&
+        export CFLAGS="-g -O2 -static -mandroid"  &&
+        export LDFLAGS= &&
+        run $GDB_SRCDIR/gdb/gdbserver/configure \
+        --host=arm-eabi-linux \
+        --with-sysroot=$ANDROID_SYSROOT
+        if [ $? != 0 ] ; then
+            echo "Could not configure gdbserver build. See $TMPLOG"
+            exit 1
+        fi
+        CC="$OLD_CC"
+        CFLAGS="$OLD_CFLAGS"
+        LDFLAGS="$OLD_LDFLAGS"
+        timestamp_set   $TOOLCHAIN_NAME-gdbserver configure
+        timestamp_force $TOOLCHAIN_NAME-gdbserver build
     fi
-    timestamp_set   gdbserver configure
-    timestamp_force gdbserver build
-fi
 
-# build gdbserver
-if ! timestamp_check gdbserver build; then
-    echo "Building : gdbserver."
-    cd $GDBSERVER_BUILD &&
-    run make -j$JOBS
-    if [ $? != 0 ] ; then
-        echo "Could not build gdbserver. See $TMPLOG"
-        exit 1
+    # build gdbserver
+    if ! timestamp_check $TOOLCHAIN_NAME-gdbserver build; then
+        echo "Building : $TOOLCHAIN_NAME gdbserver."
+        cd $GDBSERVER_BUILD &&
+        run make -j$JOBS
+        if [ $? != 0 ] ; then
+            echo "Could not build $TOOLCHAIN_NAME gdbserver. See $TMPLOG"
+            exit 1
+        fi
+        timestamp_set   $TOOLCHAIN_NAME-gdbserver build
+        timestamp_force $TOOLCHAIN_NAME-gdbserver install
     fi
-    timestamp_set   gdbserver build
-    timestamp_force gdbserver install
-fi
 
-# install gdbserver
+    # install gdbserver
+    #
+    # note that we install it in the toolchain bin directory
+    # not in $SYSROOT/usr/bin
+    #
+    if ! timestamp_check $TOOLCHAIN_NAME-gdbserver install; then
+        echo "Install  : $TOOLCHAIN_NAME gdbserver."
+        DEST=$TOOLCHAIN_PREFIX/bin
+        mkdir -p $DEST &&
+        $TOOLCHAIN_PREFIX/bin/arm-eabi-strip $GDBSERVER_BUILD/gdbserver &&
+        run cp -f $GDBSERVER_BUILD/gdbserver $DEST/gdbserver
+        if [ $? != 0 ] ; then
+            echo "Could not install gdbserver. See $TMPLOG"
+            exit 1
+        fi
+        timestamp_set   $TOOLCHAIN_NAME-gdbserver install
+        timestamp_force package toolchain
+    fi
+}
+
+# Look at the toolchains available from the source package
 #
-# note that we install it in the toolchain bin directory
-# not in $SYSROOT/usr/bin
+# The old source tarball only contained gcc 4.2.1, the new
+# ones contain multiple toolchains
 #
-if ! timestamp_check gdbserver install; then
-    echo "Install  : gdbserver."
-    DEST=$TOOLCHAIN_PREFIX/bin
-    mkdir -p $DEST &&
-    $TOOLCHAIN_PREFIX/bin/arm-eabi-strip $GDBSERVER_BUILD/gdbserver &&
-    run cp -f $GDBSERVER_BUILD/gdbserver $DEST/gdbserver
-    if [ $? != 0 ] ; then
-        echo "Could not install gdbserver. See $TMPLOG"
-        exit 1
-    fi
-    timestamp_set   gdbserver install
-    timestamp_force package toolchain
+if [ -d $ANDROID_TOOLCHAIN_SRC/gcc-4.2.1 ] ; then
+    # An old toolchain source package
+    ANDROID_TOOLCHAIN_LIST=arm-eabi-4.2.1
+else
+    ANDROID_TOOLCHAIN_LIST="arm-eabi-4.2.1 arm-eabi-4.4.0"
 fi
 
+for _toolchain in $ANDROID_TOOLCHAIN_LIST; do
+    if timestamp_check toolchain build; then
+        timestamp_force ${_toolchain} configure
+        timestamp_force ${_toolchain}-gdbserver configure
+    fi
+    # Gcc 4.2.1 needs binutils 2.17
+    if [ ${_toolchain} = arm-eabi-4.2.1 ] ; then
+        GCC_VERSION=4.2.1
+        BINUTILS_VERSION=2.17
+    else
+        GCC_VERSION=4.4.0
+        BINUTILS_VERSION=2.19
+    fi
+    build_toolchain ${_toolchain}
+done
+
 # package the toolchain
-TOOLCHAIN_TARBALL=/tmp/prebuilt-$TOOLCHAIN_NAME-$HOST_TAG.tar.bz2
+TOOLCHAIN_TARBALL=/tmp/android-ndk-prebuilt-$RELEASE-$HOST_TAG.tar.bz2
 if ! timestamp_check package toolchain; then
+    echo "Cleanup  : Removing unuseful stuff"
+    rm -rf $OUT/build/prebuilt/$HOST_TAG/*/share
+    find $OUT/build/prebuilt/$HOST_TAG -name "libiberty.a" | xargs rm -f
+    find $OUT/build/prebuilt/$HOST_TAG -name "libarm-elf-linux-sim.a" | xargs rm -f
     echo "Package  : $HOST_ARCH toolchain binaries"
     echo "           into $TOOLCHAIN_TARBALL"
     cd $ANDROID_NDK_ROOT &&
@@ -480,15 +633,27 @@
     if [ $VERBOSE = yes ] ; then
       TARFLAGS="v$TARFLAGS"
     fi
-    run tar $TARFLAGS $TOOLCHAIN_TARBALL build/prebuilt/$HOST_TAG/$TOOLCHAIN_NAME
+    TOOLCHAIN_SRC_DIRS=
+    for _toolchain in $ANDROID_TOOLCHAIN_LIST; do
+        TOOLCHAIN_SRC_DIRS="$TOOLCHAIN_SRC_DIRS build/prebuilt/$HOST_TAG/${_toolchain}"
+    done
+    run tar $TARFLAGS $TOOLCHAIN_TARBALL -C $OUT $TOOLCHAIN_SRC_DIRS
     if [ $? != 0 ] ; then
         echo "ERROR: Cannot package prebuilt toolchain binaries. See $TMPLOG"
         exit 1
     fi
     timestamp_set package toolchain
+    echo "prebuilt toolchain is in $TOOLCHAIN_TARBALL"
 else
     echo "prebuilt toolchain is in $TOOLCHAIN_TARBALL"
 fi
 
+if [ -z "$OPTION_BUILD_OUT" ] ; then
+    echo "Cleaning temporary directory $OUT"
+    rm -rf $OUT
+else
+    echo "Don't forget to clean build directory $OUT"
+fi
+
 echo "Done."
 rm -f $TMPLOG
diff --git a/ndk/build/tools/download-toolchain-sources.sh b/ndk/build/tools/download-toolchain-sources.sh
new file mode 100755
index 0000000..38baf08
--- /dev/null
+++ b/ndk/build/tools/download-toolchain-sources.sh
@@ -0,0 +1,202 @@
+#!/bin/sh
+#
+# Copyright (C) 2009 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.
+#
+#  This shell script is used to download the sources of the Android NDK toolchain
+#  from the git server at android.git.kernel.org and package them in a nice tarball
+#  that can later be used with the 'built-toolchain.sh' script.
+#
+
+# include common function and variable definitions
+. `dirname $0`/../core/ndk-common.sh
+
+OPTION_HELP=no
+OPTION_RELEASE=
+OPTION_GIT=
+OPTION_BRANCH=
+
+# the default release name (use today's date)
+RELEASE=`date +%Y%m%d`
+
+# the default branch to use
+BRANCH=eclair
+
+GITCMD=git
+
+VERBOSE=no
+VERBOSE2=no
+
+for opt do
+    optarg=`expr "x$opt" : 'x[^=]*=\(.*\)'`
+    case "$opt" in
+    --help|-h|-\?) OPTION_HELP=yes
+    ;;
+    --branch=*)
+        OPTION_BRANCH="$optarg"
+        ;;
+    --git=*)
+        OPTION_GIT="$optarg"
+        ;;
+    --verbose)
+        if [ "$VERBOSE" = "yes" ] ; then
+            VERBOSE2=yes
+        else
+            VERBOSE=yes
+        fi
+        ;;
+    --release=*)
+        OPTION_RELEASE=$optarg
+        ;;
+    *)
+        echo "unknown option '$opt', use --help"
+        exit 1
+    esac
+done
+
+if [ $OPTION_HELP = "yes" ] ; then
+    echo "Download the NDK toolchain sources from android.git.kernel.org and package them."
+    echo "You will need to run this script before being able to rebuild the NDK toolchain"
+    echo "binaries from scratch with build/tools/build-toolchain.sh"
+    echo ""
+    echo "options (defaults in brackets):"
+    echo ""
+    echo "  --help               print this message"
+    echo "  --branch=<name>      specify release branch [$BRANCH]"
+    echo "  --release=<name>     specify release name [$RELEASE]"
+    echo "  --git=<executable>   use this version of the git tool [$GITCMD]"
+    echo "  --verbose            increase verbosity"
+    echo ""
+    exit 0
+fi
+
+TMPLOG=/tmp/android-ndk-download-toolchain-$$.log
+rm -rf $TMPLOG
+
+if [ $VERBOSE = yes ] ; then
+    run ()
+    {
+        echo "##### NEW COMMAND"
+        echo $@
+        $@ 2>&1 | tee $TMPLOG
+    }
+    log ()
+    {
+        echo "LOG: $@"
+    }
+else
+    echo "To follow download, please use in another terminal: tail -F $TMPLOG"
+    run ()
+    {
+        echo "##### NEW COMMAND" >> $TMPLOG
+        echo "$@" >> $TMPLOG
+        $@ 1>$TMPLOG 2>&1
+    }
+    log ()
+    {
+        echo "$@" > /dev/null
+    }
+fi
+
+if [ -n "$OPTION_RELEASE" ] ; then
+    RELEASE="$OPTION_RELEASE"
+    log "Using release name $RELEASE"
+else
+    log "Using default release name $RELEASE"
+fi
+
+# Check that 'git' works
+if [ -n "$OPTION_GIT" ] ; then
+    GITCMD="$OPTION_GIT"
+    log "Using git tool command: '$GITCMD'"
+else
+    log "Using default git tool command."
+fi
+$GITCMD --version > /dev/null 2>&1
+if [ $? != 0 ] ; then
+    echo "The git tool doesn't seem to work. Please check $GITCMD"
+    exit 1
+fi
+log "Git seems to work ok."
+
+if [ -n "$OPTION_BRANCH" ] ; then
+    BRANCH="$OPTION_BRANCH"
+    log "Using branch named $BRANCH"
+else
+    log "Using default branch name $BRANCH"
+fi
+
+# Create temp directory where everything will be copied
+#
+PKGNAME=android-ndk-toolchain-$RELEASE
+TMPDIR=/tmp/$PKGNAME
+log "Creating temporary directory $TMPDIR"
+rm -rf $TMPDIR && mkdir $TMPDIR
+if [ $? != 0 ] ; then
+    echo "Could not create temporary directory: $TMPDIR"
+fi
+
+# prefix used for all clone operations
+GITPREFIX=git://android.git.kernel.org/toolchain
+
+toolchain_clone ()
+{
+    echo "downloading sources for toolchain/$1"
+    log "cloning $GITPREFIX/$1.git"
+    run git clone $GITPREFIX/$1.git $1
+    if [ $? != 0 ] ; then
+        echo "Could not clone $GITPREFIX/$1.git ?"
+        exit 1
+    fi
+    log "checking out $BRANCH branch of $1.git"
+    cd $1
+    run git checkout -b $BRANCH origin/$BRANCH
+    if [ $? != 0 ] ; then
+        echo "Could not checkout $1 ?"
+        exit 1
+    fi
+    # get rid of .git directory, we won't need it.
+    cd ..
+    log "getting rid of .git directory for $1."
+    run rm -rf $1/.git
+}
+
+
+cd $TMPDIR
+toolchain_clone binutils
+toolchain_clone build
+toolchain_clone gcc
+toolchain_clone gdb
+toolchain_clone gmp
+#toolchain_clone gold  # not sure about this one !
+toolchain_clone mpfr
+
+# We only keep one version of gcc and binutils
+
+# we clearly don't need this
+log "getting rid of obsolete gcc 4.3.1 sources"
+rm -rf $TMPDIR/gcc/gcc-4.3.1
+
+# create the package
+PACKAGE=/tmp/$PKGNAME.tar.bz2
+echo "Creating package archive $PACKAGE"
+cd `dirname $TMPDIR`
+run tar cjvf $PACKAGE -C /tmp/$PKGNAME .
+if [ $? != 0 ] ; then
+    echo "Could not package toolchain source archive ?. See $TMPLOG"
+    exit 1
+fi
+
+echo "Toolchain sources downloaded and packaged succesfully at $PACKAGE"
+rm -f $TMPLOG
diff --git a/ndk/build/tools/toolchain-licenses/COPYING b/ndk/build/tools/toolchain-licenses/COPYING
new file mode 100644
index 0000000..623b625
--- /dev/null
+++ b/ndk/build/tools/toolchain-licenses/COPYING
@@ -0,0 +1,340 @@
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+     51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+		    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+			    NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
+
+	    How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year  name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/ndk/build/tools/toolchain-licenses/COPYING.LIB b/ndk/build/tools/toolchain-licenses/COPYING.LIB
new file mode 100644
index 0000000..2d2d780
--- /dev/null
+++ b/ndk/build/tools/toolchain-licenses/COPYING.LIB
@@ -0,0 +1,510 @@
+
+                  GNU LESSER GENERAL PUBLIC LICENSE
+                       Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+	51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+                            Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations
+below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+  To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it
+becomes a de-facto standard.  To achieve this, non-free programs must
+be allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+                  GNU LESSER GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control
+compilation and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+  6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
+
+    c) Accompany the work with a written offer, valid for at least
+    three years, to give the same user the materials specified in
+    Subsection 6a, above, for a charge no more than the cost of
+    performing this distribution.
+
+    d) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    e) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply, and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License
+may add an explicit geographical distribution limitation excluding those
+countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+                            NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+                     END OF TERMS AND CONDITIONS
+
+           How to Apply These Terms to Your New Libraries
+
+  If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change.  You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms
+of the ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.
+It is safest to attach them to the start of each source file to most
+effectively convey the exclusion of warranty; and each file should
+have at least the "copyright" line and a pointer to where the full
+notice is found.
+
+
+    <one line to give the library's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+    version 2.1 of the License, or (at your option) any later version.
+
+    This library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public
+    License along with this library; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or
+your school, if any, to sign a "copyright disclaimer" for the library,
+if necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
+  library `Frob' (a library for tweaking knobs) written by James
+  Random Hacker.
+
+  <signature of Ty Coon>, 1 April 1990
+  Ty Coon, President of Vice
+
+That's all there is to it!
+
+
diff --git a/ndk/docs/ANDROID-MK.TXT b/ndk/docs/ANDROID-MK.TXT
index babcd95..622806a 100644
--- a/ndk/docs/ANDROID-MK.TXT
+++ b/ndk/docs/ANDROID-MK.TXT
@@ -209,14 +209,25 @@
 
 TARGET_PLATFORM
     Name of the target Android platform when this Android.mk is parsed.
-    For now, only 'android-3' is supported, which corresponds to the
-    Android 1.5 platform.
+    For example, 'android-3' correspond to Android 1.5 system images. For
+    a complete list of platform names and corresponding Android system
+    images, read docs/STABLE-APIS.TXT.
 
 TARGET_ARCH_ABI
     Name of the target CPU+ABI when this Android.mk is parsed.
-    For now, only 'arm' is supported, which really means the following:
+    Two values are supported at the moment:
 
-       ARMv5TE or higher CPU, with 'softfloat' floating point support
+       armeabi
+            For Armv5TE
+
+       armeabi-v7a
+
+    NOTE: Up to Android NDK 1.6_r1, this variable was simply defined
+          as 'arm'. However, the value has been redefined to better
+          match what is used internally by the Android platform.
+
+    For more details about architecture ABIs and corresponding
+    compatibility issues, please read docs/CPU-ARCH-ABIS.TXT
 
     Other target ABIs will be introduced in future releases of the NDK
     and will have a different name. Note that all ARM-based ABIs will
@@ -228,8 +239,9 @@
     as $(TARGET_PLATFORM)-$(TARGET_ARCH_ABI) and is useful when you want
     to test against a specific target system image for a real device.
 
-    By default, this will be 'android-3-arm'
+    By default, this will be 'android-3-armeabi'
 
+    (Up to Android NDK 1.6_r1, this used to be 'android-3-arm' by default)
 
 NDK-provided function macros:
 - - - - - - - - - - - - - - -
diff --git a/ndk/docs/APPLICATION-MK.TXT b/ndk/docs/APPLICATION-MK.TXT
index b790ac6..0a11cca 100644
--- a/ndk/docs/APPLICATION-MK.TXT
+++ b/ndk/docs/APPLICATION-MK.TXT
@@ -114,6 +114,25 @@
     to point to an alternate build script. A non-absolute path will always
     be interpreated as relative to the NDK's top-level directory.
 
+APP_ABI
+    By default, the NDK build system will generate machine code for the
+    'armeabi' ABI. This corresponds to an ARMv5TE based CPU with software
+    floating point operations. You can use APP_ABI to select a different
+    ABI.
+
+    For example, to support hardware FPU instructions on ARMv7 based devices,
+    use:
+
+        APP_ABI := armeabi-v7a
+
+    Or to support both ARMv5TE and ARMv7 based devices, use:
+
+        APP_ABI := armeabi armeabi-v7a
+
+    For the list of all supported ABIs and details about their usage / limitations
+    please read docs/CPU-ARCH-ABIS.TXT
+
+
 A trivial Application.mk file would be:
 
 -------------- cut here -------------------------
diff --git a/ndk/docs/CHANGES.TXT b/ndk/docs/CHANGES.TXT
index 4862be6..656b1b4 100644
--- a/ndk/docs/CHANGES.TXT
+++ b/ndk/docs/CHANGES.TXT
@@ -7,13 +7,60 @@
 
 - Fix build/host-setup.sh to execute as a Bourne shell script (again)
 
-- Make target shared libraries portable to systems that don't use the exact same
-  toolchain (GCC 4.2.1) .
+- Make target shared libraries portable to systems that don't use the exact
+  same toolchain. This is needed due to differences in libgcc.a implementations
+  between gcc 4.2.1 and 4.4.0. This change ensures that generated machine
+  code doesn't depend on helper functions provided by the Android platform
+  runtime.
 
-- Actually use the awk version detected by host-setup.sh during the build.
+
+IMPORTANT CHANGES:
+
+- Support for hardware FPU. This is through the new 'armeabi-v7a' ABI
+  corresponding to ARMv7-a class devices.
+
+  Note that by default, the NDK will still generate machine code for the old
+  'armeabi' ABI (ARMv5TE based) which is supported by all official Android
+  system images to date.
+
+  You will need to define APP_ABI in your Application.mk file to change this.
+  See docs/APPLICATION-MK.TXT
+
+  More details about ABIs is now available in docs/CPU-ARCH-ABIS.TXT
+
+- GCC 4.4.0 is now used by default by the NDK. It generates better code than
+  GCC 4.2.1, which was used in previous releases. However, the compiler's C++
+  frontend is also a lot more pedantic regarding certain template constructs
+  and will even refuse to build some of them.
+
+  For this reason, the NDK also comes with GCC 4.2.1 prebuilt binaries, and
+  you can force its usage by defining NDK_TOOLCHAIN in your environment to
+  the value 'arm-eabi-4.2.1'. For example:
+
+        export NDK_TOOLCHAIN=arm-eabi-4.2.1
+        make APP=hello-jni
+
+  Note that only the 'armeabi' ABI is supported by the 4.2.1 toolchain. We
+  recommend switching to 4.2.1 *only* if you encounter compilation problems
+  with 4.4.0.
+
+  The 4.2.1 prebuilt binaries will probably be removed from a future release
+  of the Android NDK, we thus *strongly* invite you to fix your code if such
+  problems happen.
+
+- Support for OpenGL ES 2.0. This is through the new 'android-5' platform to
+  reflect Android 2.0 (previously the Eclair branch). This is merely a copy
+  of android-4 that also includes headers and libraries for OpenGL ES 2.0.
+
+  See the sample named "hello-gl2" for a *very* basic demonstration. Note that
+  OpenGL ES 2.0 is currently *not* available from Java, and must be used
+  through native code exclusively.
+
 
 OTHER FIXES & CHANGES:
 
+- Actually use the awk version detected by host-setup.sh during the build.
+
 - Added --prebuilt-ndk=FILE option to build/tools/make-release.sh script to
   package a new experimental NDK package archive from the current source tree
   plus the toolchain binaries of an existing NDK release package. E.g.:
@@ -33,6 +80,31 @@
   This change is to help people easily package experimental NDK releases to
   test and distribute fixes and improvements.
 
+- Remove bash-isms from build/tools/build-toolchain.sh. Now it's possible to
+  build it with the 'dash' shell on Debian-based systems (tested on Ubuntu 8.04)
+
+- Remove bash-ism from build/tools/build-ndk-sysroot.sh
+
+- Refresh C library headers for all platforms:
+
+    - make <endian.h> simply include <sys/endian.h>
+    - make <stdint.h> properly declare 64-bit integer types with a C99 compiler
+    - add missing <sys/types.h> to <strings.h>
+    - add GLibc-compatible macro aliases (st_atimensec, st_mtimensec and
+      st_ctimensec) to <stat.h>
+    - add missing declaration for tzset() in <time.h>
+
+- Added build/tools/download-toolchain-sources.sh, a script that allows you
+  to download the toolchain sources from the official open-source repository
+  at android.git.kernel.org and nicely package them into a tarball that can
+  later be used by build/tools/build-toolchain.sh to rebuild the prebuilt
+  binaries for your system.
+
+- Updated build/tools/build-toolchain.sh to support the tarballs generated
+  by download-toolchain-sources.sh with the --package=<file> option. This
+  also builds both gcc 4.2.1 and 4.4.0, adding support for armeabi-v7a to
+  gcc 4.4.0.
+
 -------------------------------------------------------------------------------
 android-ndk-1.6_r1
 
diff --git a/ndk/docs/CPU-ARCH-ABIS.TXT b/ndk/docs/CPU-ARCH-ABIS.TXT
new file mode 100644
index 0000000..d142db4
--- /dev/null
+++ b/ndk/docs/CPU-ARCH-ABIS.TXT
@@ -0,0 +1,225 @@
+Android Native CPU ABI Management
+
+
+Introduction:
+=============
+
+Every piece of native code generated with the Android NDK matches a given
+"Application Binary Interface" (ABI) that defines exactly how your
+application's machine code is expected to interact with the system at
+runtime.
+
+A typical ABI describes things in *excruciating* details, and will typically
+include the following information:
+
+  - the CPU instruction set that the machine code should use
+
+  - the endianess of memory stores and loads at runtime
+
+  - the format of executable binaries (shared libraries, programs, etc...)
+    and what type of content is allowed/supported in them.
+
+  - various conventions used to pass data between your code and
+    the system (e.g. how registers and/or the stack are used when functions
+    are called, alignment constraints, etc...)
+
+  - alignment and size constraints for enum types, structure fields and
+    arrays.
+
+  - the list of function symbols available to your machine code at runtime,
+    generally from a very specific selected set of libraries.
+
+This document lists the exact ABIs supported by the Android NDK and the
+official Android platform releases.
+
+
+I. Supported ABIs:
+==================
+
+Each supported ABI is identified by a unique name.
+
+
+ I.1. 'armeabi'
+ --------------
+
+  This is the name of an ABI for ARM-based CPUs that support *at* *least*
+  the ARMv5TE instruction set. Please refer to following documentation for
+  more details:
+
+   - ARM Architecture Reference manual                (a.k.a  ARMARM)
+   - Procedure Call Standard for the ARM Architecture (a.k.a. AAPCS)
+   - ELF for the ARM Architecture                     (a.k.a. ARMELF)
+   - ABI for the ARM Architecture                     (a.k.a. BSABI)
+   - Base Platform ABI for the ARM Architecture       (a.k.a. BPABI)
+   - C Library ABI for the ARM Architecture           (a.k.a. CLIABI)
+   - C++ ABI for the ARM Architecture                 (a.k.a. CPPABI)
+   - Runtime ABI for the ARM Architecture             (a.k.a. RTABI)
+
+   - ELF System V Application Binary Interface
+     (DRAFT - 24 April 2001)
+
+   - Generic C++ ABI  (http://www.codesourcery.com/public/cxx-abi/abi.html)
+
+  Note that the AAPCS standard defines 'EABI' as a moniker used to specify
+  a _family_ of similar but distinct ABIs. Android follows the little-endian
+  ARM GNU/Linux ABI as documented in the following document:
+
+      http://www.codesourcery.com/gnu_toolchains/arm/arm_gnu_linux_abi.pdf
+
+  With the exception that wchar_t is only one byte. This should not matter
+  in practice since wchar_t is simply *not* really supported by the Android
+  platform anyway.
+
+  This ABI does *not* support hardware-assisted floating point computations.
+  Instead, all FP operations are performed through software helper functions
+  that come from the compiler's libgcc.a static library.
+
+  Thumb (a.k.a. Thumb-1) instructions are supported. Note that the NDK
+  will generate thumb code by default, unless you define LOCAL_ARM_MODE
+  in your Android.mk (see docs/ANDROID-MK.TXT for all details).
+
+
+ I.2. 'armeabi-v7a'
+ ------------------
+
+  This is the name of another ARM-based CPU ABI that *extends* 'armeabi' to
+  include a few CPU instruction set extensions as described in the following
+  document:
+
+  - ARM Architecture v7-a Reference Manual
+
+  The instruction extensions supported by this Android-specific ABI are:
+
+     - The Thumb-2 instruction set extension.
+     - The VFP hardware FPU instructions.
+
+  More specifically, VFPv3-D32 is being used, which corresponds to 32
+  dedicated 64-bit floating point registers provided by the CPU.
+
+  Other extensions described by the v7-a ARM like Advanced SIMD (a.k.a. NEON)
+  or ThumbEE are optional to this ABI, which means that developers should
+  check *at* *runtime* whether the extensions are available and provide
+  alternative code paths if this is not the case.
+
+  (Just like one typically does on x86 systems to check/use MMX/SSE2/etc...
+   specialized instructions).
+
+  IMPORTANT NOTE: This ABI enforces that all double values are passed during
+  function calls in 'core' register pairs, instead of dedicated FP ones.
+  However, all internal computations can be performed with the FP registers
+  and will be greatly sped up.
+
+  This little constraint, while resulting in a slight decrease of
+  performance, ensures binary compatibility with all existing 'armeabi'
+  binaries.
+
+  IMPORTANT NOTE: The 'armeabi-v7a' machine code will *not* run on ARMv5 or
+                  ARMv6 based devices.
+
+
+II. Generating code for a specific ABI:
+=======================================
+
+By default, the NDK will generate machine code for the 'armeabi' ABI.
+You can however add the following line to your Application.mk to generate
+ARMv7-a compatible machine code instead:
+
+   APP_ABI := armeabi-v7a
+
+It is also possible to build machine code for *two* distinct ABIs by using:
+
+   APP_ABI := armeabi armeabi-v7a
+
+This will instruct the NDK to build two versions of your machine code: one for
+each ABI listed on this line. Both libraries will be copied to your application
+project path and will be ultimately packaged into your .apk.
+
+Such a package is called a "fat binary" in Android speak since it contains
+machine code for more than one CPU architecture. At installation time, the
+package manager will only unpack the most appropriate machine code for the
+target device. See below for details.
+
+
+
+III. ABI Management on the Android platform:
+============================================
+
+This section provides specific details about how the Android platform manages
+native code in application packages.
+
+
+  III.1. Native code in Application Packages:
+  -------------------------------------------
+
+    It is expected that shared libraries generated with the NDK are stored in
+    the final application package (.apk) at locations of the form:
+
+       lib/<abi>/lib<name>.so
+
+    Where <abi> is one of the ABI names listed in section II above, and <name>
+    is a name that can be used when loading the shared library from the VM
+    as in:
+
+        System.loadLibrary("<name>");
+
+    Since .apk files are just zip files, you can trivially list their content
+    with a command like:
+
+        unzip -l <apk>
+
+    to verify that the native shared libraries you want are indeed at the
+    proper location. You can also place native shared libraries at other
+    locations within the .apk, but they will be ignored by the system, or more
+    precisely by the steps described below; you will need to extract/install
+    them manually in your application.
+
+    In the case of a "fat" binary, two distinct libraries are thus placed in
+    the  .apk, for example at:
+
+        lib/armeabi/libfoo.so
+        lib/armeabi-v7a/libfoo.so
+
+
+  III.2. Android Platform ABI support:
+  ------------------------------------
+
+    The Android system knows at runtime which ABI(s) it supports. More
+    precisely, up to two build-specific system properties are used to
+    indicate:
+
+    - the 'primary' ABI for the device, corresponding to the machine
+      code used in the system image itself.
+
+    - an optional 'secondary' ABI, corresponding to another ABI that
+      is also supported by the system image.
+
+    For example, a typical ARMv5TE-based device would only define
+    the primary ABI as 'armeabi' and not define a secondary one.
+
+    On the other hand, a typical ARMv7-based device would define the
+    primary ABI to 'armeabi-v7a' and the secondary one to 'armeabi'
+    since it can run application native binaries generated for both
+    of them.
+
+
+  III.3. Automatic extraction of native code at install time:
+  -----------------------------------------------------------
+
+    When installing an application, the package manager service will scan
+    the .apk and look for any shared library of the form:
+
+         lib/<primary-abi>/lib<name>.so
+
+    If one is found, then it is copied under $APPDIR/lib/lib<name>.so,
+    where $APPDIR corresponds to the application's specific data directory.
+
+    If none is found, and a secondary ABI is defined, the service will
+    then scan for shared libraries of the form:
+
+        lib/<secondary-abi>/lib<name>.so
+
+    If anything is found, then it is copied under $APPDIR/lib/lib<name>.so
+
+    This mechanism ensures that the best machine code for the target
+    device is automatically extracted from the package at installation
+    time.
diff --git a/ndk/docs/STABLE-APIS.TXT b/ndk/docs/STABLE-APIS.TXT
index b78bf83..700bb88 100644
--- a/ndk/docs/STABLE-APIS.TXT
+++ b/ndk/docs/STABLE-APIS.TXT
@@ -26,7 +26,8 @@
 currently supported:
 
     android-3      -> Official Android 1.5 system images
-    android-4      -> Experimental Donut system images
+    android-4      -> Official Android 1.6 system images
+    android-5      -> Official Android 2.0 system images
 
 II. Android-3 Stable Native APIs:
 ---------------------------------
@@ -122,8 +123,7 @@
 ----------------------------------
 
 All the APIs listed below are available for developing native code that runs
-on the Donut experimental branch, which will be used to make the next official
-platform system images.
+on Android 1.6 system images and above,
 
 
 The OpenGL ES 1.x Library:
@@ -151,3 +151,35 @@
 it, see:
 
     http://jet.ro/visuals/san-angeles-observation/
+
+
+IV. Android-5 Stable Native APIs:
+----------------------------------
+
+All the APIs listed below are available for developing native code that runs
+on the Eclair experimental branch, which will be used to make the next official
+platform system images.
+
+
+The OpenGL ES 2.0 Library:
+--------------------------
+
+The standard OpenGL ES 2.0 headers <GLES2/gl2.h> and <GLES2/gl2ext.h> contain the
+declarations needed to perform OpenGL ES 2.0 rendering calls from native code.
+This includes the ability to define and use vertex and fragment shaders using the
+GLSL language.
+
+If you use them, your native module should link to /system/lib/libGLESv2.so
+as in:
+
+  LOCAL_LDLIBS := -lGLESv2.so
+
+Please note that, at the moment, native headers and libraries for the EGL APIs
+are *not* available. EGL is used to perform surface creation and flipping
+(instead of rendering). The corresponding operations must be performed in your
+VM application instead, for example with a GLSurfaceView, as described here:
+
+http://android-developers.blogspot.com/2009/04/introducing-glsurfaceview.html
+
+The "hello-gl2" sample application demonstrate this. It is used to draw a very
+simple triangle with the help of a vertex and fragment shaders.
diff --git a/samples/BusinessCard/Android.mk b/samples/BusinessCard/Android.mk
new file mode 100644
index 0000000..627cac1
--- /dev/null
+++ b/samples/BusinessCard/Android.mk
@@ -0,0 +1,13 @@
+LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_TAGS := samples
+
+# Only compile source java files in this apk.
+LOCAL_SRC_FILES := $(call all-java-files-under, src)
+
+LOCAL_PACKAGE_NAME := BusinessCard
+
+LOCAL_SDK_VERSION := current
+
+include $(BUILD_PACKAGE)
diff --git a/samples/BusinessCard/AndroidManifest.xml b/samples/BusinessCard/AndroidManifest.xml
new file mode 100644
index 0000000..186e249
--- /dev/null
+++ b/samples/BusinessCard/AndroidManifest.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 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.
+-->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.example.android.businesscard">
+    
+    <!-- IMPORTANT!  We want this app to run on Cupcake, Donut, Eclair and beyond -->
+    <uses-sdk android:minSdkVersion="3"/>
+    
+    <uses-permission android:name="android.permission.READ_CONTACTS" />
+    
+    <application android:label="@string/businesscard_app">
+        <activity android:name="BusinessCardActivity">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+                <category android:name="android.intent.category.LAUNCHER" />
+            </intent-filter>
+        </activity>
+    </application>
+</manifest>
diff --git a/samples/BusinessCard/res/layout/business_card.xml b/samples/BusinessCard/res/layout/business_card.xml
new file mode 100644
index 0000000..c7ce713
--- /dev/null
+++ b/samples/BusinessCard/res/layout/business_card.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent">
+    <Button
+        android:id="@+id/pick_contact_button"
+        android:layout_width="fill_parent"
+        android:layout_height="wrap_content"
+        android:layout_alignParentTop="true"
+        android:layout_margin="10dip"
+        android:text="@string/button_pick_contact"/>
+    <TextView
+        android:id="@+id/display_name_text_view"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_centerInParent="true"
+        android:textAppearance="?android:attr/textAppearanceLarge"/>
+    <TextView
+        android:id="@+id/phone_number_text_view"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_below="@id/display_name_text_view"
+        android:layout_centerHorizontal="true"
+        android:textAppearance="?android:attr/textAppearanceMedium"/>
+</RelativeLayout>
+
diff --git a/samples/BusinessCard/res/values/strings.xml b/samples/BusinessCard/res/values/strings.xml
new file mode 100644
index 0000000..8668d57
--- /dev/null
+++ b/samples/BusinessCard/res/values/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 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.
+-->
+
+<!-- This file contains resource definitions for displayed strings, allowing
+     them to be changed based on the locale and options. -->
+
+<resources>
+    <string name="businesscard_app">Business Card</string>
+    <string name="button_pick_contact">Pick Contact</string>
+</resources>
+
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/BusinessCardActivity.java b/samples/BusinessCard/src/com/example/android/businesscard/BusinessCardActivity.java
new file mode 100644
index 0000000..d8d277e
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/BusinessCardActivity.java
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 2009 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.
+ */
+
+package com.example.android.businesscard;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.net.Uri;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.widget.Button;
+import android.widget.TextView;
+
+/**
+ * A simple activity that shows a "Pick Contact" button and two fields: contact's name
+ * and phone number.  The user taps on the Pick Contact button to bring up
+ * the contact chooser.  Once this activity receives the result from contact picker,
+ * it launches an asynchronous query (queries should always be asynchronous) to load
+ * contact's name and phone number. When the query completes, the activity displays
+ * the loaded data.
+ */
+public class BusinessCardActivity extends Activity  {
+
+    // Request code for the contact picker activity
+    private static final int PICK_CONTACT_REQUEST = 1;
+
+    /**
+     * An SDK-specific instance of {@link ContactAccessor}.  The activity does not need
+     * to know what SDK it is running in: all idiosyncrasies of different SDKs are
+     * encapsulated in the implementations of the ContactAccessor class.
+     */
+    private final ContactAccessor mContactAccessor = ContactAccessor.getInstance();
+
+    /**
+     * Called with the activity is first created.
+     */
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+
+        setContentView(R.layout.business_card);
+
+        // Install a click handler on the Pick Contact button
+        Button pickContact = (Button)findViewById(R.id.pick_contact_button);
+        pickContact.setOnClickListener(new OnClickListener() {
+
+            public void onClick(View v) {
+                pickContact();
+            }
+        });
+    }
+
+    /**
+     * Click handler for the Pick Contact button.  Invokes a contact picker activity.
+     * The specific intent used to bring up that activity differs between versions
+     * of the SDK, which is why we delegate the creation of the intent to ContactAccessor.
+     */
+    protected void pickContact() {
+        startActivityForResult(mContactAccessor.getPickContactIntent(), PICK_CONTACT_REQUEST);
+    }
+
+    /**
+     * Invoked when the contact picker activity is finished. The {@code contactUri} parameter
+     * will contain a reference to the contact selected by the user. We will treat it as
+     * an opaque URI and allow the SDK-specific ContactAccessor to handle the URI accordingly.
+     */
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        if (requestCode == PICK_CONTACT_REQUEST && resultCode == RESULT_OK) {
+            loadContactInfo(data.getData());
+        }
+    }
+
+    /**
+     * Load contact information on a background thread.
+     */
+    private void loadContactInfo(Uri contactUri) {
+
+        /*
+         * We should always run database queries on a background thread. The database may be
+         * locked by some process for a long time.  If we locked up the UI thread while waiting
+         * for the query to come back, we might get an "Application Not Responding" dialog.
+         */
+        AsyncTask<Uri, Void, ContactInfo> task = new AsyncTask<Uri, Void, ContactInfo>() {
+
+            @Override
+            protected ContactInfo doInBackground(Uri... uris) {
+                return mContactAccessor.loadContact(getContentResolver(), uris[0]);
+            }
+
+            @Override
+            protected void onPostExecute(ContactInfo result) {
+                bindView(result);
+            }
+        };
+
+        task.execute(contactUri);
+    }
+
+    /**
+     * Displays contact information: name and phone number.
+     */
+    protected void bindView(ContactInfo contactInfo) {
+        TextView displayNameView = (TextView) findViewById(R.id.display_name_text_view);
+        displayNameView.setText(contactInfo.getDisplayName());
+
+        TextView phoneNumberView = (TextView) findViewById(R.id.phone_number_text_view);
+        phoneNumberView.setText(contactInfo.getPhoneNumber());
+    }
+}
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessor.java b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessor.java
new file mode 100644
index 0000000..6a402e9
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessor.java
@@ -0,0 +1,89 @@
+/*
+ * Copyright (C) 2009 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.
+ */
+
+package com.example.android.businesscard;
+
+import android.content.ContentResolver;
+import android.content.Intent;
+import android.net.Uri;
+import android.os.Build;
+
+/**
+ * This abstract class defines SDK-independent API for communication with
+ * Contacts Provider. The actual implementation used by the application depends
+ * on the level of API available on the device. If the API level is Cupcake or
+ * Donut, we want to use the {@link ContactAccessorSdk3_4} class. If it is
+ * Eclair or higher, we want to use {@link ContactAccessorSdk5}.
+ */
+public abstract class ContactAccessor {
+
+    /**
+     * Static singleton instance of {@link ContactAccessor} holding the
+     * SDK-specific implementation of the class.
+     */
+    private static ContactAccessor sInstance;
+
+    public static ContactAccessor getInstance() {
+        if (sInstance == null) {
+            String className;
+
+            /*
+             * Check the version of the SDK we are running on. Choose an
+             * implementation class designed for that version of the SDK.
+             *
+             * Unfortunately we have to use strings to represent the class
+             * names. If we used the conventional ContactAccessorSdk5.class.getName()
+             * syntax, we would get a ClassNotFoundException at runtime on pre-Eclair SDKs.
+             * Using the above syntax would force Dalvik to load the class and try to
+             * resolve references to all other classes it uses. Since the pre-Eclair
+             * does not have those classes, the loading of ContactAccessorSdk5 would fail.
+             */
+            @SuppressWarnings("deprecation")
+            int sdkVersion = Integer.parseInt(Build.VERSION.SDK);       // Cupcake style
+            if (sdkVersion < Build.VERSION_CODES.ECLAIR) {
+                className = "com.example.android.businesscard.ContactAccessorSdk3_4";
+            } else {
+                className = "com.example.android.businesscard.ContactAccessorSdk5";
+            }
+
+            /*
+             * Find the required class by name and instantiate it.
+             */
+            try {
+                Class<? extends ContactAccessor> clazz =
+                        Class.forName(className).asSubclass(ContactAccessor.class);
+                sInstance = clazz.newInstance();
+            } catch (Exception e) {
+                throw new IllegalStateException(e);
+            }
+        }
+
+        return sInstance;
+    }
+
+    /**
+     * Returns the {@link Intent#ACTION_PICK} intent configured for the right authority: legacy
+     * or current.
+     */
+    public abstract Intent getPickContactIntent();
+
+    /**
+     * Loads contact data for the supplied URI. The actual queries will differ for different APIs
+     * used, but the result is the same: the {@link #mDisplayName} and {@link #mPhoneNumber}
+     * fields are populated with correct data.
+     */
+    public abstract ContactInfo loadContact(ContentResolver contentResolver, Uri contactUri);
+}
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk3_4.java b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk3_4.java
new file mode 100644
index 0000000..7fcd388
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk3_4.java
@@ -0,0 +1,81 @@
+/*
+ * Copyright (C) 2009 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.
+ */
+
+package com.example.android.businesscard;
+
+import android.content.AsyncQueryHandler;
+import android.content.ContentResolver;
+import android.content.Intent;
+import android.database.Cursor;
+import android.net.Uri;
+import android.provider.Contacts.People;
+import android.provider.Contacts.People.Phones;
+
+/**
+ * An implementation of {@link ContactAccessor} that uses legacy Contacts API.
+ * These APIs are deprecated and should not be used unless we are running on a
+ * pre-Eclair SDK.
+ * <p>
+ * There are several reasons why we wouldn't want to use this class on an Eclair device:
+ * <ul>
+ * <li>It would see at most one account, namely the first Google account created on the device.
+ * <li>It would work through a compatibility layer, which would make it inherently less efficient.
+ * <li>Not relevant to this particular example, but it would not have access to new kinds
+ * of data available through current APIs.
+ * </ul>
+ */
+@SuppressWarnings("deprecation")
+public class ContactAccessorSdk3_4 extends ContactAccessor {
+
+    /**
+     * Returns a Pick Contact intent using the pre-Eclair "people" URI.
+     */
+    @Override
+    public Intent getPickContactIntent() {
+        return new Intent(Intent.ACTION_PICK, People.CONTENT_URI);
+    }
+
+    /**
+     * Retrieves the contact information.
+     */
+    @Override
+    public ContactInfo loadContact(ContentResolver contentResolver, Uri contactUri) {
+        ContactInfo contactInfo = new ContactInfo();
+        Cursor cursor = contentResolver.query(contactUri,
+                new String[]{People.DISPLAY_NAME}, null, null, null);
+        try {
+            if (cursor.moveToFirst()) {
+                contactInfo.setDisplayName(cursor.getString(0));
+            }
+        } finally {
+            cursor.close();
+        }
+
+        Uri phoneUri = Uri.withAppendedPath(contactUri, Phones.CONTENT_DIRECTORY);
+        cursor = contentResolver.query(phoneUri,
+                new String[]{Phones.NUMBER}, null, null, Phones.ISPRIMARY + " DESC");
+
+        try {
+            if (cursor.moveToFirst()) {
+                contactInfo.setPhoneNumber(cursor.getString(0));
+            }
+        } finally {
+            cursor.close();
+        }
+
+        return contactInfo;
+    }
+}
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk5.java b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk5.java
new file mode 100644
index 0000000..6855597
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessorSdk5.java
@@ -0,0 +1,88 @@
+/*
+ * Copyright (C) 2009 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.
+ */
+
+package com.example.android.businesscard;
+
+import android.content.ContentResolver;
+import android.content.Intent;
+import android.database.Cursor;
+import android.net.Uri;
+import android.provider.ContactsContract.Contacts;
+import android.provider.ContactsContract.CommonDataKinds.Phone;
+
+/**
+ * An implementation of {@link ContactAccessor} that uses current Contacts API.
+ * This class should be used on Eclair or beyond, but would not work on any earlier
+ * release of Android.  As a matter of fact, it could not even be loaded.
+ * <p>
+ * This implementation has several advantages:
+ * <ul>
+ * <li>It sees contacts from multiple accounts.
+ * <li>It works with aggregated contacts. So for example, if the contact is the result
+ * of aggregation of two raw contacts from different accounts, it may return the name from
+ * one and the phone number from the other.
+ * <li>It is efficient because it uses the more efficient current API.
+ * <li>Not obvious in this particular example, but it has access to new kinds
+ * of data available exclusively through the new APIs. Exercise for the reader: add support
+ * for nickname (see {@link android.provider.ContactsContract.CommonDataKinds.Nickname}) or
+ * social status updates (see {@link android.provider.ContactsContract.StatusUpdates}).
+ * </ul>
+ */
+public class ContactAccessorSdk5 extends ContactAccessor {
+
+    /**
+     * Returns a Pick Contact intent using the Eclair "contacts" URI.
+     */
+    @Override
+    public Intent getPickContactIntent() {
+        return new Intent(Intent.ACTION_PICK, Contacts.CONTENT_URI);
+    }
+
+    /**
+     * Retrieves the contact information.
+     */
+    @Override
+    public ContactInfo loadContact(ContentResolver contentResolver, Uri contactUri) {
+        ContactInfo contactInfo = new ContactInfo();
+        long contactId = -1;
+
+        // Load the display name for the specified person
+        Cursor cursor = contentResolver.query(contactUri,
+                new String[]{Contacts._ID, Contacts.DISPLAY_NAME}, null, null, null);
+        try {
+            if (cursor.moveToFirst()) {
+                contactId = cursor.getLong(0);
+                contactInfo.setDisplayName(cursor.getString(1));
+            }
+        } finally {
+            cursor.close();
+        }
+
+        // Load the phone number (if any).
+        cursor = contentResolver.query(Phone.CONTENT_URI,
+                new String[]{Phone.NUMBER},
+                Phone.CONTACT_ID + "=" + contactId, null, Phone.IS_SUPER_PRIMARY + " DESC");
+        try {
+            if (cursor.moveToFirst()) {
+                contactInfo.setPhoneNumber(cursor.getString(0));
+            }
+        } finally {
+            cursor.close();
+        }
+
+        return contactInfo;
+    }
+}
diff --git a/samples/BusinessCard/src/com/example/android/businesscard/ContactInfo.java b/samples/BusinessCard/src/com/example/android/businesscard/ContactInfo.java
new file mode 100644
index 0000000..61a6f3b
--- /dev/null
+++ b/samples/BusinessCard/src/com/example/android/businesscard/ContactInfo.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2009 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.
+ */
+
+package com.example.android.businesscard;
+
+/**
+ * A model object containing contact data.
+ */
+public class ContactInfo {
+
+    private String mDisplayName;
+    private String mPhoneNumber;
+
+    public void setDisplayName(String displayName) {
+        this.mDisplayName = displayName;
+    }
+
+    public String getDisplayName() {
+        return mDisplayName;
+    }
+
+    public void setPhoneNumber(String phoneNumber) {
+        this.mPhoneNumber = phoneNumber;
+    }
+
+    public String getPhoneNumber() {
+        return mPhoneNumber;
+    }
+}
diff --git a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube1/CubeWallpaper1.java b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube1/CubeWallpaper1.java
index 9279065..52a708a 100644
--- a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube1/CubeWallpaper1.java
+++ b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube1/CubeWallpaper1.java
@@ -123,7 +123,8 @@
         }
 
         @Override
-        public void onOffsetsChanged(float xOffset, float yOffset, int xPixels, int yPixels) {
+        public void onOffsetsChanged(float xOffset, float yOffset,
+                float xStep, float yStep, int xPixels, int yPixels) {
             mOffset = xOffset;
             drawFrame();
         }
diff --git a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube2/CubeWallpaper2.java b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube2/CubeWallpaper2.java
index 43f1326..0c6d90e 100644
--- a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube2/CubeWallpaper2.java
+++ b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube2/CubeWallpaper2.java
@@ -190,7 +190,8 @@
         }
 
         @Override
-        public void onOffsetsChanged(float xOffset, float yOffset, int xPixels, int yPixels) {
+        public void onOffsetsChanged(float xOffset, float yOffset,
+                float xStep, float yStep, int xPixels, int yPixels) {
             mOffset = xOffset;
             drawFrame();
         }
diff --git a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube3/RenderScriptWallpaper.java b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube3/RenderScriptWallpaper.java
index c30a619..257c7ea 100644
--- a/samples/CubeLiveWallpaper/src/com/android/livecubes/cube3/RenderScriptWallpaper.java
+++ b/samples/CubeLiveWallpaper/src/com/android/livecubes/cube3/RenderScriptWallpaper.java
@@ -72,6 +72,9 @@
         @Override
         public void onSurfaceChanged(SurfaceHolder holder, int format, int width, int height) {
             super.onSurfaceChanged(holder, format, width, height);
+            if (mRs != null) {
+                mRs.contextSetSurface(width, height, holder.getSurface());
+            }
             if (mRenderer == null) {
                 mRenderer = createScene(width, height);
                 mRenderer.init(mRs, getResources(), isPreview());
@@ -82,7 +85,8 @@
         }
 
         @Override
-        public void onOffsetsChanged(float xOffset, float yOffset, int xPixels, int yPixels) {
+        public void onOffsetsChanged(float xOffset, float yOffset,
+                float xStep, float yStep, int xPixels, int yPixels) {
             mRenderer.setOffset(xOffset, yOffset, xPixels, yPixels);
         }
 
@@ -94,7 +98,7 @@
             while (surface == null) {
                 surface = holder.getSurface();
             }
-            mRs = new RenderScript(surface, false, false);
+            mRs = new RenderScript(false, false);
         }
 
         @Override
diff --git a/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryProvider.java b/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryProvider.java
index db626e8..586fddb 100644
--- a/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryProvider.java
+++ b/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryProvider.java
@@ -106,16 +106,17 @@
         List<Dictionary.Word> words = Dictionary.getInstance().getMatches(processedQuery);
 
         MatrixCursor cursor = new MatrixCursor(COLUMNS);
+        long id = 0;
         for (Dictionary.Word word : words) {
-            cursor.addRow(columnValuesOfWord(word));
+            cursor.addRow(columnValuesOfWord(id++, word));
         }
 
         return cursor;
     }
 
-    private Object[] columnValuesOfWord(Dictionary.Word word) {
-        return new String[] {
-                word.word,           // _id
+    private Object[] columnValuesOfWord(long id, Dictionary.Word word) {
+        return new Object[] {
+                id,                  // _id
                 word.word,           // text1
                 word.definition,     // text2
                 word.word,           // intent_data (included when clicking on item)
diff --git a/sdk_overlay/packages/inputmethods/LatinIME/res/values/bools.xml b/sdk_overlay/packages/inputmethods/LatinIME/res/values/bools.xml
new file mode 100644
index 0000000..fa5cde6
--- /dev/null
+++ b/sdk_overlay/packages/inputmethods/LatinIME/res/values/bools.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/* 
+**
+** Copyright 2008, 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>
+    <!-- Make the LatinIME the default one for the SDK build. -->
+    <bool name="im_is_default">true</bool>
+</resources>
diff --git a/testrunner/android_manifest.py b/testrunner/android_manifest.py
index 5406f56..5825118 100644
--- a/testrunner/android_manifest.py
+++ b/testrunner/android_manifest.py
@@ -36,6 +36,10 @@
     if app_path:
       self.ParseManifest(app_path)
 
+  def GetAppPath(self):
+    """Retrieve file system path to this manifest file's directory."""
+    return self._app_path
+
   def GetPackageName(self):
     """Retrieve package name defined at <manifest package="...">.
 
@@ -56,6 +60,7 @@
       IOError: AndroidManifest.xml cannot be found at given path, or cannot be
           opened for reading
     """
+    self._app_path = app_path
     self._manifest_path = os.path.join(app_path, self.FILENAME)
     self._dom = xml.dom.minidom.parse(self._manifest_path)
 
@@ -76,6 +81,18 @@
     uses_sdk_element.setAttribute('android:minSdkVersion', min_sdk_version)
     self._SaveXml()
 
+  def GetInstrumentationNames(self):
+    """Get the instrumentation names from manifest.
+
+    Returns:
+      list of names, might be empty
+    """
+    instr_elements = self._dom.getElementsByTagName('instrumentation')
+    instrs = []
+    for element in instr_elements:
+      instrs.append(element.getAttribute('android:name'))
+    return instrs
+
   def _GetManifestElement(self):
     """Retrieve the root manifest element.
 
@@ -90,3 +107,4 @@
   def _SaveXml(self):
     """Saves the manifest to disk."""
     self._dom.writexml(open(self._manifest_path, mode='w'), encoding='utf-8')
+
diff --git a/testrunner/coverage.py b/testrunner/coverage.py
index eb46f1f..c94fc26 100755
--- a/testrunner/coverage.py
+++ b/testrunner/coverage.py
@@ -321,7 +321,7 @@
 
     options, args = parser.parse_args()
 
-    coverage = CoverageGenerator(android_build.GetTop(), None)
+    coverage = CoverageGenerator(None)
     if options.combine_coverage:
       coverage.CombineCoverage()
     if options.tidy:
diff --git a/testrunner/coverage_targets.xml b/testrunner/coverage_targets.xml
index 1d7707b..5fe1233 100644
--- a/testrunner/coverage_targets.xml
+++ b/testrunner/coverage_targets.xml
@@ -98,8 +98,6 @@
         type="APPS" />
     <coverage_target name="GmailProvider"
         build_path="partner/google/providers/gmail" type="APPS" />
-    <coverage_target name="ImProvider"
-        build_path="packages/providers/ImProvider" type="APPS" />
     <coverage_target name="MediaProvider"
         build_path="packages/providers/MediaProvider" type="APPS" />
     <coverage_target name="SettingsProvider"
diff --git a/testrunner/run_command.py b/testrunner/run_command.py
index 926cc6b..d398daa 100755
--- a/testrunner/run_command.py
+++ b/testrunner/run_command.py
@@ -112,7 +112,7 @@
       logger.Log(e)
       so.append("ERROR")
       error_occurred = True
-    if pipe.returncode != 0:
+    if pipe.returncode:
       logger.SilentLog("Error: %s returned %d error code" %(cmd,
           pipe.returncode))
       error_occurred = True
diff --git a/testrunner/runtest.py b/testrunner/runtest.py
index e637b71..a4d7231 100755
--- a/testrunner/runtest.py
+++ b/testrunner/runtest.py
@@ -14,9 +14,19 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-"""Command line utility for running a pre-defined test.
+"""Command line utility for running Android tests
 
-Based on previous <androidroot>/development/tools/runtest shell script.
+runtest helps automate the instructions for building and running tests
+- It builds the corresponding test package for the code you want to test
+- It pushes the test package to your device or emulator
+- It launches InstrumentationTestRunner (or similar) to run the tests you
+specify.
+
+runtest supports running tests whose attributes have been pre-defined in
+_TEST_FILE_NAME files, (runtest <testname>), or by specifying the file
+system path to the test to run (runtest --path <path>).
+
+Do runtest --help to see full list of options.
 """
 
 # Python imports
@@ -34,6 +44,7 @@
 import logger
 import run_command
 from test_defs import test_defs
+from test_defs import test_walker
 
 
 class TestRunner(object):
@@ -57,7 +68,7 @@
       "for a list of tests, or you can launch one or more tests.")
 
   # default value for make -jX
-  _DEFAULT_JOBS=4
+  _DEFAULT_JOBS = 4
 
   def __init__(self):
     # disable logging of timestamp
@@ -67,6 +78,7 @@
     self._known_tests = None
     self._options = None
     self._test_args = None
+    self._tests_to_run = None
 
   def _ProcessOptions(self):
     """Processes command-line options."""
@@ -114,6 +126,8 @@
     parser.add_option("-o", "--coverage", dest="coverage",
                       default=False, action="store_true",
                       help="Generate code coverage metrics for test(s)")
+    parser.add_option("-x", "--path", dest="test_path",
+                      help="Run test(s) at given file system path")
     parser.add_option("-t", "--all-tests", dest="all_tests",
                       default=False, action="store_true",
                       help="Run all defined tests")
@@ -145,6 +159,7 @@
         and not self._options.all_tests
         and not self._options.continuous_tests
         and not self._options.cts_tests
+        and not self._options.test_path
         and len(self._test_args) < 1):
       parser.print_help()
       logger.SilentLog("at least one test name must be specified")
@@ -217,11 +232,14 @@
       # cts dependencies are removed
       if self._IsCtsTests(tests):
         # need to use make since these fail building with ONE_SHOT_MAKEFILE
-        cmd=('make -j%s CtsTestStubs android.core.tests.runner' %
-              self._options.make_jobs)
+        cmd = ('make -j%s CtsTestStubs android.core.tests.runner' %
+               self._options.make_jobs)
         logger.Log(cmd)
         if not self._options.preview:
+          old_dir = os.getcwd()
+          os.chdir(self._root_path)
           run_command.RunCommand(cmd, return_output=False)
+          os.chdir(old_dir)
       target_build_string = " ".join(list(target_set))
       extra_args_string = " ".join(list(extra_args_set))
       # mmm cannot be used from python, so perform a similar operation using
@@ -253,25 +271,34 @@
       if os.path.isfile(os.path.join(self._root_path, build_file_path)):
         target_set.add(build_file_path)
         return True
+      else:
+        logger.Log("%s has no Android.mk, skipping" % build_dir)
     return False
 
   def _GetTestsToRun(self):
     """Get a list of TestSuite objects to run, based on command line args."""
+    if self._tests_to_run:
+      return self._tests_to_run
+
+    self._tests_to_run = []
     if self._options.all_tests:
-      return self._known_tests.GetTests()
+      self._tests_to_run = self._known_tests.GetTests()
     elif self._options.continuous_tests:
-      return self._known_tests.GetContinuousTests()
+      self._tests_to_run = self._known_tests.GetContinuousTests()
     elif self._options.cts_tests:
-      return self._known_tests.GetCtsTests()
-    tests = []
+      self._tests_to_run = self._known_tests.GetCtsTests()
+    elif self._options.test_path:
+      walker = test_walker.TestWalker()
+      self._tests_to_run = walker.FindTests(self._options.test_path)
+
     for name in self._test_args:
       test = self._known_tests.GetTest(name)
       if test is None:
         logger.Log("Error: Could not find test %s" % name)
         self._DumpTests()
         raise errors.AbortError
-      tests.append(test)
-    return tests
+      self._tests_to_run.append(test)
+    return self._tests_to_run
 
   def _IsCtsTests(self, test_list):
     """Check if any cts tests are included in given list of tests to run."""
diff --git a/testrunner/test_defs.xml b/testrunner/test_defs.xml
index 42eae3a..ad2017c 100644
--- a/testrunner/test_defs.xml
+++ b/testrunner/test_defs.xml
@@ -354,8 +354,7 @@
 <test name="calprov"
     build_path="packages/providers/CalendarProvider/tests"
     package="com.android.providers.calendar.tests"
-    coverage_target="CalendarProvider"
-    continuous="true" />
+    coverage_target="CalendarProvider" />
 
 <test name="camerastress"
     build_path="packages/apps/Camera"
@@ -390,6 +389,12 @@
     description="Tests for the Contacts app."
     continuous="true" />
 
+<test name="contacts-launch"
+    build_path="packages/apps/Contacts"
+    package="com.android.contacts.tests"
+    runner="com.android.contacts.ContactsLaunchPerformance"
+    description="Launch performance for Contacts." />
+
 <test name="gcontactsprov"
     build_path="packages/providers/GoogleContactsProvider/tests"
     package="com.android.providers.contactstests"
diff --git a/testrunner/test_defs/__init__.py b/testrunner/test_defs/__init__.py
index c205dcb..f397d2a 100644
--- a/testrunner/test_defs/__init__.py
+++ b/testrunner/test_defs/__init__.py
@@ -1 +1 @@
-__all__ = ['test_defs']
+__all__ = ['test_defs', 'test_walker']
diff --git a/testrunner/test_defs/abstract_test.py b/testrunner/test_defs/abstract_test.py
deleted file mode 100644
index e0c8db2..0000000
--- a/testrunner/test_defs/abstract_test.py
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/usr/bin/python2.4
-#
-#
-# Copyright 2009, 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.
-
-"""Abstract Android test suite."""
-
-# Python imports
-import xml.dom.minidom
-import xml.parsers
-
-# local imports
-import errors
-
-
-class AbstractTestSuite(object):
-  """Represents a generic test suite definition parsed from xml.
-
-  This class will parse the XML attributes common to all TestSuite's.
-  """
-
-  # name of xml tag a test suite handles. subclasses must define this.
-  TAG_NAME = "unspecified"
-
-  _NAME_ATTR = "name"
-  _BUILD_ATTR = "build_path"
-  _CONTINUOUS_ATTR = "continuous"
-  _CTS_ATTR = "cts"
-  _DESCRIPTION_ATTR = "description"
-  _EXTRA_BUILD_ARGS_ATTR = "extra_build_args"
-
-  def __init__(self):
-    self._attr_map = {}
-
-  def Parse(self, suite_element):
-    """Populates this instance's data from given suite xml element.
-    Raises:
-      ParseError if a required attribute is missing.
-    """
-    # parse name first so it can be used for error reporting
-    self._ParseAttribute(suite_element, self._NAME_ATTR, True)
-    self._ParseAttribute(suite_element, self._BUILD_ATTR, True)
-    self._ParseAttribute(suite_element, self._CONTINUOUS_ATTR, False,
-                         default_value=False)
-    self._ParseAttribute(suite_element, self._CTS_ATTR, False,
-                         default_value=False)
-    self._ParseAttribute(suite_element, self._DESCRIPTION_ATTR, False,
-                         default_value="")
-    self._ParseAttribute(suite_element, self._EXTRA_BUILD_ARGS_ATTR, False,
-                         default_value="")
-
-  def _ParseAttribute(self, suite_element, attribute_name, mandatory,
-                      default_value=None):
-    if suite_element.hasAttribute(attribute_name):
-      self._attr_map[attribute_name] = \
-          suite_element.getAttribute(attribute_name)
-    elif mandatory:
-      error_msg = ("Could not find attribute %s in %s %s" %
-          (attribute_name, self.TAG_NAME, self.GetName()))
-      raise errors.ParseError(msg=error_msg)
-    else:
-      self._attr_map[attribute_name] = default_value
-
-  def GetName(self):
-    return self._GetAttribute(self._NAME_ATTR)
-
-  def GetBuildPath(self):
-    """Returns the build path of this test, relative to source tree root."""
-    return self._GetAttribute(self._BUILD_ATTR)
-
-  def GetBuildDependencies(self, options):
-    """Returns a list of dependent build paths."""
-    return []
-
-  def IsContinuous(self):
-    """Returns true if test is flagged as being part of the continuous tests"""
-    return self._GetAttribute(self._CONTINUOUS_ATTR)
-
-  def IsCts(self):
-    """Returns true if test is part of the compatibility test suite"""
-    return self._GetAttribute(self._CTS_ATTR)
-
-  def GetDescription(self):
-    """Returns a description if available, an empty string otherwise."""
-    return self._GetAttribute(self._DESCRIPTION_ATTR)
-
-  def GetExtraBuildArgs(self):
-    """Returns the extra build args if available, an empty string otherwise."""
-    return self._GetAttribute(self._EXTRA_BUILD_ARGS_ATTR)
-
-  def _GetAttribute(self, attribute_name):
-    return self._attr_map.get(attribute_name)
-
-  def Run(self, options, adb):
-    """Runs the test.
-
-    Subclasses must implement this.
-    Args:
-      options: global command line options
-    """
-    raise NotImplementedError
diff --git a/testrunner/test_defs/host_test.py b/testrunner/test_defs/host_test.py
index 4aefa3a..8105075 100644
--- a/testrunner/test_defs/host_test.py
+++ b/testrunner/test_defs/host_test.py
@@ -20,23 +20,15 @@
 # python imports
 import os
 
-# local imports
-from abstract_test import AbstractTestSuite
 import errors
 import logger
 import run_command
+import test_suite
 
 
-class HostTestSuite(AbstractTestSuite):
+class HostTestSuite(test_suite.AbstractTestSuite):
   """A test suite for running hosttestlib java tests."""
 
-  TAG_NAME = "test-host"
-
-  _CLASS_ATTR = "class"
-  # TODO: consider obsoleting in favor of parsing the Android.mk to find the
-  # jar name
-  _JAR_ATTR = "jar_name"
-
   _JUNIT_JAR_NAME = "junit.jar"
   _HOSTTESTLIB_NAME = "hosttestlib.jar"
   _DDMLIB_NAME = "ddmlib.jar"
@@ -54,21 +46,29 @@
   # the test suite?
   _TEST_RUNNER = "com.android.hosttest.DeviceTestRunner"
 
-  def Parse(self, suite_element):
-    super(HostTestSuite, self).Parse(suite_element)
-    self._ParseAttribute(suite_element, self._CLASS_ATTR, True)
-    self._ParseAttribute(suite_element, self._JAR_ATTR, True)
+  def __init__(self):
+    test_suite.AbstractTestSuite.__init__(self)
+    self._jar_name = None
+    self._class_name = None
 
   def GetBuildDependencies(self, options):
     """Override parent to tag on building host libs."""
     return self._LIB_BUILD_PATHS
 
-  def GetClass(self):
-    return self._GetAttribute(self._CLASS_ATTR)
+  def GetClassName(self):
+    return self._class_name
+
+  def SetClassName(self, class_name):
+    self._class_name = class_name
+    return self
 
   def GetJarName(self):
     """Returns the name of the host jar that contains the tests."""
-    return self._GetAttribute(self._JAR_ATTR)
+    return self._jar_name
+
+  def SetJarName(self, jar_name):
+    self._jar_name = jar_name
+    return self
 
   def Run(self, options, adb_interface):
     """Runs the host test.
@@ -77,11 +77,14 @@
 
     Args:
       options: command line options for running host tests. Expected member
-      fields:
+        fields:
         host_lib_path: path to directory that contains host library files
         test_data_path: path to directory that contains test data files
         preview: if true, do not execute, display commands only
       adb_interface: reference to device under test
+
+    Raises:
+      errors.AbortError: if fatal error occurs
     """
     # get the serial number of the device under test, so it can be passed to
     # hosttestlib.
@@ -100,7 +103,7 @@
     # -p <test data path>
     cmd = "java -cp %s %s %s -s %s -p %s" % (":".join(full_lib_paths),
                                              self._TEST_RUNNER,
-                                             self.GetClass(), serial_number,
+                                             self.GetClassName(), serial_number,
                                              options.test_data_path)
     logger.Log(cmd)
     if not options.preview:
diff --git a/testrunner/test_defs/instrumentation_test.py b/testrunner/test_defs/instrumentation_test.py
index 24b4b88..401a980 100644
--- a/testrunner/test_defs/instrumentation_test.py
+++ b/testrunner/test_defs/instrumentation_test.py
@@ -21,59 +21,75 @@
 import os
 
 # local imports
-from abstract_test import AbstractTestSuite
 import coverage
 import errors
 import logger
+import test_suite
 
 
-class InstrumentationTestSuite(AbstractTestSuite):
-  """Represents a java instrumentation test suite definition run on Android device."""
+class InstrumentationTestSuite(test_suite.AbstractTestSuite):
+  """Represents a java instrumentation test suite definition run on device."""
 
-  # for legacy reasons, the xml tag name for java (device) tests is "test:
-  TAG_NAME = "test"
-
-  _PKG_ATTR = "package"
-  _RUNNER_ATTR = "runner"
-  _CLASS_ATTR = "class"
-  _TARGET_ATTR = "coverage_target"
-
-  _DEFAULT_RUNNER = "android.test.InstrumentationTestRunner"
+  DEFAULT_RUNNER = "android.test.InstrumentationTestRunner"
 
     # build path to Emma target Makefile
   _EMMA_BUILD_PATH = os.path.join("external", "emma")
 
-  def _GetTagName(self):
-    return self._TAG_NAME
+  def __init__(self):
+    test_suite.AbstractTestSuite.__init__(self)
+    self._package_name = None
+    self._runner_name = self.DEFAULT_RUNNER
+    self._class_name = None
+    self._target_name = None
+    self._java_package = None
 
   def GetPackageName(self):
-    return self._GetAttribute(self._PKG_ATTR)
+    return self._package_name
+
+  def SetPackageName(self, package_name):
+    self._package_name = package_name
+    return self
 
   def GetRunnerName(self):
-    return self._GetAttribute(self._RUNNER_ATTR)
+    return self._runner_name
+
+  def SetRunnerName(self, runner_name):
+    self._runner_name = runner_name
+    return self
 
   def GetClassName(self):
-    return self._GetAttribute(self._CLASS_ATTR)
+    return self._class_name
+
+  def SetClassName(self, class_name):
+    self._class_name = class_name
+    return self
+
+  def GetJavaPackageFilter(self):
+    return self._java_package
+
+  def SetJavaPackageFilter(self, java_package_name):
+    """Configure the suite to only run tests in given java package."""
+    self._java_package = java_package_name
+    return self
 
   def GetTargetName(self):
     """Retrieve module that this test is targeting.
 
     Used for generating code coverage metrics.
+    Returns:
+      the module target name
     """
-    return self._GetAttribute(self._TARGET_ATTR)
+    return self._target_name
+
+  def SetTargetName(self, target_name):
+    self._target_name = target_name
+    return self
 
   def GetBuildDependencies(self, options):
     if options.coverage:
       return [self._EMMA_BUILD_PATH]
     return []
 
-  def Parse(self, suite_element):
-    super(InstrumentationTestSuite, self).Parse(suite_element)
-    self._ParseAttribute(suite_element, self._PKG_ATTR, True)
-    self._ParseAttribute(suite_element, self._RUNNER_ATTR, False, self._DEFAULT_RUNNER)
-    self._ParseAttribute(suite_element, self._CLASS_ATTR, False)
-    self._ParseAttribute(suite_element, self._TARGET_ATTR, False)
-
   def Run(self, options, adb):
     """Run the provided test suite.
 
@@ -82,6 +98,9 @@
     Args:
       options: command line options to provide to test run
       adb: adb_interface to device under test
+
+    Raises:
+      errors.AbortError: if fatal error occurs
     """
 
     test_class = self.GetClassName()
@@ -92,11 +111,18 @@
     if options.test_method is not None:
       test_class = "%s#%s" % (test_class, options.test_method)
 
+    test_package = self.GetJavaPackageFilter()
+    if options.test_package:
+      test_package = options.test_package
+
+    if test_class and test_package:
+      logger.Log('Error: both class and java package options are specified')
+
     instrumentation_args = {}
     if test_class is not None:
       instrumentation_args["class"] = test_class
-    if options.test_package:
-      instrumentation_args["package"] = options.test_package
+    if test_package:
+      instrumentation_args["package"] = test_package
     if options.test_size:
       instrumentation_args["size"] = options.test_size
     if options.wait_for_debugger:
@@ -122,10 +148,10 @@
       logger.Log("Running in coverage mode, suppressing test output")
       try:
         (test_results, status_map) = adb.StartInstrumentationForPackage(
-          package_name=self.GetPackageName(),
-          runner_name=self.GetRunnerName(),
-          timeout_time=60*60,
-          instrumentation_args=instrumentation_args)
+            package_name=self.GetPackageName(),
+            runner_name=self.GetRunnerName(),
+            timeout_time=60*60,
+            instrumentation_args=instrumentation_args)
       except errors.InstrumentationError, errors.DeviceUnresponsiveError:
         return
       self._PrintTestResults(test_results)
@@ -156,11 +182,11 @@
     error_count = 0
     fail_count = 0
     for test_result in test_results:
-      if test_result.GetStatusCode() == -1: # error
+      if test_result.GetStatusCode() == -1:  # error
         logger.Log("Error in %s: %s" % (test_result.GetTestName(),
                                         test_result.GetFailureReason()))
         error_count+=1
-      elif test_result.GetStatusCode() == -2: # failure
+      elif test_result.GetStatusCode() == -2:  # failure
         logger.Log("Failure in %s: %s" % (test_result.GetTestName(),
                                           test_result.GetFailureReason()))
         fail_count+=1
diff --git a/testrunner/test_defs/native_test.py b/testrunner/test_defs/native_test.py
index d250de2..e6917c9 100644
--- a/testrunner/test_defs/native_test.py
+++ b/testrunner/test_defs/native_test.py
@@ -18,28 +18,19 @@
 """TestSuite for running native Android tests."""
 
 # python imports
-import re
 import os
+import re
 
 # local imports
-from abstract_test import AbstractTestSuite
 import android_build
 import logger
 import run_command
+import test_suite
 
 
-class NativeTestSuite(AbstractTestSuite):
+class NativeTestSuite(test_suite.AbstractTestSuite):
   """A test suite for running native aka C/C++ tests on device."""
 
-  TAG_NAME = "test-native"
-
-  def _GetTagName(self):
-    return self._TAG_NAME
-
-  def Parse(self, suite_element):
-    super(NativeTestSuite, self).Parse(suite_element)
-
-
   def Run(self, options, adb):
     """Run the provided *native* test suite.
 
@@ -61,7 +52,7 @@
     # find all test files, convert unicode names to ascii, take the basename
     # and drop the .cc/.cpp  extension.
     source_list = []
-    build_path = self.GetBuildPath()
+    build_path = os.path.join(android_build.GetTop(), self.GetBuildPath())
     os.path.walk(build_path, self._CollectTestSources, source_list)
     logger.SilentLog("Tests source %s" % source_list)
 
diff --git a/testrunner/test_defs/test_defs.py b/testrunner/test_defs/test_defs.py
index 7f23b89..6d885fa 100644
--- a/testrunner/test_defs/test_defs.py
+++ b/testrunner/test_defs/test_defs.py
@@ -24,9 +24,7 @@
 # local imports
 import errors
 import logger
-from instrumentation_test import InstrumentationTestSuite
-from native_test import NativeTestSuite
-from host_test import HostTestSuite
+import xml_suite_helper
 
 
 class TestDefinitions(object):
@@ -74,21 +72,13 @@
 
   def _ParseDoc(self, doc):
     root_element = self._GetRootElement(doc)
+    suite_parser = xml_suite_helper.XmlSuiteParser()
     for element in root_element.childNodes:
       if element.nodeType != xml.dom.Node.ELEMENT_NODE:
         continue
-      test_suite = None
-      if element.nodeName == InstrumentationTestSuite.TAG_NAME:
-        test_suite = InstrumentationTestSuite()
-      elif element.nodeName == NativeTestSuite.TAG_NAME:
-        test_suite = NativeTestSuite()
-      elif element.nodeName == HostTestSuite.TAG_NAME:
-        test_suite = HostTestSuite()
-      else:
-        logger.Log("Unrecognized tag %s found" % element.nodeName)
-        continue
-      test_suite.Parse(element)
-      self._AddTest(test_suite)
+      test_suite = suite_parser.Parse(element)
+      if test_suite:
+        self._AddTest(test_suite)
 
   def _GetRootElement(self, doc):
     root_elements = doc.getElementsByTagName("test-definitions")
diff --git a/testrunner/test_defs/test_suite.py b/testrunner/test_defs/test_suite.py
new file mode 100644
index 0000000..42a0de1
--- /dev/null
+++ b/testrunner/test_defs/test_suite.py
@@ -0,0 +1,96 @@
+#!/usr/bin/python2.4
+#
+#
+# Copyright 2009, 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.
+
+"""Abstract Android test suite."""
+
+
+class AbstractTestSuite(object):
+  """Represents a generic test suite definition."""
+
+  def __init__(self):
+    self._name = None
+    self._build_path = None
+    self._build_dependencies = []
+    self._is_continuous = False
+    self._is_cts = False
+    self._description = ''
+    self._extra_build_args = ''
+
+  def GetName(self):
+    return self._name
+
+  def SetName(self, name):
+    self._name = name
+    return self
+
+  def GetBuildPath(self):
+    """Returns the build path of this test, relative to source tree root."""
+    return self._build_path
+
+  def SetBuildPath(self, build_path):
+    self._build_path = build_path
+    return self
+
+  def GetBuildDependencies(self, options):
+    """Returns a list of dependent build paths."""
+    return self._build_dependencies
+
+  def SetBuildDependencies(self, build_dependencies):
+    self._build_dependencies = build_dependencies
+    return self
+
+  def IsContinuous(self):
+    """Returns true if test is part of the continuous test."""
+    return self._is_continuous
+
+  def SetContinuous(self, continuous):
+    self._is_continuous = continuous
+    return self._is_continuous
+
+  def IsCts(self):
+    """Returns true if test is part of the compatibility test suite"""
+    return self._is_cts
+
+  def SetCts(self, cts):
+    self._is_cts = cts
+    return self
+
+  def GetDescription(self):
+    """Returns a description if available, an empty string otherwise."""
+    return self._description
+
+  def SetDescription(self, desc):
+    self._description = desc
+    return self
+
+  def GetExtraBuildArgs(self):
+    """Returns the extra build args if available, an empty string otherwise."""
+    return self._extra_build_args
+
+  def SetExtraBuildArgs(self, build_args):
+    self._extra_build_args = build_args
+    return self
+
+  def Run(self, options, adb):
+    """Runs the test.
+
+    Subclasses must implement this.
+    Args:
+      options: global command line options
+      adb: asdb_interface to device under test
+    """
+    raise NotImplementedError
diff --git a/testrunner/test_defs/test_walker.py b/testrunner/test_defs/test_walker.py
new file mode 100755
index 0000000..973cac1
--- /dev/null
+++ b/testrunner/test_defs/test_walker.py
@@ -0,0 +1,296 @@
+#!/usr/bin/python2.4
+#
+#
+# Copyright 2009, 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.
+
+"""Utility to find instrumentation test definitions from file system."""
+
+# python imports
+import os
+import re
+
+# local imports
+import android_build
+import android_manifest
+import android_mk
+import instrumentation_test
+import logger
+
+
+class TestWalker(object):
+  """Finds instrumentation tests from filesystem."""
+
+  def FindTests(self, path):
+    """Gets list of Android instrumentation tests found at given path.
+
+    Tests are created from the <instrumentation> tags found in
+    AndroidManifest.xml files relative to the given path.
+
+    FindTests will first scan sub-folders of path for tests. If none are found,
+    it will scan the file system upwards until a AndroidManifest.xml is found
+    or the Android build root is reached.
+
+    Some sample values for path:
+    - a parent directory containing many tests:
+    ie development/samples will return tests for instrumentation's in ApiDemos,
+    ApiDemos/tests, Notepad/tests etc
+    - a java test class file
+    ie ApiDemos/tests/src/../ApiDemosTest.java will return a test for
+    the instrumentation in ApiDemos/tests, with the class name filter set to
+    ApiDemosTest
+    - a java package directory
+    ie ApiDemos/tests/src/com/example/android/apis will return a test for
+    the instrumentation in ApiDemos/tests, with the java package filter set
+    to com.example.android.apis.
+
+    Args:
+      path: file system path to search
+
+    Returns:
+      list of test suites that support operations defined by
+      test_suite.AbstractTestSuite
+    """
+    if not os.path.exists(path):
+      logger.Log('%s does not exist' % path)
+      return []
+    abspath = os.path.abspath(path)
+    # ensure path is in ANDROID_BUILD_ROOT
+    self._build_top = android_build.GetTop()
+    if not self._IsPathInBuildTree(abspath):
+      logger.Log('%s is not a sub-directory of build root %s' %
+                 (path, self._build_top))
+      return []
+
+    # first, assume path is a parent directory, which specifies to run all
+    # tests within this directory
+    tests = self._FindSubTests(abspath, [])
+    if not tests:
+      logger.SilentLog('No tests found within %s, searching upwards' % path)
+      tests = self._FindUpstreamTests(abspath)
+    return tests
+
+  def _IsPathInBuildTree(self, path):
+    """Return true if given path is within current Android build tree.
+
+    Args:
+      path: absolute file system path
+
+    Returns:
+      True if path is within Android build tree
+    """
+    return os.path.commonprefix([self._build_top, path]) == self._build_top
+
+  def _MakePathRelativeToBuild(self, path):
+    """Convert given path to one relative to build tree root.
+
+    Args:
+      path: absolute file system path to convert.
+
+    Returns:
+      The converted path relative to build tree root.
+
+    Raises:
+      ValueError: if path is not within build tree
+    """
+    if not self._IsPathInBuildTree(path):
+      raise ValueError
+    build_path_len = len(self._build_top) + 1
+    # return string with common build_path removed
+    return path[build_path_len:]
+
+  def _FindSubTests(self, path, tests, build_path=None):
+    """Recursively finds all tests within given path.
+
+    Args:
+      path: absolute file system path to check
+      tests: current list of found tests
+      build_path: the parent directory where Android.mk was found
+
+    Returns:
+      updated list of tests
+    """
+    if not os.path.isdir(path):
+      return tests
+    filenames = os.listdir(path)
+    # Try to build as much of original path as possible, so
+    # keep track of upper-most parent directory where Android.mk was found
+    # this is also necessary in case of overlapping tests
+    # ie if a test exists at 'foo' directory  and 'foo/sub', attempting to
+    # build both 'foo' and 'foo/sub' will fail.
+    if not build_path and filenames.count(android_mk.AndroidMK.FILENAME):
+      build_path = self._MakePathRelativeToBuild(path)
+    if filenames.count(android_manifest.AndroidManifest.FILENAME):
+      # found a manifest! now parse it to find the test definition(s)
+      manifest = android_manifest.AndroidManifest(app_path=path)
+      tests.extend(self._CreateSuitesFromManifest(manifest, build_path))
+    for filename in filenames:
+      self._FindSubTests(os.path.join(path, filename), tests, build_path)
+    return tests
+
+  def _FindUpstreamTests(self, path):
+    """Find tests defined upward from given path.
+
+    Args:
+      path: the location to start searching. If it points to a java class file
+        or java package dir, the appropriate test suite filters will be set
+
+    Returns:
+      list of test_suite.AbstractTestSuite found, may be empty
+    """
+    class_name_arg = None
+    package_name = None
+    # if path is java file, populate class name
+    if self._IsJavaFile(path):
+      class_name_arg = self._GetClassNameFromFile(path)
+      logger.SilentLog('Using java test class %s' % class_name_arg)
+    elif self._IsJavaPackage(path):
+      package_name = self._GetPackageNameFromDir(path)
+      logger.SilentLog('Using java package %s' % package_name)
+    manifest = self._FindUpstreamManifest(path)
+    if manifest:
+      logger.SilentLog('Found AndroidManifest at %s' % manifest.GetAppPath())
+      build_path = self._MakePathRelativeToBuild(manifest.GetAppPath())
+      return self._CreateSuitesFromManifest(manifest,
+                                            build_path,
+                                            class_name=class_name_arg,
+                                            java_package_name=package_name)
+
+  def _IsJavaFile(self, path):
+    """Returns true if given file system path is a java file."""
+    return os.path.isfile(path) and self._IsJavaFileName(path)
+
+  def _IsJavaFileName(self, filename):
+    """Returns true if given file name is a java file name."""
+    return os.path.splitext(filename)[1] == '.java'
+
+  def _IsJavaPackage(self, path):
+    """Returns true if given file path is a java package.
+
+    Currently assumes if any java file exists in this directory, than it
+    represents a java package.
+
+    Args:
+      path: file system path of directory to check
+
+    Returns:
+      True if path is a java package
+    """
+    if not os.path.isdir(path):
+      return False
+    for file_name in os.listdir(path):
+      if self._IsJavaFileName(file_name):
+        return True
+    return False
+
+  def _GetClassNameFromFile(self, java_file_path):
+    """Gets the fully qualified java class name from path.
+
+    Args:
+      java_file_path: file system path of java file
+
+    Returns:
+      fully qualified java class name or None.
+    """
+    package_name = self._GetPackageNameFromFile(java_file_path)
+    if package_name:
+      filename = os.path.basename(java_file_path)
+      class_name = os.path.splitext(filename)[0]
+      return '%s.%s' % (package_name, class_name)
+    return None
+
+  def _GetPackageNameFromDir(self, path):
+    """Gets the java package name associated with given directory path.
+
+    Caveat: currently just parses defined java package name from first java
+    file found in directory.
+
+    Args:
+      path: file system path of directory
+
+    Returns:
+      the java package name or None
+    """
+    for filename in os.listdir(path):
+      if self._IsJavaFileName(filename):
+        return self._GetPackageNameFromFile(os.path.join(path, filename))
+
+  def _GetPackageNameFromFile(self, java_file_path):
+    """Gets the java package name associated with given java file path.
+
+    Args:
+      java_file_path: file system path of java file
+
+    Returns:
+      the java package name or None
+    """
+    logger.SilentLog('Looking for java package name in %s' % java_file_path)
+    re_package = re.compile(r'package\s+(.*);')
+    file_handle = open(java_file_path, 'r')
+    for line in file_handle:
+      match = re_package.match(line)
+      if match:
+        return match.group(1)
+    return None
+
+  def _FindUpstreamManifest(self, path):
+    """Recursively searches filesystem upwards for a AndroidManifest file.
+
+    Args:
+      path: file system path to search
+
+    Returns:
+      the AndroidManifest found or None
+    """
+    if (os.path.isdir(path) and
+        os.listdir(path).count(android_manifest.AndroidManifest.FILENAME)):
+      return android_manifest.AndroidManifest(app_path=path)
+    dirpath = os.path.dirname(path)
+    if self._IsPathInBuildTree(path):
+      return self._FindUpstreamManifest(dirpath)
+    logger.Log('AndroidManifest.xml not found')
+    return None
+
+  def _CreateSuitesFromManifest(self, manifest, build_path, class_name=None,
+                                java_package_name=None):
+    """Creates TestSuites from a AndroidManifest.
+
+    Args:
+      manifest: the AndroidManifest
+      build_path: the build path to use for test
+      class_name: optionally, the class filter for the suite
+      java_package_name: optionally, the java package filter for the suite
+
+    Returns:
+      the list of tests created
+    """
+    tests = []
+    for instr_name in manifest.GetInstrumentationNames():
+      pkg_name = manifest.GetPackageName()
+      logger.SilentLog('Found instrumentation %s/%s' % (pkg_name, instr_name))
+      suite = instrumentation_test.InstrumentationTestSuite()
+      suite.SetPackageName(pkg_name)
+      suite.SetBuildPath(build_path)
+      suite.SetRunnerName(instr_name)
+      suite.SetName(pkg_name)
+      suite.SetClassName(class_name)
+      suite.SetJavaPackageFilter(java_package_name)
+      # this is a bit of a hack, assume if 'com.android.cts' is in
+      # package name, this is a cts test
+      # this logic can be removed altogether when cts tests no longer require
+      # custom build steps
+      suite.SetCts(suite.GetPackageName().startswith('com.android.cts'))
+      tests.append(suite)
+    return tests
+
diff --git a/testrunner/test_defs/xml_suite_helper.py b/testrunner/test_defs/xml_suite_helper.py
new file mode 100644
index 0000000..c2ed1dd
--- /dev/null
+++ b/testrunner/test_defs/xml_suite_helper.py
@@ -0,0 +1,152 @@
+#!/usr/bin/python2.4
+#
+#
+# Copyright 2009, 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.
+
+"""Utility to parse suite info from xml."""
+
+# Python imports
+import xml.dom.minidom
+import xml.parsers
+
+# local imports
+import errors
+import logger
+import host_test
+import instrumentation_test
+import native_test
+
+
+class XmlSuiteParser(object):
+  """Parses XML attributes common to all TestSuite's."""
+
+  # common attributes
+  _NAME_ATTR = 'name'
+  _BUILD_ATTR = 'build_path'
+  _CONTINUOUS_ATTR = 'continuous'
+  _CTS_ATTR = 'cts'
+  _DESCRIPTION_ATTR = 'description'
+  _EXTRA_BUILD_ARGS_ATTR = 'extra_build_args'
+
+  def Parse(self, element):
+    """Populates common suite attributes from given suite xml element.
+
+    Args:
+      element: xml node to parse
+    Raises:
+      ParseError if a required attribute is missing.
+    Returns:
+      parsed test suite or None
+    """
+    parser = None
+    if element.nodeName == InstrumentationParser.TAG_NAME:
+      parser = InstrumentationParser()
+    elif element.nodeName == NativeParser.TAG_NAME:
+      parser = NativeParser()
+    elif element.nodeName == HostParser.TAG_NAME:
+      parser = HostParser()
+    else:
+      logger.Log('Unrecognized tag %s found' % element.nodeName)
+      return None
+    test_suite = parser.Parse(element)
+    return test_suite
+
+  def _ParseCommonAttributes(self, suite_element, test_suite):
+    test_suite.SetName(self._ParseAttribute(suite_element, self._NAME_ATTR,
+                                            True))
+    test_suite.SetBuildPath(self._ParseAttribute(suite_element,
+                                                 self._BUILD_ATTR, True))
+    test_suite.SetContinuous(self._ParseAttribute(suite_element,
+                                                  self._CONTINUOUS_ATTR,
+                                                  False, default_value=False))
+    test_suite.SetCts(self._ParseAttribute(suite_element, self._CTS_ATTR, False,
+                                           default_value=False))
+    test_suite.SetDescription(self._ParseAttribute(suite_element,
+                                                   self._DESCRIPTION_ATTR,
+                                                   False,
+                                                   default_value=''))
+    test_suite.SetExtraBuildArgs(self._ParseAttribute(
+        suite_element, self._EXTRA_BUILD_ARGS_ATTR, False, default_value=''))
+
+  def _ParseAttribute(self, suite_element, attribute_name, mandatory,
+                      default_value=None):
+    if suite_element.hasAttribute(attribute_name):
+      value = suite_element.getAttribute(attribute_name)
+    elif mandatory:
+      error_msg = ('Could not find attribute %s in %s' %
+                   (attribute_name, self.TAG_NAME))
+      raise errors.ParseError(msg=error_msg)
+    else:
+      value = default_value
+    return value
+
+
+class InstrumentationParser(XmlSuiteParser):
+  """Parses instrumentation suite attributes from xml."""
+
+  # for legacy reasons, the xml tag name for java (device) tests is 'test'
+  TAG_NAME = 'test'
+
+  _PKG_ATTR = 'package'
+  _RUNNER_ATTR = 'runner'
+  _CLASS_ATTR = 'class'
+  _TARGET_ATTR = 'coverage_target'
+
+  def Parse(self, suite_element):
+    """Creates suite and populate with data from xml element."""
+    suite = instrumentation_test.InstrumentationTestSuite()
+    XmlSuiteParser._ParseCommonAttributes(self, suite_element, suite)
+    suite.SetPackageName(self._ParseAttribute(suite_element, self._PKG_ATTR,
+                                              True))
+    suite.SetRunnerName(self._ParseAttribute(
+        suite_element, self._RUNNER_ATTR, False,
+        instrumentation_test.InstrumentationTestSuite.DEFAULT_RUNNER))
+    suite.SetClassName(self._ParseAttribute(suite_element, self._CLASS_ATTR,
+                                            False))
+    suite.SetTargetName(self._ParseAttribute(suite_element, self._TARGET_ATTR,
+                                             False))
+    return suite
+
+
+class NativeParser(XmlSuiteParser):
+  """Parses native suite attributes from xml."""
+
+  TAG_NAME = 'test-native'
+
+  def Parse(self, suite_element):
+    """Creates suite and populate with data from xml element."""
+    suite = native_test.NativeTestSuite()
+    XmlSuiteParser._ParseCommonAttributes(self, suite_element, suite)
+    return suite
+
+
+class HostParser(XmlSuiteParser):
+  """Parses host suite attributes from xml."""
+
+  TAG_NAME = 'test-host'
+
+  _CLASS_ATTR = 'class'
+  # TODO: consider obsoleting in favor of parsing the Android.mk to find the
+  # jar name
+  _JAR_ATTR = 'jar_name'
+
+  def Parse(self, suite_element):
+    """Creates suite and populate with data from xml element."""
+    suite = host_test.HostTestSuite()
+    XmlSuiteParser._ParseCommonAttributes(self, suite_element, suite)
+    suite.SetClassName(self._ParseAttribute(suite_element, self._CLASS_ATTR,
+                                            True))
+    suite.SetJarName(self._ParseAttribute(suite_element, self._JAR_ATTR, True))
+    return suite
diff --git a/testrunner/tests/AndroidManifest.xml b/testrunner/tests/AndroidManifest.xml
new file mode 100644
index 0000000..e867f73
--- /dev/null
+++ b/testrunner/tests/AndroidManifest.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 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.
+-->
+
+<!-- Sample manifest file used for unit testing -->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.example.android.tests">
+
+    <application>
+        <uses-library android:name="android.test.runner" />
+    </application>
+
+    <instrumentation android:name="android.test.InstrumentationTestRunner"
+                     android:targetPackage="com.example.android"
+                     android:label="Tests"/>
+
+</manifest>
diff --git a/testrunner/tests/android_manifest_tests.py b/testrunner/tests/android_manifest_tests.py
new file mode 100755
index 0000000..2817726
--- /dev/null
+++ b/testrunner/tests/android_manifest_tests.py
@@ -0,0 +1,42 @@
+#!/usr/bin/python2.4
+#
+#
+# Copyright 2009, 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.
+
+import sys
+import unittest
+sys.path.append('../..')
+
+from testrunner import android_manifest
+
+
+class AndroidManifestTest(unittest.TestCase):
+  """Unit tests for AndroidManifest."""
+
+  def setUp(self):
+    """Create android_mainfest for testing from sample file."""
+    self._manifest = android_manifest.AndroidManifest(app_path='.')
+
+  def testGetPackageName(self):
+    self.assertEquals('com.example.android.tests',
+                      self._manifest.GetPackageName())
+
+  def testGetInstrumentationNames(self):
+    self.assertEquals(['android.test.InstrumentationTestRunner'],
+                      self._manifest.GetInstrumentationNames())
+
+
+if __name__ == '__main__':
+  unittest.main()
diff --git a/tools/zoneinfo/generate b/tools/zoneinfo/generate
index 0b087a8..dbb7610 100755
--- a/tools/zoneinfo/generate
+++ b/tools/zoneinfo/generate
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-version=tzdata2008h
+version=tzdata2009s
 
 mkdir data
 
@@ -32,4 +32,6 @@
 
 java ZoneCompactor setup data
 
-cp zoneinfo.dat zoneinfo.idx ../../../data/zoneinfo
+cp zoneinfo.dat zoneinfo.idx ../../../bionic/libc/zoneinfo
+
+echo $version | sed 's/tzdata//' > ../../../bionic/libc/zoneinfo/zoneinfo.version
diff --git a/tools/zoneinfo/tzdata2008h/africa b/tools/zoneinfo/tzdata2008h/africa
deleted file mode 100644
index 34a62b9..0000000
--- a/tools/zoneinfo/tzdata2008h/africa
+++ /dev/null
@@ -1,840 +0,0 @@
-# @(#)africa	8.17
-# <pre>
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-#
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually.  Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Another source occasionally used is Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
-# I found in the UCLA library.
-#
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-#
-# Previous editions of this database used WAT, CAT, SAT, and EAT
-# for +0:00 through +3:00, respectively,
-# but Mark R V Murray reports that
-# `SAST' is the official abbreviation for +2:00 in the country of South Africa,
-# `CAT' is commonly used for +2:00 in countries north of South Africa, and
-# `WAT' is probably the best name for +1:00, as the common phrase for
-# the area that includes Nigeria is ``West Africa''.
-# He has heard of ``Western Sahara Time'' for +0:00 but can find no reference.
-#
-# To make things confusing, `WAT' seems to have been used for -1:00 long ago;
-# I'd guess that this was because people needed _some_ name for -1:00,
-# and at the time, far west Africa was the only major land area in -1:00.
-# This usage is now obsolete, as the last use of -1:00 on the African
-# mainland seems to have been 1976 in Western Sahara.
-#
-# To summarize, the following abbreviations seem to have some currency:
-#	-1:00	WAT	West Africa Time (no longer used)
-#	 0:00	GMT	Greenwich Mean Time
-#	 2:00	CAT	Central Africa Time
-#	 2:00	SAST	South Africa Standard Time
-# and Murray suggests the following abbreviation:
-#	 1:00	WAT	West Africa Time
-# I realize that this leads to `WAT' being used for both -1:00 and 1:00
-# for times before 1976, but this is the best I can think of
-# until we get more information.
-#
-# I invented the following abbreviations; corrections are welcome!
-#	 2:00	WAST	West Africa Summer Time
-#	 2:30	BEAT	British East Africa Time (no longer used)
-#	 2:44:45 BEAUT	British East Africa Unified Time (no longer used)
-#	 3:00	CAST	Central Africa Summer Time (no longer used)
-#	 3:00	SAST	South Africa Summer Time (no longer used)
-#	 3:00	EAT	East Africa Time
-#	 4:00	EAST	East Africa Summer Time (no longer used)
-
-# Algeria
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Algeria	1916	only	-	Jun	14	23:00s	1:00	S
-Rule	Algeria	1916	1919	-	Oct	Sun>=1	23:00s	0	-
-Rule	Algeria	1917	only	-	Mar	24	23:00s	1:00	S
-Rule	Algeria	1918	only	-	Mar	 9	23:00s	1:00	S
-Rule	Algeria	1919	only	-	Mar	 1	23:00s	1:00	S
-Rule	Algeria	1920	only	-	Feb	14	23:00s	1:00	S
-Rule	Algeria	1920	only	-	Oct	23	23:00s	0	-
-Rule	Algeria	1921	only	-	Mar	14	23:00s	1:00	S
-Rule	Algeria	1921	only	-	Jun	21	23:00s	0	-
-Rule	Algeria	1939	only	-	Sep	11	23:00s	1:00	S
-Rule	Algeria	1939	only	-	Nov	19	 1:00	0	-
-Rule	Algeria	1944	1945	-	Apr	Mon>=1	 2:00	1:00	S
-Rule	Algeria	1944	only	-	Oct	 8	 2:00	0	-
-Rule	Algeria	1945	only	-	Sep	16	 1:00	0	-
-Rule	Algeria	1971	only	-	Apr	25	23:00s	1:00	S
-Rule	Algeria	1971	only	-	Sep	26	23:00s	0	-
-Rule	Algeria	1977	only	-	May	 6	 0:00	1:00	S
-Rule	Algeria	1977	only	-	Oct	21	 0:00	0	-
-Rule	Algeria	1978	only	-	Mar	24	 1:00	1:00	S
-Rule	Algeria	1978	only	-	Sep	22	 3:00	0	-
-Rule	Algeria	1980	only	-	Apr	25	 0:00	1:00	S
-Rule	Algeria	1980	only	-	Oct	31	 2:00	0	-
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
-# more precise 0:09:21.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Algiers	0:12:12 -	LMT	1891 Mar 15 0:01
-			0:09:21	-	PMT	1911 Mar 11    # Paris Mean Time
-			0:00	Algeria	WE%sT	1940 Feb 25 2:00
-			1:00	Algeria	CE%sT	1946 Oct  7
-			0:00	-	WET	1956 Jan 29
-			1:00	-	CET	1963 Apr 14
-			0:00	Algeria	WE%sT	1977 Oct 21
-			1:00	Algeria	CE%sT	1979 Oct 26
-			0:00	Algeria	WE%sT	1981 May
-			1:00	-	CET
-
-# Angola
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Luanda	0:52:56	-	LMT	1892
-			0:52:04	-	AOT	1911 May 26 # Angola Time
-			1:00	-	WAT
-
-# Benin
-# Whitman says they switched to 1:00 in 1946, not 1934;
-# go with Shanks & Pottenger.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Porto-Novo	0:10:28	-	LMT	1912
-			0:00	-	GMT	1934 Feb 26
-			1:00	-	WAT
-
-# Botswana
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Gaborone	1:43:40 -	LMT	1885
-			2:00	-	CAT	1943 Sep 19 2:00
-			2:00	1:00	CAST	1944 Mar 19 2:00
-			2:00	-	CAT
-
-# Burkina Faso
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Ouagadougou	-0:06:04 -	LMT	1912
-			 0:00	-	GMT
-
-# Burundi
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Bujumbura	1:57:28	-	LMT	1890
-			2:00	-	CAT
-
-# Cameroon
-# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Douala	0:38:48	-	LMT	1912
-			1:00	-	WAT
-
-# Cape Verde
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Atlantic/Cape_Verde -1:34:04 -	LMT	1907			# Praia
-			-2:00	-	CVT	1942 Sep
-			-2:00	1:00	CVST	1945 Oct 15
-			-2:00	-	CVT	1975 Nov 25 2:00
-			-1:00	-	CVT
-
-# Central African Republic
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Bangui	1:14:20	-	LMT	1912
-			1:00	-	WAT
-
-# Chad
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Ndjamena	1:00:12 -	LMT	1912
-			1:00	-	WAT	1979 Oct 14
-			1:00	1:00	WAST	1980 Mar  8
-			1:00	-	WAT
-
-# Comoros
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Indian/Comoro	2:53:04 -	LMT	1911 Jul   # Moroni, Gran Comoro
-			3:00	-	EAT
-
-# Democratic Republic of Congo
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Kinshasa	1:01:12 -	LMT	1897 Nov 9
-			1:00	-	WAT
-Zone Africa/Lubumbashi	1:49:52 -	LMT	1897 Nov 9
-			2:00	-	CAT
-
-# Republic of the Congo
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Brazzaville	1:01:08 -	LMT	1912
-			1:00	-	WAT
-
-# Cote D'Ivoire
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Abidjan	-0:16:08 -	LMT	1912
-			 0:00	-	GMT
-
-# Djibouti
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Djibouti	2:52:36 -	LMT	1911 Jul
-			3:00	-	EAT
-
-###############################################################################
-
-# Egypt
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Egypt	1940	only	-	Jul	15	0:00	1:00	S
-Rule	Egypt	1940	only	-	Oct	 1	0:00	0	-
-Rule	Egypt	1941	only	-	Apr	15	0:00	1:00	S
-Rule	Egypt	1941	only	-	Sep	16	0:00	0	-
-Rule	Egypt	1942	1944	-	Apr	 1	0:00	1:00	S
-Rule	Egypt	1942	only	-	Oct	27	0:00	0	-
-Rule	Egypt	1943	1945	-	Nov	 1	0:00	0	-
-Rule	Egypt	1945	only	-	Apr	16	0:00	1:00	S
-Rule	Egypt	1957	only	-	May	10	0:00	1:00	S
-Rule	Egypt	1957	1958	-	Oct	 1	0:00	0	-
-Rule	Egypt	1958	only	-	May	 1	0:00	1:00	S
-Rule	Egypt	1959	1981	-	May	 1	1:00	1:00	S
-Rule	Egypt	1959	1965	-	Sep	30	3:00	0	-
-Rule	Egypt	1966	1994	-	Oct	 1	3:00	0	-
-Rule	Egypt	1982	only	-	Jul	25	1:00	1:00	S
-Rule	Egypt	1983	only	-	Jul	12	1:00	1:00	S
-Rule	Egypt	1984	1988	-	May	 1	1:00	1:00	S
-Rule	Egypt	1989	only	-	May	 6	1:00	1:00	S
-Rule	Egypt	1990	1994	-	May	 1	1:00	1:00	S
-# IATA (after 1990) says transitions are at 0:00.
-# Go with IATA starting in 1995, except correct 1995 entry from 09-30 to 09-29.
-Rule	Egypt	1995	max	-	Apr	lastFri	 0:00s	1:00	S
-Rule	Egypt	1995	2005	-	Sep	lastThu	23:00s	0	-
-# From Steffen Thorsen (2006-09-19):
-# The Egyptian Gazette, issue 41,090 (2006-09-18), page 1, reports:
-# Egypt will turn back clocks by one hour at the midnight of Thursday
-# after observing the daylight saving time since May.
-# http://news.gom.com.eg/gazette/pdf/2006/09/18/01.pdf
-Rule	Egypt	2006	only	-	Sep	21	23:00s	0	-
-# From Dirk Losch (2007-08-14):
-# I received a mail from an airline which says that the daylight
-# saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
-# From Jesper Norgaard Welen (2007-08-15): [The following agree:]
-# http://www.nentjes.info/Bill/bill5.htm 
-# http://www.timeanddate.com/worldclock/city.html?n=53
-# From Steffen Thorsen (2007-09-04): The official information...:
-# http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm
-Rule	Egypt	2007	only	-	Sep	Thu>=1	23:00s	0	-
-# From Abdelrahman Hassan (2007-09-06):
-# Due to the Hijri (lunar Islamic calendar) year being 11 days shorter
-# than the year of the Gregorian calendar, Ramadan shifts earlier each
-# year. This year it will be observed September 13 (September is quite
-# hot in Egypt), and the idea is to make fasting easier for workers by
-# shifting business hours one hour out of daytime heat. Consequently,
-# unless discontinued, next DST may end Thursday 28 August 2008.
-# From Paul Eggert (2007-08-17):
-# For lack of better info, assume the new rule is last Thursday in August.
-Rule	Egypt	2008	max	-	Aug	lastThu	23:00s	0	-
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Cairo	2:05:00 -	LMT	1900 Oct
-			2:00	Egypt	EE%sT
-
-# Equatorial Guinea
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Malabo	0:35:08 -	LMT	1912
-			0:00	-	GMT	1963 Dec 15
-			1:00	-	WAT
-
-# Eritrea
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Asmara	2:35:32 -	LMT	1870
-			2:35:32	-	AMT	1890	      # Asmara Mean Time
-			2:35:20	-	ADMT	1936 May 5    # Adis Dera MT
-			3:00	-	EAT
-
-# Ethiopia
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time zones
-# between 1870 and 1890, and that they merged to 38E50 (2:35:20) in 1890.
-# We'll guess that 38E50 is for Adis Dera.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Addis_Ababa	2:34:48 -	LMT	1870
-			2:35:20	-	ADMT	1936 May 5    # Adis Dera MT
-			3:00	-	EAT
-
-# Gabon
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Libreville	0:37:48 -	LMT	1912
-			1:00	-	WAT
-
-# Gambia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Banjul	-1:06:36 -	LMT	1912
-			-1:06:36 -	BMT	1935	# Banjul Mean Time
-			-1:00	-	WAT	1964
-			 0:00	-	GMT
-
-# Ghana
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# Whitman says DST was observed from 1931 to ``the present'';
-# go with Shanks & Pottenger.
-Rule	Ghana	1936	1942	-	Sep	 1	0:00	0:20	GHST
-Rule	Ghana	1936	1942	-	Dec	31	0:00	0	GMT
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Accra	-0:00:52 -	LMT	1918
-			 0:00	Ghana	%s
-
-# Guinea
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Conakry	-0:54:52 -	LMT	1912
-			 0:00	-	GMT	1934 Feb 26
-			-1:00	-	WAT	1960
-			 0:00	-	GMT
-
-# Guinea-Bissau
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Bissau	-1:02:20 -	LMT	1911 May 26
-			-1:00	-	WAT	1975
-			 0:00	-	GMT
-
-# Kenya
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Nairobi	2:27:16	-	LMT	1928 Jul
-			3:00	-	EAT	1930
-			2:30	-	BEAT	1940
-			2:44:45	-	BEAUT	1960
-			3:00	-	EAT
-
-# Lesotho
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Maseru	1:50:00 -	LMT	1903 Mar
-			2:00	-	SAST	1943 Sep 19 2:00
-			2:00	1:00	SAST	1944 Mar 19 2:00
-			2:00	-	SAST
-
-# Liberia
-# From Paul Eggert (2006-03-22):
-# In 1972 Liberia was the last country to switch
-# from a UTC offset that was not a multiple of 15 or 20 minutes.
-# Howse reports that it was in honor of their president's birthday.
-# Shank & Pottenger report the date as May 1, whereas Howse reports Jan;
-# go with Shanks & Pottenger.
-# For Liberia before 1972, Shanks & Pottenger report -0:44, whereas Howse and
-# Whitman each report -0:44:30; go with the more precise figure.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Monrovia	-0:43:08 -	LMT	1882
-			-0:43:08 -	MMT	1919 Mar # Monrovia Mean Time
-			-0:44:30 -	LRT	1972 May # Liberia Time
-			 0:00	-	GMT
-
-###############################################################################
-
-# Libya
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Libya	1951	only	-	Oct	14	2:00	1:00	S
-Rule	Libya	1952	only	-	Jan	 1	0:00	0	-
-Rule	Libya	1953	only	-	Oct	 9	2:00	1:00	S
-Rule	Libya	1954	only	-	Jan	 1	0:00	0	-
-Rule	Libya	1955	only	-	Sep	30	0:00	1:00	S
-Rule	Libya	1956	only	-	Jan	 1	0:00	0	-
-Rule	Libya	1982	1984	-	Apr	 1	0:00	1:00	S
-Rule	Libya	1982	1985	-	Oct	 1	0:00	0	-
-Rule	Libya	1985	only	-	Apr	 6	0:00	1:00	S
-Rule	Libya	1986	only	-	Apr	 4	0:00	1:00	S
-Rule	Libya	1986	only	-	Oct	 3	0:00	0	-
-Rule	Libya	1987	1989	-	Apr	 1	0:00	1:00	S
-Rule	Libya	1987	1989	-	Oct	 1	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Tripoli	0:52:44 -	LMT	1920
-			1:00	Libya	CE%sT	1959
-			2:00	-	EET	1982
-			1:00	Libya	CE%sT	1990 May  4
-# The following entries are from Shanks & Pottenger;
-# the IATA SSIM data contain some obvious errors.
-			2:00	-	EET	1996 Sep 30
-			1:00	-	CET	1997 Apr  4
-			1:00	1:00	CEST	1997 Oct  4
-			2:00	-	EET
-
-# Madagascar
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Indian/Antananarivo 3:10:04 -	LMT	1911 Jul
-			3:00	-	EAT	1954 Feb 27 23:00s
-			3:00	1:00	EAST	1954 May 29 23:00s
-			3:00	-	EAT
-
-# Malawi
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Blantyre	2:20:00 -	LMT	1903 Mar
-			2:00	-	CAT
-
-# Mali
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Bamako	-0:32:00 -	LMT	1912
-			 0:00	-	GMT	1934 Feb 26
-			-1:00	-	WAT	1960 Jun 20
-			 0:00	-	GMT
-
-# Mauritania
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Nouakchott	-1:03:48 -	LMT	1912
-			 0:00	-	GMT	1934 Feb 26
-			-1:00	-	WAT	1960 Nov 28
-			 0:00	-	GMT
-
-# Mauritius
-
-# From Steffen Thorsen (2008-06-25):
-# Mauritius plans to observe DST from 2008-11-01 to 2009-03-31 on a trial
-# basis....
-# It seems that Mauritius observed daylight saving time from 1982-10-10 to 
-# 1983-03-20 as well, but that was not successful....
-# http://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
-
-# From Alex Krivenyshev (2008-06-25):
-# http://economicdevelopment.gov.mu/portal/site/Mainhomepage/menuitem.a42b24128104d9845dabddd154508a0c/?content_id=0a7cee8b5d69a110VgnVCM1000000a04a8c0RCRD
-
-# From Arthur David Olson (2008-06-30):
-# The www.timeanddate.com article cited by Steffen Thorsen notes that "A
-# final decision has yet to be made on the times that daylight saving
-# would begin and end on these dates." As a place holder, use midnight.
-
-# From Paul Eggert (2008-06-30):
-# Follow Thorsen on DST in 1982/1983, instead of Shanks & Pottenger.
-
-# From Steffen Thorsen (2008-07-10):
-# According to
-# <a href="http://www.lexpress.mu/display_article.php?news_id=111216">
-# http://www.lexpress.mu/display_article.php?news_id=111216
-# </a>
-# (in French), Mauritius will start and end their DST a few days earlier
-# than previously announced (2008-11-01 to 2009-03-31).  The new start
-# date is 2008-10-26 at 02:00 and the new end date is 2009-03-27 (no time
-# given, but it is probably at either 2 or 3 wall clock time).
-# 
-# A little strange though, since the article says that they moved the date 
-# to align itself with Europe and USA which also change time on that date, 
-# but that means they have not paid attention to what happened in 
-# USA/Canada last year (DST ends first Sunday in November). I also wonder 
-# why that they end on a Friday, instead of aligning with Europe which 
-# changes two days later.
-
-# From Alex Krivenyshev (2008-07-11):
-# Seems that English language article "The revival of daylight saving
-# time:  Energy conservation?"-# No. 16578 (07/11/2008) was originally
-# published on Monday, June 30, 2008...
-#
-# I guess that article in French "Le gouvernement avance l'introduction
-# de l'heure d'ete" stating that DST in Mauritius starting on October 26
-# and ending on March 27, 2009 is the most recent one.
-# ...
-# <a href="http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html">
-# http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html
-# </a>
-
-# From Riad M. Hossen Ally (2008-08-03):
-# The Government of Mauritius weblink
-# <a href="http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=3D4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD">
-# http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=3D4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD
-# </a>
-# Cabinet Decision of July 18th, 2008 states as follows:
-#
-# 4. ...Cabinet has agreed to the introduction into the National Assembly
-# of the Time Bill which provides for the introduction of summer time in
-# Mauritius. The summer time period which will be of one hour ahead of
-# the standard time, will be aligned with that in Europe and the United
-# States of America. It will start at two o'clock in the morning on the
-# last Sunday of October and will end at two o'clock in the morning on
-# the last Sunday of March the following year. The summer time for the
-# year 2008 - 2009 will, therefore, be effective as from 26 October 2008
-# and end on 29 March 2009.
-
-# From Ed Maste (2008-10-07):
-# THE TIME BILL (No. XXVII of 2008) Explanatory Memorandum states the
-# beginning / ending of summer time is 2 o'clock standard time in the
-# morning of the last Sunday of October / last Sunday of March.
-# <a href="http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf">
-# http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf
-# </a>
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule Mauritius	1982	only	-	Oct	10	0:00	1:00	S
-Rule Mauritius	1983	only	-	Mar	21	0:00	0	-
-Rule Mauritius	2008	max	-	Oct	lastSun	2:00s	1:00	S
-Rule Mauritius	2009	max	-	Mar	lastSun	2:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Indian/Mauritius	3:50:00 -	LMT	1907		# Port Louis
-			4:00 Mauritius	MU%sT	# Mauritius Time
-# Agalega Is, Rodriguez
-# no information; probably like Indian/Mauritius
-
-# Mayotte
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Indian/Mayotte	3:00:56 -	LMT	1911 Jul	# Mamoutzou
-			3:00	-	EAT
-
-# Morocco
-# See the `europe' file for Spanish Morocco (Africa/Ceuta).
-
-# From Alex Krivenyshev (2008-05-09):
-# Here is an article that Morocco plan to introduce Daylight Saving Time between
-# 1 June, 2008 and 27 September, 2008.
-#
-# "... Morocco is to save energy by adjusting its clock during summer so it will
-# be one hour ahead of GMT between 1 June and 27 September, according to
-# Communication Minister and Gov ernment Spokesman, Khalid Naciri...."
-#
-# <a href="http://www.worldtimezone.net/dst_news/dst_news_morocco01.html">
-# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
-# </a>
-# OR
-# <a href="http://en.afrik.com/news11892.html">
-# http://en.afrik.com/news11892.html
-# </a>
-
-# From Alex Krivenyshev (2008-05-09):
-# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse:
-# <a href="http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view">
-# http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view
-# </a>
-#
-# Morocco shifts to daylight time on June 1st through September 27, Govt.
-# spokesman.
-
-# From Patrice Scattolin (2008-05-09):
-# According to this article:
-# <a href="http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html">
-# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
-# </a>
-# (and republished here:
-# <a href="http://www.actu.ma/heure-dete-comment_i127896_0.html">
-# http://www.actu.ma/heure-dete-comment_i127896_0.html
-# </a>
-# )
-# the changes occurs at midnight:
-#
-# saturday night may 31st at midnight (which in french is to be
-# intrepreted as the night between saturday and sunday)
-# sunday night the 28th  at midnight
-#
-# Seeing that the 28th is monday, I am guessing that she intends to say
-# the midnight of the 28th which is the midnight between sunday and
-# monday, which jives with other sources that say that it's inclusive
-# june1st to sept 27th.
-#
-# The decision was taken by decree *2-08-224 *but I can't find the decree
-# published on the web.
-#
-# It's also confirmed here:
-# <a href="http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm">
-# http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm
-# </a>
-# on a government portal as being  between june 1st and sept 27th (not yet
-# posted in english).
-#
-# The following google query will generate many relevant hits:
-# <a href="http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search">
-# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
-# </a>
-
-# From Alex Krivenyshev (2008-05-09):
-# Is Western Sahara (part which administrated by Morocco) going to follow
-# Morocco DST changes?  Any information?  What about other part of
-# Western Sahara - under administration of POLISARIO Front (also named
-# SADR Saharawi Arab Democratic Republic)?
-
-# From Arthur David Olson (2008-05-09):
-# XXX--guess that it is only Morocco for now; guess only 2008 for now.
-
-# From Steffen Thorsen (2008-08-27):
-# Morocco will change the clocks back on the midnight between August 31 
-# and September 1. They originally planned to observe DST to near the end 
-# of September:
-#
-# One article about it (in French):
-# <a href="http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default">
-# http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
-# </a>
-#
-# We have some further details posted here:
-# <a href="http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html">
-# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
-# </a>
-# RULE	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-
-Rule	Morocco	1939	only	-	Sep	12	 0:00	1:00	S
-Rule	Morocco	1939	only	-	Nov	19	 0:00	0	-
-Rule	Morocco	1940	only	-	Feb	25	 0:00	1:00	S
-Rule	Morocco	1945	only	-	Nov	18	 0:00	0	-
-Rule	Morocco	1950	only	-	Jun	11	 0:00	1:00	S
-Rule	Morocco	1950	only	-	Oct	29	 0:00	0	-
-Rule	Morocco	1967	only	-	Jun	 3	12:00	1:00	S
-Rule	Morocco	1967	only	-	Oct	 1	 0:00	0	-
-Rule	Morocco	1974	only	-	Jun	24	 0:00	1:00	S
-Rule	Morocco	1974	only	-	Sep	 1	 0:00	0	-
-Rule	Morocco	1976	1977	-	May	 1	 0:00	1:00	S
-Rule	Morocco	1976	only	-	Aug	 1	 0:00	0	-
-Rule	Morocco	1977	only	-	Sep	28	 0:00	0	-
-Rule	Morocco	1978	only	-	Jun	 1	 0:00	1:00	S
-Rule	Morocco	1978	only	-	Aug	 4	 0:00	0	-
-Rule	Morocco	2008	only	-	Jun	 1	 0:00	1:00	S
-Rule	Morocco	2008	only	-	Sep	 1	 0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Casablanca	-0:30:20 -	LMT	1913 Oct 26
-			 0:00	Morocco	WE%sT	1984 Mar 16
-			 1:00	-	CET	1986
-			 0:00	Morocco	WE%sT
-# Western Sahara
-Zone Africa/El_Aaiun	-0:52:48 -	LMT	1934 Jan
-			-1:00	-	WAT	1976 Apr 14
-			 0:00	-	WET
-
-# Mozambique
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Maputo	2:10:20 -	LMT	1903 Mar
-			2:00	-	CAT
-
-# Namibia
-# The 1994-04-03 transition is from Shanks & Pottenger.
-# Shanks & Pottenger report no DST after 1998-04; go with IATA.
-
-# From Petronella Sibeene (2007-03-30) in
-# <http://allafrica.com/stories/200703300178.html>:
-# While the entire country changes its time, Katima Mulilo and other
-# settlements in Caprivi unofficially will not because the sun there
-# rises and sets earlier compared to other regions.  Chief of
-# Forecasting Riaan van Zyl explained that the far eastern parts of
-# the country are close to 40 minutes earlier in sunrise than the rest
-# of the country.
-# 
-# From Paul Eggert (2007-03-31):
-# Apparently the Caprivi Strip informally observes Botswana time, but
-# we have no details.  In the meantime people there can use Africa/Gaborone.
-
-# RULE	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Namibia	1994	max	-	Sep	Sun>=1	2:00	1:00	S
-Rule	Namibia	1995	max	-	Apr	Sun>=1	2:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Windhoek	1:08:24 -	LMT	1892 Feb 8
-			1:30	-	SWAT	1903 Mar	# SW Africa Time
-			2:00	-	SAST	1942 Sep 20 2:00
-			2:00	1:00	SAST	1943 Mar 21 2:00
-			2:00	-	SAST	1990 Mar 21 # independence
-			2:00	-	CAT	1994 Apr  3
-			1:00	Namibia	WA%sT
-
-# Niger
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Niamey	 0:08:28 -	LMT	1912
-			-1:00	-	WAT	1934 Feb 26
-			 0:00	-	GMT	1960
-			 1:00	-	WAT
-
-# Nigeria
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Lagos	0:13:36 -	LMT	1919 Sep
-			1:00	-	WAT
-
-# Reunion
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Indian/Reunion	3:41:52 -	LMT	1911 Jun	# Saint-Denis
-			4:00	-	RET	# Reunion Time
-#
-# Scattered Islands (Iles Eparses) administered from Reunion are as follows.
-# The following information about them is taken from
-# Iles Eparses (www.outre-mer.gouv.fr/domtom/ile.htm, 1997-07-22, in French;
-# no longer available as of 1999-08-17).
-# We have no info about their time zone histories.
-#
-# Bassas da India - uninhabited
-# Europa Island - inhabited from 1905 to 1910 by two families
-# Glorioso Is - inhabited until at least 1958
-# Juan de Nova - uninhabited
-# Tromelin - inhabited until at least 1958
-
-# Rwanda
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Kigali	2:00:16 -	LMT	1935 Jun
-			2:00	-	CAT
-
-# St Helena
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Atlantic/St_Helena	-0:22:48 -	LMT	1890		# Jamestown
-			-0:22:48 -	JMT	1951	# Jamestown Mean Time
-			 0:00	-	GMT
-# The other parts of the St Helena territory are similar:
-#	Tristan da Cunha: on GMT, say Whitman and the CIA
-#	Ascension: on GMT, says usno1995 and the CIA
-#	Gough (scientific station since 1955; sealers wintered previously):
-#		on GMT, says the CIA
-#	Inaccessible, Nightingale: no information, but probably GMT
-
-# Sao Tome and Principe
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Sao_Tome	 0:26:56 -	LMT	1884
-			-0:36:32 -	LMT	1912	# Lisbon Mean Time
-			 0:00	-	GMT
-
-# Senegal
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Dakar	-1:09:44 -	LMT	1912
-			-1:00	-	WAT	1941 Jun
-			 0:00	-	GMT
-
-# Seychelles
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Indian/Mahe	3:41:48 -	LMT	1906 Jun	# Victoria
-			4:00	-	SCT	# Seychelles Time
-# From Paul Eggert (2001-05-30):
-# Aldabra, Farquhar, and Desroches, originally dependencies of the
-# Seychelles, were transferred to the British Indian Ocean Territory
-# in 1965 and returned to Seychelles control in 1976.  We don't know
-# whether this affected their time zone, so omit this for now.
-# Possibly the islands were uninhabited.
-
-# Sierra Leone
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# Whitman gives Mar 31 - Aug 31 for 1931 on; go with Shanks & Pottenger.
-Rule	SL	1935	1942	-	Jun	 1	0:00	0:40	SLST
-Rule	SL	1935	1942	-	Oct	 1	0:00	0	WAT
-Rule	SL	1957	1962	-	Jun	 1	0:00	1:00	SLST
-Rule	SL	1957	1962	-	Sep	 1	0:00	0	GMT
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Freetown	-0:53:00 -	LMT	1882
-			-0:53:00 -	FMT	1913 Jun # Freetown Mean Time
-			-1:00	SL	%s	1957
-			 0:00	SL	%s
-
-# Somalia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Mogadishu	3:01:28 -	LMT	1893 Nov
-			3:00	-	EAT	1931
-			2:30	-	BEAT	1957
-			3:00	-	EAT
-
-# South Africa
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	SA	1942	1943	-	Sep	Sun>=15	2:00	1:00	-
-Rule	SA	1943	1944	-	Mar	Sun>=15	2:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Johannesburg 1:52:00 -	LMT	1892 Feb 8
-			1:30	-	SAST	1903 Mar
-			2:00	SA	SAST
-# Marion and Prince Edward Is
-# scientific station since 1947
-# no information
-
-# Sudan
-#
-# From <a href="http://www.sunanews.net/sn13jane.html">
-# Sudan News Agency (2000-01-13)
-# </a>, also reported by Michael De Beukelaer-Dossche via Steffen Thorsen:
-# Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
-# Saturday....  This was announced Thursday by Caretaker State Minister for
-# Manpower Abdul-Rahman Nur-Eddin.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Sudan	1970	only	-	May	 1	0:00	1:00	S
-Rule	Sudan	1970	1985	-	Oct	15	0:00	0	-
-Rule	Sudan	1971	only	-	Apr	30	0:00	1:00	S
-Rule	Sudan	1972	1985	-	Apr	lastSun	0:00	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Khartoum	2:10:08 -	LMT	1931
-			2:00	Sudan	CA%sT	2000 Jan 15 12:00
-			3:00	-	EAT
-
-# Swaziland
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Mbabane	2:04:24 -	LMT	1903 Mar
-			2:00	-	SAST
-
-# Tanzania
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Africa/Dar_es_Salaam 2:37:08 -	LMT	1931
-			3:00	-	EAT	1948
-			2:44:45	-	BEAUT	1961
-			3:00	-	EAT
-
-# Togo
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Lome	0:04:52 -	LMT	1893
-			0:00	-	GMT
-
-# Tunisia
-
-# From Gwillim Law (2005-04-30):
-# My correspondent, Risto Nykanen, has alerted me to another adoption of DST,
-# this time in Tunisia.  According to Yahoo France News
-# <http://fr.news.yahoo.com/050426/5/4dumk.html>, in a story attributed to AP
-# and dated 2005-04-26, "Tunisia has decided to advance its official time by
-# one hour, starting on Sunday, May 1.  Henceforth, Tunisian time will be
-# UTC+2 instead of UTC+1.  The change will take place at 23:00 UTC next
-# Saturday."  (My translation)
-#
-# From Oscar van Vlijmen (2005-05-02):
-# LaPresse, the first national daily newspaper ...
-# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html>
-# ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30,
-# 1h standard time.
-#
-# From Atef Loukil (2006-03-28):
-# The daylight saving time will be the same each year:
-# Beginning      : the last Sunday of March at 02:00
-# Ending         : the last Sunday of October at 03:00 ...
-# http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=1188&Itemid=50
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Tunisia	1939	only	-	Apr	15	23:00s	1:00	S
-Rule	Tunisia	1939	only	-	Nov	18	23:00s	0	-
-Rule	Tunisia	1940	only	-	Feb	25	23:00s	1:00	S
-Rule	Tunisia	1941	only	-	Oct	 6	 0:00	0	-
-Rule	Tunisia	1942	only	-	Mar	 9	 0:00	1:00	S
-Rule	Tunisia	1942	only	-	Nov	 2	 3:00	0	-
-Rule	Tunisia	1943	only	-	Mar	29	 2:00	1:00	S
-Rule	Tunisia	1943	only	-	Apr	17	 2:00	0	-
-Rule	Tunisia	1943	only	-	Apr	25	 2:00	1:00	S
-Rule	Tunisia	1943	only	-	Oct	 4	 2:00	0	-
-Rule	Tunisia	1944	1945	-	Apr	Mon>=1	 2:00	1:00	S
-Rule	Tunisia	1944	only	-	Oct	 8	 0:00	0	-
-Rule	Tunisia	1945	only	-	Sep	16	 0:00	0	-
-Rule	Tunisia	1977	only	-	Apr	30	 0:00s	1:00	S
-Rule	Tunisia	1977	only	-	Sep	24	 0:00s	0	-
-Rule	Tunisia	1978	only	-	May	 1	 0:00s	1:00	S
-Rule	Tunisia	1978	only	-	Oct	 1	 0:00s	0	-
-Rule	Tunisia	1988	only	-	Jun	 1	 0:00s	1:00	S
-Rule	Tunisia	1988	1990	-	Sep	lastSun	 0:00s	0	-
-Rule	Tunisia	1989	only	-	Mar	26	 0:00s	1:00	S
-Rule	Tunisia	1990	only	-	May	 1	 0:00s	1:00	S
-Rule	Tunisia	2005	only	-	May	 1	 0:00s	1:00	S
-Rule	Tunisia	2005	only	-	Sep	30	 1:00s	0	-
-Rule	Tunisia	2006	max	-	Mar	lastSun	 2:00s	1:00	S
-Rule	Tunisia	2006	max	-	Oct	lastSun	 2:00s	0	-
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
-# more precise 0:09:21.
-# Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Tunis	0:40:44 -	LMT	1881 May 12
-			0:09:21	-	PMT	1911 Mar 11    # Paris Mean Time
-			1:00	Tunisia	CE%sT
-
-# Uganda
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Kampala	2:09:40 -	LMT	1928 Jul
-			3:00	-	EAT	1930
-			2:30	-	BEAT	1948
-			2:44:45	-	BEAUT	1957
-			3:00	-	EAT
-
-# Zambia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Lusaka	1:53:08 -	LMT	1903 Mar
-			2:00	-	CAT
-
-# Zimbabwe
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Africa/Harare	2:04:12 -	LMT	1903 Mar
-			2:00	-	CAT
diff --git a/tools/zoneinfo/tzdata2008h/antarctica b/tools/zoneinfo/tzdata2008h/antarctica
deleted file mode 100644
index ef279cb..0000000
--- a/tools/zoneinfo/tzdata2008h/antarctica
+++ /dev/null
@@ -1,327 +0,0 @@
-# @(#)antarctica	8.4
-# <pre>
-
-# From Paul Eggert (1999-11-15):
-# To keep things manageable, we list only locations occupied year-round; see
-# <a href="http://www.comnap.aq/comnap/comnap.nsf/P/Stations/">
-# COMNAP - Stations and Bases
-# </a>
-# and
-# <a href="http://www.spri.cam.ac.uk/bob/periant.htm">
-# Summary of the Peri-Antarctic Islands (1998-07-23)
-# </a>
-# for information.
-# Unless otherwise specified, we have no time zone information.
-#
-# Except for the French entries,
-# I made up all time zone abbreviations mentioned here; corrections welcome!
-# FORMAT is `zzz' and GMTOFF is 0 for locations while uninhabited.
-
-# These rules are stolen from the `europe' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	RussAQ	1981	1984	-	Apr	 1	 0:00	1:00	S
-Rule	RussAQ	1981	1983	-	Oct	 1	 0:00	0	-
-Rule	RussAQ	1984	1991	-	Sep	lastSun	 2:00s	0	-
-Rule	RussAQ	1985	1991	-	Mar	lastSun	 2:00s	1:00	S
-Rule	RussAQ	1992	only	-	Mar	lastSat	 23:00	1:00	S
-Rule	RussAQ	1992	only	-	Sep	lastSat	 23:00	0	-
-Rule	RussAQ	1993	max	-	Mar	lastSun	 2:00s	1:00	S
-Rule	RussAQ	1993	1995	-	Sep	lastSun	 2:00s	0	-
-Rule	RussAQ	1996	max	-	Oct	lastSun	 2:00s	0	-
-
-# These rules are stolen from the `southamerica' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	ArgAQ	1964	1966	-	Mar	 1	0:00	0	-
-Rule	ArgAQ	1964	1966	-	Oct	15	0:00	1:00	S
-Rule	ArgAQ	1967	only	-	Apr	 2	0:00	0	-
-Rule	ArgAQ	1967	1968	-	Oct	Sun>=1	0:00	1:00	S
-Rule	ArgAQ	1968	1969	-	Apr	Sun>=1	0:00	0	-
-Rule	ArgAQ	1974	only	-	Jan	23	0:00	1:00	S
-Rule	ArgAQ	1974	only	-	May	 1	0:00	0	-
-Rule	ChileAQ	1972	1986	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1974	1987	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1987	only	-	Apr	12	3:00u	0	-
-Rule	ChileAQ	1988	1989	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1988	only	-	Oct	Sun>=1	4:00u	1:00	S
-Rule	ChileAQ	1989	only	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1990	only	-	Mar	18	3:00u	0	-
-Rule	ChileAQ	1990	only	-	Sep	16	4:00u	1:00	S
-Rule	ChileAQ	1991	1996	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1991	1997	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	1997	only	-	Mar	30	3:00u	0	-
-Rule	ChileAQ	1998	only	-	Mar	Sun>=9	3:00u	0	-
-Rule	ChileAQ	1998	only	-	Sep	27	4:00u	1:00	S
-Rule	ChileAQ	1999	only	-	Apr	 4	3:00u	0	-
-Rule	ChileAQ	1999	max	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	ChileAQ	2000	max	-	Mar	Sun>=9	3:00u	0	-
-
-
-# Argentina - year-round bases
-# Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
-# Esperanza, San Martin Land, -6323-05659, since 1952-12-17
-# Jubany, Potter Peninsula, King George Island, -6414-0602320, since 1982-01
-# Marambio, Seymour I, -6414-05637, since 1969-10-29
-# Orcadas, Laurie I, -6016-04444, since 1904-02-22
-# San Martin, Debenham I, -6807-06708, since 1951-03-21
-#	(except 1960-03 / 1976-03-21)
-
-# Australia - territories
-# Heard Island, McDonald Islands (uninhabited)
-#	previously sealers and scientific personnel wintered
-#	<a href="http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html">
-#	Margaret Turner reports
-#	</a> (1999-09-30) that they're UTC+5, with no DST;
-#	presumably this is when they have visitors.
-#
-# year-round bases
-# Casey, Bailey Peninsula, -6617+11032, since 1969
-# Davis, Vestfold Hills, -6835+07759, since 1957-01-13
-#	(except 1964-11 - 1969-02)
-# Mawson, Holme Bay, -6736+06253, since 1954-02-13
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Antarctica/Casey	0	-	zzz	1969
-			8:00	-	WST	# Western (Aus) Standard Time
-Zone Antarctica/Davis	0	-	zzz	1957 Jan 13
-			7:00	-	DAVT	1964 Nov # Davis Time
-			0	-	zzz	1969 Feb
-			7:00	-	DAVT
-Zone Antarctica/Mawson	0	-	zzz	1954 Feb 13
-			6:00	-	MAWT	# Mawson Time
-# References:
-# <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html">
-# Casey Weather (1998-02-26)
-# </a>
-# <a href="http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html">
-# Davis Station, Antarctica (1998-02-26)
-# </a>
-# <a href="http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html">
-# Mawson Station, Antarctica (1998-02-25)
-# </a>
-
-# Brazil - year-round base
-# Comandante Ferraz, King George Island, -6205+05824, since 1983/4
-
-# Chile - year-round bases and towns
-# Escudero, South Shetland Is, -621157-0585735, since 1994
-# Presidente Eduadro Frei, King George Island, -6214-05848, since 1969-03-07
-# General Bernardo O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
-# Capitan Arturo Prat, -6230-05941
-# Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
-# These locations have always used Santiago time; use TZ='America/Santiago'.
-
-# China - year-round bases
-# Great Wall, King George Island, -6213-05858, since 1985-02-20
-# Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26
-
-# France - year-round bases
-#
-# From Antoine Leca (1997-01-20):
-# Time data are from Nicole Pailleau at the IFRTP
-# (French Institute for Polar Research and Technology).
-# She confirms that French Southern Territories and Terre Adelie bases
-# don't observe daylight saving time, even if Terre Adelie supplies came
-# from Tasmania.
-#
-# French Southern Territories with year-round inhabitants
-#
-# Martin-de-Vivies Base, Amsterdam Island, -374105+0773155, since 1950
-# Alfred-Faure Base, Crozet Islands, -462551+0515152, since 1964
-# Port-aux-Francais, Kerguelen Islands, -492110+0701303, since 1951;
-#	whaling & sealing station operated 1908/1914, 1920/1929, and 1951/1956
-#
-# St Paul Island - near Amsterdam, uninhabited
-#	fishing stations operated variously 1819/1931
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Indian/Kerguelen	0	-	zzz	1950	# Port-aux-Francais
-			5:00	-	TFT	# ISO code TF Time
-#
-# year-round base in the main continent
-# Dumont-d'Urville, Ile des Petrels, -6640+14001, since 1956-11
-#
-# Another base at Port-Martin, 50km east, began operation in 1947.
-# It was destroyed by fire on 1952-01-14.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Antarctica/DumontDUrville 0 -	zzz	1947
-			10:00	-	PMT	1952 Jan 14 # Port-Martin Time
-			0	-	zzz	1956 Nov
-			10:00	-	DDUT	# Dumont-d'Urville Time
-# Reference:
-# <a href="http://en.wikipedia.org/wiki/Dumont_d'Urville_Station">
-# Dumont d'Urville Station (2005-12-05)
-# </a>
-
-# Germany - year-round base
-# Georg von Neumayer, -7039-00815
-
-# India - year-round base
-# Dakshin Gangotri, -7005+01200
-
-# Japan - year-round bases
-# Dome Fuji, -7719+03942
-# Syowa, -690022+0393524
-#
-# From Hideyuki Suzuki (1999-02-06):
-# In all Japanese stations, +0300 is used as the standard time.
-#
-# Syowa station, which is the first antarctic station of Japan,
-# was established on 1957-01-29.  Since Syowa station is still the main
-# station of Japan, it's appropriate for the principal location.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Antarctica/Syowa	0	-	zzz	1957 Jan 29
-			3:00	-	SYOT	# Syowa Time
-# See:
-# <a href="http://www.nipr.ac.jp/english/ara01.html">
-# NIPR Antarctic Research Activities (1999-08-17)
-# </a>
-
-# S Korea - year-round base
-# King Sejong, King George Island, -6213-05847, since 1988
-
-# New Zealand - claims
-# Balleny Islands (never inhabited)
-# Scott Island (never inhabited)
-#
-# year-round base
-# Scott, Ross Island, since 1957-01, is like Antarctica/McMurdo.
-#
-# These rules for New Zealand are stolen from the `australasia' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	NZAQ	1974	only	-	Nov	 3	2:00s	1:00	D
-Rule	NZAQ	1975	1988	-	Oct	lastSun	2:00s	1:00	D
-Rule	NZAQ	1989	only	-	Oct	 8	2:00s	1:00	D
-Rule	NZAQ	1990	2006	-	Oct	Sun>=1	2:00s	1:00	D
-Rule	NZAQ	1975	only	-	Feb	23	2:00s	0	S
-Rule	NZAQ	1976	1989	-	Mar	Sun>=1	2:00s	0	S
-Rule	NZAQ	1990	2007	-	Mar	Sun>=15	2:00s	0	S
-Rule	NZAQ	2007	max	-	Sep	lastSun	2:00s	1:00	D
-Rule	NZAQ	2008	max	-	Apr	Sun>=1	2:00s	0	S
-
-# Norway - territories
-# Bouvet (never inhabited)
-#
-# claims
-# Peter I Island (never inhabited)
-
-# Poland - year-round base
-# Arctowski, King George Island, -620945-0582745, since 1977
-
-# Russia - year-round bases
-# Bellingshausen, King George Island, -621159-0585337, since 1968-02-22
-# Mirny, Davis coast, -6633+09301, since 1956-02
-# Molodezhnaya, Alasheyev Bay, -6740+04551,
-#	year-round from 1962-02 to 1999-07-01
-# Novolazarevskaya, Queen Maud Land, -7046+01150,
-#	year-round from 1960/61 to 1992
-
-# Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11
-# <a href="http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP">
-# From Craig Mundell (1994-12-15)</a>:
-# Vostok, which is one of the Russian stations, is set on the same
-# time as Moscow, Russia.
-#
-# From Lee Hotz (2001-03-08):
-# I queried the folks at Columbia who spent the summer at Vostok and this is
-# what they had to say about time there:
-# ``in the US Camp (East Camp) we have been on New Zealand (McMurdo)
-# time, which is 12 hours ahead of GMT. The Russian Station Vostok was
-# 6 hours behind that (although only 2 miles away, i.e. 6 hours ahead
-# of GMT). This is a time zone I think two hours east of Moscow. The
-# natural time zone is in between the two: 8 hours ahead of GMT.''
-#
-# From Paul Eggert (2001-05-04):
-# This seems to be hopelessly confusing, so I asked Lee Hotz about it
-# in person.  He said that some Antartic locations set their local
-# time so that noon is the warmest part of the day, and that this
-# changes during the year and does not necessarily correspond to mean
-# solar noon.  So the Vostok time might have been whatever the clocks
-# happened to be during their visit.  So we still don't really know what time
-# it is at Vostok.  But we'll guess UTC+6.
-#
-Zone Antarctica/Vostok	0	-	zzz	1957 Dec 16
-			6:00	-	VOST	# Vostok time
-
-# S Africa - year-round bases
-# Marion Island, -4653+03752
-# Sanae, -7141-00250
-
-# UK
-#
-# British Antarctic Territories (BAT) claims
-# South Orkney Islands
-#	scientific station from 1903
-#	whaling station at Signy I 1920/1926
-# South Shetland Islands
-#
-# year-round bases
-# Bird Island, South Georgia, -5400-03803, since 1983
-# Deception Island, -6259-06034, whaling station 1912/1931,
-#	scientific station 1943/1967,
-#	previously sealers and a scientific expedition wintered by accident,
-#	and a garrison was deployed briefly
-# Halley, Coates Land, -7535-02604, since 1956-01-06
-#	Halley is on a moving ice shelf and is periodically relocated
-#	so that it is never more than 10km from its nominal location.
-# Rothera, Adelaide Island, -6734-6808, since 1976-12-01
-#
-# From Paul Eggert (2002-10-22)
-# <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Antarctica/Rothera	0	-	zzz	1976 Dec  1
-			-3:00	-	ROTT	# Rothera time
-
-# Uruguay - year round base
-# Artigas, King George Island, -621104-0585107
-
-# USA - year-round bases
-#
-# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
-#
-# From Ethan Dicks (1996-10-06):
-# It keeps the same time as Punta Arenas, Chile, because, just like us
-# and the South Pole, that's the other end of their supply line....
-# I verified with someone who was there that since 1980,
-# Palmer has followed Chile.  Prior to that, before the Falklands War,
-# Palmer used to be supplied from Argentina.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Antarctica/Palmer	0	-	zzz	1965
-			-4:00	ArgAQ	AR%sT	1969 Oct 5
-			-3:00	ArgAQ	AR%sT	1982 May
-			-4:00	ChileAQ	CL%sT
-#
-#
-# McMurdo, Ross Island, since 1955-12
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Antarctica/McMurdo	0	-	zzz	1956
-			12:00	NZAQ	NZ%sT
-#
-# Amundsen-Scott, South Pole, continuously occupied since 1956-11-20
-#
-# From Paul Eggert (1996-09-03):
-# Normally it wouldn't have a separate entry, since it's like the
-# larger Antarctica/McMurdo since 1970, but it's too famous to omit.
-#
-# From Chris Carrier (1996-06-27):
-# Siple, the first commander of the South Pole station,
-# stated that he would have liked to have kept GMT at the station,
-# but that he found it more convenient to keep GMT+12
-# as supplies for the station were coming from McMurdo Sound,
-# which was on GMT+12 because New Zealand was on GMT+12 all year
-# at that time (1957).  (Source: Siple's book 90 degrees SOUTH.)
-#
-# From Susan Smith
-# http://www.cybertours.com/whs/pole10.html
-# (1995-11-13 16:24:56 +1300, no longer available):
-# We use the same time as McMurdo does.
-# And they use the same time as Christchurch, NZ does....
-# One last quirk about South Pole time.
-# All the electric clocks are usually wrong.
-# Something about the generators running at 60.1hertz or something
-# makes all of the clocks run fast.  So every couple of days,
-# we have to go around and set them back 5 minutes or so.
-# Maybe if we let them run fast all of the time, we'd get to leave here sooner!!
-#
-Link	Antarctica/McMurdo	Antarctica/South_Pole
diff --git a/tools/zoneinfo/tzdata2008h/asia b/tools/zoneinfo/tzdata2008h/asia
deleted file mode 100644
index eb9f411..0000000
--- a/tools/zoneinfo/tzdata2008h/asia
+++ /dev/null
@@ -1,2043 +0,0 @@
-# @(#)asia	8.24
-# <pre>
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-#
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually.  Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Another source occasionally used is Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
-# I found in the UCLA library.
-#
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-#
-# I invented the abbreviations marked `*' in the following table;
-# the rest are from earlier versions of this file, or from other sources.
-# Corrections are welcome!
-#	     std  dst
-#	     LMT	Local Mean Time
-#	2:00 EET  EEST	Eastern European Time
-#	2:00 IST  IDT	Israel
-#	3:00 AST  ADT	Arabia*
-#	3:30 IRST IRDT	Iran
-#	4:00 GST	Gulf*
-#	5:30 IST	India
-#	7:00 ICT	Indochina*
-#	7:00 WIT	west Indonesia
-#	8:00 CIT	central Indonesia
-#	8:00 CST	China
-#	9:00 CJT	Central Japanese Time (1896/1937)*
-#	9:00 EIT	east Indonesia
-#	9:00 JST  JDT	Japan
-#	9:00 KST  KDT	Korea
-#	9:30 CST	(Australian) Central Standard Time
-#
-# See the `europe' file for Russia and Turkey in Asia.
-
-# From Guy Harris:
-# Incorporates data for Singapore from Robert Elz' asia 1.1, as well as
-# additional information from Tom Yap, Sun Microsystems Intercontinental
-# Technical Support (including a page from the Official Airline Guide -
-# Worldwide Edition).  The names for time zones are guesses.
-
-###############################################################################
-
-# These rules are stolen from the `europe' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	EUAsia	1981	max	-	Mar	lastSun	 1:00u	1:00	S
-Rule	EUAsia	1979	1995	-	Sep	lastSun	 1:00u	0	-
-Rule	EUAsia	1996	max	-	Oct	lastSun	 1:00u	0	-
-Rule E-EurAsia	1981	max	-	Mar	lastSun	 0:00	1:00	S
-Rule E-EurAsia	1979	1995	-	Sep	lastSun	 0:00	0	-
-Rule E-EurAsia	1996	max	-	Oct	lastSun	 0:00	0	-
-Rule RussiaAsia	1981	1984	-	Apr	1	 0:00	1:00	S
-Rule RussiaAsia	1981	1983	-	Oct	1	 0:00	0	-
-Rule RussiaAsia	1984	1991	-	Sep	lastSun	 2:00s	0	-
-Rule RussiaAsia	1985	1991	-	Mar	lastSun	 2:00s	1:00	S
-Rule RussiaAsia	1992	only	-	Mar	lastSat	23:00	1:00	S
-Rule RussiaAsia	1992	only	-	Sep	lastSat	23:00	0	-
-Rule RussiaAsia	1993	max	-	Mar	lastSun	 2:00s	1:00	S
-Rule RussiaAsia	1993	1995	-	Sep	lastSun	 2:00s	0	-
-Rule RussiaAsia	1996	max	-	Oct	lastSun	 2:00s	0	-
-
-# Afghanistan
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Kabul	4:36:48 -	LMT	1890
-			4:00	-	AFT	1945
-			4:30	-	AFT
-
-# Armenia
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger have Yerevan switching to 3:00 (with Russian DST)
-# in spring 1991, then to 4:00 with no DST in fall 1995, then
-# readopting Russian DST in 1997.  Go with Shanks & Pottenger, even
-# when they disagree with others.  Edgar Der-Danieliantz
-# reported (1996-05-04) that Yerevan probably wouldn't use DST
-# in 1996, though it did use DST in 1995.  IATA SSIM (1991/1998) reports that
-# Armenia switched from 3:00 to 4:00 in 1998 and observed DST after 1991,
-# but started switching at 3:00s in 1998.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Yerevan	2:58:00 -	LMT	1924 May  2
-			3:00	-	YERT	1957 Mar    # Yerevan Time
-			4:00 RussiaAsia YER%sT	1991 Mar 31 2:00s
-			3:00	1:00	YERST	1991 Sep 23 # independence
-			3:00 RussiaAsia	AM%sT	1995 Sep 24 2:00s
-			4:00	-	AMT	1997
-			4:00 RussiaAsia	AM%sT
-
-# Azerbaijan
-# From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
-# According to the resolution of Cabinet of Ministers, 1997
-# Resolution available at: http://aif.az/docs/daylight_res.pdf
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Azer	1997	max	-	Mar	lastSun	 4:00	1:00	S
-Rule	Azer	1997	max	-	Oct	lastSun	 5:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Baku	3:19:24 -	LMT	1924 May  2
-			3:00	-	BAKT	1957 Mar    # Baku Time
-			4:00 RussiaAsia BAK%sT	1991 Mar 31 2:00s
-			3:00	1:00	BAKST	1991 Aug 30 # independence
-			3:00 RussiaAsia	AZ%sT	1992 Sep lastSat 23:00
-			4:00	-	AZT	1996 # Azerbaijan time
-			4:00	EUAsia	AZ%sT	1997
-			4:00	Azer	AZ%sT
-
-# Bahrain
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Bahrain	3:22:20 -	LMT	1920		# Al Manamah
-			4:00	-	GST	1972 Jun
-			3:00	-	AST
-
-# Bangladesh
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Dhaka	6:01:40 -	LMT	1890
-			5:53:20	-	HMT	1941 Oct    # Howrah Mean Time?
-			6:30	-	BURT	1942 May 15 # Burma Time
-			5:30	-	IST	1942 Sep
-			6:30	-	BURT	1951 Sep 30
-			6:00	-	DACT	1971 Mar 26 # Dacca Time
-			6:00	-	BDT	# Bangladesh Time
-
-# Bhutan
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Thimphu	5:58:36 -	LMT	1947 Aug 15 # or Thimbu
-			5:30	-	IST	1987 Oct
-			6:00	-	BTT	# Bhutan Time
-
-# British Indian Ocean Territory
-# Whitman and the 1995 CIA time zone map say 5:00, but the
-# 1997 and later maps say 6:00.  Assume the switch occurred in 1996.
-# We have no information as to when standard time was introduced;
-# assume it occurred in 1907, the same year as Mauritius (which
-# then contained the Chagos Archipelago).
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Indian/Chagos	4:49:40	-	LMT	1907
-			5:00	-	IOT	1996 # BIOT Time
-			6:00	-	IOT
-
-# Brunei
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Brunei	7:39:40 -	LMT	1926 Mar   # Bandar Seri Begawan
-			7:30	-	BNT	1933
-			8:00	-	BNT
-
-# Burma / Myanmar
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Rangoon	6:24:40 -	LMT	1880		# or Yangon
-			6:24:36	-	RMT	1920	   # Rangoon Mean Time?
-			6:30	-	BURT	1942 May   # Burma Time
-			9:00	-	JST	1945 May 3
-			6:30	-	MMT		   # Myanmar Time
-
-# Cambodia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Phnom_Penh	6:59:40 -	LMT	1906 Jun  9
-			7:06:20	-	SMT	1911 Mar 11 0:01 # Saigon MT?
-			7:00	-	ICT	1912 May
-			8:00	-	ICT	1931 May
-			7:00	-	ICT
-
-# China
-
-# From Guy Harris:
-# People's Republic of China.  Yes, they really have only one time zone.
-
-# From Bob Devine (1988-01-28):
-# No they don't.  See TIME mag, 1986-02-17 p.52.  Even though
-# China is across 4 physical time zones, before Feb 1, 1986 only the
-# Peking (Bejing) time zone was recognized.  Since that date, China
-# has two of 'em -- Peking's and Urumqi (named after the capital of
-# the Xinjiang Uyghur Autonomous Region).  I don't know about DST for it.
-#
-# . . .I just deleted the DST table and this editor makes it too
-# painful to suck in another copy..  So, here is what I have for
-# DST start/end dates for Peking's time zone (info from AP):
-#
-#     1986 May 4 - Sept 14
-#     1987 mid-April - ??
-
-# From U. S. Naval Observatory (1989-01-19):
-# CHINA               8 H  AHEAD OF UTC  ALL OF CHINA, INCL TAIWAN
-# CHINA               9 H  AHEAD OF UTC  APR 17 - SEP 10
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that China (except for Hong Kong and Macau)
-# has had a single time zone since 1980 May 1, observing summer DST
-# from 1986 through 1991; this contradicts Devine's
-# note about Time magazine, though apparently _something_ happened in 1986.
-# Go with Shanks & Pottenger for now.  I made up names for the other
-# pre-1980 time zones.
-
-# From Shanks & Pottenger:
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Shang	1940	only	-	Jun	 3	0:00	1:00	D
-Rule	Shang	1940	1941	-	Oct	 1	0:00	0	S
-Rule	Shang	1941	only	-	Mar	16	0:00	1:00	D
-Rule	PRC	1986	only	-	May	 4	0:00	1:00	D
-Rule	PRC	1986	1991	-	Sep	Sun>=11	0:00	0	S
-Rule	PRC	1987	1991	-	Apr	Sun>=10	0:00	1:00	D
-
-# From Anthony Fok (2001-12-20):
-# BTW, I did some research on-line and found some info regarding these five
-# historic timezones from some Taiwan websites.  And yes, there are official
-# Chinese names for these locales (before 1949).
-#
-# From Jesper Norgaard Welen (2006-07-14):
-# I have investigated the timezones around 1970 on the
-# http://www.astro.com/atlas site [with provinces and county
-# boundaries summarized below]....  A few other exceptions were two
-# counties on the Sichuan side of the Xizang-Sichuan border,
-# counties Dege and Baiyu which lies on the Sichuan side and are
-# therefore supposed to be GMT+7, Xizang region being GMT+6, but Dege
-# county is GMT+8 according to astro.com while Baiyu county is GMT+6
-# (could be true), for the moment I am assuming that those two
-# counties are mistakes in the astro.com data.
-
-# From Paul Eggert (2008-02-11):
-# I just now checked Google News for western news sources that talk
-# about China's single time zone, and couldn't find anything before 1986
-# talking about China being in one time zone.  (That article was: Jim
-# Mann, "A clumsy embrace for another western custom: China on daylight
-# time--sort of", Los Angeles Times, 1986-05-05.  By the way, this
-# article confirms the tz database's data claiming that China began
-# observing daylight saving time in 1986.
-#
-# From Thomas S. Mullaney (2008-02-11):
-# I think you're combining two subjects that need to treated 
-# separately: daylight savings (which, you're correct, wasn't 
-# implemented until the 1980s) and the unified time zone centered near 
-# Beijing (which was implemented in 1949). Briefly, there was also a 
-# "Lhasa Time" in Tibet and "Urumqi Time" in Xinjiang. The first was 
-# ceased, and the second eventually recognized (again, in the 1980s).
-#
-# From Paul Eggert (2008-06-30):
-# There seems to be a good chance China switched to a single time zone in 1949
-# rather than in 1980 as Shanks & Pottenger have it, but we don't have a
-# reliable documentary source saying so yet, so for now we still go with
-# Shanks & Pottenger.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
-# Heilongjiang (except Mohe county), Jilin
-Zone	Asia/Harbin	8:26:44	-	LMT	1928 # or Haerbin
-			8:30	-	CHAT	1932 Mar # Changbai Time
-			8:00	-	CST	1940
-			9:00	-	CHAT	1966 May
-			8:30	-	CHAT	1980 May
-			8:00	PRC	C%sT
-# Zhongyuan Time ("Central plain Time")
-# most of China
-Zone	Asia/Shanghai	8:05:52	-	LMT	1928
-			8:00	Shang	C%sT	1949
-			8:00	PRC	C%sT
-# Long-shu Time (probably due to Long and Shu being two names of that area)
-# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
-# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
-# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
-# Yangchun, Yangjiang, Yu'nan, and Yunfu.
-Zone	Asia/Chongqing	7:06:20	-	LMT	1928 # or Chungking
-			7:00	-	LONT	1980 May # Long-shu Time
-			8:00	PRC	C%sT
-# Xin-zang Time ("Xinjiang-Tibet Time")
-# The Gansu counties Aksay, Anxi, Dunhuang, Subei; west Qinghai;
-# the Guangdong counties  Xuwen, Haikang, Suixi, Lianjiang,
-# Zhanjiang, Wuchuan, Huazhou, Gaozhou, Maoming, Dianbai, and Xinyi;
-# east Tibet, including Lhasa, Chamdo, Shigaise, Jimsar, Shawan and Hutubi;
-# east Xinjiang, including Urumqi, Turpan, Karamay, Korla, Minfeng, Jinghe,
-# Wusu, Qiemo, Xinyan, Wulanwusu, Jinghe, Yumin, Tacheng, Tuoli, Emin,
-# Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
-# Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
-Zone	Asia/Urumqi	5:50:20	-	LMT	1928 # or Urumchi
-			6:00	-	URUT	1980 May # Urumqi Time
-			8:00	PRC	C%sT
-# Kunlun Time
-# West Tibet, including Pulan, Aheqi, Shufu, Shule;
-# West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
-# Zhaosu, Tekesi, Gongliu, Chabuchaer, Huocheng, Bole, Pishan, Suiding,
-# and Yarkand.
-Zone	Asia/Kashgar	5:03:56	-	LMT	1928 # or Kashi or Kaxgar
-			5:30	-	KAST	1940	 # Kashgar Time
-			5:00	-	KAST	1980 May
-			8:00	PRC	C%sT
-
-# Hong Kong (Xianggang)
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	HK	1946	only	-	Apr	20	3:30	1:00	S
-Rule	HK	1946	only	-	Dec	1	3:30	0	-
-Rule	HK	1947	only	-	Apr	13	3:30	1:00	S
-Rule	HK	1947	only	-	Dec	30	3:30	0	-
-Rule	HK	1948	only	-	May	2	3:30	1:00	S
-Rule	HK	1948	1952	-	Oct	lastSun	3:30	0	-
-Rule	HK	1949	1953	-	Apr	Sun>=1	3:30	1:00	S
-Rule	HK	1953	only	-	Nov	1	3:30	0	-
-Rule	HK	1954	1964	-	Mar	Sun>=18	3:30	1:00	S
-Rule	HK	1954	only	-	Oct	31	3:30	0	-
-Rule	HK	1955	1964	-	Nov	Sun>=1	3:30	0	-
-Rule	HK	1965	1977	-	Apr	Sun>=16	3:30	1:00	S
-Rule	HK	1965	1977	-	Oct	Sun>=16	3:30	0	-
-Rule	HK	1979	1980	-	May	Sun>=8	3:30	1:00	S
-Rule	HK	1979	1980	-	Oct	Sun>=16	3:30	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Hong_Kong	7:36:36 -	LMT	1904 Oct 30
-			8:00	HK	HK%sT
-
-
-###############################################################################
-
-# Taiwan
-
-# Shanks & Pottenger write that Taiwan observed DST during 1945, when it
-# was still controlled by Japan.  This is hard to believe, but we don't
-# have any other information.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Taiwan	1945	1951	-	May	1	0:00	1:00	D
-Rule	Taiwan	1945	1951	-	Oct	1	0:00	0	S
-Rule	Taiwan	1952	only	-	Mar	1	0:00	1:00	D
-Rule	Taiwan	1952	1954	-	Nov	1	0:00	0	S
-Rule	Taiwan	1953	1959	-	Apr	1	0:00	1:00	D
-Rule	Taiwan	1955	1961	-	Oct	1	0:00	0	S
-Rule	Taiwan	1960	1961	-	Jun	1	0:00	1:00	D
-Rule	Taiwan	1974	1975	-	Apr	1	0:00	1:00	D
-Rule	Taiwan	1974	1975	-	Oct	1	0:00	0	S
-Rule	Taiwan	1980	only	-	Jun	30	0:00	1:00	D
-Rule	Taiwan	1980	only	-	Sep	30	0:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Taipei	8:06:00 -	LMT	1896 # or Taibei or T'ai-pei
-			8:00	Taiwan	C%sT
-
-# Macau (Macao, Aomen)
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Macau	1961	1962	-	Mar	Sun>=16	3:30	1:00	S
-Rule	Macau	1961	1964	-	Nov	Sun>=1	3:30	0	-
-Rule	Macau	1963	only	-	Mar	Sun>=16	0:00	1:00	S
-Rule	Macau	1964	only	-	Mar	Sun>=16	3:30	1:00	S
-Rule	Macau	1965	only	-	Mar	Sun>=16	0:00	1:00	S
-Rule	Macau	1965	only	-	Oct	31	0:00	0	-
-Rule	Macau	1966	1971	-	Apr	Sun>=16	3:30	1:00	S
-Rule	Macau	1966	1971	-	Oct	Sun>=16	3:30	0	-
-Rule	Macau	1972	1974	-	Apr	Sun>=15	0:00	1:00	S
-Rule	Macau	1972	1973	-	Oct	Sun>=15	0:00	0	-
-Rule	Macau	1974	1977	-	Oct	Sun>=15	3:30	0	-
-Rule	Macau	1975	1977	-	Apr	Sun>=15	3:30	1:00	S
-Rule	Macau	1978	1980	-	Apr	Sun>=15	0:00	1:00	S
-Rule	Macau	1978	1980	-	Oct	Sun>=15	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Macau	7:34:20 -	LMT	1912
-			8:00	Macau	MO%sT	1999 Dec 20 # return to China
-			8:00	PRC	C%sT
-
-
-###############################################################################
-
-# Cyprus
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Cyprus	1975	only	-	Apr	13	0:00	1:00	S
-Rule	Cyprus	1975	only	-	Oct	12	0:00	0	-
-Rule	Cyprus	1976	only	-	May	15	0:00	1:00	S
-Rule	Cyprus	1976	only	-	Oct	11	0:00	0	-
-Rule	Cyprus	1977	1980	-	Apr	Sun>=1	0:00	1:00	S
-Rule	Cyprus	1977	only	-	Sep	25	0:00	0	-
-Rule	Cyprus	1978	only	-	Oct	2	0:00	0	-
-Rule	Cyprus	1979	1997	-	Sep	lastSun	0:00	0	-
-Rule	Cyprus	1981	1998	-	Mar	lastSun	0:00	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Nicosia	2:13:28 -	LMT	1921 Nov 14
-			2:00	Cyprus	EE%sT	1998 Sep
-			2:00	EUAsia	EE%sT
-# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
-
-# Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
-# However, for various reasons many users expect to find it under Europe.
-Link	Asia/Nicosia	Europe/Nicosia
-
-# Georgia
-# From Paul Eggert (1994-11-19):
-# Today's _Economist_ (p 60) reports that Georgia moved its clocks forward
-# an hour recently, due to a law proposed by Zurab Murvanidze,
-# an MP who went on a hunger strike for 11 days to force discussion about it!
-# We have no details, but we'll guess they didn't move the clocks back in fall.
-#
-# From Mathew Englander, quoting AP (1996-10-23 13:05-04):
-# Instead of putting back clocks at the end of October, Georgia
-# will stay on daylight savings time this winter to save energy,
-# President Eduard Shevardnadze decreed Wednesday.
-#
-# From the BBC via Joseph S. Myers (2004-06-27):
-#
-# Georgia moved closer to Western Europe on Sunday...  The former Soviet
-# republic has changed its time zone back to that of Moscow.  As a result it
-# is now just four hours ahead of Greenwich Mean Time, rather than five hours
-# ahead.  The switch was decreed by the pro-Western president of Georgia,
-# Mikhail Saakashvili, who said the change was partly prompted by the process
-# of integration into Europe.
-
-# From Teimuraz Abashidze (2005-11-07):
-# Government of Georgia ... decided to NOT CHANGE daylight savings time on
-# [Oct.] 30, as it was done before during last more than 10 years.
-# Currently, we are in fact GMT +4:00, as before 30 October it was GMT
-# +3:00.... The problem is, there is NO FORMAL LAW or governmental document
-# about it.  As far as I can find, I was told, that there is no document,
-# because we just DIDN'T ISSUE document about switching to winter time....
-# I don't know what can be done, especially knowing that some years ago our
-# DST rules where changed THREE TIMES during one month.
-
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Tbilisi	2:59:16 -	LMT	1880
-			2:59:16	-	TBMT	1924 May  2 # Tbilisi Mean Time
-			3:00	-	TBIT	1957 Mar    # Tbilisi Time
-			4:00 RussiaAsia TBI%sT	1991 Mar 31 2:00s
-			3:00	1:00	TBIST	1991 Apr  9 # independence
-			3:00 RussiaAsia GE%sT	1992 # Georgia Time
-			3:00 E-EurAsia	GE%sT	1994 Sep lastSun
-			4:00 E-EurAsia	GE%sT	1996 Oct lastSun
-			4:00	1:00	GEST	1997 Mar lastSun
-			4:00 E-EurAsia	GE%sT	2004 Jun 27
-			3:00 RussiaAsia	GE%sT	2005 Mar lastSun 2:00
-			4:00	-	GET
-
-# East Timor
-
-# See Indonesia for the 1945 transition.
-
-# From Joao Carrascalao, brother of the former governor of East Timor, in
-# <a href="http://etan.org/et99c/december/26-31/30ETMAY.htm">
-# East Timor may be late for its millennium
-# </a> (1999-12-26/31):
-# Portugal tried to change the time forward in 1974 because the sun
-# rises too early but the suggestion raised a lot of problems with the
-# Timorese and I still don't think it would work today because it
-# conflicts with their way of life.
-
-# From Paul Eggert (2000-12-04):
-# We don't have any record of the above attempt.
-# Most likely our records are incomplete, but we have no better data.
-
-# <a href="http://www.hri.org/news/world/undh/last/00-08-16.undh.html">
-# From Manoel de Almeida e Silva, Deputy Spokesman for the UN Secretary-General
-# (2000-08-16)</a>:
-# The Cabinet of the East Timor Transition Administration decided
-# today to advance East Timor's time by one hour.  The time change,
-# which will be permanent, with no seasonal adjustment, will happen at
-# midnight on Saturday, September 16.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Dili	8:22:20 -	LMT	1912
-			8:00	-	TLT	1942 Feb 21 23:00 # E Timor Time
-			9:00	-	JST	1945 Sep 23
-			9:00	-	TLT	1976 May  3
-			8:00	-	CIT	2000 Sep 17 00:00
-			9:00	-	TLT
-
-# India
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Kolkata	5:53:28 -	LMT	1880	# Kolkata
-			5:53:20	-	HMT	1941 Oct    # Howrah Mean Time?
-			6:30	-	BURT	1942 May 15 # Burma Time
-			5:30	-	IST	1942 Sep
-			5:30	1:00	IST	1945 Oct 15
-			5:30	-	IST
-# The following are like Asia/Kolkata:
-#	Andaman Is
-#	Lakshadweep (Laccadive, Minicoy and Amindivi Is)
-#	Nicobar Is
-
-# Indonesia
-#
-# From Gwillim Law (2001-05-28), overriding Shanks & Pottenger:
-# <http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime>
-# says that Indonesia's time zones changed on 1988-01-01.  Looking at some
-# time zone maps, I think that must refer to Western Borneo (Kalimantan Barat
-# and Kalimantan Tengah) switching from UTC+8 to UTC+7.
-#
-# From Paul Eggert (2007-03-10):
-# Here is another correction to Shanks & Pottenger.
-# JohnTWB writes that Japanese forces did not surrender control in
-# Indonesia until 1945-09-01 00:00 at the earliest (in Jakarta) and
-# other formal surrender ceremonies were September 9, 11, and 13, plus
-# September 12 for the regional surrender to Mountbatten in Singapore.
-# These would be the earliest possible times for a change.
-# Regimes horaires pour le monde entier, by Henri Le Corre, (Editions
-# Traditionnelles, 1987, Paris) says that Java and Madura switched
-# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
-# (Hollandia).  For now, assume all Indonesian locations other than Jayapura
-# switched on 1945-09-23.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Asia/Jakarta	7:07:12 -	LMT	1867 Aug 10
-# Shanks & Pottenger say the next transition was at 1924 Jan 1 0:13,
-# but this must be a typo.
-			7:07:12	-	JMT	1923 Dec 31 23:47:12 # Jakarta
-			7:20	-	JAVT	1932 Nov	 # Java Time
-			7:30	-	WIT	1942 Mar 23
-			9:00	-	JST	1945 Sep 23
-			7:30	-	WIT	1948 May
-			8:00	-	WIT	1950 May
-			7:30	-	WIT	1964
-			7:00	-	WIT
-Zone Asia/Pontianak	7:17:20	-	LMT	1908 May
-			7:17:20	-	PMT	1932 Nov    # Pontianak MT
-			7:30	-	WIT	1942 Jan 29
-			9:00	-	JST	1945 Sep 23
-			7:30	-	WIT	1948 May
-			8:00	-	WIT	1950 May
-			7:30	-	WIT	1964
-			8:00	-	CIT	1988 Jan  1
-			7:00	-	WIT
-Zone Asia/Makassar	7:57:36 -	LMT	1920
-			7:57:36	-	MMT	1932 Nov    # Macassar MT
-			8:00	-	CIT	1942 Feb  9
-			9:00	-	JST	1945 Sep 23
-			8:00	-	CIT
-Zone Asia/Jayapura	9:22:48 -	LMT	1932 Nov
-			9:00	-	EIT	1944 Sep  1
-			9:30	-	CST	1964
-			9:00	-	EIT
-
-# Iran
-
-# From Roozbeh Pournader (2003-03-15):
-# This is an English translation of what I just found (originally in Persian).
-# The Gregorian dates in brackets are mine:
-#
-#	Official Newspaper No. 13548-1370/6/25 [1991-09-16]
-#	No. 16760/T233 H				1370/6/10 [1991-09-01]
-#
-#	The Rule About Change of the Official Time of the Country
-#
-#	The Board of Ministers, in the meeting dated 1370/5/23 [1991-08-14],
-#	based on the suggestion number 2221/D dated 1370/4/22 [1991-07-13]
-#	of the Country's Organization for Official and Employment Affairs,
-#	and referring to the law for equating the working hours of workers
-#	and officers in the whole country dated 1359/4/23 [1980-07-14], and
-#	for synchronizing the official times of the country, agreed that:
-#
-#	The official time of the country will should move forward one hour
-#	at the 24[:00] hours of the first day of Farvardin and should return
-#	to its previous state at the 24[:00] hours of the 30th day of
-#	Shahrivar.
-#
-#	First Deputy to the President - Hassan Habibi
-#
-# From personal experience, that agrees with what has been followed
-# for at least the last 5 years.  Before that, for a few years, the
-# date used was the first Thursday night of Farvardin and the last
-# Thursday night of Shahrivar, but I can't give exact dates....
-# I have also changed the abbreviations to what is considered correct
-# here in Iran, IRST for regular time and IRDT for daylight saving time.
-#
-# From Roozbeh Pournader (2005-04-05):
-# The text of the Iranian law, in effect since 1925, clearly mentions
-# that the true solar year is the measure, and there is no arithmetic
-# leap year calculation involved.  There has never been any serious
-# plan to change that law....
-#
-# From Paul Eggert (2006-03-22):
-# Go with Shanks & Pottenger before Sept. 1991, and with Pournader thereafter.
-# I used Ed Reingold's cal-persia in GNU Emacs 21.2 to check Persian dates,
-# stopping after 2037 when 32-bit time_t's overflow.
-# That cal-persia used Birashk's approximation, which disagrees with the solar
-# calendar predictions for the year 2025, so I corrected those dates by hand.
-#
-# From Oscar van Vlijmen (2005-03-30), writing about future
-# discrepancies between cal-persia and the Iranian calendar:
-# For 2091 solar-longitude-after yields 2091-03-20 08:40:07.7 UT for
-# the vernal equinox and that gets so close to 12:00 some local
-# Iranian time that the definition of the correct location needs to be
-# known exactly, amongst other factors.  2157 is even closer:
-# 2157-03-20 08:37:15.5 UT.  But the Gregorian year 2025 should give
-# no interpretation problem whatsoever.  By the way, another instant
-# in the near future where there will be a discrepancy between
-# arithmetical and astronomical Iranian calendars will be in 2058:
-# vernal equinox on 2058-03-20 09:03:05.9 UT.  The Java version of
-# Reingold's/Dershowitz' calculator gives correctly the Gregorian date
-# 2058-03-21 for 1 Farvardin 1437 (astronomical).
-#
-# From Steffen Thorsen (2006-03-22):
-# Several of my users have reported that Iran will not observe DST anymore:
-# http://www.irna.ir/en/news/view/line-17/0603193812164948.htm
-#
-# From Reuters (2007-09-16), with a heads-up from Jesper Norgaard Welen:
-# ... the Guardian Council ... approved a law on Sunday to re-introduce
-# daylight saving time ...
-# http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
-#
-# From Roozbeh Pournader (2007-11-05):
-# This is quoted from Official Gazette of the Islamic Republic of
-# Iran, Volume 63, Number 18242, dated Tuesday 1386/6/24
-# [2007-10-16]. I am doing the best translation I can:...
-# The official time of the country will be moved forward for one hour
-# on the 24 hours of the first day of the month of Farvardin and will
-# be changed back to its previous state on the 24 hours of the
-# thirtieth day of Shahrivar.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Iran	1978	1980	-	Mar	21	0:00	1:00	D
-Rule	Iran	1978	only	-	Oct	21	0:00	0	S
-Rule	Iran	1979	only	-	Sep	19	0:00	0	S
-Rule	Iran	1980	only	-	Sep	23	0:00	0	S
-Rule	Iran	1991	only	-	May	 3	0:00	1:00	D
-Rule	Iran	1992	1995	-	Mar	22	0:00	1:00	D
-Rule	Iran	1991	1995	-	Sep	22	0:00	0	S
-Rule	Iran	1996	only	-	Mar	21	0:00	1:00	D
-Rule	Iran	1996	only	-	Sep	21	0:00	0	S
-Rule	Iran	1997	1999	-	Mar	22	0:00	1:00	D
-Rule	Iran	1997	1999	-	Sep	22	0:00	0	S
-Rule	Iran	2000	only	-	Mar	21	0:00	1:00	D
-Rule	Iran	2000	only	-	Sep	21	0:00	0	S
-Rule	Iran	2001	2003	-	Mar	22	0:00	1:00	D
-Rule	Iran	2001	2003	-	Sep	22	0:00	0	S
-Rule	Iran	2004	only	-	Mar	21	0:00	1:00	D
-Rule	Iran	2004	only	-	Sep	21	0:00	0	S
-Rule	Iran	2005	only	-	Mar	22	0:00	1:00	D
-Rule	Iran	2005	only	-	Sep	22	0:00	0	S
-Rule	Iran	2008	only	-	Mar	21	0:00	1:00	D
-Rule	Iran	2008	only	-	Sep	21	0:00	0	S
-Rule	Iran	2009	2011	-	Mar	22	0:00	1:00	D
-Rule	Iran	2009	2011	-	Sep	22	0:00	0	S
-Rule	Iran	2012	only	-	Mar	21	0:00	1:00	D
-Rule	Iran	2012	only	-	Sep	21	0:00	0	S
-Rule	Iran	2013	2015	-	Mar	22	0:00	1:00	D
-Rule	Iran	2013	2015	-	Sep	22	0:00	0	S
-Rule	Iran	2016	only	-	Mar	21	0:00	1:00	D
-Rule	Iran	2016	only	-	Sep	21	0:00	0	S
-Rule	Iran	2017	2019	-	Mar	22	0:00	1:00	D
-Rule	Iran	2017	2019	-	Sep	22	0:00	0	S
-Rule	Iran	2020	only	-	Mar	21	0:00	1:00	D
-Rule	Iran	2020	only	-	Sep	21	0:00	0	S
-Rule	Iran	2021	2023	-	Mar	22	0:00	1:00	D
-Rule	Iran	2021	2023	-	Sep	22	0:00	0	S
-Rule	Iran	2024	only	-	Mar	21	0:00	1:00	D
-Rule	Iran	2024	only	-	Sep	21	0:00	0	S
-Rule	Iran	2025	2027	-	Mar	22	0:00	1:00	D
-Rule	Iran	2025	2027	-	Sep	22	0:00	0	S
-Rule	Iran	2028	2029	-	Mar	21	0:00	1:00	D
-Rule	Iran	2028	2029	-	Sep	21	0:00	0	S
-Rule	Iran	2030	2031	-	Mar	22	0:00	1:00	D
-Rule	Iran	2030	2031	-	Sep	22	0:00	0	S
-Rule	Iran	2032	2033	-	Mar	21	0:00	1:00	D
-Rule	Iran	2032	2033	-	Sep	21	0:00	0	S
-Rule	Iran	2034	2035	-	Mar	22	0:00	1:00	D
-Rule	Iran	2034	2035	-	Sep	22	0:00	0	S
-Rule	Iran	2036	2037	-	Mar	21	0:00	1:00	D
-Rule	Iran	2036	2037	-	Sep	21	0:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Tehran	3:25:44	-	LMT	1916
-			3:25:44	-	TMT	1946	# Tehran Mean Time
-			3:30	-	IRST	1977 Nov
-			4:00	Iran	IR%sT	1979
-			3:30	Iran	IR%sT
-
-
-# Iraq
-#
-# From Jonathan Lennox (2000-06-12):
-# An article in this week's Economist ("Inside the Saddam-free zone", p. 50 in
-# the U.S. edition) on the Iraqi Kurds contains a paragraph:
-# "The three northern provinces ... switched their clocks this spring and
-# are an hour ahead of Baghdad."
-#
-# But Rives McDow (2000-06-18) quotes a contact in Iraqi-Kurdistan as follows:
-# In the past, some Kurdish nationalists, as a protest to the Iraqi
-# Government, did not adhere to daylight saving time.  They referred
-# to daylight saving as Saddam time.  But, as of today, the time zone
-# in Iraqi-Kurdistan is on standard time with Baghdad, Iraq.
-#
-# So we'll ignore the Economist's claim.
-
-# From Steffen Thorsen (2008-03-10):
-# The cabinet in Iraq abolished DST last week, according to the following
-# news sources (in Arabic):
-# <a href="http://www.aljeeran.net/wesima_articles/news-20080305-98602.html">
-# http://www.aljeeran.net/wesima_articles/news-20080305-98602.html
-# </a>
-# <a href="http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10">
-# http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10
-# </a>
-#
-# We have published a short article in English about the change:
-# <a href="http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html">
-# http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
-# </a>
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Iraq	1982	only	-	May	1	0:00	1:00	D
-Rule	Iraq	1982	1984	-	Oct	1	0:00	0	S
-Rule	Iraq	1983	only	-	Mar	31	0:00	1:00	D
-Rule	Iraq	1984	1985	-	Apr	1	0:00	1:00	D
-Rule	Iraq	1985	1990	-	Sep	lastSun	1:00s	0	S
-Rule	Iraq	1986	1990	-	Mar	lastSun	1:00s	1:00	D
-# IATA SSIM (1991/1996) says Apr 1 12:01am UTC; guess the `:01' is a typo.
-# Shanks & Pottenger say Iraq did not observe DST 1992/1997; ignore this.
-#
-Rule	Iraq	1991	2007	-	Apr	 1	3:00s	1:00	D
-Rule	Iraq	1991	2007	-	Oct	 1	3:00s	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Baghdad	2:57:40	-	LMT	1890
-			2:57:36	-	BMT	1918	    # Baghdad Mean Time?
-			3:00	-	AST	1982 May
-			3:00	Iraq	A%sT
-
-
-###############################################################################
-
-# Israel
-
-# From Ephraim Silverberg (2001-01-11):
-#
-# I coined "IST/IDT" circa 1988.  Until then there were three
-# different abbreviations in use:
-#
-# JST  Jerusalem Standard Time [Danny Braniss, Hebrew University]
-# IZT  Israel Zonal (sic) Time [Prof. Haim Papo, Technion]
-# EEST Eastern Europe Standard Time [used by almost everyone else]
-#
-# Since timezones should be called by country and not capital cities,
-# I ruled out JST.  As Israel is in Asia Minor and not Eastern Europe,
-# EEST was equally unacceptable.  Since "zonal" was not compatible with
-# any other timezone abbreviation, I felt that 'IST' was the way to go
-# and, indeed, it has received almost universal acceptance in timezone
-# settings in Israeli computers.
-#
-# In any case, I am happy to share timezone abbreviations with India,
-# high on my favorite-country list (and not only because my wife's
-# family is from India).
-
-# From Shanks & Pottenger:
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Zion	1940	only	-	Jun	 1	0:00	1:00	D
-Rule	Zion	1942	1944	-	Nov	 1	0:00	0	S
-Rule	Zion	1943	only	-	Apr	 1	2:00	1:00	D
-Rule	Zion	1944	only	-	Apr	 1	0:00	1:00	D
-Rule	Zion	1945	only	-	Apr	16	0:00	1:00	D
-Rule	Zion	1945	only	-	Nov	 1	2:00	0	S
-Rule	Zion	1946	only	-	Apr	16	2:00	1:00	D
-Rule	Zion	1946	only	-	Nov	 1	0:00	0	S
-Rule	Zion	1948	only	-	May	23	0:00	2:00	DD
-Rule	Zion	1948	only	-	Sep	 1	0:00	1:00	D
-Rule	Zion	1948	1949	-	Nov	 1	2:00	0	S
-Rule	Zion	1949	only	-	May	 1	0:00	1:00	D
-Rule	Zion	1950	only	-	Apr	16	0:00	1:00	D
-Rule	Zion	1950	only	-	Sep	15	3:00	0	S
-Rule	Zion	1951	only	-	Apr	 1	0:00	1:00	D
-Rule	Zion	1951	only	-	Nov	11	3:00	0	S
-Rule	Zion	1952	only	-	Apr	20	2:00	1:00	D
-Rule	Zion	1952	only	-	Oct	19	3:00	0	S
-Rule	Zion	1953	only	-	Apr	12	2:00	1:00	D
-Rule	Zion	1953	only	-	Sep	13	3:00	0	S
-Rule	Zion	1954	only	-	Jun	13	0:00	1:00	D
-Rule	Zion	1954	only	-	Sep	12	0:00	0	S
-Rule	Zion	1955	only	-	Jun	11	2:00	1:00	D
-Rule	Zion	1955	only	-	Sep	11	0:00	0	S
-Rule	Zion	1956	only	-	Jun	 3	0:00	1:00	D
-Rule	Zion	1956	only	-	Sep	30	3:00	0	S
-Rule	Zion	1957	only	-	Apr	29	2:00	1:00	D
-Rule	Zion	1957	only	-	Sep	22	0:00	0	S
-Rule	Zion	1974	only	-	Jul	 7	0:00	1:00	D
-Rule	Zion	1974	only	-	Oct	13	0:00	0	S
-Rule	Zion	1975	only	-	Apr	20	0:00	1:00	D
-Rule	Zion	1975	only	-	Aug	31	0:00	0	S
-Rule	Zion	1985	only	-	Apr	14	0:00	1:00	D
-Rule	Zion	1985	only	-	Sep	15	0:00	0	S
-Rule	Zion	1986	only	-	May	18	0:00	1:00	D
-Rule	Zion	1986	only	-	Sep	 7	0:00	0	S
-Rule	Zion	1987	only	-	Apr	15	0:00	1:00	D
-Rule	Zion	1987	only	-	Sep	13	0:00	0	S
-Rule	Zion	1988	only	-	Apr	 9	0:00	1:00	D
-Rule	Zion	1988	only	-	Sep	 3	0:00	0	S
-
-# From Ephraim Silverberg
-# (1997-03-04, 1998-03-16, 1998-12-28, 2000-01-17, 2000-07-25, 2004-12-22,
-# and 2005-02-17):
-
-# According to the Office of the Secretary General of the Ministry of
-# Interior, there is NO set rule for Daylight-Savings/Standard time changes.
-# One thing is entrenched in law, however: that there must be at least 150
-# days of daylight savings time annually.  From 1993-1998, the change to
-# daylight savings time was on a Friday morning from midnight IST to
-# 1 a.m IDT; up until 1998, the change back to standard time was on a
-# Saturday night from midnight daylight savings time to 11 p.m. standard
-# time.  1996 is an exception to this rule where the change back to standard
-# time took place on Sunday night instead of Saturday night to avoid
-# conflicts with the Jewish New Year.  In 1999, the change to
-# daylight savings time was still on a Friday morning but from
-# 2 a.m. IST to 3 a.m. IDT; furthermore, the change back to standard time
-# was also on a Friday morning from 2 a.m. IDT to 1 a.m. IST for
-# 1999 only.  In the year 2000, the change to daylight savings time was
-# similar to 1999, but although the change back will be on a Friday, it
-# will take place from 1 a.m. IDT to midnight IST.  Starting in 2001, all
-# changes to/from will take place at 1 a.m. old time, but now there is no
-# rule as to what day of the week it will take place in as the start date
-# (except in 2003) is the night after the Passover Seder (i.e. the eve
-# of the 16th of Nisan in the lunar Hebrew calendar) and the end date
-# (except in 2002) is three nights before Yom Kippur [Day of Atonement]
-# (the eve of the 7th of Tishrei in the lunar Hebrew calendar).
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Zion	1989	only	-	Apr	30	0:00	1:00	D
-Rule	Zion	1989	only	-	Sep	 3	0:00	0	S
-Rule	Zion	1990	only	-	Mar	25	0:00	1:00	D
-Rule	Zion	1990	only	-	Aug	26	0:00	0	S
-Rule	Zion	1991	only	-	Mar	24	0:00	1:00	D
-Rule	Zion	1991	only	-	Sep	 1	0:00	0	S
-Rule	Zion	1992	only	-	Mar	29	0:00	1:00	D
-Rule	Zion	1992	only	-	Sep	 6	0:00	0	S
-Rule	Zion	1993	only	-	Apr	 2	0:00	1:00	D
-Rule	Zion	1993	only	-	Sep	 5	0:00	0	S
-
-# The dates for 1994-1995 were obtained from Office of the Spokeswoman for the
-# Ministry of Interior, Jerusalem, Israel.  The spokeswoman can be reached by
-# calling the office directly at 972-2-6701447 or 972-2-6701448.
-
-# Rule	NAME    FROM    TO      TYPE    IN      ON      AT      SAVE    LETTER/S
-Rule	Zion	1994	only	-	Apr	 1	0:00	1:00	D
-Rule	Zion	1994	only	-	Aug	28	0:00	0	S
-Rule	Zion	1995	only	-	Mar	31	0:00	1:00	D
-Rule	Zion	1995	only	-	Sep	 3	0:00	0	S
-
-# The dates for 1996 were determined by the Minister of Interior of the
-# time, Haim Ramon.  The official announcement regarding 1996-1998
-# (with the dates for 1997-1998 no longer being relevant) can be viewed at:
-#
-#   ftp://ftp.cs.huji.ac.il/pub/tz/announcements/1996-1998.ramon.ps.gz
-#
-# The dates for 1997-1998 were altered by his successor, Rabbi Eli Suissa.
-#
-# The official announcements for the years 1997-1999 can be viewed at:
-#
-#   ftp://ftp.cs.huji.ac.il/pub/tz/announcements/YYYY.ps.gz
-#
-#       where YYYY is the relevant year.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Zion	1996	only	-	Mar	15	0:00	1:00	D
-Rule	Zion	1996	only	-	Sep	16	0:00	0	S
-Rule	Zion	1997	only	-	Mar	21	0:00	1:00	D
-Rule	Zion	1997	only	-	Sep	14	0:00	0	S
-Rule	Zion	1998	only	-	Mar	20	0:00	1:00	D
-Rule	Zion	1998	only	-	Sep	 6	0:00	0	S
-Rule	Zion	1999	only	-	Apr	 2	2:00	1:00	D
-Rule	Zion	1999	only	-	Sep	 3	2:00	0	S
-
-# The Knesset Interior Committee has changed the dates for 2000 for
-# the third time in just over a year and have set new dates for the
-# years 2001-2004 as well.
-#
-# The official announcement for the start date of 2000 can be viewed at:
-#
-#	ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2000-start.ps.gz
-#
-# The official announcement for the end date of 2000 and the dates
-# for the years 2001-2004 can be viewed at:
-#
-#	ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2000-2004.ps.gz
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Zion	2000	only	-	Apr	14	2:00	1:00	D
-Rule	Zion	2000	only	-	Oct	 6	1:00	0	S
-Rule	Zion	2001	only	-	Apr	 9	1:00	1:00	D
-Rule	Zion	2001	only	-	Sep	24	1:00	0	S
-Rule	Zion	2002	only	-	Mar	29	1:00	1:00	D
-Rule	Zion	2002	only	-	Oct	 7	1:00	0	S
-Rule	Zion	2003	only	-	Mar	28	1:00	1:00	D
-Rule	Zion	2003	only	-	Oct	 3	1:00	0	S
-Rule	Zion	2004	only	-	Apr	 7	1:00	1:00	D
-Rule	Zion	2004	only	-	Sep	22	1:00	0	S
-
-# The proposed law agreed upon by the Knesset Interior Committee on
-# 2005-02-14 is that, for 2005 and beyond, DST starts at 02:00 the
-# last Friday before April 2nd (i.e. the last Friday in March or April
-# 1st itself if it falls on a Friday) and ends at 02:00 on the Saturday
-# night _before_ the fast of Yom Kippur.
-#
-# Those who can read Hebrew can view the announcement at:
-#
-#	ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2005+beyond.ps
-
-# From Paul Eggert (2005-02-22):
-# I used Ephraim Silverberg's dst-israel.el program
-# <ftp://ftp.cs.huji.ac.il/pub/tz/software/dst-israel.el> (2005-02-20)
-# along with Ed Reingold's cal-hebrew in GNU Emacs 21.4,
-# to generate the transitions in this list.
-# (I replaced "lastFri" with "Fri>=26" by hand.)
-# The spring transitions below all correspond to the following Rule:
-#
-# Rule	Zion	2005	max	-	Mar	Fri>=26	2:00	1:00	D
-#
-# but older zic implementations (e.g., Solaris 8) do not support
-# "Fri>=26" to mean April 1 in years like 2005, so for now we list the
-# springtime transitions explicitly.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Zion	2005	only	-	Apr	 1	2:00	1:00	D
-Rule	Zion	2005	only	-	Oct	 9	2:00	0	S
-Rule	Zion	2006	2010	-	Mar	Fri>=26	2:00	1:00	D
-Rule	Zion	2006	only	-	Oct	 1	2:00	0	S
-Rule	Zion	2007	only	-	Sep	16	2:00	0	S
-Rule	Zion	2008	only	-	Oct	 5	2:00	0	S
-Rule	Zion	2009	only	-	Sep	27	2:00	0	S
-Rule	Zion	2010	only	-	Sep	12	2:00	0	S
-Rule	Zion	2011	only	-	Apr	 1	2:00	1:00	D
-Rule	Zion	2011	only	-	Oct	 2	2:00	0	S
-Rule	Zion	2012	2015	-	Mar	Fri>=26	2:00	1:00	D
-Rule	Zion	2012	only	-	Sep	23	2:00	0	S
-Rule	Zion	2013	only	-	Sep	 8	2:00	0	S
-Rule	Zion	2014	only	-	Sep	28	2:00	0	S
-Rule	Zion	2015	only	-	Sep	20	2:00	0	S
-Rule	Zion	2016	only	-	Apr	 1	2:00	1:00	D
-Rule	Zion	2016	only	-	Oct	 9	2:00	0	S
-Rule	Zion	2017	2021	-	Mar	Fri>=26	2:00	1:00	D
-Rule	Zion	2017	only	-	Sep	24	2:00	0	S
-Rule	Zion	2018	only	-	Sep	16	2:00	0	S
-Rule	Zion	2019	only	-	Oct	 6	2:00	0	S
-Rule	Zion	2020	only	-	Sep	27	2:00	0	S
-Rule	Zion	2021	only	-	Sep	12	2:00	0	S
-Rule	Zion	2022	only	-	Apr	 1	2:00	1:00	D
-Rule	Zion	2022	only	-	Oct	 2	2:00	0	S
-Rule	Zion	2023	2032	-	Mar	Fri>=26	2:00	1:00	D
-Rule	Zion	2023	only	-	Sep	24	2:00	0	S
-Rule	Zion	2024	only	-	Oct	 6	2:00	0	S
-Rule	Zion	2025	only	-	Sep	28	2:00	0	S
-Rule	Zion	2026	only	-	Sep	20	2:00	0	S
-Rule	Zion	2027	only	-	Oct	10	2:00	0	S
-Rule	Zion	2028	only	-	Sep	24	2:00	0	S
-Rule	Zion	2029	only	-	Sep	16	2:00	0	S
-Rule	Zion	2030	only	-	Oct	 6	2:00	0	S
-Rule	Zion	2031	only	-	Sep	21	2:00	0	S
-Rule	Zion	2032	only	-	Sep	12	2:00	0	S
-Rule	Zion	2033	only	-	Apr	 1	2:00	1:00	D
-Rule	Zion	2033	only	-	Oct	 2	2:00	0	S
-Rule	Zion	2034	2037	-	Mar	Fri>=26	2:00	1:00	D
-Rule	Zion	2034	only	-	Sep	17	2:00	0	S
-Rule	Zion	2035	only	-	Oct	 7	2:00	0	S
-Rule	Zion	2036	only	-	Sep	28	2:00	0	S
-Rule	Zion	2037	only	-	Sep	13	2:00	0	S
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Jerusalem	2:20:56 -	LMT	1880
-			2:20:40	-	JMT	1918	# Jerusalem Mean Time?
-			2:00	Zion	I%sT
-
-
-
-###############################################################################
-
-# Japan
-
-# `9:00' and `JST' is from Guy Harris.
-
-# From Paul Eggert (1995-03-06):
-# Today's _Asahi Evening News_ (page 4) reports that Japan had
-# daylight saving between 1948 and 1951, but ``the system was discontinued
-# because the public believed it would lead to longer working hours.''
-
-# From Mayumi Negishi in the 2005-08-10 Japan Times
-# <http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm>:
-# Occupation authorities imposed daylight-saving time on Japan on
-# [1948-05-01]....  But lack of prior debate and the execution of
-# daylight-saving time just three days after the bill was passed generated
-# deep hatred of the concept....  The Diet unceremoniously passed a bill to
-# dump the unpopular system in October 1951, less than a month after the San
-# Francisco Peace Treaty was signed.  (A government poll in 1951 showed 53%
-# of the Japanese wanted to scrap daylight-saving time, as opposed to 30% who
-# wanted to keep it.)
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that DST in Japan during those years was as follows:
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Japan	1948	only	-	May	Sun>=1	2:00	1:00	D
-Rule	Japan	1948	1951	-	Sep	Sat>=8	2:00	0	S
-Rule	Japan	1949	only	-	Apr	Sun>=1	2:00	1:00	D
-Rule	Japan	1950	1951	-	May	Sun>=1	2:00	1:00	D
-# but the only locations using it (for birth certificates, presumably, since
-# their audience is astrologers) were US military bases.  For now, assume
-# that for most purposes daylight-saving time was observed; otherwise, what
-# would have been the point of the 1951 poll?
-
-# From Hideyuki Suzuki (1998-11-09):
-# 'Tokyo' usually stands for the former location of Tokyo Astronomical
-# Observatory: E 139 44' 40".90 (9h 18m 58s.727), N 35 39' 16".0.
-# This data is from 'Rika Nenpyou (Chronological Scientific Tables) 1996'
-# edited by National Astronomical Observatory of Japan....
-# JST (Japan Standard Time) has been used since 1888-01-01 00:00 (JST).
-# The law is enacted on 1886-07-07.
-
-# From Hideyuki Suzuki (1998-11-16):
-# The ordinance No. 51 (1886) established "standard time" in Japan,
-# which stands for the time on E 135 degree.
-# In the ordinance No. 167 (1895), "standard time" was renamed to "central
-# standard time".  And the same ordinance also established "western standard
-# time", which stands for the time on E 120 degree....  But "western standard
-# time" was abolished in the ordinance No. 529 (1937).  In the ordinance No.
-# 167, there is no mention regarding for what place western standard time is
-# standard....
-#
-# I wrote "ordinance" above, but I don't know how to translate.
-# In Japanese it's "chokurei", which means ordinance from emperor.
-
-# Shanks & Pottenger claim JST in use since 1896, and that a few
-# places (e.g. Ishigaki) use +0800; go with Suzuki.  Guess that all
-# ordinances took effect on Jan 1.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Tokyo	9:18:59	-	LMT	1887 Dec 31 15:00u
-			9:00	-	JST	1896
-			9:00	-	CJT	1938
-			9:00	Japan	J%sT
-# Since 1938, all Japanese possessions have been like Asia/Tokyo.
-
-# Jordan
-#
-# From <a href="http://star.arabia.com/990701/JO9.html">
-# Jordan Week (1999-07-01) </a> via Steffen Thorsen (1999-09-09):
-# Clocks in Jordan were forwarded one hour on Wednesday at midnight,
-# in accordance with the government's decision to implement summer time
-# all year round.
-#
-# From <a href="http://star.arabia.com/990930/JO9.html">
-# Jordan Week (1999-09-30) </a> via Steffen Thorsen (1999-11-09):
-# Winter time starts today Thursday, 30 September. Clocks will be turned back
-# by one hour.  This is the latest government decision and it's final!
-# The decision was taken because of the increase in working hours in
-# government's departments from six to seven hours.
-#
-# From Paul Eggert (2005-11-22):
-# Starting 2003 transitions are from Steffen Thorsen's web site timeanddate.com.
-#
-# From Steffen Thorsen (2005-11-23):
-# For Jordan I have received multiple independent user reports every year
-# about DST end dates, as the end-rule is different every year.
-#
-# From Steffen Thorsen (2006-10-01), after a heads-up from Hilal Malawi:
-# http://www.petranews.gov.jo/nepras/2006/Sep/05/4000.htm
-# "Jordan will switch to winter time on Friday, October 27".
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Jordan	1973	only	-	Jun	6	0:00	1:00	S
-Rule	Jordan	1973	1975	-	Oct	1	0:00	0	-
-Rule	Jordan	1974	1977	-	May	1	0:00	1:00	S
-Rule	Jordan	1976	only	-	Nov	1	0:00	0	-
-Rule	Jordan	1977	only	-	Oct	1	0:00	0	-
-Rule	Jordan	1978	only	-	Apr	30	0:00	1:00	S
-Rule	Jordan	1978	only	-	Sep	30	0:00	0	-
-Rule	Jordan	1985	only	-	Apr	1	0:00	1:00	S
-Rule	Jordan	1985	only	-	Oct	1	0:00	0	-
-Rule	Jordan	1986	1988	-	Apr	Fri>=1	0:00	1:00	S
-Rule	Jordan	1986	1990	-	Oct	Fri>=1	0:00	0	-
-Rule	Jordan	1989	only	-	May	8	0:00	1:00	S
-Rule	Jordan	1990	only	-	Apr	27	0:00	1:00	S
-Rule	Jordan	1991	only	-	Apr	17	0:00	1:00	S
-Rule	Jordan	1991	only	-	Sep	27	0:00	0	-
-Rule	Jordan	1992	only	-	Apr	10	0:00	1:00	S
-Rule	Jordan	1992	1993	-	Oct	Fri>=1	0:00	0	-
-Rule	Jordan	1993	1998	-	Apr	Fri>=1	0:00	1:00	S
-Rule	Jordan	1994	only	-	Sep	Fri>=15	0:00	0	-
-Rule	Jordan	1995	1998	-	Sep	Fri>=15	0:00s	0	-
-Rule	Jordan	1999	only	-	Jul	 1	0:00s	1:00	S
-Rule	Jordan	1999	2002	-	Sep	lastThu	0:00s	0	-
-Rule	Jordan	2000	max	-	Mar	lastThu	0:00s	1:00	S
-Rule	Jordan	2003	only	-	Oct	24	0:00s	0	-
-Rule	Jordan	2004	only	-	Oct	15	0:00s	0	-
-Rule	Jordan	2005	only	-	Sep	lastFri	0:00s	0	-
-Rule	Jordan	2006	max	-	Oct	lastFri	0:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Amman	2:23:44 -	LMT	1931
-			2:00	Jordan	EE%sT
-
-
-# Kazakhstan
-
-# From Paul Eggert (1996-11-22):
-# Andrew Evtichov (1996-04-13) writes that Kazakhstan
-# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
-# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
-# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
-# IATA SSIM mentions a third time zone in Kazakhstan.
-
-# From Paul Eggert (2006-03-22):
-# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
-# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
-# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
-# Also go with the following claims of Shanks & Pottenger:
-#
-# - Kazakhstan did not observe DST in 1991.
-# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
-# - Oral switched from +5:00 to +4:00 in spring 1989.
-
-# <a href="http://www.kazsociety.org.uk/news/2005/03/30.htm">
-# From Kazakhstan Embassy's News Bulletin #11 (2005-03-21):
-# </a>
-# The Government of Kazakhstan passed a resolution March 15 abolishing
-# daylight saving time citing lack of economic benefits and health
-# complications coupled with a decrease in productivity.
-#
-# From Branislav Kojic (in Astana) via Gwillim Law (2005-06-28):
-# ... what happened was that the former Kazakhstan Eastern time zone
-# was "blended" with the Central zone.  Therefore, Kazakhstan now has
-# two time zones, and difference between them is one hour.  The zone
-# closer to UTC is the former Western zone (probably still called the
-# same), encompassing four provinces in the west: Aqtobe, Atyrau,
-# Mangghystau, and West Kazakhstan.  The other zone encompasses
-# everything else....  I guess that would make Kazakhstan time zones
-# de jure UTC+5 and UTC+6 respectively.
-
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-#
-# Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
-Zone	Asia/Almaty	5:07:48 -	LMT	1924 May  2 # or Alma-Ata
-			5:00	-	ALMT	1930 Jun 21 # Alma-Ata Time
-			6:00 RussiaAsia ALM%sT	1991
-			6:00	-	ALMT	1992
-			6:00 RussiaAsia	ALM%sT	2005 Mar 15
-			6:00	-	ALMT
-# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
-Zone	Asia/Qyzylorda	4:21:52 -	LMT	1924 May  2
-			4:00	-	KIZT	1930 Jun 21 # Kizilorda Time
-			5:00	-	KIZT	1981 Apr  1
-			5:00	1:00	KIZST	1981 Oct  1
-			6:00	-	KIZT	1982 Apr  1
-			5:00 RussiaAsia	KIZ%sT	1991
-			5:00	-	KIZT	1991 Dec 16 # independence
-			5:00	-	QYZT	1992 Jan 19 2:00
-			6:00 RussiaAsia	QYZ%sT	2005 Mar 15
-			6:00	-	QYZT
-# Aqtobe (aka Aktobe, formerly Akt'ubinsk)
-Zone	Asia/Aqtobe	3:48:40	-	LMT	1924 May  2
-			4:00	-	AKTT	1930 Jun 21 # Aktyubinsk Time
-			5:00	-	AKTT	1981 Apr  1
-			5:00	1:00	AKTST	1981 Oct  1
-			6:00	-	AKTT	1982 Apr  1
-			5:00 RussiaAsia	AKT%sT	1991
-			5:00	-	AKTT	1991 Dec 16 # independence
-			5:00 RussiaAsia	AQT%sT	2005 Mar 15 # Aqtobe Time
-			5:00	-	AQTT
-# Mangghystau
-# Aqtau was not founded until 1963, but it represents an inhabited region,
-# so include time stamps before 1963.
-Zone	Asia/Aqtau	3:21:04	-	LMT	1924 May  2
-			4:00	-	FORT	1930 Jun 21 # Fort Shevchenko T
-			5:00	-	FORT	1963
-			5:00	-	SHET	1981 Oct  1 # Shevchenko Time
-			6:00	-	SHET	1982 Apr  1
-			5:00 RussiaAsia	SHE%sT	1991
-			5:00	-	SHET	1991 Dec 16 # independence
-			5:00 RussiaAsia	AQT%sT	1995 Mar lastSun 2:00 # Aqtau Time
-			4:00 RussiaAsia	AQT%sT	2005 Mar 15
-			5:00	-	AQTT
-# West Kazakhstan
-Zone	Asia/Oral	3:25:24	-	LMT	1924 May  2 # or Ural'sk
-			4:00	-	URAT	1930 Jun 21 # Ural'sk time
-			5:00	-	URAT	1981 Apr  1
-			5:00	1:00	URAST	1981 Oct  1
-			6:00	-	URAT	1982 Apr  1
-			5:00 RussiaAsia	URA%sT	1989 Mar 26 2:00
-			4:00 RussiaAsia	URA%sT	1991
-			4:00	-	URAT	1991 Dec 16 # independence
-			4:00 RussiaAsia	ORA%sT	2005 Mar 15 # Oral Time
-			5:00	-	ORAT
-
-# Kyrgyzstan (Kirgizstan)
-# Transitions through 1991 are from Shanks & Pottenger.
-
-# From Paul Eggert (2005-08-15):
-# According to an article dated today in the Kyrgyzstan Development Gateway
-# <http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml>
-# Kyrgyzstan is canceling the daylight saving time system.  I take the article
-# to mean that they will leave their clocks at 6 hours ahead of UTC.
-# From Malik Abdugaliev (2005-09-21):
-# Our government cancels daylight saving time 6th of August 2005.
-# From 2005-08-12 our GMT-offset is +6, w/o any daylight saving.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Kyrgyz	1992	1996	-	Apr	Sun>=7	0:00s	1:00	S
-Rule	Kyrgyz	1992	1996	-	Sep	lastSun	0:00	0	-
-Rule	Kyrgyz	1997	2005	-	Mar	lastSun	2:30	1:00	S
-Rule	Kyrgyz	1997	2004	-	Oct	lastSun	2:30	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Bishkek	4:58:24 -	LMT	1924 May  2
-			5:00	-	FRUT	1930 Jun 21 # Frunze Time
-			6:00 RussiaAsia FRU%sT	1991 Mar 31 2:00s
-			5:00	1:00	FRUST	1991 Aug 31 2:00 # independence
-			5:00	Kyrgyz	KG%sT	2005 Aug 12    # Kyrgyzstan Time
-			6:00	-	KGT
-
-###############################################################################
-
-# Korea (North and South)
-
-# From Annie I. Bang (2006-07-10) in
-# <http://www.koreaherald.co.kr/SITE/data/html_dir/2006/07/10/200607100012.asp>:
-# The Ministry of Commerce, Industry and Energy has already
-# commissioned a research project [to reintroduce DST] and has said
-# the system may begin as early as 2008....  Korea ran a daylight
-# saving program from 1949-61 but stopped it during the 1950-53 Korean War.
-
-# From Shanks & Pottenger:
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	ROK	1960	only	-	May	15	0:00	1:00	D
-Rule	ROK	1960	only	-	Sep	13	0:00	0	S
-Rule	ROK	1987	1988	-	May	Sun>=8	0:00	1:00	D
-Rule	ROK	1987	1988	-	Oct	Sun>=8	0:00	0	S
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Seoul	8:27:52	-	LMT	1890
-			8:30	-	KST	1904 Dec
-			9:00	-	KST	1928
-			8:30	-	KST	1932
-			9:00	-	KST	1954 Mar 21
-			8:00	ROK	K%sT	1961 Aug 10
-			8:30	-	KST	1968 Oct
-			9:00	ROK	K%sT
-Zone	Asia/Pyongyang	8:23:00 -	LMT	1890
-			8:30	-	KST	1904 Dec
-			9:00	-	KST	1928
-			8:30	-	KST	1932
-			9:00	-	KST	1954 Mar 21
-			8:00	-	KST	1961 Aug 10
-			9:00	-	KST
-
-###############################################################################
-
-# Kuwait
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-# From the Arab Times (2007-03-14):
-# The Civil Service Commission (CSC) has approved a proposal forwarded
-# by MP Ahmad Baqer on implementing the daylight saving time (DST) in
-# Kuwait starting from April until the end of Sept this year, reports Al-Anba.
-# <http://www.arabtimesonline.com/arabtimes/kuwait/Viewdet.asp?ID=9950>.
-# From Paul Eggert (2007-03-29):
-# We don't know the details, or whether the approval means it'll happen,
-# so for now we assume no DST.
-Zone	Asia/Kuwait	3:11:56 -	LMT	1950
-			3:00	-	AST
-
-# Laos
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Vientiane	6:50:24 -	LMT	1906 Jun  9 # or Viangchan
-			7:06:20	-	SMT	1911 Mar 11 0:01 # Saigon MT?
-			7:00	-	ICT	1912 May
-			8:00	-	ICT	1931 May
-			7:00	-	ICT
-
-# Lebanon
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Lebanon	1920	only	-	Mar	28	0:00	1:00	S
-Rule	Lebanon	1920	only	-	Oct	25	0:00	0	-
-Rule	Lebanon	1921	only	-	Apr	3	0:00	1:00	S
-Rule	Lebanon	1921	only	-	Oct	3	0:00	0	-
-Rule	Lebanon	1922	only	-	Mar	26	0:00	1:00	S
-Rule	Lebanon	1922	only	-	Oct	8	0:00	0	-
-Rule	Lebanon	1923	only	-	Apr	22	0:00	1:00	S
-Rule	Lebanon	1923	only	-	Sep	16	0:00	0	-
-Rule	Lebanon	1957	1961	-	May	1	0:00	1:00	S
-Rule	Lebanon	1957	1961	-	Oct	1	0:00	0	-
-Rule	Lebanon	1972	only	-	Jun	22	0:00	1:00	S
-Rule	Lebanon	1972	1977	-	Oct	1	0:00	0	-
-Rule	Lebanon	1973	1977	-	May	1	0:00	1:00	S
-Rule	Lebanon	1978	only	-	Apr	30	0:00	1:00	S
-Rule	Lebanon	1978	only	-	Sep	30	0:00	0	-
-Rule	Lebanon	1984	1987	-	May	1	0:00	1:00	S
-Rule	Lebanon	1984	1991	-	Oct	16	0:00	0	-
-Rule	Lebanon	1988	only	-	Jun	1	0:00	1:00	S
-Rule	Lebanon	1989	only	-	May	10	0:00	1:00	S
-Rule	Lebanon	1990	1992	-	May	1	0:00	1:00	S
-Rule	Lebanon	1992	only	-	Oct	4	0:00	0	-
-Rule	Lebanon	1993	max	-	Mar	lastSun	0:00	1:00	S
-Rule	Lebanon	1993	1998	-	Sep	lastSun	0:00	0	-
-Rule	Lebanon	1999	max	-	Oct	lastSun	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Beirut	2:22:00 -	LMT	1880
-			2:00	Lebanon	EE%sT
-
-# Malaysia
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	NBorneo	1935	1941	-	Sep	14	0:00	0:20	TS # one-Third Summer
-Rule	NBorneo	1935	1941	-	Dec	14	0:00	0	-
-#
-# peninsular Malaysia
-# The data here are taken from Mok Ly Yng (2003-10-30)
-# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Asia/Kuala_Lumpur	6:46:46 -	LMT	1901 Jan  1
-			6:55:25	-	SMT	1905 Jun  1 # Singapore M.T.
-			7:00	-	MALT	1933 Jan  1 # Malaya Time
-			7:00	0:20	MALST	1936 Jan  1
-			7:20	-	MALT	1941 Sep  1
-			7:30	-	MALT	1942 Feb 16
-			9:00	-	JST	1945 Sep 12
-			7:30	-	MALT	1982 Jan  1
-			8:00	-	MYT	# Malaysia Time
-# Sabah & Sarawak
-# From Paul Eggert (2006-03-22):
-# The data here are mostly from Shanks & Pottenger, but the 1942, 1945 and 1982
-# transition dates are from Mok Ly Yng.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Asia/Kuching	7:21:20	-	LMT	1926 Mar
-			7:30	-	BORT	1933	# Borneo Time
-			8:00	NBorneo	BOR%sT	1942 Feb 16
-			9:00	-	JST	1945 Sep 12
-			8:00	-	BORT	1982 Jan  1
-			8:00	-	MYT
-
-# Maldives
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Indian/Maldives	4:54:00 -	LMT	1880	# Male
-			4:54:00	-	MMT	1960	# Male Mean Time
-			5:00	-	MVT		# Maldives Time
-
-# Mongolia
-
-# Shanks & Pottenger say that Mongolia has three time zones, but
-# usno1995 and the CIA map Standard Time Zones of the World (2005-03)
-# both say that it has just one.
-
-# From Oscar van Vlijmen (1999-12-11):
-# <a href="http://www.mongoliatourism.gov.mn/general.htm">
-# General Information Mongolia
-# </a> (1999-09)
-# "Time: Mongolia has two time zones. Three westernmost provinces of
-# Bayan-Ulgii, Uvs, and Hovd are one hour earlier than the capital city, and
-# the rest of the country follows the Ulaanbaatar time, which is UTC/GMT plus
-# eight hours."
-
-# From Rives McDow (1999-12-13):
-# Mongolia discontinued the use of daylight savings time in 1999; 1998
-# being the last year it was implemented.  The dates of implementation I am
-# unsure of, but most probably it was similar to Russia, except for the time
-# of implementation may have been different....
-# Some maps in the past have indicated that there was an additional time
-# zone in the eastern part of Mongolia, including the provinces of Dornod,
-# Suhbaatar, and possibly Khentij.
-
-# From Paul Eggert (1999-12-15):
-# Naming and spelling is tricky in Mongolia.
-# We'll use Hovd (also spelled Chovd and Khovd) to represent the west zone;
-# the capital of the Hovd province is sometimes called Hovd, sometimes Dund-Us,
-# and sometimes Jirgalanta (with variant spellings), but the name Hovd
-# is good enough for our purposes.
-
-# From Rives McDow (2001-05-13):
-# In addition to Mongolia starting daylight savings as reported earlier
-# (adopted DST on 2001-04-27 02:00 local time, ending 2001-09-28),
-# there are three time zones.
-#
-# Provinces [at 7:00]: Bayan-ulgii, Uvs, Khovd, Zavkhan, Govi-Altai
-# Provinces [at 8:00]: Khovsgol, Bulgan, Arkhangai, Khentii, Tov,
-#	Bayankhongor, Ovorkhangai, Dundgovi, Dornogovi, Omnogovi
-# Provinces [at 9:00]: Dornod, Sukhbaatar
-#
-# [The province of Selenge is omitted from the above lists.]
-
-# From Ganbold Ts., Ulaanbaatar (2004-04-17):
-# Daylight saving occurs at 02:00 local time last Saturday of March.
-# It will change back to normal at 02:00 local time last Saturday of
-# September.... As I remember this rule was changed in 2001.
-#
-# From Paul Eggert (2004-04-17):
-# For now, assume Rives McDow's informant got confused about Friday vs
-# Saturday, and that his 2001 dates should have 1 added to them.
-
-# From Paul Eggert (2005-07-26):
-# We have wildly conflicting information about Mongolia's time zones.
-# Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
-# there is only one time zone and that DST is observed, citing Microsoft
-# Windows XP as the source.  Risto Nykanen (2005-05-16) reports that
-# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
-# Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
-# Washington, DC says there are two time zones, with DST observed.
-# He also found
-# <http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&>
-# which also says that there is DST, and which has a comment by "Toddius"
-# (2005-03-31 06:05 +0700) saying "Mongolia actually has 3.5 time zones.
-# The West (OLGII) is +7 GMT, most of the country is ULAT is +8 GMT
-# and some Eastern provinces are +9 GMT but Sukhbaatar Aimag is SUHK +8.5 GMT.
-# The SUKH timezone is new this year, it is one of the few things the
-# parliament passed during the tumultuous winter session."
-# For now, let's ignore this information, until we have more confirmation.
-
-# From Ganbold Ts. (2007-02-26):
-# Parliament of Mongolia has just changed the daylight-saving rule in February.
-# They decided not to adopt daylight-saving time....
-# http://www.mongolnews.mn/index.php?module=unuudur&sec=view&id=15742
-
-# From Deborah Goldsmith (2008-03-30):
-# We received a bug report claiming that the tz database UTC offset for
-# Asia/Choibalsan (GMT+09:00) is incorrect, and that it should be GMT
-# +08:00 instead. Different sources appear to disagree with the tz
-# database on this, e.g.:
-#
-# <a href="http://www.timeanddate.com/worldclock/city.html?n=1026">
-# http://www.timeanddate.com/worldclock/city.html?n=1026
-# </a>
-# <a href="http://www.worldtimeserver.com/current_time_in_MN.aspx">
-# http://www.worldtimeserver.com/current_time_in_MN.aspx
-# </a>
-#
-# both say GMT+08:00.
-
-# From Steffen Thorsen (2008-03-31):
-# eznis airways, which operates several domestic flights, has a flight
-# schedule here:
-# <a href="http://www.eznis.com/Container.jsp?id=112">
-# http://www.eznis.com/Container.jsp?id=112
-# </a>
-# (click the English flag for English)
-#
-# There it appears that flights between Choibalsan and Ulaanbatar arrive
-# about 1:35 - 1:50 hours later in local clock time, no matter the
-# direction, while Ulaanbaatar-Khvod takes 2 hours in the Eastern
-# direction and 3:35 back, which indicates that Ulaanbatar and Khvod are
-# in different time zones (like we know about), while Choibalsan and
-# Ulaanbatar are in the same time zone (correction needed).
-
-# From Arthur David Olson (2008-05-19):
-# Assume that Choibalsan is indeed offset by 8:00.
-# XXX--in the absence of better information, assume that transition
-# was at the start of 2008-03-31 (the day of Steffen Thorsen's report);
-# this is almost surely wrong.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Mongol	1983	1984	-	Apr	1	0:00	1:00	S
-Rule	Mongol	1983	only	-	Oct	1	0:00	0	-
-# Shanks & Pottenger and IATA SSIM say 1990s switches occurred at 00:00,
-# but McDow says the 2001 switches occurred at 02:00.  Also, IATA SSIM
-# (1996-09) says 1996-10-25.  Go with Shanks & Pottenger through 1998.
-#
-# Shanks & Pottenger say that the Sept. 1984 through Sept. 1990 switches
-# in Choibalsan (more precisely, in Dornod and Sukhbaatar) took place
-# at 02:00 standard time, not at 00:00 local time as in the rest of
-# the country.  That would be odd, and possibly is a result of their
-# correction of 02:00 (in the previous edition) not being done correctly
-# in the latest edition; so ignore it for now.
-
-Rule	Mongol	1985	1998	-	Mar	lastSun	0:00	1:00	S
-Rule	Mongol	1984	1998	-	Sep	lastSun	0:00	0	-
-# IATA SSIM (1999-09) says Mongolia no longer observes DST.
-Rule	Mongol	2001	only	-	Apr	lastSat	2:00	1:00	S
-Rule	Mongol	2001	2006	-	Sep	lastSat	2:00	0	-
-Rule	Mongol	2002	2006	-	Mar	lastSat	2:00	1:00	S
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-# Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta
-Zone	Asia/Hovd	6:06:36 -	LMT	1905 Aug
-			6:00	-	HOVT	1978	# Hovd Time
-			7:00	Mongol	HOV%sT
-# Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga
-Zone	Asia/Ulaanbaatar 7:07:32 -	LMT	1905 Aug
-			7:00	-	ULAT	1978	# Ulaanbaatar Time
-			8:00	Mongol	ULA%sT
-# Choibalsan, a.k.a. Bajan Tuemen, Bajan Tumen, Chojbalsan,
-# Choybalsan, Sanbejse, Tchoibalsan
-Zone	Asia/Choibalsan	7:38:00 -	LMT	1905 Aug
-			7:00	-	ULAT	1978
-			8:00	-	ULAT	1983 Apr
-			9:00	Mongol	CHO%sT	2008 Mar 31 # Choibalsan Time
-			8:00	Mongol	CHO%sT
-
-# Nepal
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Katmandu	5:41:16 -	LMT	1920
-			5:30	-	IST	1986
-			5:45	-	NPT	# Nepal Time
-
-# Oman
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Muscat	3:54:20 -	LMT	1920
-			4:00	-	GST
-
-# Pakistan
-
-# From Rives McDow (2002-03-13):
-# I have been advised that Pakistan has decided to adopt dst on a
-# TRIAL basis for one year, starting 00:01 local time on April 7, 2002
-# and ending at 00:01 local time October 6, 2002.  This is what I was
-# told, but I believe that the actual time of change may be 00:00; the
-# 00:01 was to make it clear which day it was on.
-
-# From Paul Eggert (2002-03-15):
-# Jesper Norgaard found this URL:
-# http://www.pak.gov.pk/public/news/app/app06_dec.htm
-# (dated 2001-12-06) which says that the Cabinet adopted a scheme "to
-# advance the clocks by one hour on the night between the first
-# Saturday and Sunday of April and revert to the original position on
-# 15th October each year".  This agrees with McDow's 04-07 at 00:00,
-# but disagrees about the October transition, and makes it sound like
-# it's not on a trial basis.  Also, the "between the first Saturday
-# and Sunday of April" phrase, if taken literally, means that the
-# transition takes place at 00:00 on the first Sunday on or after 04-02.
-
-# From Paul Eggert (2003-02-09):
-# DAWN <http://www.dawn.com/2002/10/06/top13.htm> reported on 2002-10-05
-# that 2002 DST ended that day at midnight.  Go with McDow for now.
-
-# From Steffen Thorsen (2003-03-14):
-# According to http://www.dawn.com/2003/03/07/top15.htm
-# there will be no DST in Pakistan this year:
-#
-# ISLAMABAD, March 6: Information and Media Development Minister Sheikh
-# Rashid Ahmed on Thursday said the cabinet had reversed a previous
-# decision to advance clocks by one hour in summer and put them back by
-# one hour in winter with the aim of saving light hours and energy.
-#
-# The minister told a news conference that the experiment had rather
-# shown 8 per cent higher consumption of electricity.
-
-# From Alex Krivenyshev (2008-05-15):
-# 
-# Here is an article that Pakistan plan to introduce Daylight Saving Time 
-# on June 1, 2008 for 3 months.
-# 
-# "... The federal cabinet on Wednesday announced a new conservation plan to help 
-# reduce load shedding by approving the closure of commercial centres at 9pm and 
-# moving clocks forward by one hour for the next three months. 
-# ...."
-# 
-# <a href="http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html">
-# http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html
-# </a>
-# OR
-# <a href="http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4">
-# http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
-# </a>
-
-# From Arthur David Olson (2008-05-19):
-# XXX--midnight transitions is a guess; 2008 only is a guess.
-
-# From Alexander Krivenyshev (2008-08-28):
-# Pakistan government has decided to keep the watches one-hour advanced
-# for another 2 months--plan to return to Standard Time on October 31
-# instead of August 31.
-#
-# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html">
-# http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html
-# </a>
-# OR
-# <a href="http://dailymailnews.com/200808/28/news/dmbrn03.html">
-# http://dailymailnews.com/200808/28/news/dmbrn03.html
-# </a>
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule Pakistan	2002	only	-	Apr	Sun>=2	0:01	1:00	S
-Rule Pakistan	2002	only	-	Oct	Sun>=2	0:01	0	-
-Rule Pakistan	2008	only	-	Jun	1	0:00	1:00	S
-Rule Pakistan	2008	only	-	Nov	1	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Karachi	4:28:12 -	LMT	1907
-			5:30	-	IST	1942 Sep
-			5:30	1:00	IST	1945 Oct 15
-			5:30	-	IST	1951 Sep 30
-			5:00	-	KART	1971 Mar 26 # Karachi Time
-			5:00 Pakistan	PK%sT	# Pakistan Time
-
-# Palestine
-
-# From Amos Shapir (1998-02-15):
-#
-# From 1917 until 1948-05-15, all of Palestine, including the parts now
-# known as the Gaza Strip and the West Bank, was under British rule.
-# Therefore the rules given for Israel for that period, apply there too...
-#
-# The Gaza Strip was under Egyptian rule between 1948-05-15 until 1967-06-05
-# (except a short occupation by Israel from 1956-11 till 1957-03, but no
-# time zone was affected then).  It was never formally annexed to Egypt,
-# though.
-#
-# The rest of Palestine was under Jordanian rule at that time, formally
-# annexed in 1950 as the West Bank (and the word "Trans" was dropped from
-# the country's previous name of "the Hashemite Kingdom of the
-# Trans-Jordan").  So the rules for Jordan for that time apply.  Major
-# towns in that area are Nablus (Shchem), El-Halil (Hebron), Ramallah, and
-# East Jerusalem.
-#
-# Both areas were occupied by Israel in June 1967, but not annexed (except
-# for East Jerusalem).  They were on Israel time since then; there might
-# have been a Military Governor's order about time zones, but I'm not aware
-# of any (such orders may have been issued semi-annually whenever summer
-# time was in effect, but maybe the legal aspect of time was just neglected).
-#
-# The Palestinian Authority was established in 1993, and got hold of most
-# towns in the West Bank and Gaza by 1995.  I know that in order to
-# demonstrate...independence, they have been switching to
-# summer time and back on a different schedule than Israel's, but I don't
-# know when this was started, or what algorithm is used (most likely the
-# Jordanian one).
-#
-# To summarize, the table should probably look something like that:
-#
-# Area \ when | 1918-1947 | 1948-1967 | 1967-1995 | 1996-
-# ------------+-----------+-----------+-----------+-----------
-# Israel      | Zion      | Zion      | Zion      | Zion
-# West bank   | Zion      | Jordan    | Zion      | Jordan
-# Gaza        | Zion      | Egypt     | Zion      | Jordan
-#
-# I guess more info may be available from the PA's web page (if/when they
-# have one).
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that Gaza did not observe DST until 1957, but go
-# with Shapir and assume that it observed DST from 1940 through 1947,
-# and that it used Jordanian rules starting in 1996.
-# We don't yet need a separate entry for the West Bank, since
-# the only differences between it and Gaza that we know about
-# occurred before our cutoff date of 1970.
-# However, as we get more information, we may need to add entries
-# for parts of the West Bank as they transitioned from Israel's rules
-# to Palestine's rules.  If you have more info about this, please
-# send it to tz@elsie.nci.nih.gov for incorporation into future editions.
-
-# From IINS News Service - Israel - 1998-03-23 10:38:07 Israel time,
-# forwarded by Ephraim Silverberg:
-#
-# Despite the fact that Israel changed over to daylight savings time
-# last week, the PLO Authority (PA) has decided not to turn its clocks
-# one-hour forward at this time.  As a sign of independence from Israeli rule,
-# the PA has decided to implement DST in April.
-
-# From Paul Eggert (1999-09-20):
-# Daoud Kuttab writes in
-# <a href="http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html">
-# Holiday havoc
-# </a> (Jerusalem Post, 1999-04-22) that
-# the Palestinian National Authority changed to DST on 1999-04-15.
-# I vaguely recall that they switch back in October (sorry, forgot the source).
-# For now, let's assume that the spring switch was at 24:00,
-# and that they switch at 0:00 on the 3rd Fridays of April and October.
-
-# From Paul Eggert (2005-11-22):
-# Starting 2004 transitions are from Steffen Thorsen's web site timeanddate.com.
-
-# From Steffen Thorsen (2005-11-23):
-# A user from Gaza reported that Gaza made the change early because of
-# the Ramadan.  Next year Ramadan will be even earlier, so I think
-# there is a good chance next year's end date will be around two weeks
-# earlier--the same goes for Jordan.
-
-# From Steffen Thorsen (2006-08-17):
-# I was informed by a user in Bethlehem that in Bethlehem it started the
-# same day as Israel, and after checking with other users in the area, I
-# was informed that they started DST one day after Israel.  I was not
-# able to find any authoritative sources at the time, nor details if
-# Gaza changed as well, but presumed Gaza to follow the same rules as
-# the West Bank.
-
-# From Steffen Thorsen (2006-09-26):
-# according to the Palestine News Network (2006-09-19):
-# http://english.pnn.ps/index.php?option=com_content&task=view&id=596&Itemid=5
-# > The Council of Ministers announced that this year its winter schedule
-# > will begin early, as of midnight Thursday.  It is also time to turn
-# > back the clocks for winter.  Friday will begin an hour late this week.
-# I guess it is likely that next year's date will be moved as well,
-# because of the Ramadan.
-
-# From Jesper Norgaard Welen (2007-09-18):
-# According to Steffen Thorsen's web site the Gaza Strip and the rest of the
-# Palestinian territories left DST early on 13.th. of September at 2:00.
-
-# From Paul Eggert (2007-09-20):
-# My understanding is that Gaza and the West Bank disagree even over when
-# the weekend is (Thursday+Friday versus Friday+Saturday), so I'd be a bit
-# surprised if they agreed about DST.  But for now, assume they agree.
-# For lack of better information, predict that future changes will be
-# the 2nd Thursday of September at 02:00.
-
-# From Alexander Krivenyshev (2008-08-28):
-# Here is an article, that Mideast running on different clocks at Ramadan.
-#
-# Gaza Strip (as Egypt) ended DST at midnight Thursday (Aug 28, 2008), while
-# the West Bank will end Daylight Saving Time at midnight Sunday (Aug 31, 2008).
-#
-# <a href="http://www.guardian.co.uk/world/feedarticle/7759001">
-# http://www.guardian.co.uk/world/feedarticle/7759001
-# </a>
-# <a href="http://www.abcnews.go.com/International/wireStory?id=5676087">
-# http://www.abcnews.go.com/International/wireStory?id=5676087
-# </a>
-# or
-# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html">
-# http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html
-# </a>
-
-# The rules for Egypt are stolen from the `africa' file.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule EgyptAsia	1957	only	-	May	10	0:00	1:00	S
-Rule EgyptAsia	1957	1958	-	Oct	 1	0:00	0	-
-Rule EgyptAsia	1958	only	-	May	 1	0:00	1:00	S
-Rule EgyptAsia	1959	1967	-	May	 1	1:00	1:00	S
-Rule EgyptAsia	1959	1965	-	Sep	30	3:00	0	-
-Rule EgyptAsia	1966	only	-	Oct	 1	3:00	0	-
-
-Rule Palestine	1999	2005	-	Apr	Fri>=15	0:00	1:00	S
-Rule Palestine	1999	2003	-	Oct	Fri>=15	0:00	0	-
-Rule Palestine	2004	only	-	Oct	 1	1:00	0	-
-Rule Palestine	2005	only	-	Oct	 4	2:00	0	-
-Rule Palestine	2006	max	-	Apr	 1	0:00	1:00	S
-Rule Palestine	2006	only	-	Sep	22	0:00	0	-
-Rule Palestine	2007	only	-	Sep	Thu>=8	2:00	0	-
-Rule Palestine	2008	max	-	Aug	lastThu	2:00	0	-
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Gaza	2:17:52	-	LMT	1900 Oct
-			2:00	Zion	EET	1948 May 15
-			2:00 EgyptAsia	EE%sT	1967 Jun  5
-			2:00	Zion	I%sT	1996
-			2:00	Jordan	EE%sT	1999
-			2:00 Palestine	EE%sT
-
-# Paracel Is
-# no information
-
-# Philippines
-# On 1844-08-16, Narciso Claveria, governor-general of the
-# Philippines, issued a proclamation announcing that 1844-12-30 was to
-# be immediately followed by 1845-01-01.  Robert H. van Gent has a
-# transcript of the decree in <http://www.phys.uu.nl/~vgent/idl/idl.htm>.
-# The rest of the data are from Shanks & Pottenger.
-
-# From Paul Eggert (2006-04-25):
-# Tomorrow's Manila Standard reports that the Philippines Department of
-# Trade and Industry is considering adopting DST this June when the
-# rainy season begins.  See
-# <http://www.manilastandardtoday.com/?page=politics02_april26_2006>.
-# For now, we'll ignore this, since it's not definite and we lack details.
-#
-# From Jesper Norgaard Welen (2006-04-26):
-# ... claims that Philippines had DST last time in 1990:
-# http://story.philippinetimes.com/p.x/ct/9/id/145be20cc6b121c0/cid/3e5bbccc730d258c/
-# [a story dated 2006-04-25 by Cris Larano of Dow Jones Newswires,
-# but no details]
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Phil	1936	only	-	Nov	1	0:00	1:00	S
-Rule	Phil	1937	only	-	Feb	1	0:00	0	-
-Rule	Phil	1954	only	-	Apr	12	0:00	1:00	S
-Rule	Phil	1954	only	-	Jul	1	0:00	0	-
-Rule	Phil	1978	only	-	Mar	22	0:00	1:00	S
-Rule	Phil	1978	only	-	Sep	21	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Manila	-15:56:00 -	LMT	1844 Dec 31
-			8:04:00 -	LMT	1899 May 11
-			8:00	Phil	PH%sT	1942 May
-			9:00	-	JST	1944 Nov
-			8:00	Phil	PH%sT
-
-# Qatar
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Qatar	3:26:08 -	LMT	1920	# Al Dawhah / Doha
-			4:00	-	GST	1972 Jun
-			3:00	-	AST
-
-# Saudi Arabia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Riyadh	3:06:52 -	LMT	1950
-			3:00	-	AST
-
-# Singapore
-# The data here are taken from Mok Ly Yng (2003-10-30)
-# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Singapore	6:55:25 -	LMT	1901 Jan  1
-			6:55:25	-	SMT	1905 Jun  1 # Singapore M.T.
-			7:00	-	MALT	1933 Jan  1 # Malaya Time
-			7:00	0:20	MALST	1936 Jan  1
-			7:20	-	MALT	1941 Sep  1
-			7:30	-	MALT	1942 Feb 16
-			9:00	-	JST	1945 Sep 12
-			7:30	-	MALT	1965 Aug  9 # independence
-			7:30	-	SGT	1982 Jan  1 # Singapore Time
-			8:00	-	SGT
-
-# Spratly Is
-# no information
-
-# Sri Lanka
-# From Paul Eggert (1996-09-03):
-# "Sri Lanka advances clock by an hour to avoid blackout"
-# (www.virtual-pc.com/lankaweb/news/items/240596-2.html, 1996-05-24,
-# no longer available as of 1999-08-17)
-# reported ``the country's standard time will be put forward by one hour at
-# midnight Friday (1830 GMT) `in the light of the present power crisis'.''
-#
-# From Dharmasiri Senanayake, Sri Lanka Media Minister (1996-10-24), as quoted
-# by Shamindra in
-# <a href="news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net">
-# Daily News - Hot News Section (1996-10-26)
-# </a>:
-# With effect from 12.30 a.m. on 26th October 1996
-# Sri Lanka will be six (06) hours ahead of GMT.
-
-# From Jesper Norgaard Welen (2006-04-14), quoting Sri Lanka News Online
-# <http://news.sinhalaya.com/wmview.php?ArtID=11002> (2006-04-13):
-# 0030 hrs on April 15, 2006 (midnight of April 14, 2006 +30 minutes)
-# at present, become 2400 hours of April 14, 2006 (midnight of April 14, 2006).
-
-# From Peter Apps and Ranga Sirila of Reuters (2006-04-12) in:
-# <http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML>
-# [The Tamil Tigers] never accepted the original 1996 time change and simply
-# kept their clocks set five and a half hours ahead of Greenwich Mean
-# Time (GMT), in line with neighbor India.
-# From Paul Eggert (2006-04-18):
-# People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
-# as that zone has agreed with the Tamil areas since our cutoff date of 1970.
-
-# From K Sethu (2006-04-25):
-# I think the abbreviation LKT originated from the world of computers at
-# the time of or subsequent to the time zone changes by SL Government
-# twice in 1996 and probably SL Government or its standardization
-# agencies never declared an abbreviation as a national standard.
-#
-# I recollect before the recent change the government annoucemments
-# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
-# Time and no mention was made about the abbreviation.
-#
-# If we look at Sri Lanka Department of Government's "Official News
-# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
-# use SLT as abbreviation in time stamp at the beginning of each news
-# item....
-#
-# Within Sri Lanka I think LKT is well known among computer users and
-# adminsitrators.  In my opinion SLT may not be a good choice because the
-# nation's largest telcom / internet operator Sri Lanka Telcom is well
-# known by that abbreviation - simply as SLT (there IP domains are
-# slt.lk and sltnet.lk).
-#
-# But if indeed our government has adopted SLT as standard abbreviation
-# (that we have not known so far) then  it is better that it be used for
-# all computers.
-
-# From Paul Eggert (2006-04-25):
-# One possibility is that we wait for a bit for the dust to settle down
-# and then see what people actually say in practice.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Colombo	5:19:24 -	LMT	1880
-			5:19:32	-	MMT	1906	# Moratuwa Mean Time
-			5:30	-	IST	1942 Jan  5
-			5:30	0:30	IHST	1942 Sep
-			5:30	1:00	IST	1945 Oct 16 2:00
-			5:30	-	IST	1996 May 25 0:00
-			6:30	-	LKT	1996 Oct 26 0:30
-			6:00	-	LKT	2006 Apr 15 0:30
-			5:30	-	IST
-
-# Syria
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Syria	1920	1923	-	Apr	Sun>=15	2:00	1:00	S
-Rule	Syria	1920	1923	-	Oct	Sun>=1	2:00	0	-
-Rule	Syria	1962	only	-	Apr	29	2:00	1:00	S
-Rule	Syria	1962	only	-	Oct	1	2:00	0	-
-Rule	Syria	1963	1965	-	May	1	2:00	1:00	S
-Rule	Syria	1963	only	-	Sep	30	2:00	0	-
-Rule	Syria	1964	only	-	Oct	1	2:00	0	-
-Rule	Syria	1965	only	-	Sep	30	2:00	0	-
-Rule	Syria	1966	only	-	Apr	24	2:00	1:00	S
-Rule	Syria	1966	1976	-	Oct	1	2:00	0	-
-Rule	Syria	1967	1978	-	May	1	2:00	1:00	S
-Rule	Syria	1977	1978	-	Sep	1	2:00	0	-
-Rule	Syria	1983	1984	-	Apr	9	2:00	1:00	S
-Rule	Syria	1983	1984	-	Oct	1	2:00	0	-
-Rule	Syria	1986	only	-	Feb	16	2:00	1:00	S
-Rule	Syria	1986	only	-	Oct	9	2:00	0	-
-Rule	Syria	1987	only	-	Mar	1	2:00	1:00	S
-Rule	Syria	1987	1988	-	Oct	31	2:00	0	-
-Rule	Syria	1988	only	-	Mar	15	2:00	1:00	S
-Rule	Syria	1989	only	-	Mar	31	2:00	1:00	S
-Rule	Syria	1989	only	-	Oct	1	2:00	0	-
-Rule	Syria	1990	only	-	Apr	1	2:00	1:00	S
-Rule	Syria	1990	only	-	Sep	30	2:00	0	-
-Rule	Syria	1991	only	-	Apr	 1	0:00	1:00	S
-Rule	Syria	1991	1992	-	Oct	 1	0:00	0	-
-Rule	Syria	1992	only	-	Apr	 8	0:00	1:00	S
-Rule	Syria	1993	only	-	Mar	26	0:00	1:00	S
-Rule	Syria	1993	only	-	Sep	25	0:00	0	-
-# IATA SSIM (1998-02) says 1998-04-02;
-# (1998-09) says 1999-03-29 and 1999-09-29; (1999-02) says 1999-04-02,
-# 2000-04-02, and 2001-04-02; (1999-09) says 2000-03-31 and 2001-03-31;
-# (2006) says 2006-03-31 and 2006-09-22;
-# for now ignore all these claims and go with Shanks & Pottenger,
-# except for the 2006-09-22 claim (which seems right for Ramadan).
-Rule	Syria	1994	1996	-	Apr	 1	0:00	1:00	S
-Rule	Syria	1994	2005	-	Oct	 1	0:00	0	-
-Rule	Syria	1997	1998	-	Mar	lastMon	0:00	1:00	S
-Rule	Syria	1999	2006	-	Apr	 1	0:00	1:00	S
-# From Stephen Colebourne (2006-09-18):
-# According to IATA data, Syria will change DST on 21st September [21:00 UTC]
-# this year [only]....  This is probably related to Ramadan, like Egypt.
-Rule	Syria	2006	only	-	Sep	22	0:00	0	-
-# From Paul Eggert (2007-03-29):
-# Today the AP reported "Syria will switch to summertime at midnight Thursday."
-# http://www.iht.com/articles/ap/2007/03/29/africa/ME-GEN-Syria-Time-Change.php
-Rule	Syria	2007	only	-	Mar	lastFri	0:00	1:00	S
-# From Jesper Norgard (2007-10-27):
-# The sister center ICARDA of my work CIMMYT is confirming that Syria DST will
-# not take place 1.st November at 0:00 o'clock but 1.st November at 24:00 or
-# rather Midnight between Thursday and Friday. This does make more sence than
-# having it between Wednesday and Thursday (two workdays in Syria) since the
-# weekend in Syria is not Saturday and Sunday, but Friday and Saturday. So now
-# it is implemented at midnight of the last workday before weekend...
-# 
-# From Steffen Thorsen (2007-10-27):
-# Jesper Norgaard Welen wrote:
-# 
-# > "Winter local time in Syria will be observed at midnight of Thursday 1
-# > November 2007, and the clock will be put back 1 hour."
-# 
-# I found confirmation on this in this gov.sy-article (Arabic):
-# http://wehda.alwehda.gov.sy/_print_veiw.asp?FileName=12521710520070926111247
-# 
-# which using Google's translate tools says:
-# Council of Ministers also approved the commencement of work on 
-# identifying the winter time as of Friday, 2/11/2007 where the 60th 
-# minute delay at midnight Thursday 1/11/2007.
-Rule	Syria	2007	only	-	Nov	 Fri>=1	0:00	0	-
-
-# From Stephen Colebourne (2008-03-17):
-# For everyone's info, I saw an IATA time zone change for [Syria] for
-# this month (March 2008) in the last day or so...This is the data IATA
-# are now using:
-# Country     Time Standard   --- DST Start ---   --- DST End ---  DST
-# Name        Zone Variation   Time    Date        Time    Date
-# Variation
-# Syrian Arab
-# Republic    SY    +0200      2200  03APR08       2100  30SEP08   +0300
-#                              2200  02APR09       2100  30SEP09   +0300
-#                              2200  01APR10       2100  30SEP10   +0300
-
-# From Arthur David Olson (2008-03-17):
-# Here's a link to English-language coverage by the Syrian Arab News
-# Agency (SANA)...
-# <a href="http://www.sana.sy/eng/21/2008/03/11/165173.htm">
-# http://www.sana.sy/eng/21/2008/03/11/165173.htm
-# </a>...which reads (in part) "The Cabinet approved the suggestion of the
-# Ministry of Electricity to begin daylight savings time on Friday April
-# 4th, advancing clocks one hour ahead on midnight of Thursday April 3rd."
-# Since Syria is two hours east of UTC, the 2200 and 2100 transition times
-# shown above match up with midnight in Syria.
-
-# From Arthur David Olson (2008-03-18):
-# My buest guess at a Syrian rule is "the Friday nearest April 1";
-# coding that involves either using a "Mar Fri>=29" construct that old time zone
-# compilers can't handle  or having multiple Rules (a la Israel).
-# For now, use "Apr Fri>=1", and go with IATA on a uniform Sep 30 end.
-
-# From Steffen Thorsen (2008-10-07):
-# Syria has now officially decided to end DST on 2008-11-01 this year,
-# according to the following article in the Syrian Arab News Agency (SANA).
-#
-# The article is in Arabic, and seems to tell that they will go back to
-# winter time on 2008-11-01 at 00:00 local daylight time (delaying/setting
-# clocks back 60 minutes).
-#
-# <a href="http://sana.sy/ara/2/2008/10/07/195459.htm">
-# http://sana.sy/ara/2/2008/10/07/195459.htm
-# </a>
-
-Rule	Syria	2008	max	-	Apr	Fri>=1	0:00	1:00	S
-Rule	Syria	2008	max	-	Nov	1	0:00	0	-
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Damascus	2:25:12 -	LMT	1920	# Dimashq
-			2:00	Syria	EE%sT
-
-# Tajikistan
-# From Shanks & Pottenger.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Dushanbe	4:35:12 -	LMT	1924 May  2
-			5:00	-	DUST	1930 Jun 21 # Dushanbe Time
-			6:00 RussiaAsia DUS%sT	1991 Mar 31 2:00s
-			5:00	1:00	DUSST	1991 Sep  9 2:00s
-			5:00	-	TJT		    # Tajikistan Time
-
-# Thailand
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Bangkok	6:42:04	-	LMT	1880
-			6:42:04	-	BMT	1920 Apr # Bangkok Mean Time
-			7:00	-	ICT
-
-# Turkmenistan
-# From Shanks & Pottenger.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Ashgabat	3:53:32 -	LMT	1924 May  2 # or Ashkhabad
-			4:00	-	ASHT	1930 Jun 21 # Ashkhabad Time
-			5:00 RussiaAsia	ASH%sT	1991 Mar 31 2:00
-			4:00 RussiaAsia	ASH%sT	1991 Oct 27 # independence
-			4:00 RussiaAsia	TM%sT	1992 Jan 19 2:00
-			5:00	-	TMT
-
-# United Arab Emirates
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Dubai	3:41:12 -	LMT	1920
-			4:00	-	GST
-
-# Uzbekistan
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Samarkand	4:27:12 -	LMT	1924 May  2
-			4:00	-	SAMT	1930 Jun 21 # Samarkand Time
-			5:00	-	SAMT	1981 Apr  1
-			5:00	1:00	SAMST	1981 Oct  1
-			6:00	-	TAST	1982 Apr  1 # Tashkent Time
-			5:00 RussiaAsia	SAM%sT	1991 Sep  1 # independence
-			5:00 RussiaAsia	UZ%sT	1992
-			5:00	-	UZT
-Zone	Asia/Tashkent	4:37:12 -	LMT	1924 May  2
-			5:00	-	TAST	1930 Jun 21 # Tashkent Time
-			6:00 RussiaAsia	TAS%sT	1991 Mar 31 2:00
-			5:00 RussiaAsia	TAS%sT	1991 Sep  1 # independence
-			5:00 RussiaAsia	UZ%sT	1992
-			5:00	-	UZT
-
-# Vietnam
-
-# From Arthur David Olson (2008-03-18):
-# The English-language name of Vietnam's most populous city is "Ho Chi Min City";
-# we use Ho_Chi_Minh below to avoid a name of more than 14 characters.
-
-# From Shanks & Pottenger:
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Ho_Chi_Minh	7:06:40 -	LMT	1906 Jun  9
-			7:06:20	-	SMT	1911 Mar 11 0:01 # Saigon MT?
-			7:00	-	ICT	1912 May
-			8:00	-	ICT	1931 May
-			7:00	-	ICT
-
-# Yemen
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Asia/Aden	3:00:48	-	LMT	1950
-			3:00	-	AST
diff --git a/tools/zoneinfo/tzdata2008h/australasia b/tools/zoneinfo/tzdata2008h/australasia
deleted file mode 100644
index 41608cd..0000000
--- a/tools/zoneinfo/tzdata2008h/australasia
+++ /dev/null
@@ -1,1454 +0,0 @@
-# @(#)australasia	8.9
-# <pre>
-
-# This file also includes Pacific islands.
-
-# Notes are at the end of this file
-
-###############################################################################
-
-# Australia
-
-# Please see the notes below for the controversy about "EST" versus "AEST" etc.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Aus	1917	only	-	Jan	 1	0:01	1:00	-
-Rule	Aus	1917	only	-	Mar	25	2:00	0	-
-Rule	Aus	1942	only	-	Jan	 1	2:00	1:00	-
-Rule	Aus	1942	only	-	Mar	29	2:00	0	-
-Rule	Aus	1942	only	-	Sep	27	2:00	1:00	-
-Rule	Aus	1943	1944	-	Mar	lastSun	2:00	0	-
-Rule	Aus	1943	only	-	Oct	 3	2:00	1:00	-
-# Go with Whitman and the Australian National Standards Commission, which
-# says W Australia didn't use DST in 1943/1944.  Ignore Whitman's claim that
-# 1944/1945 was just like 1943/1944.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-# Northern Territory
-Zone Australia/Darwin	 8:43:20 -	LMT	1895 Feb
-			 9:00	-	CST	1899 May
-			 9:30	Aus	CST
-# Western Australia
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	AW	1974	only	-	Oct	lastSun	2:00s	1:00	-
-Rule	AW	1975	only	-	Mar	Sun>=1	2:00s	0	-
-Rule	AW	1983	only	-	Oct	lastSun	2:00s	1:00	-
-Rule	AW	1984	only	-	Mar	Sun>=1	2:00s	0	-
-Rule	AW	1991	only	-	Nov	17	2:00s	1:00	-
-Rule	AW	1992	only	-	Mar	Sun>=1	2:00s	0	-
-Rule	AW	2006	only	-	Dec	 3	2:00s	1:00	-
-Rule	AW	2007	2009	-	Mar	lastSun	2:00s	0	-
-Rule	AW	2007	2008	-	Oct	lastSun	2:00s	1:00	-
-Zone Australia/Perth	 7:43:24 -	LMT	1895 Dec
-			 8:00	Aus	WST	1943 Jul
-			 8:00	AW	WST
-Zone Australia/Eucla	 8:35:28 -	LMT	1895 Dec
-			 8:45	Aus	CWST	1943 Jul
-			 8:45	AW	CWST
-
-# Queensland
-#
-# From Alex Livingston (1996-11-01):
-# I have heard or read more than once that some resort islands off the coast
-# of Queensland chose to keep observing daylight-saving time even after
-# Queensland ceased to.
-#
-# From Paul Eggert (1996-11-22):
-# IATA SSIM (1993-02/1994-09) say that the Holiday Islands (Hayman, Lindeman,
-# Hamilton) observed DST for two years after the rest of Queensland stopped.
-# Hamilton is the largest, but there is also a Hamilton in Victoria,
-# so use Lindeman.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	AQ	1971	only	-	Oct	lastSun	2:00s	1:00	-
-Rule	AQ	1972	only	-	Feb	lastSun	2:00s	0	-
-Rule	AQ	1989	1991	-	Oct	lastSun	2:00s	1:00	-
-Rule	AQ	1990	1992	-	Mar	Sun>=1	2:00s	0	-
-Rule	Holiday	1992	1993	-	Oct	lastSun	2:00s	1:00	-
-Rule	Holiday	1993	1994	-	Mar	Sun>=1	2:00s	0	-
-Zone Australia/Brisbane	10:12:08 -	LMT	1895
-			10:00	Aus	EST	1971
-			10:00	AQ	EST
-Zone Australia/Lindeman  9:55:56 -	LMT	1895
-			10:00	Aus	EST	1971
-			10:00	AQ	EST	1992 Jul
-			10:00	Holiday	EST
-
-# South Australia
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	AS	1971	1985	-	Oct	lastSun	2:00s	1:00	-
-Rule	AS	1986	only	-	Oct	19	2:00s	1:00	-
-Rule	AS	1987	2007	-	Oct	lastSun	2:00s	1:00	-
-Rule	AS	1972	only	-	Feb	27	2:00s	0	-
-Rule	AS	1973	1985	-	Mar	Sun>=1	2:00s	0	-
-Rule	AS	1986	1989	-	Mar	Sun>=15	2:00s	0	-
-Rule	AS	1990	only	-	Mar	Sun>=18	2:00s	0	-
-Rule	AS	1991	only	-	Mar	Sun>=1	2:00s	0	-
-Rule	AS	1992	only	-	Mar	Sun>=18	2:00s	0	-
-Rule	AS	1993	only	-	Mar	Sun>=1	2:00s	0	-
-Rule	AS	1994	only	-	Mar	Sun>=18	2:00s	0	-
-Rule	AS	1995	2005	-	Mar	lastSun	2:00s	0	-
-Rule	AS	2006	only	-	Apr	Sun>=1	2:00s	0	-
-Rule	AS	2007	only	-	Mar	lastSun	2:00s	0	-
-Rule	AS	2008	max	-	Apr	Sun>=1	2:00s	0	-
-Rule	AS	2008	max	-	Oct	Sun>=1	2:00s	1:00	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Australia/Adelaide	9:14:20 -	LMT	1895 Feb
-			9:00	-	CST	1899 May
-			9:30	Aus	CST	1971
-			9:30	AS	CST
-
-# Tasmania
-#
-# From Paul Eggert (2005-08-16):
-# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml>
-# says King Island didn't observe DST from WWII until late 1971.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	AT	1967	only	-	Oct	Sun>=1	2:00s	1:00	-
-Rule	AT	1968	only	-	Mar	lastSun	2:00s	0	-
-Rule	AT	1968	1985	-	Oct	lastSun	2:00s	1:00	-
-Rule	AT	1969	1971	-	Mar	Sun>=8	2:00s	0	-
-Rule	AT	1972	only	-	Feb	lastSun	2:00s	0	-
-Rule	AT	1973	1981	-	Mar	Sun>=1	2:00s	0	-
-Rule	AT	1982	1983	-	Mar	lastSun	2:00s	0	-
-Rule	AT	1984	1986	-	Mar	Sun>=1	2:00s	0	-
-Rule	AT	1986	only	-	Oct	Sun>=15	2:00s	1:00	-
-Rule	AT	1987	1990	-	Mar	Sun>=15	2:00s	0	-
-Rule	AT	1987	only	-	Oct	Sun>=22	2:00s	1:00	-
-Rule	AT	1988	1990	-	Oct	lastSun	2:00s	1:00	-
-Rule	AT	1991	1999	-	Oct	Sun>=1	2:00s	1:00	-
-Rule	AT	1991	2005	-	Mar	lastSun	2:00s	0	-
-Rule	AT	2000	only	-	Aug	lastSun	2:00s	1:00	-
-Rule	AT	2001	max	-	Oct	Sun>=1	2:00s	1:00	-
-Rule	AT	2006	only	-	Apr	Sun>=1	2:00s	0	-
-Rule	AT	2007	only	-	Mar	lastSun	2:00s	0	-
-Rule	AT	2008	max	-	Apr	Sun>=1	2:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Australia/Hobart	9:49:16	-	LMT	1895 Sep
-			10:00	-	EST	1916 Oct 1 2:00
-			10:00	1:00	EST	1917 Feb
-			10:00	Aus	EST	1967
-			10:00	AT	EST
-Zone Australia/Currie	9:35:28	-	LMT	1895 Sep
-			10:00	-	EST	1916 Oct 1 2:00
-			10:00	1:00	EST	1917 Feb
-			10:00	Aus	EST	1971 Jul
-			10:00	AT	EST
-
-# Victoria
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	AV	1971	1985	-	Oct	lastSun	2:00s	1:00	-
-Rule	AV	1972	only	-	Feb	lastSun	2:00s	0	-
-Rule	AV	1973	1985	-	Mar	Sun>=1	2:00s	0	-
-Rule	AV	1986	1990	-	Mar	Sun>=15	2:00s	0	-
-Rule	AV	1986	1987	-	Oct	Sun>=15	2:00s	1:00	-
-Rule	AV	1988	1999	-	Oct	lastSun	2:00s	1:00	-
-Rule	AV	1991	1994	-	Mar	Sun>=1	2:00s	0	-
-Rule	AV	1995	2005	-	Mar	lastSun	2:00s	0	-
-Rule	AV	2000	only	-	Aug	lastSun	2:00s	1:00	-
-Rule	AV	2001	2007	-	Oct	lastSun	2:00s	1:00	-
-Rule	AV	2006	only	-	Apr	Sun>=1	2:00s	0	-
-Rule	AV	2007	only	-	Mar	lastSun	2:00s	0	-
-Rule	AV	2008	max	-	Apr	Sun>=1	2:00s	0	-
-Rule	AV	2008	max	-	Oct	Sun>=1	2:00s	1:00	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Australia/Melbourne 9:39:52 -	LMT	1895 Feb
-			10:00	Aus	EST	1971
-			10:00	AV	EST
-
-# New South Wales
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	AN	1971	1985	-	Oct	lastSun	2:00s	1:00	-
-Rule	AN	1972	only	-	Feb	27	2:00s	0	-
-Rule	AN	1973	1981	-	Mar	Sun>=1	2:00s	0	-
-Rule	AN	1982	only	-	Apr	Sun>=1	2:00s	0	-
-Rule	AN	1983	1985	-	Mar	Sun>=1	2:00s	0	-
-Rule	AN	1986	1989	-	Mar	Sun>=15	2:00s	0	-
-Rule	AN	1986	only	-	Oct	19	2:00s	1:00	-
-Rule	AN	1987	1999	-	Oct	lastSun	2:00s	1:00	-
-Rule	AN	1990	1995	-	Mar	Sun>=1	2:00s	0	-
-Rule	AN	1996	2005	-	Mar	lastSun	2:00s	0	-
-Rule	AN	2000	only	-	Aug	lastSun	2:00s	1:00	-
-Rule	AN	2001	2007	-	Oct	lastSun	2:00s	1:00	-
-Rule	AN	2006	only	-	Apr	Sun>=1	2:00s	0	-
-Rule	AN	2007	only	-	Mar	lastSun	2:00s	0	-
-Rule	AN	2008	max	-	Apr	Sun>=1	2:00s	0	-
-Rule	AN	2008	max	-	Oct	Sun>=1	2:00s	1:00	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Australia/Sydney	10:04:52 -	LMT	1895 Feb
-			10:00	Aus	EST	1971
-			10:00	AN	EST
-Zone Australia/Broken_Hill 9:25:48 -	LMT	1895 Feb
-			10:00	-	EST	1896 Aug 23
-			9:00	-	CST	1899 May
-			9:30	Aus	CST	1971
-			9:30	AN	CST	2000
-			9:30	AS	CST
-
-# Lord Howe Island
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	LH	1981	1984	-	Oct	lastSun	2:00	1:00	-
-Rule	LH	1982	1985	-	Mar	Sun>=1	2:00	0	-
-Rule	LH	1985	only	-	Oct	lastSun	2:00	0:30	-
-Rule	LH	1986	1989	-	Mar	Sun>=15	2:00	0	-
-Rule	LH	1986	only	-	Oct	19	2:00	0:30	-
-Rule	LH	1987	1999	-	Oct	lastSun	2:00	0:30	-
-Rule	LH	1990	1995	-	Mar	Sun>=1	2:00	0	-
-Rule	LH	1996	2005	-	Mar	lastSun	2:00	0	-
-Rule	LH	2000	only	-	Aug	lastSun	2:00	0:30	-
-Rule	LH	2001	2007	-	Oct	lastSun	2:00	0:30	-
-Rule	LH	2006	only	-	Apr	Sun>=1	2:00	0	-
-Rule	LH	2007	only	-	Mar	lastSun	2:00	0	-
-Rule	LH	2008	max	-	Apr	Sun>=1	2:00	0	-
-Rule	LH	2008	max	-	Oct	Sun>=1	2:00	0:30	-
-Zone Australia/Lord_Howe 10:36:20 -	LMT	1895 Feb
-			10:00	-	EST	1981 Mar
-			10:30	LH	LHST
-
-# Australian miscellany
-#
-# Ashmore Is, Cartier
-# no indigenous inhabitants; only seasonal caretakers
-# no times are set
-#
-# Coral Sea Is
-# no indigenous inhabitants; only meteorologists
-# no times are set
-#
-# Macquarie
-# permanent occupation (scientific station) since 1948;
-# sealing and penguin oil station operated 1888/1917
-# like Australia/Hobart
-
-# Christmas
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Indian/Christmas	7:02:52 -	LMT	1895 Feb
-			7:00	-	CXT	# Christmas Island Time
-
-# Cook Is
-# From Shanks & Pottenger:
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Cook	1978	only	-	Nov	12	0:00	0:30	HS
-Rule	Cook	1979	1991	-	Mar	Sun>=1	0:00	0	-
-Rule	Cook	1979	1990	-	Oct	lastSun	0:00	0:30	HS
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Rarotonga	-10:39:04 -	LMT	1901		# Avarua
-			-10:30	-	CKT	1978 Nov 12	# Cook Is Time
-			-10:00	Cook	CK%sT
-
-# Cocos
-# These islands were ruled by the Ross family from about 1830 to 1978.
-# We don't know when standard time was introduced; for now, we guess 1900.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Indian/Cocos	6:27:40	-	LMT	1900
-			6:30	-	CCT	# Cocos Islands Time
-
-# Fiji
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Fiji	1998	1999	-	Nov	Sun>=1	2:00	1:00	S
-Rule	Fiji	1999	2000	-	Feb	lastSun	3:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Fiji	11:53:40 -	LMT	1915 Oct 26	# Suva
-			12:00	Fiji	FJ%sT	# Fiji Time
-
-# French Polynesia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Gambier	 -8:59:48 -	LMT	1912 Oct	# Rikitea
-			 -9:00	-	GAMT	# Gambier Time
-Zone	Pacific/Marquesas -9:18:00 -	LMT	1912 Oct
-			 -9:30	-	MART	# Marquesas Time
-Zone	Pacific/Tahiti	 -9:58:16 -	LMT	1912 Oct	# Papeete
-			-10:00	-	TAHT	# Tahiti Time
-# Clipperton (near North America) is administered from French Polynesia;
-# it is uninhabited.
-
-# Guam
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Guam	-14:21:00 -	LMT	1844 Dec 31
-			 9:39:00 -	LMT	1901		# Agana
-			10:00	-	GST	2000 Dec 23	# Guam
-			10:00	-	ChST	# Chamorro Standard Time
-
-# Kiribati
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Tarawa	 11:32:04 -	LMT	1901		# Bairiki
-			 12:00	-	GILT		 # Gilbert Is Time
-Zone Pacific/Enderbury	-11:24:20 -	LMT	1901
-			-12:00	-	PHOT	1979 Oct # Phoenix Is Time
-			-11:00	-	PHOT	1995
-			 13:00	-	PHOT
-Zone Pacific/Kiritimati	-10:29:20 -	LMT	1901
-			-10:40	-	LINT	1979 Oct # Line Is Time
-			-10:00	-	LINT	1995
-			 14:00	-	LINT
-
-# N Mariana Is
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Saipan	-14:17:00 -	LMT	1844 Dec 31
-			 9:43:00 -	LMT	1901
-			 9:00	-	MPT	1969 Oct # N Mariana Is Time
-			10:00	-	MPT	2000 Dec 23
-			10:00	-	ChST	# Chamorro Standard Time
-
-# Marshall Is
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Majuro	11:24:48 -	LMT	1901
-			11:00	-	MHT	1969 Oct # Marshall Islands Time
-			12:00	-	MHT
-Zone Pacific/Kwajalein	11:09:20 -	LMT	1901
-			11:00	-	MHT	1969 Oct
-			-12:00	-	KWAT	1993 Aug 20	# Kwajalein Time
-			12:00	-	MHT
-
-# Micronesia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Truk	10:07:08 -	LMT	1901
-			10:00	-	TRUT			# Truk Time
-Zone Pacific/Ponape	10:32:52 -	LMT	1901		# Kolonia
-			11:00	-	PONT			# Ponape Time
-Zone Pacific/Kosrae	10:51:56 -	LMT	1901
-			11:00	-	KOST	1969 Oct	# Kosrae Time
-			12:00	-	KOST	1999
-			11:00	-	KOST
-
-# Nauru
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Nauru	11:07:40 -	LMT	1921 Jan 15	# Uaobe
-			11:30	-	NRT	1942 Mar 15	# Nauru Time
-			9:00	-	JST	1944 Aug 15
-			11:30	-	NRT	1979 May
-			12:00	-	NRT
-
-# New Caledonia
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	NC	1977	1978	-	Dec	Sun>=1	0:00	1:00	S
-Rule	NC	1978	1979	-	Feb	27	0:00	0	-
-Rule	NC	1996	only	-	Dec	 1	2:00s	1:00	S
-# Shanks & Pottenger say the following was at 2:00; go with IATA.
-Rule	NC	1997	only	-	Mar	 2	2:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Noumea	11:05:48 -	LMT	1912 Jan 13
-			11:00	NC	NC%sT
-
-
-###############################################################################
-
-# New Zealand
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	NZ	1927	only	-	Nov	 6	2:00	1:00	S
-Rule	NZ	1928	only	-	Mar	 4	2:00	0	M
-Rule	NZ	1928	1933	-	Oct	Sun>=8	2:00	0:30	S
-Rule	NZ	1929	1933	-	Mar	Sun>=15	2:00	0	M
-Rule	NZ	1934	1940	-	Apr	lastSun	2:00	0	M
-Rule	NZ	1934	1940	-	Sep	lastSun	2:00	0:30	S
-Rule	NZ	1946	only	-	Jan	 1	0:00	0	S
-# Since 1957 Chatham has been 45 minutes ahead of NZ, but there's no
-# convenient notation for this so we must duplicate the Rule lines.
-Rule	NZ	1974	only	-	Nov	Sun>=1	2:00s	1:00	D
-Rule	Chatham	1974	only	-	Nov	Sun>=1	2:45s	1:00	D
-Rule	NZ	1975	only	-	Feb	lastSun	2:00s	0	S
-Rule	Chatham	1975	only	-	Feb	lastSun	2:45s	0	S
-Rule	NZ	1975	1988	-	Oct	lastSun	2:00s	1:00	D
-Rule	Chatham	1975	1988	-	Oct	lastSun	2:45s	1:00	D
-Rule	NZ	1976	1989	-	Mar	Sun>=1	2:00s	0	S
-Rule	Chatham	1976	1989	-	Mar	Sun>=1	2:45s	0	S
-Rule	NZ	1989	only	-	Oct	Sun>=8	2:00s	1:00	D
-Rule	Chatham	1989	only	-	Oct	Sun>=8	2:45s	1:00	D
-Rule	NZ	1990	2006	-	Oct	Sun>=1	2:00s	1:00	D
-Rule	Chatham	1990	2006	-	Oct	Sun>=1	2:45s	1:00	D
-Rule	NZ	1990	2007	-	Mar	Sun>=15	2:00s	0	S
-Rule	Chatham	1990	2007	-	Mar	Sun>=15	2:45s	0	S
-Rule	NZ	2007	max	-	Sep	lastSun	2:00s	1:00	D
-Rule	Chatham	2007	max	-	Sep	lastSun	2:45s	1:00	D
-Rule	NZ	2008	max	-	Apr	Sun>=1	2:00s	0	S
-Rule	Chatham	2008	max	-	Apr	Sun>=1	2:45s	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Auckland	11:39:04 -	LMT	1868 Nov  2
-			11:30	NZ	NZ%sT	1946 Jan  1
-			12:00	NZ	NZ%sT
-Zone Pacific/Chatham	12:13:48 -	LMT	1957 Jan  1
-			12:45	Chatham	CHA%sT
-
-
-# Auckland Is
-# uninhabited; Maori and Moriori, colonial settlers, pastoralists, sealers,
-# and scientific personnel have wintered
-
-# Campbell I
-# minor whaling stations operated 1909/1914
-# scientific station operated 1941/1995;
-# previously whalers, sealers, pastoralists, and scientific personnel wintered
-# was probably like Pacific/Auckland
-
-###############################################################################
-
-
-# Niue
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Niue	-11:19:40 -	LMT	1901		# Alofi
-			-11:20	-	NUT	1951	# Niue Time
-			-11:30	-	NUT	1978 Oct 1
-			-11:00	-	NUT
-
-# Norfolk
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Norfolk	11:11:52 -	LMT	1901		# Kingston
-			11:12	-	NMT	1951	# Norfolk Mean Time
-			11:30	-	NFT		# Norfolk Time
-
-# Palau (Belau)
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Palau	8:57:56 -	LMT	1901		# Koror
-			9:00	-	PWT	# Palau Time
-
-# Papua New Guinea
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Port_Moresby 9:48:40 -	LMT	1880
-			9:48:32	-	PMMT	1895	# Port Moresby Mean Time
-			10:00	-	PGT		# Papua New Guinea Time
-
-# Pitcairn
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Pitcairn	-8:40:20 -	LMT	1901		# Adamstown
-			-8:30	-	PNT	1998 Apr 27 00:00
-			-8:00	-	PST	# Pitcairn Standard Time
-
-# American Samoa
-Zone Pacific/Pago_Pago	 12:37:12 -	LMT	1879 Jul  5
-			-11:22:48 -	LMT	1911
-			-11:30	-	SAMT	1950		# Samoa Time
-			-11:00	-	NST	1967 Apr	# N=Nome
-			-11:00	-	BST	1983 Nov 30	# B=Bering
-			-11:00	-	SST			# S=Samoa
-
-# Samoa
-Zone Pacific/Apia	 12:33:04 -	LMT	1879 Jul  5
-			-11:26:56 -	LMT	1911
-			-11:30	-	SAMT	1950		# Samoa Time
-			-11:00	-	WST			# Samoa Time
-
-# Solomon Is
-# excludes Bougainville, for which see Papua New Guinea
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Guadalcanal 10:39:48 -	LMT	1912 Oct	# Honiara
-			11:00	-	SBT	# Solomon Is Time
-
-# Tokelau Is
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Fakaofo	-11:24:56 -	LMT	1901
-			-10:00	-	TKT	# Tokelau Time
-
-# Tonga
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Tonga	1999	only	-	Oct	 7	2:00s	1:00	S
-Rule	Tonga	2000	only	-	Mar	19	2:00s	0	-
-Rule	Tonga	2000	2001	-	Nov	Sun>=1	2:00	1:00	S
-Rule	Tonga	2001	2002	-	Jan	lastSun	2:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Tongatapu	12:19:20 -	LMT	1901
-			12:20	-	TOT	1941 # Tonga Time
-			13:00	-	TOT	1999
-			13:00	Tonga	TO%sT
-
-# Tuvalu
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Funafuti	11:56:52 -	LMT	1901
-			12:00	-	TVT	# Tuvalu Time
-
-
-# US minor outlying islands
-
-# Howland, Baker
-# Howland was mined for guano by American companies 1857-1878 and British
-# 1886-1891; Baker was similar but exact dates are not known.
-# Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
-# uninhabited thereafter.
-# Howland observed Hawaii Standard Time (UTC-10:30) in 1937;
-# see page 206 of Elgen M. Long and Marie K. Long,
-# Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
-# So most likely Howland and Baker observed Hawaii Time from 1935
-# until they were abandoned after the war.
-
-# Jarvis
-# Mined for guano by American companies 1857-1879 and British 1883?-1891?.
-# Inhabited by civilians 1935-1942; IGY scientific base 1957-1958;
-# uninhabited thereafter.
-# no information; was probably like Pacific/Kiritimati
-
-# Johnston
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Pacific/Johnston	-10:00	-	HST
-
-# Kingman
-# uninhabited
-
-# Midway
-#
-# From Mark Brader (2005-01-23):
-# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
-# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
-# reproduced a Pan American Airways timeables from 1936, for their weekly
-# "Orient Express" flights between San Francisco and Manila, and connecting
-# flights to Chicago and the US East Coast.  As it uses some time zone
-# designations that I've never seen before:....
-# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I.   H.L.T. Ar. 5:30P Sun.
-#  "   3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A  "
-#
-Zone Pacific/Midway	-11:49:28 -	LMT	1901
-			-11:00	-	NST	1956 Jun  3
-			-11:00	1:00	NDT	1956 Sep  2
-			-11:00	-	NST	1967 Apr	# N=Nome
-			-11:00	-	BST	1983 Nov 30	# B=Bering
-			-11:00	-	SST			# S=Samoa
-
-# Palmyra
-# uninhabited since World War II; was probably like Pacific/Kiritimati
-
-# Wake
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Wake	11:06:28 -	LMT	1901
-			12:00	-	WAKT	# Wake Time
-
-
-# Vanuatu
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Vanuatu	1983	only	-	Sep	25	0:00	1:00	S
-Rule	Vanuatu	1984	1991	-	Mar	Sun>=23	0:00	0	-
-Rule	Vanuatu	1984	only	-	Oct	23	0:00	1:00	S
-Rule	Vanuatu	1985	1991	-	Sep	Sun>=23	0:00	1:00	S
-Rule	Vanuatu	1992	1993	-	Jan	Sun>=23	0:00	0	-
-Rule	Vanuatu	1992	only	-	Oct	Sun>=23	0:00	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Efate	11:13:16 -	LMT	1912 Jan 13		# Vila
-			11:00	Vanuatu	VU%sT	# Vanuatu Time
-
-# Wallis and Futuna
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Pacific/Wallis	12:15:20 -	LMT	1901
-			12:00	-	WFT	# Wallis & Futuna Time
-
-###############################################################################
-
-# NOTES
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually.  Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Another source occasionally used is Edward W. Whitman, World Time Differences,
-# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
-# I found in the UCLA library.
-#
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-#
-# I invented the abbreviations marked `*' in the following table;
-# the rest are from earlier versions of this file, or from other sources.
-# Corrections are welcome!
-#		std dst
-#		LMT	Local Mean Time
-#	  8:00	WST WST	Western Australia
-#	  8:45	CWST CWST Central Western Australia*
-#	  9:00	JST	Japan
-#	  9:30	CST CST	Central Australia
-#	 10:00	EST EST	Eastern Australia
-#	 10:00	ChST	Chamorro
-#	 10:30	LHST LHST Lord Howe*
-#	 11:30	NZMT NZST New Zealand through 1945
-#	 12:00	NZST NZDT New Zealand 1946-present
-#	 12:45	CHAST CHADT Chatham*
-#	-11:00	SST	Samoa
-#	-10:00	HST	Hawaii
-#	- 8:00	PST	Pitcairn*
-#
-# See the `northamerica' file for Hawaii.
-# See the `southamerica' file for Easter I and the Galapagos Is.
-
-###############################################################################
-
-# Australia
-
-# From Paul Eggert (2005-12-08):
-# <a href="http://www.bom.gov.au/climate/averages/tables/dst_times.shtml">
-# Implementation Dates of Daylight Saving Time within Australia
-# </a> summarizes daylight saving issues in Australia.
-
-# From Arthur David Olson (2005-12-12):
-# <a href="http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving">
-# Lawlink NSW:Daylight Saving in New South Wales
-# </a> covers New South Wales in particular.
-
-# From John Mackin (1991-03-06):
-# We in Australia have _never_ referred to DST as `daylight' time.
-# It is called `summer' time.  Now by a happy coincidence, `summer'
-# and `standard' happen to start with the same letter; hence, the
-# abbreviation does _not_ change...
-# The legislation does not actually define abbreviations, at least
-# in this State, but the abbreviation is just commonly taken to be the
-# initials of the phrase, and the legislation here uniformly uses
-# the phrase `summer time' and does not use the phrase `daylight
-# time'.
-# Announcers on the Commonwealth radio network, the ABC (for Australian
-# Broadcasting Commission), use the phrases `Eastern Standard Time'
-# or `Eastern Summer Time'.  (Note, though, that as I say in the
-# current australasia file, there is really no such thing.)  Announcers
-# on its overseas service, Radio Australia, use the same phrases
-# prefixed by the word `Australian' when referring to local times;
-# time announcements on that service, naturally enough, are made in UTC.
-
-# From Arthur David Olson (1992-03-08):
-# Given the above, what's chosen for year-round use is:
-#	CST	for any place operating at a GMTOFF of 9:30
-#	WST	for any place operating at a GMTOFF of 8:00
-#	EST	for any place operating at a GMTOFF of 10:00
-
-# From Chuck Soper (2006-06-01):
-# I recently found this Australian government web page on time zones:
-# <http://www.australia.gov.au/about-australia-13time>
-# And this government web page lists time zone names and abbreviations:
-# <http://www.bom.gov.au/climate/averages/tables/daysavtm.shtml>
-
-# From Paul Eggert (2001-04-05), summarizing a long discussion about "EST"
-# versus "AEST" etc.:
-#
-# I see the following points of dispute:
-#
-# * How important are unique time zone abbreviations?
-#
-#   Here I tend to agree with the point (most recently made by Chris
-#   Newman) that unique abbreviations should not be essential for proper
-#   operation of software.  We have other instances of ambiguity
-#   (e.g. "IST" denoting both "Israel Standard Time" and "Indian
-#   Standard Time"), and they are not likely to go away any time soon.
-#   In the old days, some software mistakenly relied on unique
-#   abbreviations, but this is becoming less true with time, and I don't
-#   think it's that important to cater to such software these days.
-#
-#   On the other hand, there is another motivation for unambiguous
-#   abbreviations: it cuts down on human confusion.  This is
-#   particularly true for Australia, where "EST" can mean one thing for
-#   time T and a different thing for time T plus 1 second.
-#
-# * Does the relevant legislation indicate which abbreviations should be used?
-#
-#   Here I tend to think that things are a mess, just as they are in
-#   many other countries.  We Americans are currently disagreeing about
-#   which abbreviation to use for the newly legislated Chamorro Standard
-#   Time, for example.
-#
-#   Personally, I would prefer to use common practice; I would like to
-#   refer to legislation only for examples of common practice, or as a
-#   tiebreaker.
-#
-# * Do Australians more often use "Eastern Daylight Time" or "Eastern
-#   Summer Time"?  Do they typically prefix the time zone names with
-#   the word "Australian"?
-#
-#   My own impression is that both "Daylight Time" and "Summer Time" are
-#   common and are widely understood, but that "Summer Time" is more
-#   popular; and that the leading "A" is also common but is omitted more
-#   often than not.  I just used AltaVista advanced search and got the
-#   following count of page hits:
-#
-#     1,103 "Eastern Summer Time" AND domain:au
-#       971 "Australian Eastern Summer Time" AND domain:au
-#       613 "Eastern Daylight Time" AND domain:au
-#       127 "Australian Eastern Daylight Time" AND domain:au
-#
-#   Here "Summer" seems quite a bit more popular than "Daylight",
-#   particularly when we know the time zone is Australian and not US,
-#   say.  The "Australian" prefix seems to be popular for Eastern Summer
-#   Time, but unpopular for Eastern Daylight Time.
-#
-#   For abbreviations, tools like AltaVista are less useful because of
-#   ambiguity.  Many hits are not really time zones, unfortunately, and
-#   many hits denote US time zones and not Australian ones.  But here
-#   are the hit counts anyway:
-#
-#     161,304 "EST" and domain:au
-#      25,156 "EDT" and domain:au
-#      18,263 "AEST" and domain:au
-#      10,416 "AEDT" and domain:au
-#
-#      14,538 "CST" and domain:au
-#       5,728 "CDT" and domain:au
-#         176 "ACST" and domain:au
-#          29 "ACDT" and domain:au
-#
-#       7,539 "WST" and domain:au
-#          68 "AWST" and domain:au
-#
-#   This data suggest that Australians tend to omit the "A" prefix in
-#   practice.  The situation for "ST" versus "DT" is less clear, given
-#   the ambiguities involved.
-#
-# * How do Australians feel about the abbreviations in the tz database?
-#
-#   If you just count Australians on this list, I count 2 in favor and 3
-#   against.  One of the "against" votes (David Keegel) counseled delay,
-#   saying that both AEST/AEDT and EST/EST are widely used and
-#   understood in Australia.
-
-# From Paul Eggert (1995-12-19):
-# Shanks & Pottenger report 2:00 for all autumn changes in Australia and NZ.
-# Mark Prior writes that his newspaper
-# reports that NSW's fall 1995 change will occur at 2:00,
-# but Robert Elz says it's been 3:00 in Victoria since 1970
-# and perhaps the newspaper's `2:00' is referring to standard time.
-# For now we'll continue to assume 2:00s for changes since 1960.
-
-# From Eric Ulevik (1998-01-05):
-#
-# Here are some URLs to Australian time legislation. These URLs are stable,
-# and should probably be included in the data file. There are probably more
-# relevant entries in this database.
-#
-# NSW (including LHI and Broken Hill):
-# <a href="http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html">
-# Standard Time Act 1987 (updated 1995-04-04)
-# </a>
-# ACT
-# <a href="http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html">
-# Standard Time and Summer Time Act 1972
-# </a>
-# SA
-# <a href="http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html">
-# Standard Time Act, 1898
-# </a>
-
-# From David Grosz (2005-06-13):
-# It was announced last week that Daylight Saving would be extended by
-# one week next year to allow for the 2006 Commonwealth Games.
-# Daylight Saving is now to end for next year only on the first Sunday
-# in April instead of the last Sunday in March.
-#
-# From Gwillim Law (2005-06-14):
-# I did some Googling and found that all of those states (and territory) plan
-# to extend DST together in 2006.
-# ACT: http://www.cmd.act.gov.au/mediareleases/fileread.cfm?file=86.txt
-# New South Wales: http://www.thecouriermail.news.com.au/common/story_page/0,5936,15538869%255E1702,00.html
-# South Australia: http://www.news.com.au/story/0,10117,15555031-1246,00.html
-# Tasmania: http://www.media.tas.gov.au/release.php?id=14772
-# Victoria: I wasn't able to find anything separate, but the other articles
-# allude to it.
-# But not Queensland
-# http://www.news.com.au/story/0,10117,15564030-1248,00.html.
-
-# Northern Territory
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # The NORTHERN TERRITORY..  [ Courtesy N.T. Dept of the Chief Minister ]
-# #					[ Nov 1990 ]
-# #	N.T. have never utilised any DST due to sub-tropical/tropical location.
-# ...
-# Zone        Australia/North         9:30    -       CST
-
-# From Bradley White (1991-03-04):
-# A recent excerpt from an Australian newspaper...
-# the Northern Territory do[es] not have daylight saving.
-
-# Western Australia
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# #  The state of WESTERN AUSTRALIA..  [ Courtesy W.A. dept Premier+Cabinet ]
-# #						[ Nov 1990 ]
-# #	W.A. suffers from a great deal of public and political opposition to
-# #	DST in principle. A bill is brought before parliament in most years, but
-# #	usually defeated either in the upper house, or in party caucus
-# #	before reaching parliament.
-# ...
-# Zone	Australia/West		8:00	AW	%sST
-# ...
-# Rule	AW	1974	only	-	Oct	lastSun	2:00	1:00	D
-# Rule	AW	1975	only	-	Mar	Sun>=1	3:00	0	W
-# Rule	AW	1983	only	-	Oct	lastSun	2:00	1:00	D
-# Rule	AW	1984	only	-	Mar	Sun>=1	3:00	0	W
-
-# From Bradley White (1991-03-04):
-# A recent excerpt from an Australian newspaper...
-# Western Australia...do[es] not have daylight saving.
-
-# From John D. Newman via Bradley White (1991-11-02):
-# Western Australia is still on "winter time". Some DH in Sydney
-# rang me at home a few days ago at 6.00am. (He had just arrived at
-# work at 9.00am.)
-# W.A. is switching to Summer Time on Nov 17th just to confuse
-# everybody again.
-
-# From Arthur David Olson (1992-03-08):
-# The 1992 ending date used in the rules is a best guess;
-# it matches what was used in the past.
-
-# <a href="http://www.bom.gov.au/faq/faqgen.htm">
-# The Australian Bureau of Meteorology FAQ
-# </a> (1999-09-27) writes that Giles Meteorological Station uses
-# South Australian time even though it's located in Western Australia.
-
-# Queensland
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# #   The state of QUEENSLAND.. [ Courtesy Qld. Dept Premier Econ&Trade Devel ]
-# #						[ Dec 1990 ]
-# ...
-# Zone	Australia/Queensland	10:00	AQ	%sST
-# ...
-# Rule	AQ	1971	only	-	Oct	lastSun	2:00	1:00	D
-# Rule	AQ	1972	only	-	Feb	lastSun	3:00	0	E
-# Rule	AQ	1989	max	-	Oct	lastSun	2:00	1:00	D
-# Rule	AQ	1990	max	-	Mar	Sun>=1	3:00	0	E
-
-# From Bradley White (1989-12-24):
-# "Australia/Queensland" now observes daylight time (i.e. from
-# October 1989).
-
-# From Bradley White (1991-03-04):
-# A recent excerpt from an Australian newspaper...
-# ...Queensland...[has] agreed to end daylight saving
-# at 3am tomorrow (March 3)...
-
-# From John Mackin (1991-03-06):
-# I can certainly confirm for my part that Daylight Saving in NSW did in fact
-# end on Sunday, 3 March.  I don't know at what hour, though.  (It surprised
-# me.)
-
-# From Bradley White (1992-03-08):
-# ...there was recently a referendum in Queensland which resulted
-# in the experimental daylight saving system being abandoned. So, ...
-# ...
-# Rule	QLD	1989	1991	-	Oct	lastSun	2:00	1:00	D
-# Rule	QLD	1990	1992	-	Mar	Sun>=1	3:00	0	S
-# ...
-
-# From Arthur David Olson (1992-03-08):
-# The chosen rules the union of the 1971/1972 change and the 1989-1992 changes.
-
-# From Christopher Hunt (2006-11-21), after an advance warning
-# from Jesper Norgaard Welen (2006-11-01):
-# WA are trialing DST for three years.
-# <http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf>
-
-# From Rives McDow (2002-04-09):
-# The most interesting region I have found consists of three towns on the
-# southern coast....  South Australia observes daylight saving time; Western
-# Australia does not.  The two states are one and a half hours apart.  The
-# residents decided to forget about this nonsense of changing the clock so
-# much and set the local time 20 hours and 45 minutes from the
-# international date line, or right in the middle of the time of South
-# Australia and Western Australia....
-#
-# From Paul Eggert (2002-04-09):
-# This is confirmed by the section entitled
-# "What's the deal with time zones???" in
-# <http://www.earthsci.unimelb.edu.au/~awatkins/null.html>.
-#
-# From Alex Livingston (2006-12-07):
-# ... it was just on four years ago that I drove along the Eyre Highway,
-# which passes through eastern Western Australia close to the southern
-# coast of the continent.
-#
-# I paid particular attention to the time kept there. There can be no
-# dispute that UTC+08:45 was considered "the time" from the border
-# village just inside the border with South Australia to as far west
-# as just east of Caiguna. There can also be no dispute that Eucla is
-# the largest population centre in this zone....
-#
-# Now that Western Australia is observing daylight saving, the
-# question arose whether this part of the state would follow suit. I
-# just called the border village and confirmed that indeed they have,
-# meaning that they are now observing UTC+09:45.
-#
-# (2006-12-09):
-# I personally doubt that either experimentation with daylight saving
-# in WA or its introduction in SA had anything to do with the genesis
-# of this time zone.  My hunch is that it's been around since well
-# before 1975.  I remember seeing it noted on road maps decades ago.
-
-# From Paul Eggert (2006-12-15):
-# For lack of better info, assume the tradition dates back to the
-# introduction of standard time in 1895.
-
-
-# southeast Australia
-#
-# From Paul Eggert (2007-07-23):
-# Starting autumn 2008 Victoria, NSW, South Australia, Tasmania and the ACT
-# end DST the first Sunday in April and start DST the first Sunday in October.
-# http://www.theage.com.au/news/national/daylight-savings-to-span-six-months/2007/06/27/1182623966703.html
-
-
-# South Australia
-
-# From Bradley White (1991-03-04):
-# A recent excerpt from an Australian newspaper...
-# ...South Australia...[has] agreed to end daylight saving
-# at 3am tomorrow (March 3)...
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# #   The state of SOUTH AUSTRALIA....[ Courtesy of S.A. Dept of Labour ]
-# #						[ Nov 1990 ]
-# ...
-# Zone	Australia/South		9:30	AS	%sST
-# ...
-# Rule	 AS	1971	max	-	Oct	lastSun	2:00	1:00	D
-# Rule	 AS	1972	1985	-	Mar	Sun>=1	3:00	0	C
-# Rule	 AS	1986	1990	-	Mar	Sun>=15	3:00	0	C
-# Rule	 AS	1991	max	-	Mar	Sun>=1	3:00	0	C
-
-# From Bradley White (1992-03-11):
-# Recent correspondence with a friend in Adelaide
-# contained the following exchange:  "Due to the Adelaide Festival,
-# South Australia delays setting back our clocks for a few weeks."
-
-# From Robert Elz (1992-03-13):
-# I heard that apparently (or at least, it appears that)
-# South Aus will have an extra 3 weeks daylight saving every even
-# numbered year (from 1990).  That's when the Adelaide Festival
-# is on...
-
-# From Robert Elz (1992-03-16, 00:57:07 +1000):
-# DST didn't end in Adelaide today (yesterday)....
-# But whether it's "4th Sunday" or "2nd last Sunday" I have no idea whatever...
-# (it's just as likely to be "the Sunday we pick for this year"...).
-
-# From Bradley White (1994-04-11):
-# If Sun, 15 March, 1992 was at +1030 as kre asserts, but yet Sun, 20 March,
-# 1994 was at +0930 as John Connolly's customer seems to assert, then I can
-# only conclude that the actual rule is more complicated....
-
-# From John Warburton (1994-10-07):
-# The new Daylight Savings dates for South Australia ...
-# was gazetted in the Government Hansard on Sep 26 1994....
-# start on last Sunday in October and end in last sunday in March.
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-# Tasmania
-
-# The rules for 1967 through 1991 were reported by George Shepherd
-# via Simon Woodhead via Robert Elz (1991-03-06):
-# #  The state of TASMANIA.. [Courtesy Tasmanian Dept of Premier + Cabinet ]
-# #					[ Nov 1990 ]
-
-# From Bill Hart via Guy Harris (1991-10-10):
-# Oh yes, the new daylight savings rules are uniquely tasmanian, we have
-# 6 weeks a year now when we are out of sync with the rest of Australia
-# (but nothing new about that).
-
-# From Alex Livingston (1999-10-04):
-# I heard on the ABC (Australian Broadcasting Corporation) radio news on the
-# (long) weekend that Tasmania, which usually goes its own way in this regard,
-# has decided to join with most of NSW, the ACT, and most of Victoria
-# (Australia) and start daylight saving on the last Sunday in August in 2000
-# instead of the first Sunday in October.
-
-# Sim Alam (2000-07-03) reported a legal citation for the 2000/2001 rules:
-# http://www.thelaw.tas.gov.au/fragview/42++1968+GS3A@EN+2000070300
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-# Victoria
-
-# The rules for 1971 through 1991 were reported by George Shepherd
-# via Simon Woodhead via Robert Elz (1991-03-06):
-# #   The state of VICTORIA.. [ Courtesy of Vic. Dept of Premier + Cabinet ]
-# #						[ Nov 1990 ]
-
-# From Scott Harrington (2001-08-29):
-# On KQED's "City Arts and Lectures" program last night I heard an
-# interesting story about daylight savings time.  Dr. John Heilbron was
-# discussing his book "The Sun in the Church: Cathedrals as Solar
-# Observatories"[1], and in particular the Shrine of Remembrance[2] located
-# in Melbourne, Australia.
-#
-# Apparently the shrine's main purpose is a beam of sunlight which
-# illuminates a special spot on the floor at the 11th hour of the 11th day
-# of the 11th month (Remembrance Day) every year in memory of Australia's
-# fallen WWI soldiers.  And if you go there on Nov. 11, at 11am local time,
-# you will indeed see the sunbeam illuminate the special spot at the
-# expected time.
-#
-# However, that is only because of some special mirror contraption that had
-# to be employed, since due to daylight savings time, the true solar time of
-# the remembrance moment occurs one hour later (or earlier?).  Perhaps
-# someone with more information on this jury-rig can tell us more.
-#
-# [1] http://www.hup.harvard.edu/catalog/HEISUN.html
-# [2] http://www.shrine.org.au
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-# New South Wales
-
-# From Arthur David Olson:
-# New South Wales and subjurisdictions have their own ideas of a fun time.
-# Based on law library research by John Mackin,
-# who notes:
-#	In Australia, time is not legislated federally, but rather by the
-#	individual states.  Thus, while such terms as ``Eastern Standard Time''
-#	[I mean, of course, Australian EST, not any other kind] are in common
-#	use, _they have NO REAL MEANING_, as they are not defined in the
-#	legislation.  This is very important to understand.
-#	I have researched New South Wales time only...
-
-# From Eric Ulevik (1999-05-26):
-# DST will start in NSW on the last Sunday of August, rather than the usual
-# October in 2000.  [See: Matthew Moore,
-# <a href="http://www.smh.com.au/news/9905/26/pageone/pageone4.html">
-# Two months more daylight saving
-# </a>
-# Sydney Morning Herald (1999-05-26).]
-
-# From Paul Eggert (1999-09-27):
-# See the following official NSW source:
-# <a href="http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ">
-# Daylight Saving in New South Wales.
-# </a>
-#
-# Narrabri Shire (NSW) council has announced it will ignore the extension of
-# daylight saving next year.  See:
-# <a href="http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm">
-# Narrabri Council to ignore daylight saving
-# </a> (1999-07-22).  For now, we'll wait to see if this really happens.
-#
-# Victoria will following NSW.  See:
-# <a href="http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm">
-# Vic to extend daylight saving
-# </a> (1999-07-28).
-#
-# However, South Australia rejected the DST request.  See:
-# <a href="http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm">
-# South Australia rejects Olympics daylight savings request
-# </a> (1999-07-19).
-#
-# Queensland also will not observe DST for the Olympics.  See:
-# <a href="http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm">
-# Qld says no to daylight savings for Olympics
-# </a> (1999-06-01), which quotes Queensland Premier Peter Beattie as saying
-# ``Look you've got to remember in my family when this came up last time
-# I voted for it, my wife voted against it and she said to me it's all very
-# well for you, you don't have to worry about getting the children out of
-# bed, getting them to school, getting them to sleep at night.
-# I've been through all this argument domestically...my wife rules.''
-#
-# Broken Hill will stick with South Australian time in 2000.  See:
-# <a href="http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm">
-# Broken Hill to be behind the times
-# </a> (1999-07-21).
-
-# IATA SSIM (1998-09) says that the spring 2000 change for Australian
-# Capital Territory, New South Wales except Lord Howe Island and Broken
-# Hill, and Victoria will be August 27, presumably due to the Sydney Olympics.
-
-# From Eric Ulevik, referring to Sydney's Sun Herald (2000-08-13), page 29:
-# The Queensland Premier Peter Beattie is encouraging northern NSW
-# towns to use Queensland time.
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-# Yancowinna
-
-# From John Mackin (1989-01-04):
-# `Broken Hill' means the County of Yancowinna.
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # YANCOWINNA..  [ Confirmation courtesy of Broken Hill Postmaster ]
-# #					[ Dec 1990 ]
-# ...
-# # Yancowinna uses Central Standard Time, despite [its] location on the
-# # New South Wales side of the S.A. border. Most business and social dealings
-# # are with CST zones, therefore CST is legislated by local government
-# # although the switch to Summer Time occurs in line with N.S.W. There have
-# # been years when this did not apply, but the historical data is not
-# # presently available.
-# Zone	Australia/Yancowinna	9:30	 AY	%sST
-# ...
-# Rule	 AY	1971	1985	-	Oct	lastSun	2:00	1:00	D
-# Rule	 AY	1972	only	-	Feb	lastSun	3:00	0	C
-# [followed by other Rules]
-
-# Lord Howe Island
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# LHI...		[ Courtesy of Pauline Van Winsen ]
-#					[ Dec 1990 ]
-# Lord Howe Island is located off the New South Wales coast, and is half an
-# hour ahead of NSW time.
-
-# From James Lonergan, Secretary, Lord Howe Island Board (2000-01-27):
-# Lord Howe Island summer time in 2000/2001 will commence on the same
-# date as the rest of NSW (i.e. 2000-08-27).  For your information the
-# Lord Howe Island Board (controlling authority for the Island) is
-# seeking the community's views on various options for summer time
-# arrangements on the Island, e.g. advance clocks by 1 full hour
-# instead of only 30 minutes.  Dependant on the wishes of residents
-# the Board may approach the NSW government to change the existing
-# arrangements.  The starting date for summer time on the Island will
-# however always coincide with the rest of NSW.
-
-# From James Lonergan, Secretary, Lord Howe Island Board (2000-10-25):
-# Lord Howe Island advances clocks by 30 minutes during DST in NSW and retards
-# clocks by 30 minutes when DST finishes. Since DST was most recently
-# introduced in NSW, the "changeover" time on the Island has been 02:00 as
-# shown on clocks on LHI. I guess this means that for 30 minutes at the start
-# of DST, LHI is actually 1 hour ahead of the rest of NSW.
-
-# From Paul Eggert (2006-03-22):
-# For Lord Howe dates we use Shanks & Pottenger through 1989, and
-# Lonergan thereafter.  For times we use Lonergan.
-
-# From Paul Eggert (2007-07-23):
-# See "southeast Australia" above for 2008 and later.
-
-###############################################################################
-
-# New Zealand
-
-# From Mark Davies (1990-10-03):
-# the 1989/90 year was a trial of an extended "daylight saving" period.
-# This trial was deemed successful and the extended period adopted for
-# subsequent years (with the addition of a further week at the start).
-# source -- phone call to Ministry of Internal Affairs Head Office.
-
-# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
-# # The Country of New Zealand   (Australia's east island -) Gee they hate that!
-# #				   or is Australia the west island of N.Z.
-# #	[ courtesy of Geoff Tribble.. Auckland N.Z. ]
-# #				[ Nov 1990 ]
-# ...
-# Rule	NZ      1974    1988	-	Oct	lastSun	2:00	1:00	D
-# Rule	NZ	1989	max	-	Oct	Sun>=1	2:00	1:00	D
-# Rule	NZ      1975    1989	-	Mar	Sun>=1	3:00	0	S
-# Rule	NZ	1990	max	-	Mar	lastSun	3:00	0	S
-# ...
-# Zone	NZ			12:00	NZ		NZ%sT	# New Zealand
-# Zone	NZ-CHAT			12:45	-		NZ-CHAT # Chatham Island
-
-# From Arthur David Olson (1992-03-08):
-# The chosen rules use the Davies October 8 values for the start of DST in 1989
-# rather than the October 1 value.
-
-# From Paul Eggert (1995-12-19);
-# Shank & Pottenger report 2:00 for all autumn changes in Australia and NZ.
-# Robert Uzgalis writes that the New Zealand Daylight
-# Savings Time Order in Council dated 1990-06-18 specifies 2:00 standard
-# time on both the first Sunday in October and the third Sunday in March.
-# As with Australia, we'll assume the tradition is 2:00s, not 2:00.
-#
-# From Paul Eggert (2006-03-22):
-# The Department of Internal Affairs (DIA) maintains a brief history,
-# as does Carol Squires; see tz-link.htm for the full references.
-# Use these sources in preference to Shanks & Pottenger.
-#
-# For Chatham, IATA SSIM (1991/1999) gives the NZ rules but with
-# transitions at 2:45 local standard time; this confirms that Chatham
-# is always exactly 45 minutes ahead of Auckland.
-
-# From Colin Sharples (2007-04-30):
-# DST will now start on the last Sunday in September, and end on the
-# first Sunday in April.  The changes take effect this year, meaning
-# that DST will begin on 2007-09-30 2008-04-06.
-# http://www.dia.govt.nz/diawebsite.nsf/wpg_URL/Services-Daylight-Saving-Daylight-saving-to-be-extended
-
-###############################################################################
-
-
-# Fiji
-
-# Howse writes (p 153) that in 1879 the British governor of Fiji
-# enacted an ordinance standardizing the islands on Antipodean Time
-# instead of the American system (which was one day behind).
-
-# From Rives McDow (1998-10-08):
-# Fiji will introduce DST effective 0200 local time, 1998-11-01
-# until 0300 local time 1999-02-28.  Each year the DST period will
-# be from the first Sunday in November until the last Sunday in February.
-
-# From Paul Eggert (2000-01-08):
-# IATA SSIM (1999-09) says DST ends 0100 local time.  Go with McDow.
-
-# From the BBC World Service (1998-10-31 11:32 UTC):
-# The Fijiian government says the main reasons for the time change is to
-# improve productivity and reduce road accidents.  But correspondents say it
-# also hopes the move will boost Fiji's ability to compete with other pacific
-# islands in the effort to attract tourists to witness the dawning of the new
-# millenium.
-
-# http://www.fiji.gov.fj/press/2000_09/2000_09_13-05.shtml (2000-09-13)
-# reports that Fiji has discontinued DST.
-
-# Johnston
-
-# Johnston data is from usno1995.
-
-
-# Kiribati
-
-# From Paul Eggert (1996-01-22):
-# Today's _Wall Street Journal_ (page 1) reports that Kiribati
-# ``declared it the same day throught the country as of Jan. 1, 1995''
-# as part of the competition to be first into the 21st century.
-
-
-# Kwajalein
-
-# In comp.risks 14.87 (26 August 1993), Peter Neumann writes:
-# I wonder what happened in Kwajalein, where there was NO Friday,
-# 1993-08-20.  Thursday night at midnight Kwajalein switched sides with
-# respect to the International Date Line, to rejoin its fellow islands,
-# going from 11:59 p.m. Thursday to 12:00 m. Saturday in a blink.
-
-
-# N Mariana Is, Guam
-
-# Howse writes (p 153) ``The Spaniards, on the other hand, reached the
-# Philippines and the Ladrones from America,'' and implies that the Ladrones
-# (now called the Marianas) kept American date for quite some time.
-# For now, we assume the Ladrones switched at the same time as the Philippines;
-# see Asia/Manila.
-
-# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
-# under the name "Chamorro Standard Time".  There is no official abbreviation,
-# but Congressman Robert A. Underwood, author of the bill that became law,
-# wrote in a press release (2000-12-27) that he will seek the use of "ChST".
-
-
-# Micronesia
-
-# Alan Eugene Davis writes (1996-03-16),
-# ``I am certain, having lived there for the past decade, that "Truk"
-# (now properly known as Chuuk) ... is in the time zone GMT+10.''
-#
-# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
-# on 1978-10-01; ignore this for now.
-
-# From Paul Eggert (1999-10-29):
-# The Federated States of Micronesia Visitors Board writes in
-# <a href="http://www.fsmgov.org/info/clocks.html">
-# The Federated States of Micronesia - Visitor Information
-# </a> (1999-01-26)
-# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
-# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
-
-
-# Midway
-
-# From Charles T O'Connor, KMTH DJ (1956),
-# quoted in the KTMH section of the Radio Heritage Collection
-# <http://radiodx.com/spdxr/KMTH.htm> (2002-12-31):
-# For the past two months we've been on what is known as Daylight
-# Saving Time.  This time has put us on air at 5am in the morning,
-# your time down there in New Zealand.  Starting September 2, 1956
-# we'll again go back to Standard Time.  This'll mean that we'll go to
-# air at 6am your time.
-#
-# From Paul Eggert (2003-03-23):
-# We don't know the date of that quote, but we'll guess they
-# started DST on June 3.  Possibly DST was observed other years
-# in Midway, but we have no record of it.
-
-
-# Pitcairn
-
-# From Rives McDow (1999-11-08):
-# A Proclamation was signed by the Governor of Pitcairn on the 27th March 1998
-# with regard to Pitcairn Standard Time.  The Proclamation is as follows.
-#
-#	The local time for general purposes in the Islands shall be
-#	Co-ordinated Universal time minus 8 hours and shall be known
-#	as Pitcairn Standard Time.
-#
-# ... I have also seen Pitcairn listed as UTC minus 9 hours in several
-# references, and can only assume that this was an error in interpretation
-# somehow in light of this proclamation.
-
-# From Rives McDow (1999-11-09):
-# The Proclamation regarding Pitcairn time came into effect on 27 April 1998
-# ... at midnight.
-
-# From Howie Phelps (1999-11-10), who talked to a Pitcairner via shortwave:
-# Betty Christian told me yesterday that their local time is the same as
-# Pacific Standard Time. They used to be 1/2 hour different from us here in
-# Sacramento but it was changed a couple of years ago.
-
-
-# Samoa
-
-# Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald)
-# that in 1879 the King of Samoa decided to change
-# ``the date in his kingdom from the Antipodean to the American system,
-# ordaining -- by a masterpiece of diplomatic flattery -- that
-# the Fourth of July should be celebrated twice in that year.''
-
-
-# Tonga
-
-# From Paul Eggert (1996-01-22):
-# Today's _Wall Street Journal_ (p 1) reports that ``Tonga has been plotting
-# to sneak ahead of [New Zealanders] by introducing daylight-saving time.''
-# Since Kiribati has moved the Date Line it's not clear what Tonga will do.
-
-# Don Mundell writes in the 1997-02-20 Tonga Chronicle
-# <a href="http://www.tongatapu.net.to/tonga/homeland/timebegins.htm">
-# How Tonga became `The Land where Time Begins'
-# </a>:
-
-# Until 1941 Tonga maintained a standard time 50 minutes ahead of NZST
-# 12 hours and 20 minutes ahead of GMT.  When New Zealand adjusted its
-# standard time in 1940s, Tonga had the choice of subtracting from its
-# local time to come on the same standard time as New Zealand or of
-# advancing its time to maintain the differential of 13 degrees
-# (approximately 50 minutes ahead of New Zealand time).
-#
-# Because His Majesty King Taufa'ahau Tupou IV, then Crown Prince
-# Tungi, preferred to ensure Tonga's title as the land where time
-# begins, the Legislative Assembly approved the latter change.
-#
-# But some of the older, more conservative members from the outer
-# islands objected. "If at midnight on Dec. 31, we move ahead 40
-# minutes, as your Royal Highness wishes, what becomes of the 40
-# minutes we have lost?"
-#
-# The Crown Prince, presented an unanswerable argument: "Remember that
-# on the World Day of Prayer, you would be the first people on Earth
-# to say your prayers in the morning."
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say the transition was on 1968-10-01; go with Mundell.
-
-# From Eric Ulevik (1999-05-03):
-# Tonga's director of tourism, who is also secretary of the National Millenium
-# Committee, has a plan to get Tonga back in front.
-# He has proposed a one-off move to tropical daylight saving for Tonga from
-# October to March, which has won approval in principle from the Tongan
-# Government.
-
-# From Steffen Thorsen (1999-09-09):
-# * Tonga will introduce DST in November
-#
-# I was given this link by John Letts:
-# <a href="http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm">
-# http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm
-# </a>
-#
-# I have not been able to find exact dates for the transition in November
-# yet. By reading this article it seems like Fiji will be 14 hours ahead
-# of UTC as well, but as far as I know Fiji will only be 13 hours ahead
-# (12 + 1 hour DST).
-
-# From Arthur David Olson (1999-09-20):
-# According to <a href="http://www.tongaonline.com/news/sept1799.html">
-# http://www.tongaonline.com/news/sept1799.html
-# </a>:
-# "Daylight Savings Time will take effect on Oct. 2 through April 15, 2000
-# and annually thereafter from the first Saturday in October through the
-# third Saturday of April.  Under the system approved by Privy Council on
-# Sept. 10, clocks must be turned ahead one hour on the opening day and
-# set back an hour on the closing date."
-# Alas, no indication of the time of day.
-
-# From Rives McDow (1999-10-06):
-# Tonga started its Daylight Saving on Saturday morning October 2nd at 0200am.
-# Daylight Saving ends on April 16 at 0300am which is Sunday morning.
-
-# From Steffen Thorsen (2000-10-31):
-# Back in March I found a notice on the website http://www.tongaonline.com
-# that Tonga changed back to standard time one month early, on March 19
-# instead of the original reported date April 16. Unfortunately, the article
-# is no longer available on the site, and I did not make a copy of the
-# text, and I have forgotten to report it here.
-# (Original URL was: http://www.tongaonline.com/news/march162000.htm )
-
-# From Rives McDow (2000-12-01):
-# Tonga is observing DST as of 2000-11-04 and will stop on 2001-01-27.
-
-# From Sione Moala-Mafi (2001-09-20) via Rives McDow:
-# At 2:00am on the first Sunday of November, the standard time in the Kingdom
-# shall be moved forward by one hour to 3:00am.  At 2:00am on the last Sunday
-# of January the standard time in the Kingdom shall be moved backward by one
-# hour to 1:00am.
-
-# From Pulu 'Anau (2002-11-05):
-# The law was for 3 years, supposedly to get renewed.  It wasn't.
-
-
-# Wake
-
-# From Vernice Anderson, Personal Secretary to Philip Jessup,
-# US Ambassador At Large (oral history interview, 1971-02-02):
-#
-# Saturday, the 14th [of October, 1950] -- ...  The time was all the
-# more confusing at that point, because we had crossed the
-# International Date Line, thus getting two Sundays.  Furthermore, we
-# discovered that Wake Island had two hours of daylight saving time
-# making calculation of time in Washington difficult if not almost
-# impossible.
-#
-# http://www.trumanlibrary.org/wake/meeting.htm
-
-# From Paul Eggert (2003-03-23):
-# We have no other report of DST in Wake Island, so omit this info for now.
-
-###############################################################################
-
-# The International Date Line
-
-# From Gwillim Law (2000-01-03):
-#
-# The International Date Line is not defined by any international standard,
-# convention, or treaty.  Mapmakers are free to draw it as they please.
-# Reputable mapmakers will simply ensure that every point of land appears on
-# the correct side of the IDL, according to the date legally observed there.
-#
-# When Kiribati adopted a uniform date in 1995, thereby moving the Phoenix and
-# Line Islands to the west side of the IDL (or, if you prefer, moving the IDL
-# to the east side of the Phoenix and Line Islands), I suppose that most
-# mapmakers redrew the IDL following the boundary of Kiribati.  Even that line
-# has a rather arbitrary nature.  The straight-line boundaries between Pacific
-# island nations that are shown on many maps are based on an international
-# convention, but are not legally binding national borders.... The date is
-# governed by the IDL; therefore, even on the high seas, there may be some
-# places as late as fourteen hours later than UTC.  And, since the IDL is not
-# an international standard, there are some places on the high seas where the
-# correct date is ambiguous.
-
-# From Wikipedia <http://en.wikipedia.org/wiki/Time_zone> (2005-08-31):
-# Before 1920, all ships kept local apparent time on the high seas by setting
-# their clocks at night or at the morning sight so that, given the ship's
-# speed and direction, it would be 12 o'clock when the Sun crossed the ship's
-# meridian (12 o'clock = local apparent noon).  During 1917, at the
-# Anglo-French Conference on Time-keeping at Sea, it was recommended that all
-# ships, both military and civilian, should adopt hourly standard time zones
-# on the high seas.  Whenever a ship was within the territorial waters of any
-# nation it would use that nation's standard time.  The captain was permitted
-# to change his ship's clocks at a time of his choice following his ship's
-# entry into another zone time--he often chose midnight.  These zones were
-# adopted by all major fleets between 1920 and 1925 but not by many
-# independent merchant ships until World War II.
-
-# From Paul Eggert, using references suggested by Oscar van Vlijmen
-# (2005-03-20):
-#
-# The American Practical Navigator (2002)
-# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187>
-# talks only about the 180-degree meridian with respect to ships in
-# international waters; it ignores the international date line.
diff --git a/tools/zoneinfo/tzdata2008h/backward b/tools/zoneinfo/tzdata2008h/backward
deleted file mode 100644
index a65991c..0000000
--- a/tools/zoneinfo/tzdata2008h/backward
+++ /dev/null
@@ -1,112 +0,0 @@
-# @(#)backward	8.6
-
-# This file provides links between current names for time zones
-# and their old names.  Many names changed in late 1993.
-
-Link	Africa/Asmara		Africa/Asmera
-Link	Africa/Bamako		Africa/Timbuktu
-Link	America/Argentina/Catamarca	America/Argentina/ComodRivadavia
-Link	America/Adak		America/Atka
-Link	America/Argentina/Buenos_Aires	America/Buenos_Aires
-Link	America/Argentina/Catamarca	America/Catamarca
-Link	America/Atikokan	America/Coral_Harbour
-Link	America/Argentina/Cordoba	America/Cordoba
-Link	America/Tijuana		America/Ensenada
-Link	America/Indiana/Indianapolis	America/Fort_Wayne
-Link	America/Indiana/Indianapolis	America/Indianapolis
-Link	America/Argentina/Jujuy	America/Jujuy
-Link	America/Indiana/Knox	America/Knox_IN
-Link	America/Kentucky/Louisville	America/Louisville
-Link	America/Argentina/Mendoza	America/Mendoza
-Link	America/Rio_Branco	America/Porto_Acre
-Link	America/Argentina/Cordoba	America/Rosario
-Link	America/St_Thomas	America/Virgin
-Link	Asia/Ashgabat		Asia/Ashkhabad
-Link	Asia/Chongqing		Asia/Chungking
-Link	Asia/Dhaka		Asia/Dacca
-Link	Asia/Kolkata		Asia/Calcutta
-Link	Asia/Macau		Asia/Macao
-Link	Asia/Jerusalem		Asia/Tel_Aviv
-Link	Asia/Ho_Chi_Minh	Asia/Saigon
-Link	Asia/Thimphu		Asia/Thimbu
-Link	Asia/Makassar		Asia/Ujung_Pandang
-Link	Asia/Ulaanbaatar	Asia/Ulan_Bator
-Link	Atlantic/Faroe		Atlantic/Faeroe
-Link	Europe/Oslo		Atlantic/Jan_Mayen
-Link	Australia/Sydney	Australia/ACT
-Link	Australia/Sydney	Australia/Canberra
-Link	Australia/Lord_Howe	Australia/LHI
-Link	Australia/Sydney	Australia/NSW
-Link	Australia/Darwin	Australia/North
-Link	Australia/Brisbane	Australia/Queensland
-Link	Australia/Adelaide	Australia/South
-Link	Australia/Hobart	Australia/Tasmania
-Link	Australia/Melbourne	Australia/Victoria
-Link	Australia/Perth		Australia/West
-Link	Australia/Broken_Hill	Australia/Yancowinna
-Link	America/Rio_Branco	Brazil/Acre
-Link	America/Noronha		Brazil/DeNoronha
-Link	America/Sao_Paulo	Brazil/East
-Link	America/Manaus		Brazil/West
-Link	America/Halifax		Canada/Atlantic
-Link	America/Winnipeg	Canada/Central
-Link	America/Regina		Canada/East-Saskatchewan
-Link	America/Toronto		Canada/Eastern
-Link	America/Edmonton	Canada/Mountain
-Link	America/St_Johns	Canada/Newfoundland
-Link	America/Vancouver	Canada/Pacific
-Link	America/Regina		Canada/Saskatchewan
-Link	America/Whitehorse	Canada/Yukon
-Link	America/Santiago	Chile/Continental
-Link	Pacific/Easter		Chile/EasterIsland
-Link	America/Havana		Cuba
-Link	Africa/Cairo		Egypt
-Link	Europe/Dublin		Eire
-Link	Europe/London		Europe/Belfast
-Link	Europe/Chisinau		Europe/Tiraspol
-Link	Europe/London		GB
-Link	Europe/London		GB-Eire
-Link	Etc/GMT			GMT+0
-Link	Etc/GMT			GMT-0
-Link	Etc/GMT			GMT0
-Link	Etc/GMT			Greenwich
-Link	Asia/Hong_Kong		Hongkong
-Link	Atlantic/Reykjavik	Iceland
-Link	Asia/Tehran		Iran
-Link	Asia/Jerusalem		Israel
-Link	America/Jamaica		Jamaica
-Link	Asia/Tokyo		Japan
-Link	Pacific/Kwajalein	Kwajalein
-Link	Africa/Tripoli		Libya
-Link	America/Tijuana		Mexico/BajaNorte
-Link	America/Mazatlan	Mexico/BajaSur
-Link	America/Mexico_City	Mexico/General
-Link	Pacific/Auckland	NZ
-Link	Pacific/Chatham		NZ-CHAT
-Link	America/Denver		Navajo
-Link	Asia/Shanghai		PRC
-Link	Pacific/Pago_Pago	Pacific/Samoa
-Link	Pacific/Truk		Pacific/Yap
-Link	Europe/Warsaw		Poland
-Link	Europe/Lisbon		Portugal
-Link	Asia/Taipei		ROC
-Link	Asia/Seoul		ROK
-Link	Asia/Singapore		Singapore
-Link	Europe/Istanbul		Turkey
-Link	Etc/UCT			UCT
-Link	America/Anchorage	US/Alaska
-Link	America/Adak		US/Aleutian
-Link	America/Phoenix		US/Arizona
-Link	America/Chicago		US/Central
-Link	America/Indiana/Indianapolis	US/East-Indiana
-Link	America/New_York	US/Eastern
-Link	Pacific/Honolulu	US/Hawaii
-Link	America/Indiana/Knox	US/Indiana-Starke
-Link	America/Detroit		US/Michigan
-Link	America/Denver		US/Mountain
-Link	America/Los_Angeles	US/Pacific
-Link	Pacific/Pago_Pago	US/Samoa
-Link	Etc/UTC			UTC
-Link	Etc/UTC			Universal
-Link	Europe/Moscow		W-SU
-Link	Etc/UTC			Zulu
diff --git a/tools/zoneinfo/tzdata2008h/etcetera b/tools/zoneinfo/tzdata2008h/etcetera
deleted file mode 100644
index cddbe8a..0000000
--- a/tools/zoneinfo/tzdata2008h/etcetera
+++ /dev/null
@@ -1,80 +0,0 @@
-# @(#)etcetera	8.1
-
-# These entries are mostly present for historical reasons, so that
-# people in areas not otherwise covered by the tz files could "zic -l"
-# to a time zone that was right for their area.  These days, the
-# tz files cover almost all the inhabited world, and the only practical
-# need now for the entries that are not on UTC are for ships at sea
-# that cannot use POSIX TZ settings.
-
-Zone	Etc/GMT		0	-	GMT
-Zone	Etc/UTC		0	-	UTC
-Zone	Etc/UCT		0	-	UCT
-
-# The following link uses older naming conventions,
-# but it belongs here, not in the file `backward',
-# as functions like gmtime load the "GMT" file to handle leap seconds properly.
-# We want this to work even on installations that omit the other older names.
-Link	Etc/GMT				GMT
-
-Link	Etc/UTC				Etc/Universal
-Link	Etc/UTC				Etc/Zulu
-
-Link	Etc/GMT				Etc/Greenwich
-Link	Etc/GMT				Etc/GMT-0
-Link	Etc/GMT				Etc/GMT+0
-Link	Etc/GMT				Etc/GMT0
-
-# We use POSIX-style signs in the Zone names and the output abbreviations,
-# even though this is the opposite of what many people expect.
-# POSIX has positive signs west of Greenwich, but many people expect
-# positive signs east of Greenwich.  For example, TZ='Etc/GMT+4' uses
-# the abbreviation "GMT+4" and corresponds to 4 hours behind UTC
-# (i.e. west of Greenwich) even though many people would expect it to
-# mean 4 hours ahead of UTC (i.e. east of Greenwich).
-#
-# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation
-# (which is not yet supported by the tz code) allows for
-# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
-# ISO 8601 you can use TZ='<-0400>+4'.  Thus the commonly-expected
-# offset is kept within the angle bracket (and is used for display)
-# while the POSIX sign is kept outside the angle bracket (and is used
-# for calculation).
-#
-# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
-# GMT but uses the completely misleading abbreviation "GMT".
-
-# Earlier incarnations of this package were not POSIX-compliant,
-# and had lines such as
-#		Zone	GMT-12		-12	-	GMT-1200
-# We did not want things to change quietly if someone accustomed to the old
-# way does a
-#		zic -l GMT-12
-# so we moved the names into the Etc subdirectory.
-
-Zone	Etc/GMT-14	14	-	GMT-14	# 14 hours ahead of GMT
-Zone	Etc/GMT-13	13	-	GMT-13
-Zone	Etc/GMT-12	12	-	GMT-12
-Zone	Etc/GMT-11	11	-	GMT-11
-Zone	Etc/GMT-10	10	-	GMT-10
-Zone	Etc/GMT-9	9	-	GMT-9
-Zone	Etc/GMT-8	8	-	GMT-8
-Zone	Etc/GMT-7	7	-	GMT-7
-Zone	Etc/GMT-6	6	-	GMT-6
-Zone	Etc/GMT-5	5	-	GMT-5
-Zone	Etc/GMT-4	4	-	GMT-4
-Zone	Etc/GMT-3	3	-	GMT-3
-Zone	Etc/GMT-2	2	-	GMT-2
-Zone	Etc/GMT-1	1	-	GMT-1
-Zone	Etc/GMT+1	-1	-	GMT+1
-Zone	Etc/GMT+2	-2	-	GMT+2
-Zone	Etc/GMT+3	-3	-	GMT+3
-Zone	Etc/GMT+4	-4	-	GMT+4
-Zone	Etc/GMT+5	-5	-	GMT+5
-Zone	Etc/GMT+6	-6	-	GMT+6
-Zone	Etc/GMT+7	-7	-	GMT+7
-Zone	Etc/GMT+8	-8	-	GMT+8
-Zone	Etc/GMT+9	-9	-	GMT+9
-Zone	Etc/GMT+10	-10	-	GMT+10
-Zone	Etc/GMT+11	-11	-	GMT+11
-Zone	Etc/GMT+12	-12	-	GMT+12
diff --git a/tools/zoneinfo/tzdata2008h/europe b/tools/zoneinfo/tzdata2008h/europe
deleted file mode 100644
index 7bb9864..0000000
--- a/tools/zoneinfo/tzdata2008h/europe
+++ /dev/null
@@ -1,2594 +0,0 @@
-# @(#)europe	8.18
-# <pre>
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually.  Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1991, and IATA SSIM is the source for entries afterwards.
-#
-# Other sources occasionally used include:
-#
-#	Edward W. Whitman, World Time Differences,
-#	Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
-#	which I found in the UCLA library.
-#
-#	<a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf">
-#	William Willett, The Waste of Daylight, 19th edition
-#	</a> (1914-03)
-#
-#	Brazil's Departamento Servico da Hora (DSH),
-#	<a href="http://pcdsh01.on.br/HISTHV.htm">
-#	History of Summer Time
-#	</a> (1998-09-21, in Portuguese)
-
-#
-# I invented the abbreviations marked `*' in the following table;
-# the rest are from earlier versions of this file, or from other sources.
-# Corrections are welcome!
-#                   std dst  2dst
-#                   LMT           Local Mean Time
-#       -4:00       AST ADT       Atlantic
-#       -3:00       WGT WGST      Western Greenland*
-#       -1:00       EGT EGST      Eastern Greenland*
-#        0:00       GMT BST  BDST Greenwich, British Summer
-#        0:00       GMT IST       Greenwich, Irish Summer
-#        0:00       WET WEST WEMT Western Europe
-#        0:19:32.13 AMT NST       Amsterdam, Netherlands Summer (1835-1937)*
-#        0:20       NET NEST      Netherlands (1937-1940)*
-#        1:00       CET CEST CEMT Central Europe
-#        1:00:14    SET           Swedish (1879-1899)*
-#        2:00       EET EEST      Eastern Europe
-#        3:00       MSK MSD       Moscow
-#
-# A reliable and entertaining source about time zones, especially in Britain,
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-
-# From Peter Ilieve (1994-12-04),
-# The original six [EU members]: Belgium, France, (West) Germany, Italy,
-# Luxembourg, the Netherlands.
-# Plus, from 1 Jan 73: Denmark, Ireland, United Kingdom.
-# Plus, from 1 Jan 81: Greece.
-# Plus, from 1 Jan 86: Spain, Portugal.
-# Plus, from 1 Jan 95: Austria, Finland, Sweden. (Norway negotiated terms for
-# entry but in a referendum on 28 Nov 94 the people voted No by 52.2% to 47.8%
-# on a turnout of 88.6%. This was almost the same result as Norway's previous
-# referendum in 1972, they are the only country to have said No twice.
-# Referendums in the other three countries voted Yes.)
-# ...
-# Estonia ... uses EU dates but not at 01:00 GMT, they use midnight GMT.
-# I don't think they know yet what they will do from 1996 onwards.
-# ...
-# There shouldn't be any [current members who are not using EU rules].
-# A Directive has the force of law, member states are obliged to enact
-# national law to implement it. The only contentious issue was the
-# different end date for the UK and Ireland, and this was always allowed
-# in the Directive.
-
-
-###############################################################################
-
-# Britain (United Kingdom) and Ireland (Eire)
-
-# From Peter Ilieve (1994-07-06):
-#
-# On 17 Jan 1994 the Independent, a UK quality newspaper, had a piece about
-# historical vistas along the Thames in west London. There was a photo
-# and a sketch map showing some of the sightlines involved. One paragraph
-# of the text said:
-#
-# `An old stone obelisk marking a forgotten terrestrial meridian stands
-# beside the river at Kew. In the 18th century, before time and longitude
-# was standardised by the Royal Observatory in Greenwich, scholars observed
-# this stone and the movement of stars from Kew Observatory nearby. They
-# made their calculations and set the time for the Horse Guards and Parliament,
-# but now the stone is obscured by scrubwood and can only be seen by walking
-# along the towpath within a few yards of it.'
-#
-# I have a one inch to one mile map of London and my estimate of the stone's
-# position is 51 deg. 28' 30" N, 0 deg. 18' 45" W. The longitude should
-# be within about +-2". The Ordnance Survey grid reference is TQ172761.
-#
-# [This yields GMTOFF = -0:01:15 for London LMT in the 18th century.]
-
-# From Paul Eggert (1993-11-18):
-#
-# Howse writes that Britain was the first country to use standard time.
-# The railways cared most about the inconsistencies of local mean time,
-# and it was they who forced a uniform time on the country.
-# The original idea was credited to Dr. William Hyde Wollaston (1766-1828)
-# and was popularized by Abraham Follett Osler (1808-1903).
-# The first railway to adopt London time was the Great Western Railway
-# in November 1840; other railways followed suit, and by 1847 most
-# (though not all) railways used London time.  On 1847-09-22 the
-# Railway Clearing House, an industry standards body, recommended that GMT be
-# adopted at all stations as soon as the General Post Office permitted it.
-# The transition occurred on 12-01 for the L&NW, the Caledonian,
-# and presumably other railways; the January 1848 Bradshaw's lists many
-# railways as using GMT.  By 1855 the vast majority of public
-# clocks in Britain were set to GMT (though some, like the great clock
-# on Tom Tower at Christ Church, Oxford, were fitted with two minute hands,
-# one for local time and one for GMT).  The last major holdout was the legal
-# system, which stubbornly stuck to local time for many years, leading
-# to oddities like polls opening at 08:13 and closing at 16:13.
-# The legal system finally switched to GMT when the Statutes (Definition
-# of Time) Act took effect; it received the Royal Assent on 1880-08-02.
-#
-# In the tables below, we condense this complicated story into a single
-# transition date for London, namely 1847-12-01.  We don't know as much
-# about Dublin, so we use 1880-08-02, the legal transition time.
-
-# From Paul Eggert (2003-09-27):
-# Summer Time was first seriously proposed by William Willett (1857-1915),
-# a London builder and member of the Royal Astronomical Society
-# who circulated a pamphlet ``The Waste of Daylight'' (1907)
-# that proposed advancing clocks 20 minutes on each of four Sundays in April,
-# and retarding them by the same amount on four Sundays in September.
-# A bill was drafted in 1909 and introduced in Parliament several times,
-# but it met with ridicule and opposition, especially from farming interests.
-# Later editions of the pamphlet proposed one-hour summer time, and
-# it was eventually adopted as a wartime measure in 1916.
-# See: Summer Time Arrives Early, The Times (2000-05-18).
-# A monument to Willett was unveiled on 1927-05-21, in an open space in
-# a 45-acre wood near Chislehurst, Kent that was purchased by popular
-# subscription and open to the public.  On the south face of the monolith,
-# designed by G. W. Miller, is the the William Willett Memorial Sundial,
-# which is permanently set to Summer Time.
-
-# From Winston Churchill (1934-04-28):
-# It is one of the paradoxes of history that we should owe the boon of
-# summer time, which gives every year to the people of this country
-# between 160 and 170 hours more daylight leisure, to a war which
-# plunged Europe into darkness for four years, and shook the
-# foundations of civilization throughout the world.
-#	-- <a href="http://www.winstonchurchill.org/fh114willett.htm">
-#	"A Silent Toast to William Willett", Pictorial Weekly
-#	</a>
-
-# From Paul Eggert (1996-09-03):
-# The OED Supplement says that the English originally said ``Daylight Saving''
-# when they were debating the adoption of DST in 1908; but by 1916 this
-# term appears only in quotes taken from DST's opponents, whereas the
-# proponents (who eventually won the argument) are quoted as using ``Summer''.
-
-# From Arthur David Olson (1989-01-19):
-#
-# A source at the British Information Office in New York avers that it's
-# known as "British" Summer Time in all parts of the United Kingdom.
-
-# Date: 4 Jan 89 08:57:25 GMT (Wed)
-# From: Jonathan Leffler
-# [British Summer Time] is fixed annually by Act of Parliament.
-# If you can predict what Parliament will do, you should be in
-# politics making a fortune, not computing.
-
-# From Chris Carrier (1996-06-14):
-# I remember reading in various wartime issues of the London Times the
-# acronym BDST for British Double Summer Time.  Look for the published
-# time of sunrise and sunset in The Times, when BDST was in effect, and
-# if you find a zone reference it will say, "All times B.D.S.T."
-
-# From Joseph S. Myers (1999-09-02):
-# ... some military cables (WO 219/4100 - this is a copy from the
-# main SHAEF archives held in the US National Archives, SHAEF/5252/8/516)
-# agree that the usage is BDST (this appears in a message dated 17 Feb 1945).
-
-# From Joseph S. Myers (2000-10-03):
-# On 18th April 1941, Sir Stephen Tallents of the BBC wrote to Sir
-# Alexander Maxwell of the Home Office asking whether there was any
-# official designation; the reply of the 21st was that there wasn't
-# but he couldn't think of anything better than the "Double British
-# Summer Time" that the BBC had been using informally.
-# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png
-# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png
-
-# From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21):
-# [N]o official designation has as far as I know been adopted for the time
-# which is to be introduced in May....
-# I cannot think of anything better than "Double British Summer Time"
-# which could not be said to run counter to any official description.
-
-# From Paul Eggert (2000-10-02):
-# Howse writes (p 157) `DBST' too, but `BDST' seems to have been common
-# and follows the more usual convention of putting the location name first,
-# so we use `BDST'.
-
-# Peter Ilieve (1998-04-19) described at length
-# the history of summer time legislation in the United Kingdom.
-# Since 1998 Joseph S. Myers has been updating
-# and extending this list, which can be found in
-# <a href="http://student.cusu.cam.ac.uk/~jsm28/british-time/">
-# History of legal time in Britain
-# </a>
-
-# From Joseph S. Myers (1998-01-06):
-#
-# The legal time in the UK outside of summer time is definitely GMT, not UTC;
-# see Lord Tanlaw's speech
-# <a href="http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0">
-# (Lords Hansard 11 June 1997 columns 964 to 976)
-# </a>.
-
-# From Paul Eggert (2006-03-22):
-#
-# For lack of other data, follow Shanks & Pottenger for Eire in 1940-1948.
-#
-# Given Ilieve and Myers's data, the following claims by Shanks & Pottenger
-# are incorrect:
-#     * Wales did not switch from GMT to daylight saving time until
-#	1921 Apr 3, when they began to conform with the rest of Great Britain.
-# Actually, Wales was identical after 1880.
-#     * Eire had two transitions on 1916 Oct 1.
-# It actually just had one transition.
-#     * Northern Ireland used single daylight saving time throughout WW II.
-# Actually, it conformed to Britain.
-#     * GB-Eire changed standard time to 1 hour ahead of GMT on 1968-02-18.
-# Actually, that date saw the usual switch to summer time.
-# Standard time was not changed until 1968-10-27 (the clocks didn't change).
-#
-# Here is another incorrect claim by Shanks & Pottenger:
-#     * Jersey, Guernsey, and the Isle of Man did not switch from GMT
-#	to daylight saving time until 1921 Apr 3, when they began to
-#	conform with Great Britain.
-# S.R.&O. 1916, No. 382 and HO 45/10811/312364 (quoted above) say otherwise.
-#
-# The following claim by Shanks & Pottenger is possible though doubtful;
-# we'll ignore it for now.
-#     * Dublin's 1971-10-31 switch was at 02:00, even though London's was 03:00.
-#
-#
-# Whitman says Dublin Mean Time was -0:25:21, which is more precise than
-# Shanks & Pottenger.
-# Perhaps this was Dunsink Observatory Time, as Dunsink Observatory
-# (8 km NW of Dublin's center) seemingly was to Dublin as Greenwich was
-# to London.  For example:
-#
-#   "Timeball on the ballast office is down.  Dunsink time."
-#   -- James Joyce, Ulysses
-
-# From Joseph S. Myers (2005-01-26):
-# Irish laws are available online at www.irishstatutebook.ie.  These include
-# various relating to legal time, for example:
-#
-# ZZA13Y1923.html ZZA12Y1924.html ZZA8Y1925.html ZZSIV20PG1267.html
-#
-# ZZSI71Y1947.html ZZSI128Y1948.html ZZSI23Y1949.html ZZSI41Y1950.html
-# ZZSI27Y1951.html ZZSI73Y1952.html
-#
-# ZZSI11Y1961.html ZZSI232Y1961.html ZZSI182Y1962.html
-# ZZSI167Y1963.html ZZSI257Y1964.html ZZSI198Y1967.html
-# ZZA23Y1968.html ZZA17Y1971.html
-#
-# ZZSI67Y1981.html ZZSI212Y1982.html ZZSI45Y1986.html
-# ZZSI264Y1988.html ZZSI52Y1990.html ZZSI371Y1992.html
-# ZZSI395Y1994.html ZZSI484Y1997.html ZZSI506Y2001.html
-#
-# [These are all relative to the root, e.g., the first is
-# <http://www.irishstatutebook.ie/ZZA13Y1923.html>.]
-#
-# (These are those I found, but there could be more.  In any case these
-# should allow various updates to the comments in the europe file to cover
-# the laws applicable in Ireland.)
-#
-# (Note that the time in the Republic of Ireland since 1968 has been defined
-# in terms of standard time being GMT+1 with a period of winter time when it
-# is GMT, rather than standard time being GMT with a period of summer time
-# being GMT+1.)
-
-# From Paul Eggert (1999-03-28):
-# Clive Feather (<news:859845706.26043.0@office.demon.net>, 1997-03-31)
-# reports that Folkestone (Cheriton) Shuttle Terminal uses Concession Time
-# (CT), equivalent to French civil time.
-# Julian Hill (<news:36118128.5A14@virgin.net>, 1998-09-30) reports that
-# trains between Dollands Moor (the freight facility next door)
-# and Frethun run in CT.
-# My admittedly uninformed guess is that the terminal has two authorities,
-# the French concession operators and the British civil authorities,
-# and that the time depends on who you're talking to.
-# If, say, the British police were called to the station for some reason,
-# I would expect the official police report to use GMT/BST and not CET/CEST.
-# This is a borderline case, but for now let's stick to GMT/BST.
-
-# From an anonymous contributor (1996-06-02):
-# The law governing time in Ireland is under Statutory Instrument SI 395/94,
-# which gives force to European Union 7th Council Directive # 94/21/EC.
-# Under this directive, the Minister for Justice in Ireland makes appropriate
-# regulations. I spoke this morning with the Secretary of the Department of
-# Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
-# "Irish Summer Time", abbreviated to "IST".
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# Summer Time Act, 1916
-Rule	GB-Eire	1916	only	-	May	21	2:00s	1:00	BST
-Rule	GB-Eire	1916	only	-	Oct	 1	2:00s	0	GMT
-# S.R.&O. 1917, No. 358
-Rule	GB-Eire	1917	only	-	Apr	 8	2:00s	1:00	BST
-Rule	GB-Eire	1917	only	-	Sep	17	2:00s	0	GMT
-# S.R.&O. 1918, No. 274
-Rule	GB-Eire	1918	only	-	Mar	24	2:00s	1:00	BST
-Rule	GB-Eire	1918	only	-	Sep	30	2:00s	0	GMT
-# S.R.&O. 1919, No. 297
-Rule	GB-Eire	1919	only	-	Mar	30	2:00s	1:00	BST
-Rule	GB-Eire	1919	only	-	Sep	29	2:00s	0	GMT
-# S.R.&O. 1920, No. 458
-Rule	GB-Eire	1920	only	-	Mar	28	2:00s	1:00	BST
-# S.R.&O. 1920, No. 1844
-Rule	GB-Eire	1920	only	-	Oct	25	2:00s	0	GMT
-# S.R.&O. 1921, No. 363
-Rule	GB-Eire	1921	only	-	Apr	 3	2:00s	1:00	BST
-Rule	GB-Eire	1921	only	-	Oct	 3	2:00s	0	GMT
-# S.R.&O. 1922, No. 264
-Rule	GB-Eire	1922	only	-	Mar	26	2:00s	1:00	BST
-Rule	GB-Eire	1922	only	-	Oct	 8	2:00s	0	GMT
-# The Summer Time Act, 1922
-Rule	GB-Eire	1923	only	-	Apr	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1923	1924	-	Sep	Sun>=16	2:00s	0	GMT
-Rule	GB-Eire	1924	only	-	Apr	Sun>=9	2:00s	1:00	BST
-Rule	GB-Eire	1925	1926	-	Apr	Sun>=16	2:00s	1:00	BST
-# The Summer Time Act, 1925
-Rule	GB-Eire	1925	1938	-	Oct	Sun>=2	2:00s	0	GMT
-Rule	GB-Eire	1927	only	-	Apr	Sun>=9	2:00s	1:00	BST
-Rule	GB-Eire	1928	1929	-	Apr	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1930	only	-	Apr	Sun>=9	2:00s	1:00	BST
-Rule	GB-Eire	1931	1932	-	Apr	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1933	only	-	Apr	Sun>=9	2:00s	1:00	BST
-Rule	GB-Eire	1934	only	-	Apr	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1935	only	-	Apr	Sun>=9	2:00s	1:00	BST
-Rule	GB-Eire	1936	1937	-	Apr	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1938	only	-	Apr	Sun>=9	2:00s	1:00	BST
-Rule	GB-Eire	1939	only	-	Apr	Sun>=16	2:00s	1:00	BST
-# S.R.&O. 1939, No. 1379
-Rule	GB-Eire	1939	only	-	Nov	Sun>=16	2:00s	0	GMT
-# S.R.&O. 1940, No. 172 and No. 1883
-Rule	GB-Eire	1940	only	-	Feb	Sun>=23	2:00s	1:00	BST
-# S.R.&O. 1941, No. 476
-Rule	GB-Eire	1941	only	-	May	Sun>=2	1:00s	2:00	BDST
-Rule	GB-Eire	1941	1943	-	Aug	Sun>=9	1:00s	1:00	BST
-# S.R.&O. 1942, No. 506
-Rule	GB-Eire	1942	1944	-	Apr	Sun>=2	1:00s	2:00	BDST
-# S.R.&O. 1944, No. 932
-Rule	GB-Eire	1944	only	-	Sep	Sun>=16	1:00s	1:00	BST
-# S.R.&O. 1945, No. 312
-Rule	GB-Eire	1945	only	-	Apr	Mon>=2	1:00s	2:00	BDST
-Rule	GB-Eire	1945	only	-	Jul	Sun>=9	1:00s	1:00	BST
-# S.R.&O. 1945, No. 1208
-Rule	GB-Eire	1945	1946	-	Oct	Sun>=2	2:00s	0	GMT
-Rule	GB-Eire	1946	only	-	Apr	Sun>=9	2:00s	1:00	BST
-# The Summer Time Act, 1947
-Rule	GB-Eire	1947	only	-	Mar	16	2:00s	1:00	BST
-Rule	GB-Eire	1947	only	-	Apr	13	1:00s	2:00	BDST
-Rule	GB-Eire	1947	only	-	Aug	10	1:00s	1:00	BST
-Rule	GB-Eire	1947	only	-	Nov	 2	2:00s	0	GMT
-# Summer Time Order, 1948 (S.I. 1948/495)
-Rule	GB-Eire	1948	only	-	Mar	14	2:00s	1:00	BST
-Rule	GB-Eire	1948	only	-	Oct	31	2:00s	0	GMT
-# Summer Time Order, 1949 (S.I. 1949/373)
-Rule	GB-Eire	1949	only	-	Apr	 3	2:00s	1:00	BST
-Rule	GB-Eire	1949	only	-	Oct	30	2:00s	0	GMT
-# Summer Time Order, 1950 (S.I. 1950/518)
-# Summer Time Order, 1951 (S.I. 1951/430)
-# Summer Time Order, 1952 (S.I. 1952/451)
-Rule	GB-Eire	1950	1952	-	Apr	Sun>=14	2:00s	1:00	BST
-Rule	GB-Eire	1950	1952	-	Oct	Sun>=21	2:00s	0	GMT
-# revert to the rules of the Summer Time Act, 1925
-Rule	GB-Eire	1953	only	-	Apr	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1953	1960	-	Oct	Sun>=2	2:00s	0	GMT
-Rule	GB-Eire	1954	only	-	Apr	Sun>=9	2:00s	1:00	BST
-Rule	GB-Eire	1955	1956	-	Apr	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1957	only	-	Apr	Sun>=9	2:00s	1:00	BST
-Rule	GB-Eire	1958	1959	-	Apr	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1960	only	-	Apr	Sun>=9	2:00s	1:00	BST
-# Summer Time Order, 1961 (S.I. 1961/71)
-# Summer Time (1962) Order, 1961 (S.I. 1961/2465)
-# Summer Time Order, 1963 (S.I. 1963/81)
-Rule	GB-Eire	1961	1963	-	Mar	lastSun	2:00s	1:00	BST
-Rule	GB-Eire	1961	1968	-	Oct	Sun>=23	2:00s	0	GMT
-# Summer Time (1964) Order, 1963 (S.I. 1963/2101)
-# Summer Time Order, 1964 (S.I. 1964/1201)
-# Summer Time Order, 1967 (S.I. 1967/1148)
-Rule	GB-Eire	1964	1967	-	Mar	Sun>=19	2:00s	1:00	BST
-# Summer Time Order, 1968 (S.I. 1968/117)
-Rule	GB-Eire	1968	only	-	Feb	18	2:00s	1:00	BST
-# The British Standard Time Act, 1968
-#	(no summer time)
-# The Summer Time Act, 1972
-Rule	GB-Eire	1972	1980	-	Mar	Sun>=16	2:00s	1:00	BST
-Rule	GB-Eire	1972	1980	-	Oct	Sun>=23	2:00s	0	GMT
-# Summer Time Order, 1980 (S.I. 1980/1089)
-# Summer Time Order, 1982 (S.I. 1982/1673)
-# Summer Time Order, 1986 (S.I. 1986/223)
-# Summer Time Order, 1988 (S.I. 1988/931)
-Rule	GB-Eire	1981	1995	-	Mar	lastSun	1:00u	1:00	BST
-Rule	GB-Eire 1981	1989	-	Oct	Sun>=23	1:00u	0	GMT
-# Summer Time Order, 1989 (S.I. 1989/985)
-# Summer Time Order, 1992 (S.I. 1992/1729)
-# Summer Time Order 1994 (S.I. 1994/2798)
-Rule	GB-Eire 1990	1995	-	Oct	Sun>=22	1:00u	0	GMT
-# Summer Time Order 1997 (S.I. 1997/2982)
-# See EU for rules starting in 1996.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/London	-0:01:15 -	LMT	1847 Dec  1 0:00s
-			 0:00	GB-Eire	%s	1968 Oct 27
-			 1:00	-	BST	1971 Oct 31 2:00u
-			 0:00	GB-Eire	%s	1996
-			 0:00	EU	GMT/BST
-Link	Europe/London	Europe/Jersey
-Link	Europe/London	Europe/Guernsey
-Link	Europe/London	Europe/Isle_of_Man
-Zone	Europe/Dublin	-0:25:00 -	LMT	1880 Aug  2
-			-0:25:21 -	DMT	1916 May 21 2:00
-			-0:25:21 1:00	IST	1916 Oct  1 2:00s
-			 0:00	GB-Eire	%s	1921 Dec  6 # independence
-			 0:00	GB-Eire	GMT/IST	1940 Feb 25 2:00
-			 0:00	1:00	IST	1946 Oct  6 2:00
-			 0:00	-	GMT	1947 Mar 16 2:00
-			 0:00	1:00	IST	1947 Nov  2 2:00
-			 0:00	-	GMT	1948 Apr 18 2:00
-			 0:00	GB-Eire	GMT/IST	1968 Oct 27
-			 1:00	-	IST	1971 Oct 31 2:00u
-			 0:00	GB-Eire	GMT/IST	1996
-			 0:00	EU	GMT/IST
-
-###############################################################################
-
-# Europe
-
-# EU rules are for the European Union, previously known as the EC, EEC,
-# Common Market, etc.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	EU	1977	1980	-	Apr	Sun>=1	 1:00u	1:00	S
-Rule	EU	1977	only	-	Sep	lastSun	 1:00u	0	-
-Rule	EU	1978	only	-	Oct	 1	 1:00u	0	-
-Rule	EU	1979	1995	-	Sep	lastSun	 1:00u	0	-
-Rule	EU	1981	max	-	Mar	lastSun	 1:00u	1:00	S
-Rule	EU	1996	max	-	Oct	lastSun	 1:00u	0	-
-# The most recent directive covers the years starting in 2002.  See:
-# <a href="http://europa.eu.int/eur-lex/en/lif/dat/2000/en_300L0084.html">
-# Directive 2000/84/EC of the European Parliament and of the Council
-# of 19 January 2001 on summer-time arrangements.
-# </a>
-
-# W-Eur differs from EU only in that W-Eur uses standard time.
-Rule	W-Eur	1977	1980	-	Apr	Sun>=1	 1:00s	1:00	S
-Rule	W-Eur	1977	only	-	Sep	lastSun	 1:00s	0	-
-Rule	W-Eur	1978	only	-	Oct	 1	 1:00s	0	-
-Rule	W-Eur	1979	1995	-	Sep	lastSun	 1:00s	0	-
-Rule	W-Eur	1981	max	-	Mar	lastSun	 1:00s	1:00	S
-Rule	W-Eur	1996	max	-	Oct	lastSun	 1:00s	0	-
-
-# Older C-Eur rules are for convenience in the tables.
-# From 1977 on, C-Eur differs from EU only in that C-Eur uses standard time.
-Rule	C-Eur	1916	only	-	Apr	30	23:00	1:00	S
-Rule	C-Eur	1916	only	-	Oct	 1	 1:00	0	-
-Rule	C-Eur	1917	1918	-	Apr	Mon>=15	 2:00s	1:00	S
-Rule	C-Eur	1917	1918	-	Sep	Mon>=15	 2:00s	0	-
-Rule	C-Eur	1940	only	-	Apr	 1	 2:00s	1:00	S
-Rule	C-Eur	1942	only	-	Nov	 2	 2:00s	0	-
-Rule	C-Eur	1943	only	-	Mar	29	 2:00s	1:00	S
-Rule	C-Eur	1943	only	-	Oct	 4	 2:00s	0	-
-Rule	C-Eur	1944	1945	-	Apr	Mon>=1	 2:00s	1:00	S
-# Whitman gives 1944 Oct 7; go with Shanks & Pottenger.
-Rule	C-Eur	1944	only	-	Oct	 2	 2:00s	0	-
-# From Jesper Norgaard Welen (2008-07-13):
-#
-# I found what is probably a typo of 2:00 which should perhaps be 2:00s
-# in the C-Eur rule from tz database version 2008d (this part was
-# corrected in version 2008d). The circumstancial evidence is simply the
-# tz database itself, as seen below:
-#
-# Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15  0:01
-#    0:00 France WE%sT 1945 Sep 16  3:00
-#
-# Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
-#    0:00 France WE%sT 1945 Sep 16 3:00
-#
-# Zone Europe/Belgrade 1:22:00 - LMT 1884
-#    1:00 1:00 CEST 1945 Sep 16  2:00s
-#
-# Rule France 1945 only - Sep 16  3:00 0 -
-# Rule Belgium 1945 only - Sep 16  2:00s 0 -
-# Rule Neth 1945 only - Sep 16 2:00s 0 -
-#
-# The rule line to be changed is:
-#
-# Rule C-Eur 1945 only - Sep 16  2:00 0 -
-#
-# It seems that Paris, Monaco, Rule France, Rule Belgium all agree on
-# 2:00 standard time, e.g. 3:00 local time.  However there are no
-# countries that use C-Eur rules in September 1945, so the only items
-# affected are apparently these ficticious zones that translates acronyms
-# CET and MET:
-#
-# Zone CET  1:00 C-Eur CE%sT
-# Zone MET  1:00 C-Eur ME%sT
-#
-# It this is right then the corrected version would look like:
-#
-# Rule C-Eur 1945 only - Sep 16  2:00s 0 -
-#
-# A small step for mankind though 8-)
-Rule	C-Eur	1945	only	-	Sep	16	 2:00s	0	-
-Rule	C-Eur	1977	1980	-	Apr	Sun>=1	 2:00s	1:00	S
-Rule	C-Eur	1977	only	-	Sep	lastSun	 2:00s	0	-
-Rule	C-Eur	1978	only	-	Oct	 1	 2:00s	0	-
-Rule	C-Eur	1979	1995	-	Sep	lastSun	 2:00s	0	-
-Rule	C-Eur	1981	max	-	Mar	lastSun	 2:00s	1:00	S
-Rule	C-Eur	1996	max	-	Oct	lastSun	 2:00s	0	-
-
-# E-Eur differs from EU only in that E-Eur switches at midnight local time.
-Rule	E-Eur	1977	1980	-	Apr	Sun>=1	 0:00	1:00	S
-Rule	E-Eur	1977	only	-	Sep	lastSun	 0:00	0	-
-Rule	E-Eur	1978	only	-	Oct	 1	 0:00	0	-
-Rule	E-Eur	1979	1995	-	Sep	lastSun	 0:00	0	-
-Rule	E-Eur	1981	max	-	Mar	lastSun	 0:00	1:00	S
-Rule	E-Eur	1996	max	-	Oct	lastSun	 0:00	0	-
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Russia	1917	only	-	Jul	 1	23:00	1:00	MST	# Moscow Summer Time
-Rule	Russia	1917	only	-	Dec	28	 0:00	0	MMT	# Moscow Mean Time
-Rule	Russia	1918	only	-	May	31	22:00	2:00	MDST	# Moscow Double Summer Time
-Rule	Russia	1918	only	-	Sep	16	 1:00	1:00	MST
-Rule	Russia	1919	only	-	May	31	23:00	2:00	MDST
-Rule	Russia	1919	only	-	Jul	 1	 2:00	1:00	S
-Rule	Russia	1919	only	-	Aug	16	 0:00	0	-
-Rule	Russia	1921	only	-	Feb	14	23:00	1:00	S
-Rule	Russia	1921	only	-	Mar	20	23:00	2:00	M # Midsummer
-Rule	Russia	1921	only	-	Sep	 1	 0:00	1:00	S
-Rule	Russia	1921	only	-	Oct	 1	 0:00	0	-
-# Act No.925 of the Council of Ministers of the USSR (1980-10-24):
-Rule	Russia	1981	1984	-	Apr	 1	 0:00	1:00	S
-Rule	Russia	1981	1983	-	Oct	 1	 0:00	0	-
-# Act No.967 of the Council of Ministers of the USSR (1984-09-13), repeated in
-# Act No.227 of the Council of Ministers of the USSR (1989-03-14):
-Rule	Russia	1984	1991	-	Sep	lastSun	 2:00s	0	-
-Rule	Russia	1985	1991	-	Mar	lastSun	 2:00s	1:00	S
-#
-Rule	Russia	1992	only	-	Mar	lastSat	 23:00	1:00	S
-Rule	Russia	1992	only	-	Sep	lastSat	 23:00	0	-
-Rule	Russia	1993	max	-	Mar	lastSun	 2:00s	1:00	S
-Rule	Russia	1993	1995	-	Sep	lastSun	 2:00s	0	-
-Rule	Russia	1996	max	-	Oct	lastSun	 2:00s	0	-
-
-# These are for backward compatibility with older versions.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	WET		0:00	EU	WE%sT
-Zone	CET		1:00	C-Eur	CE%sT
-Zone	MET		1:00	C-Eur	ME%sT
-Zone	EET		2:00	EU	EE%sT
-
-# Previous editions of this database used abbreviations like MET DST
-# for Central European Summer Time, but this didn't agree with common usage.
-
-# From Markus Kuhn (1996-07-12):
-# The official German names ... are
-#
-#	Mitteleuropaeische Zeit (MEZ)         = UTC+01:00
-#	Mitteleuropaeische Sommerzeit (MESZ)  = UTC+02:00
-#
-# as defined in the German Time Act (Gesetz ueber die Zeitbestimmung (ZeitG),
-# 1978-07-25, Bundesgesetzblatt, Jahrgang 1978, Teil I, S. 1110-1111)....
-# I wrote ... to the German Federal Physical-Technical Institution
-#
-#	Physikalisch-Technische Bundesanstalt (PTB)
-#	Laboratorium 4.41 "Zeiteinheit"
-#	Postfach 3345
-#	D-38023 Braunschweig
-#	phone: +49 531 592-0
-#
-# ... I received today an answer letter from Dr. Peter Hetzel, head of the PTB
-# department for time and frequency transmission.  He explained that the
-# PTB translates MEZ and MESZ into English as
-#
-#	Central European Time (CET)         = UTC+01:00
-#	Central European Summer Time (CEST) = UTC+02:00
-
-
-# Albania
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Albania	1940	only	-	Jun	16	0:00	1:00	S
-Rule	Albania	1942	only	-	Nov	 2	3:00	0	-
-Rule	Albania	1943	only	-	Mar	29	2:00	1:00	S
-Rule	Albania	1943	only	-	Apr	10	3:00	0	-
-Rule	Albania	1974	only	-	May	 4	0:00	1:00	S
-Rule	Albania	1974	only	-	Oct	 2	0:00	0	-
-Rule	Albania	1975	only	-	May	 1	0:00	1:00	S
-Rule	Albania	1975	only	-	Oct	 2	0:00	0	-
-Rule	Albania	1976	only	-	May	 2	0:00	1:00	S
-Rule	Albania	1976	only	-	Oct	 3	0:00	0	-
-Rule	Albania	1977	only	-	May	 8	0:00	1:00	S
-Rule	Albania	1977	only	-	Oct	 2	0:00	0	-
-Rule	Albania	1978	only	-	May	 6	0:00	1:00	S
-Rule	Albania	1978	only	-	Oct	 1	0:00	0	-
-Rule	Albania	1979	only	-	May	 5	0:00	1:00	S
-Rule	Albania	1979	only	-	Sep	30	0:00	0	-
-Rule	Albania	1980	only	-	May	 3	0:00	1:00	S
-Rule	Albania	1980	only	-	Oct	 4	0:00	0	-
-Rule	Albania	1981	only	-	Apr	26	0:00	1:00	S
-Rule	Albania	1981	only	-	Sep	27	0:00	0	-
-Rule	Albania	1982	only	-	May	 2	0:00	1:00	S
-Rule	Albania	1982	only	-	Oct	 3	0:00	0	-
-Rule	Albania	1983	only	-	Apr	18	0:00	1:00	S
-Rule	Albania	1983	only	-	Oct	 1	0:00	0	-
-Rule	Albania	1984	only	-	Apr	 1	0:00	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Tirane	1:19:20 -	LMT	1914
-			1:00	-	CET	1940 Jun 16
-			1:00	Albania	CE%sT	1984 Jul
-			1:00	EU	CE%sT
-
-# Andorra
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Andorra	0:06:04 -	LMT	1901
-			0:00	-	WET	1946 Sep 30
-			1:00	-	CET	1985 Mar 31 2:00
-			1:00	EU	CE%sT
-
-# Austria
-
-# From Paul Eggert (2006-03-22): Shanks & Pottenger give 1918-06-16 and
-# 1945-11-18, but the Austrian Federal Office of Metrology and
-# Surveying (BEV) gives 1918-09-16 and for Vienna gives the "alleged"
-# date of 1945-04-12 with no time.  For the 1980-04-06 transition
-# Shanks & Pottenger give 02:00, the BEV 00:00.  Go with the BEV,
-# and guess 02:00 for 1945-04-12.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Austria	1920	only	-	Apr	 5	2:00s	1:00	S
-Rule	Austria	1920	only	-	Sep	13	2:00s	0	-
-Rule	Austria	1946	only	-	Apr	14	2:00s	1:00	S
-Rule	Austria	1946	1948	-	Oct	Sun>=1	2:00s	0	-
-Rule	Austria	1947	only	-	Apr	 6	2:00s	1:00	S
-Rule	Austria	1948	only	-	Apr	18	2:00s	1:00	S
-Rule	Austria	1980	only	-	Apr	 6	0:00	1:00	S
-Rule	Austria	1980	only	-	Sep	28	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Vienna	1:05:20 -	LMT	1893 Apr
-			1:00	C-Eur	CE%sT	1920
-			1:00	Austria	CE%sT	1940 Apr  1 2:00s
-			1:00	C-Eur	CE%sT	1945 Apr  2 2:00s
-			1:00	1:00	CEST	1945 Apr 12 2:00s
-			1:00	-	CET	1946
-			1:00	Austria	CE%sT	1981
-			1:00	EU	CE%sT
-
-# Belarus
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Minsk	1:50:16 -	LMT	1880
-			1:50	-	MMT	1924 May 2 # Minsk Mean Time
-			2:00	-	EET	1930 Jun 21
-			3:00	-	MSK	1941 Jun 28
-			1:00	C-Eur	CE%sT	1944 Jul  3
-			3:00	Russia	MSK/MSD	1990
-			3:00	-	MSK	1991 Mar 31 2:00s
-			2:00	1:00	EEST	1991 Sep 29 2:00s
-			2:00	-	EET	1992 Mar 29 0:00s
-			2:00	1:00	EEST	1992 Sep 27 0:00s
-			2:00	Russia	EE%sT
-
-# Belgium
-#
-# From Paul Eggert (1997-07-02):
-# Entries from 1918 through 1991 are taken from:
-#	Annuaire de L'Observatoire Royal de Belgique,
-#	Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe annee, 1991
-#	(Imprimerie HAYEZ, s.p.r.l., Rue Fin, 4, 1080 BRUXELLES, MCMXC),
-#	pp 8-9.
-# LMT before 1892 was 0:17:30, according to the official journal of Belgium:
-#	Moniteur Belge, Samedi 30 Avril 1892, N.121.
-# Thanks to Pascal Delmoitie for these references.
-# The 1918 rules are listed for completeness; they apply to unoccupied Belgium.
-# Assume Brussels switched to WET in 1918 when the armistice took effect.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Belgium	1918	only	-	Mar	 9	 0:00s	1:00	S
-Rule	Belgium	1918	1919	-	Oct	Sat>=1	23:00s	0	-
-Rule	Belgium	1919	only	-	Mar	 1	23:00s	1:00	S
-Rule	Belgium	1920	only	-	Feb	14	23:00s	1:00	S
-Rule	Belgium	1920	only	-	Oct	23	23:00s	0	-
-Rule	Belgium	1921	only	-	Mar	14	23:00s	1:00	S
-Rule	Belgium	1921	only	-	Oct	25	23:00s	0	-
-Rule	Belgium	1922	only	-	Mar	25	23:00s	1:00	S
-Rule	Belgium	1922	1927	-	Oct	Sat>=1	23:00s	0	-
-Rule	Belgium	1923	only	-	Apr	21	23:00s	1:00	S
-Rule	Belgium	1924	only	-	Mar	29	23:00s	1:00	S
-Rule	Belgium	1925	only	-	Apr	 4	23:00s	1:00	S
-# DSH writes that a royal decree of 1926-02-22 specified the Sun following 3rd
-# Sat in Apr (except if it's Easter, in which case it's one Sunday earlier),
-# to Sun following 1st Sat in Oct, and that a royal decree of 1928-09-15
-# changed the transition times to 02:00 GMT.
-Rule	Belgium	1926	only	-	Apr	17	23:00s	1:00	S
-Rule	Belgium	1927	only	-	Apr	 9	23:00s	1:00	S
-Rule	Belgium	1928	only	-	Apr	14	23:00s	1:00	S
-Rule	Belgium	1928	1938	-	Oct	Sun>=2	 2:00s	0	-
-Rule	Belgium	1929	only	-	Apr	21	 2:00s	1:00	S
-Rule	Belgium	1930	only	-	Apr	13	 2:00s	1:00	S
-Rule	Belgium	1931	only	-	Apr	19	 2:00s	1:00	S
-Rule	Belgium	1932	only	-	Apr	 3	 2:00s	1:00	S
-Rule	Belgium	1933	only	-	Mar	26	 2:00s	1:00	S
-Rule	Belgium	1934	only	-	Apr	 8	 2:00s	1:00	S
-Rule	Belgium	1935	only	-	Mar	31	 2:00s	1:00	S
-Rule	Belgium	1936	only	-	Apr	19	 2:00s	1:00	S
-Rule	Belgium	1937	only	-	Apr	 4	 2:00s	1:00	S
-Rule	Belgium	1938	only	-	Mar	27	 2:00s	1:00	S
-Rule	Belgium	1939	only	-	Apr	16	 2:00s	1:00	S
-Rule	Belgium	1939	only	-	Nov	19	 2:00s	0	-
-Rule	Belgium	1940	only	-	Feb	25	 2:00s	1:00	S
-Rule	Belgium	1944	only	-	Sep	17	 2:00s	0	-
-Rule	Belgium	1945	only	-	Apr	 2	 2:00s	1:00	S
-Rule	Belgium	1945	only	-	Sep	16	 2:00s	0	-
-Rule	Belgium	1946	only	-	May	19	 2:00s	1:00	S
-Rule	Belgium	1946	only	-	Oct	 7	 2:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Brussels	0:17:30 -	LMT	1880
-			0:17:30	-	BMT	1892 May  1 12:00 # Brussels MT
-			0:00	-	WET	1914 Nov  8
-			1:00	-	CET	1916 May  1  0:00
-			1:00	C-Eur	CE%sT	1918 Nov 11 11:00u
-			0:00	Belgium	WE%sT	1940 May 20  2:00s
-			1:00	C-Eur	CE%sT	1944 Sep  3
-			1:00	Belgium	CE%sT	1977
-			1:00	EU	CE%sT
-
-# Bosnia and Herzegovina
-# see Serbia
-
-# Bulgaria
-#
-# From Plamen Simenov via Steffen Thorsen (1999-09-09):
-# A document of Government of Bulgaria (No.94/1997) says:
-# EET --> EETDST is in 03:00 Local time in last Sunday of March ...
-# EETDST --> EET is in 04:00 Local time in last Sunday of October
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Bulg	1979	only	-	Mar	31	23:00	1:00	S
-Rule	Bulg	1979	only	-	Oct	 1	 1:00	0	-
-Rule	Bulg	1980	1982	-	Apr	Sat>=1	23:00	1:00	S
-Rule	Bulg	1980	only	-	Sep	29	 1:00	0	-
-Rule	Bulg	1981	only	-	Sep	27	 2:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Sofia	1:33:16 -	LMT	1880
-			1:56:56	-	IMT	1894 Nov 30 # Istanbul MT?
-			2:00	-	EET	1942 Nov  2  3:00
-			1:00	C-Eur	CE%sT	1945
-			1:00	-	CET	1945 Apr 2 3:00
-			2:00	-	EET	1979 Mar 31 23:00
-			2:00	Bulg	EE%sT	1982 Sep 26  2:00
-			2:00	C-Eur	EE%sT	1991
-			2:00	E-Eur	EE%sT	1997
-			2:00	EU	EE%sT
-
-# Croatia
-# see Serbia
-
-# Cyprus
-# Please see the `asia' file for Asia/Nicosia.
-
-# Czech Republic
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Czech	1945	only	-	Apr	 8	2:00s	1:00	S
-Rule	Czech	1945	only	-	Nov	18	2:00s	0	-
-Rule	Czech	1946	only	-	May	 6	2:00s	1:00	S
-Rule	Czech	1946	1949	-	Oct	Sun>=1	2:00s	0	-
-Rule	Czech	1947	only	-	Apr	20	2:00s	1:00	S
-Rule	Czech	1948	only	-	Apr	18	2:00s	1:00	S
-Rule	Czech	1949	only	-	Apr	 9	2:00s	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Prague	0:57:44 -	LMT	1850
-			0:57:44	-	PMT	1891 Oct     # Prague Mean Time
-			1:00	C-Eur	CE%sT	1944 Sep 17 2:00s
-			1:00	Czech	CE%sT	1979
-			1:00	EU	CE%sT
-
-# Denmark, Faroe Islands, and Greenland
-
-# From Jesper Norgaard Welen (2005-04-26):
-# http://www.hum.aau.dk/~poe/tid/tine/DanskTid.htm says that the law
-# [introducing standard time] was in effect from 1894-01-01....
-# The page http://www.retsinfo.dk/_GETDOCI_/ACCN/A18930008330-REGL
-# confirms this, and states that the law was put forth 1893-03-29.
-#
-# The EU treaty with effect from 1973:
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19722110030-REGL
-#
-# This provoked a new law from 1974 to make possible summer time changes
-# in subsequenet decrees with the law
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19740022330-REGL
-#
-# It seems however that no decree was set forward until 1980.  I have
-# not found any decree, but in another related law, the effecting DST
-# changes are stated explicitly to be from 1980-04-06 at 02:00 to
-# 1980-09-28 at 02:00.  If this is true, this differs slightly from
-# the EU rule in that DST runs to 02:00, not 03:00.  We don't know
-# when Denmark began using the EU rule correctly, but we have only
-# confirmation of the 1980-time, so I presume it was correct in 1981:
-# The law is about the management of the extra hour, concerning
-# working hours reported and effect on obligatory-rest rules (which
-# was suspended on that night):
-# http://www.retsinfo.dk/_GETDOCI_/ACCN/C19801120554-REGL
-
-# From Jesper Norgaard Welen (2005-06-11):
-# The Herning Folkeblad (1980-09-26) reported that the night between
-# Saturday and Sunday the clock is set back from three to two.
-
-# From Paul Eggert (2005-06-11):
-# Hence the "02:00" of the 1980 law refers to standard time, not
-# wall-clock time, and so the EU rules were in effect in 1980.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Denmark	1916	only	-	May	14	23:00	1:00	S
-Rule	Denmark	1916	only	-	Sep	30	23:00	0	-
-Rule	Denmark	1940	only	-	May	15	 0:00	1:00	S
-Rule	Denmark	1945	only	-	Apr	 2	 2:00s	1:00	S
-Rule	Denmark	1945	only	-	Aug	15	 2:00s	0	-
-Rule	Denmark	1946	only	-	May	 1	 2:00s	1:00	S
-Rule	Denmark	1946	only	-	Sep	 1	 2:00s	0	-
-Rule	Denmark	1947	only	-	May	 4	 2:00s	1:00	S
-Rule	Denmark	1947	only	-	Aug	10	 2:00s	0	-
-Rule	Denmark	1948	only	-	May	 9	 2:00s	1:00	S
-Rule	Denmark	1948	only	-	Aug	 8	 2:00s	0	-
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Europe/Copenhagen	 0:50:20 -	LMT	1890
-			 0:50:20 -	CMT	1894 Jan  1 # Copenhagen MT
-			 1:00	Denmark	CE%sT	1942 Nov  2 2:00s
-			 1:00	C-Eur	CE%sT	1945 Apr  2 2:00
-			 1:00	Denmark	CE%sT	1980
-			 1:00	EU	CE%sT
-Zone Atlantic/Faroe	-0:27:04 -	LMT	1908 Jan 11	# Torshavn
-			 0:00	-	WET	1981
-			 0:00	EU	WE%sT
-#
-# From Paul Eggert (2004-10-31):
-# During World War II, Germany maintained secret manned weather stations in
-# East Greenland and Franz Josef Land, but we don't know their time zones.
-# My source for this is Wilhelm Dege's book mentioned under Svalbard.
-#
-# From Paul Eggert (2006-03-22):
-# Greenland joined the EU as part of Denmark, obtained home rule on 1979-05-01,
-# and left the EU on 1985-02-01.  It therefore should have been using EU
-# rules at least through 1984.  Shanks & Pottenger say Scoresbysund and Godthab
-# used C-Eur rules after 1980, but IATA SSIM (1991/1996) says they use EU
-# rules since at least 1991.  Assume EU rules since 1980.
-
-# From Gwillin Law (2001-06-06), citing
-# <http://www.statkart.no/efs/efshefter/2001/efs5-2001.pdf> (2001-03-15),
-# and with translations corrected by Steffen Thorsen:
-#
-# Greenland has four local times, and the relation to UTC
-# is according to the following time line:
-#
-# The military zone near Thule	UTC-4
-# Standard Greenland time	UTC-3
-# Scoresbysund			UTC-1
-# Danmarkshavn			UTC
-#
-# In the military area near Thule and in Danmarkshavn DST will not be
-# introduced.
-
-# From Rives McDow (2001-11-01):
-#
-# I correspond regularly with the Dansk Polarcenter, and wrote them at
-# the time to clarify the situation in Thule.  Unfortunately, I have
-# not heard back from them regarding my recent letter.  [But I have
-# info from earlier correspondence.]
-#
-# According to the center, a very small local time zone around Thule
-# Air Base keeps the time according to UTC-4, implementing daylight
-# savings using North America rules, changing the time at 02:00 local time....
-#
-# The east coast of Greenland north of the community of Scoresbysund
-# uses UTC in the same way as in Iceland, year round, with no dst.
-# There are just a few stations on this coast, including the
-# Danmarkshavn ICAO weather station mentioned in your September 29th
-# email.  The other stations are two sledge patrol stations in
-# Mestersvig and Daneborg, the air force base at Station Nord, and the
-# DPC research station at Zackenberg.
-#
-# Scoresbysund and two small villages nearby keep time UTC-1 and use
-# the same daylight savings time period as in West Greenland (Godthab).
-#
-# The rest of Greenland, including Godthab (this area, although it
-# includes central Greenland, is known as west Greenland), keeps time
-# UTC-3, with daylight savings methods according to European rules.
-#
-# It is common procedure to use UTC 0 in the wilderness of East and
-# North Greenland, because it is mainly Icelandic aircraft operators
-# maintaining traffic in these areas.  However, the official status of
-# this area is that it sticks with Godthab time.  This area might be
-# considered a dual time zone in some respects because of this.
-
-# From Rives McDow (2001-11-19):
-# I heard back from someone stationed at Thule; the time change took place
-# there at 2:00 AM.
-
-# From Paul Eggert (2006-03-22):
-# From 1997 on the CIA map shows Danmarkshavn on GMT;
-# the 1995 map as like Godthab.
-# For lack of better info, assume they were like Godthab before 1996.
-# startkart.no says Thule does not observe DST, but this is clearly an error,
-# so go with Shanks & Pottenger for Thule transitions until this year.
-# For 2007 on assume Thule will stay in sync with US DST rules.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Thule	1991	1992	-	Mar	lastSun	2:00	1:00	D
-Rule	Thule	1991	1992	-	Sep	lastSun	2:00	0	S
-Rule	Thule	1993	2006	-	Apr	Sun>=1	2:00	1:00	D
-Rule	Thule	1993	2006	-	Oct	lastSun	2:00	0	S
-Rule	Thule	2007	max	-	Mar	Sun>=8	2:00	1:00	D
-Rule	Thule	2007	max	-	Nov	Sun>=1	2:00	0	S
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Danmarkshavn -1:14:40 -	LMT	1916 Jul 28
-			-3:00	-	WGT	1980 Apr  6 2:00
-			-3:00	EU	WG%sT	1996
-			0:00	-	GMT
-Zone America/Scoresbysund -1:27:52 -	LMT	1916 Jul 28 # Ittoqqortoormiit
-			-2:00	-	CGT	1980 Apr  6 2:00
-			-2:00	C-Eur	CG%sT	1981 Mar 29
-			-1:00	EU	EG%sT
-Zone America/Godthab	-3:26:56 -	LMT	1916 Jul 28 # Nuuk
-			-3:00	-	WGT	1980 Apr  6 2:00
-			-3:00	EU	WG%sT
-Zone America/Thule	-4:35:08 -	LMT	1916 Jul 28 # Pituffik air base
-			-4:00	Thule	A%sT
-
-# Estonia
-# From Peter Ilieve (1994-10-15):
-# A relative in Tallinn confirms the accuracy of the data for 1989 onwards
-# [through 1994] and gives the legal authority for it,
-# a regulation of the Government of Estonia, No. 111 of 1989....
-#
-# From Peter Ilieve (1996-10-28):
-# [IATA SSIM (1992/1996) claims that the Baltic republics switch at 01:00s,
-# but a relative confirms that Estonia still switches at 02:00s, writing:]
-# ``I do not [know] exactly but there are some little different
-# (confusing) rules for International Air and Railway Transport Schedules
-# conversion in Sunday connected with end of summer time in Estonia....
-# A discussion is running about the summer time efficiency and effect on
-# human physiology.  It seems that Estonia maybe will not change to
-# summer time next spring.''
-
-# From Peter Ilieve (1998-11-04), heavily edited:
-# <a href="http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390">
-# The 1998-09-22 Estonian time law
-# </a>
-# refers to the Eighth Directive and cites the association agreement between
-# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22--27, 120).
-#
-# I also asked [my relative] whether they use any standard abbreviation
-# for their standard and summer times. He says no, they use "suveaeg"
-# (summer time) and "talveaeg" (winter time).
-
-# From <a href="http://www.baltictimes.com/">The Baltic Times</a> (1999-09-09)
-# via Steffen Thorsen:
-# This year will mark the last time Estonia shifts to summer time,
-# a council of the ruling coalition announced Sept. 6....
-# But what this could mean for Estonia's chances of joining the European
-# Union are still unclear.  In 1994, the EU declared summer time compulsory
-# for all member states until 2001.  Brussels has yet to decide what to do
-# after that.
-
-# From Mart Oruaas (2000-01-29):
-# Regulation no. 301 (1999-10-12) obsoletes previous regulation
-# no. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
-# the year round.  The regulation is effective 1999-11-01.
-
-# From Toomas Soome (2002-02-21):
-# The Estonian government has changed once again timezone politics.
-# Now we are using again EU rules.
-#
-# From Urmet Jaanes (2002-03-28):
-# The legislative reference is Government decree No. 84 on 2002-02-21.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Tallinn	1:39:00	-	LMT	1880
-			1:39:00	-	TMT	1918 Feb # Tallinn Mean Time
-			1:00	C-Eur	CE%sT	1919 Jul
-			1:39:00	-	TMT	1921 May
-			2:00	-	EET	1940 Aug  6
-			3:00	-	MSK	1941 Sep 15
-			1:00	C-Eur	CE%sT	1944 Sep 22
-			3:00	Russia	MSK/MSD	1989 Mar 26 2:00s
-			2:00	1:00	EEST	1989 Sep 24 2:00s
-			2:00	C-Eur	EE%sT	1998 Sep 22
-			2:00	EU	EE%sT	1999 Nov  1
-			2:00	-	EET	2002 Feb 21
-			2:00	EU	EE%sT
-
-# Finland
-#
-# From Hannu Strang (1994-09-25 06:03:37 UTC):
-# Well, here in Helsinki we're just changing from summer time to regular one,
-# and it's supposed to change at 4am...
-#
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say Finland has switched at 02:00 standard time
-# since 1981.  Go with Strang instead.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Finland	1942	only	-	Apr	3	0:00	1:00	S
-Rule	Finland	1942	only	-	Oct	3	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Helsinki	1:39:52 -	LMT	1878 May 31
-			1:39:52	-	HMT	1921 May    # Helsinki Mean Time
-			2:00	Finland	EE%sT	1981 Mar 29 2:00
-			2:00	EU	EE%sT
-
-# Aaland Is
-Link	Europe/Helsinki	Europe/Mariehamn
-
-
-# France
-
-# From Ciro Discepolo (2000-12-20):
-#
-# Henri Le Corre, Regimes Horaires pour le monde entier, Editions
-# Traditionnelles - Paris 2 books, 1993
-#
-# Gabriel, Traite de l'heure dans le monde, Guy Tredaniel editeur,
-# Paris, 1991
-#
-# Francoise Gauquelin, Problemes de l'heure resolus en astrologie,
-# Guy tredaniel, Paris 1987
-
-
-#
-# Shank & Pottenger seem to use `24:00' ambiguously; resolve it with Whitman.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	France	1916	only	-	Jun	14	23:00s	1:00	S
-Rule	France	1916	1919	-	Oct	Sun>=1	23:00s	0	-
-Rule	France	1917	only	-	Mar	24	23:00s	1:00	S
-Rule	France	1918	only	-	Mar	 9	23:00s	1:00	S
-Rule	France	1919	only	-	Mar	 1	23:00s	1:00	S
-Rule	France	1920	only	-	Feb	14	23:00s	1:00	S
-Rule	France	1920	only	-	Oct	23	23:00s	0	-
-Rule	France	1921	only	-	Mar	14	23:00s	1:00	S
-Rule	France	1921	only	-	Oct	25	23:00s	0	-
-Rule	France	1922	only	-	Mar	25	23:00s	1:00	S
-# DSH writes that a law of 1923-05-24 specified 3rd Sat in Apr at 23:00 to 1st
-# Sat in Oct at 24:00; and that in 1930, because of Easter, the transitions
-# were Apr 12 and Oct 5.  Go with Shanks & Pottenger.
-Rule	France	1922	1938	-	Oct	Sat>=1	23:00s	0	-
-Rule	France	1923	only	-	May	26	23:00s	1:00	S
-Rule	France	1924	only	-	Mar	29	23:00s	1:00	S
-Rule	France	1925	only	-	Apr	 4	23:00s	1:00	S
-Rule	France	1926	only	-	Apr	17	23:00s	1:00	S
-Rule	France	1927	only	-	Apr	 9	23:00s	1:00	S
-Rule	France	1928	only	-	Apr	14	23:00s	1:00	S
-Rule	France	1929	only	-	Apr	20	23:00s	1:00	S
-Rule	France	1930	only	-	Apr	12	23:00s	1:00	S
-Rule	France	1931	only	-	Apr	18	23:00s	1:00	S
-Rule	France	1932	only	-	Apr	 2	23:00s	1:00	S
-Rule	France	1933	only	-	Mar	25	23:00s	1:00	S
-Rule	France	1934	only	-	Apr	 7	23:00s	1:00	S
-Rule	France	1935	only	-	Mar	30	23:00s	1:00	S
-Rule	France	1936	only	-	Apr	18	23:00s	1:00	S
-Rule	France	1937	only	-	Apr	 3	23:00s	1:00	S
-Rule	France	1938	only	-	Mar	26	23:00s	1:00	S
-Rule	France	1939	only	-	Apr	15	23:00s	1:00	S
-Rule	France	1939	only	-	Nov	18	23:00s	0	-
-Rule	France	1940	only	-	Feb	25	 2:00	1:00	S
-# The French rules for 1941-1944 were not used in Paris, but Shanks & Pottenger
-# write that they were used in Monaco and in many French locations.
-# Le Corre writes that the upper limit of the free zone was Arneguy, Orthez,
-# Mont-de-Marsan, Bazas, Langon, Lamotte-Montravel, Marouil, La
-# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Decartes,
-# Loches, Montrichard, Vierzon, Bourges, Moulins, Digoin,
-# Paray-le-Monial, Montceau-les-Mines, Chalons-sur-Saone, Arbois,
-# Dole, Morez, St-Claude, and Collognes (Haute-Savioe).
-Rule	France	1941	only	-	May	 5	 0:00	2:00	M # Midsummer
-# Shanks & Pottenger say this transition occurred at Oct 6 1:00,
-# but go with Denis Excoffier (1997-12-12),
-# who quotes the Ephemerides Astronomiques for 1998 from Bureau des Longitudes
-# as saying 5/10/41 22hUT.
-Rule	France	1941	only	-	Oct	 6	 0:00	1:00	S
-Rule	France	1942	only	-	Mar	 9	 0:00	2:00	M
-Rule	France	1942	only	-	Nov	 2	 3:00	1:00	S
-Rule	France	1943	only	-	Mar	29	 2:00	2:00	M
-Rule	France	1943	only	-	Oct	 4	 3:00	1:00	S
-Rule	France	1944	only	-	Apr	 3	 2:00	2:00	M
-Rule	France	1944	only	-	Oct	 8	 1:00	1:00	S
-Rule	France	1945	only	-	Apr	 2	 2:00	2:00	M
-Rule	France	1945	only	-	Sep	16	 3:00	0	-
-# Shanks & Pottenger give Mar 28 2:00 and Sep 26 3:00;
-# go with Excoffier's 28/3/76 0hUT and 25/9/76 23hUT.
-Rule	France	1976	only	-	Mar	28	 1:00	1:00	S
-Rule	France	1976	only	-	Sep	26	 1:00	0	-
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time, and Whitman 0:09:05,
-# but Howse quotes the actual French legislation as saying 0:09:21.
-# Go with Howse.  Howse writes that the time in France was officially based
-# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Paris	0:09:21 -	LMT	1891 Mar 15  0:01
-			0:09:21	-	PMT	1911 Mar 11  0:01  # Paris MT
-# Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
-			0:00	France	WE%sT	1940 Jun 14 23:00
-# Le Corre says Paris stuck with occupied-France time after the liberation;
-# go with Shanks & Pottenger.
-			1:00	C-Eur	CE%sT	1944 Aug 25
-			0:00	France	WE%sT	1945 Sep 16  3:00
-			1:00	France	CE%sT	1977
-			1:00	EU	CE%sT
-
-# Germany
-
-# From Markus Kuhn (1998-09-29):
-# The German time zone web site by the Physikalisch-Technische
-# Bundesanstalt contains DST information back to 1916.
-# [See tz-link.htm for the URL.]
-
-# From Joerg Schilling (2002-10-23):
-# In 1945, Berlin was switched to Moscow Summer time (GMT+4) by
-# <a href="http://www.dhm.de/lemo/html/biografien/BersarinNikolai/">
-# General [Nikolai] Bersarin</a>.
-
-# From Paul Eggert (2003-03-08):
-# <a href="http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf">
-# http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
-# </a>
-# says that Bersarin issued an order to use Moscow time on May 20.
-# However, Moscow did not observe daylight saving in 1945, so
-# this was equivalent to CEMT (GMT+3), not GMT+4.
-
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Germany	1946	only	-	Apr	14	2:00s	1:00	S
-Rule	Germany	1946	only	-	Oct	 7	2:00s	0	-
-Rule	Germany	1947	1949	-	Oct	Sun>=1	2:00s	0	-
-# http://www.ptb.de/de/org/4/44/441/salt.htm says the following transition
-# occurred at 3:00 MEZ, not the 2:00 MEZ given in Shanks & Pottenger.
-# Go with the PTB.
-Rule	Germany	1947	only	-	Apr	 6	3:00s	1:00	S
-Rule	Germany	1947	only	-	May	11	2:00s	2:00	M
-Rule	Germany	1947	only	-	Jun	29	3:00	1:00	S
-Rule	Germany	1948	only	-	Apr	18	2:00s	1:00	S
-Rule	Germany	1949	only	-	Apr	10	2:00s	1:00	S
-
-Rule SovietZone	1945	only	-	May	24	2:00	2:00	M # Midsummer
-Rule SovietZone	1945	only	-	Sep	24	3:00	1:00	S
-Rule SovietZone	1945	only	-	Nov	18	2:00s	0	-
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Berlin	0:53:28 -	LMT	1893 Apr
-			1:00	C-Eur	CE%sT	1945 May 24 2:00
-			1:00 SovietZone	CE%sT	1946
-			1:00	Germany	CE%sT	1980
-			1:00	EU	CE%sT
-
-# Georgia
-# Please see the "asia" file for Asia/Tbilisi.
-# Herodotus (Histories, IV.45) says Georgia north of the Phasis (now Rioni)
-# is in Europe.  Our reference location Tbilisi is in the Asian part.
-
-# Gibraltar
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Europe/Gibraltar	-0:21:24 -	LMT	1880 Aug  2 0:00s
-			0:00	GB-Eire	%s	1957 Apr 14 2:00
-			1:00	-	CET	1982
-			1:00	EU	CE%sT
-
-# Greece
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# Whitman gives 1932 Jul 5 - Nov 1; go with Shanks & Pottenger.
-Rule	Greece	1932	only	-	Jul	 7	0:00	1:00	S
-Rule	Greece	1932	only	-	Sep	 1	0:00	0	-
-# Whitman gives 1941 Apr 25 - ?; go with Shanks & Pottenger.
-Rule	Greece	1941	only	-	Apr	 7	0:00	1:00	S
-# Whitman gives 1942 Feb 2 - ?; go with Shanks & Pottenger.
-Rule	Greece	1942	only	-	Nov	 2	3:00	0	-
-Rule	Greece	1943	only	-	Mar	30	0:00	1:00	S
-Rule	Greece	1943	only	-	Oct	 4	0:00	0	-
-# Whitman gives 1944 Oct 3 - Oct 31; go with Shanks & Pottenger.
-Rule	Greece	1952	only	-	Jul	 1	0:00	1:00	S
-Rule	Greece	1952	only	-	Nov	 2	0:00	0	-
-Rule	Greece	1975	only	-	Apr	12	0:00s	1:00	S
-Rule	Greece	1975	only	-	Nov	26	0:00s	0	-
-Rule	Greece	1976	only	-	Apr	11	2:00s	1:00	S
-Rule	Greece	1976	only	-	Oct	10	2:00s	0	-
-Rule	Greece	1977	1978	-	Apr	Sun>=1	2:00s	1:00	S
-Rule	Greece	1977	only	-	Sep	26	2:00s	0	-
-Rule	Greece	1978	only	-	Sep	24	4:00	0	-
-Rule	Greece	1979	only	-	Apr	 1	9:00	1:00	S
-Rule	Greece	1979	only	-	Sep	29	2:00	0	-
-Rule	Greece	1980	only	-	Apr	 1	0:00	1:00	S
-Rule	Greece	1980	only	-	Sep	28	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Athens	1:34:52 -	LMT	1895 Sep 14
-			1:34:52	-	AMT	1916 Jul 28 0:01     # Athens MT
-			2:00	Greece	EE%sT	1941 Apr 30
-			1:00	Greece	CE%sT	1944 Apr  4
-			2:00	Greece	EE%sT	1981
-			# Shanks & Pottenger say it switched to C-Eur in 1981;
-			# go with EU instead, since Greece joined it on Jan 1.
-			2:00	EU	EE%sT
-
-# Hungary
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Hungary	1918	only	-	Apr	 1	 3:00	1:00	S
-Rule	Hungary	1918	only	-	Sep	29	 3:00	0	-
-Rule	Hungary	1919	only	-	Apr	15	 3:00	1:00	S
-Rule	Hungary	1919	only	-	Sep	15	 3:00	0	-
-Rule	Hungary	1920	only	-	Apr	 5	 3:00	1:00	S
-Rule	Hungary	1920	only	-	Sep	30	 3:00	0	-
-Rule	Hungary	1945	only	-	May	 1	23:00	1:00	S
-Rule	Hungary	1945	only	-	Nov	 3	 0:00	0	-
-Rule	Hungary	1946	only	-	Mar	31	 2:00s	1:00	S
-Rule	Hungary	1946	1949	-	Oct	Sun>=1	 2:00s	0	-
-Rule	Hungary	1947	1949	-	Apr	Sun>=4	 2:00s	1:00	S
-Rule	Hungary	1950	only	-	Apr	17	 2:00s	1:00	S
-Rule	Hungary	1950	only	-	Oct	23	 2:00s	0	-
-Rule	Hungary	1954	1955	-	May	23	 0:00	1:00	S
-Rule	Hungary	1954	1955	-	Oct	 3	 0:00	0	-
-Rule	Hungary	1956	only	-	Jun	Sun>=1	 0:00	1:00	S
-Rule	Hungary	1956	only	-	Sep	lastSun	 0:00	0	-
-Rule	Hungary	1957	only	-	Jun	Sun>=1	 1:00	1:00	S
-Rule	Hungary	1957	only	-	Sep	lastSun	 3:00	0	-
-Rule	Hungary	1980	only	-	Apr	 6	 1:00	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Budapest	1:16:20 -	LMT	1890 Oct
-			1:00	C-Eur	CE%sT	1918
-			1:00	Hungary	CE%sT	1941 Apr  6  2:00
-			1:00	C-Eur	CE%sT	1945
-			1:00	Hungary	CE%sT	1980 Sep 28  2:00s
-			1:00	EU	CE%sT
-
-# Iceland
-#
-# From Adam David (1993-11-06):
-# The name of the timezone in Iceland for system / mail / news purposes is GMT.
-#
-# (1993-12-05):
-# This material is paraphrased from the 1988 edition of the University of
-# Iceland Almanak.
-#
-# From January 1st, 1908 the whole of Iceland was standardised at 1 hour
-# behind GMT. Previously, local mean solar time was used in different parts
-# of Iceland, the almanak had been based on Reykjavik mean solar time which
-# was 1 hour and 28 minutes behind GMT.
-#
-# "first day of winter" referred to [below] means the first day of the 26 weeks
-# of winter, according to the old icelandic calendar that dates back to the
-# time the norsemen first settled Iceland.  The first day of winter is always
-# Saturday, but is not dependent on the Julian or Gregorian calendars.
-#
-# (1993-12-10):
-# I have a reference from the Oxford Icelandic-English dictionary for the
-# beginning of winter, which ties it to the ecclesiastical calendar (and thus
-# to the julian/gregorian calendar) over the period in question.
-#	the winter begins on the Saturday next before St. Luke's day
-#	(old style), or on St. Luke's day, if a Saturday.
-# St. Luke's day ought to be traceable from ecclesiastical sources. "old style"
-# might be a reference to the Julian calendar as opposed to Gregorian, or it
-# might mean something else (???).
-#
-# From Paul Eggert (2006-03-22):
-# The Iceland Almanak, Shanks & Pottenger, and Whitman disagree on many points.
-# We go with the Almanak, except for one claim from Shanks & Pottenger, namely
-# that Reykavik was 21W57 from 1837 to 1908, local mean time before that.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Iceland	1917	1918	-	Feb	19	23:00	1:00	S
-Rule	Iceland	1917	only	-	Oct	21	 1:00	0	-
-Rule	Iceland	1918	only	-	Nov	16	 1:00	0	-
-Rule	Iceland	1939	only	-	Apr	29	23:00	1:00	S
-Rule	Iceland	1939	only	-	Nov	29	 2:00	0	-
-Rule	Iceland	1940	only	-	Feb	25	 2:00	1:00	S
-Rule	Iceland	1940	only	-	Nov	 3	 2:00	0	-
-Rule	Iceland	1941	only	-	Mar	 2	 1:00s	1:00	S
-Rule	Iceland	1941	only	-	Nov	 2	 1:00s	0	-
-Rule	Iceland	1942	only	-	Mar	 8	 1:00s	1:00	S
-Rule	Iceland	1942	only	-	Oct	25	 1:00s	0	-
-# 1943-1946 - first Sunday in March until first Sunday in winter
-Rule	Iceland	1943	1946	-	Mar	Sun>=1	 1:00s	1:00	S
-Rule	Iceland	1943	1948	-	Oct	Sun>=22	 1:00s	0	-
-# 1947-1967 - first Sunday in April until first Sunday in winter
-Rule	Iceland	1947	1967	-	Apr	Sun>=1	 1:00s	1:00	S
-# 1949 Oct transition delayed by 1 week
-Rule	Iceland	1949	only	-	Oct	30	 1:00s	0	-
-Rule	Iceland	1950	1966	-	Oct	Sun>=22	 1:00s	0	-
-Rule	Iceland	1967	only	-	Oct	29	 1:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Atlantic/Reykjavik	-1:27:24 -	LMT	1837
-			-1:27:48 -	RMT	1908 # Reykjavik Mean Time?
-			-1:00	Iceland	IS%sT	1968 Apr 7 1:00s
-			 0:00	-	GMT
-
-# Italy
-#
-# From Paul Eggert (2001-03-06):
-# Sicily and Sardinia each had their own time zones from 1866 to 1893,
-# called Palermo Time (+00:53:28) and Cagliari Time (+00:36:32).
-# During World War II, German-controlled Italy used German time.
-# But these events all occurred before the 1970 cutoff,
-# so record only the time in Rome.
-#
-# From Paul Eggert (2006-03-22):
-# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
-# F. Pollastri
-# <a href="http://toi.iriti.cnr.it/uk/ienitlt.html">
-# Day-light Saving Time in Italy (2006-02-03)
-# </a>
-# (`FP' below), taken from an Italian National Electrotechnical Institute
-# publication. When the three sources disagree, guess who's right, as follows:
-#
-# year	FP	Shanks&P. (S)	Whitman (W)	Go with:
-# 1916	06-03	06-03 24:00	06-03 00:00	FP & W
-#	09-30	09-30 24:00	09-30 01:00	FP; guess 24:00s
-# 1917	04-01	03-31 24:00	03-31 00:00	FP & S
-#	09-30	09-29 24:00	09-30 01:00	FP & W
-# 1918	03-09	03-09 24:00	03-09 00:00	FP & S
-#	10-06	10-05 24:00	10-06 01:00	FP & W
-# 1919	03-01	03-01 24:00	03-01 00:00	FP & S
-#	10-04	10-04 24:00	10-04 01:00	FP; guess 24:00s
-# 1920	03-20	03-20 24:00	03-20 00:00	FP & S
-#	09-18	09-18 24:00	10-01 01:00	FP; guess 24:00s
-# 1944	04-02	04-03 02:00			S (see C-Eur)
-#	09-16	10-02 03:00			FP; guess 24:00s
-# 1945	09-14	09-16 24:00			FP; guess 24:00s
-# 1970	05-21	05-31 00:00			S
-#	09-20	09-27 00:00			S
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Italy	1916	only	-	Jun	 3	0:00s	1:00	S
-Rule	Italy	1916	only	-	Oct	 1	0:00s	0	-
-Rule	Italy	1917	only	-	Apr	 1	0:00s	1:00	S
-Rule	Italy	1917	only	-	Sep	30	0:00s	0	-
-Rule	Italy	1918	only	-	Mar	10	0:00s	1:00	S
-Rule	Italy	1918	1919	-	Oct	Sun>=1	0:00s	0	-
-Rule	Italy	1919	only	-	Mar	 2	0:00s	1:00	S
-Rule	Italy	1920	only	-	Mar	21	0:00s	1:00	S
-Rule	Italy	1920	only	-	Sep	19	0:00s	0	-
-Rule	Italy	1940	only	-	Jun	15	0:00s	1:00	S
-Rule	Italy	1944	only	-	Sep	17	0:00s	0	-
-Rule	Italy	1945	only	-	Apr	 2	2:00	1:00	S
-Rule	Italy	1945	only	-	Sep	15	0:00s	0	-
-Rule	Italy	1946	only	-	Mar	17	2:00s	1:00	S
-Rule	Italy	1946	only	-	Oct	 6	2:00s	0	-
-Rule	Italy	1947	only	-	Mar	16	0:00s	1:00	S
-Rule	Italy	1947	only	-	Oct	 5	0:00s	0	-
-Rule	Italy	1948	only	-	Feb	29	2:00s	1:00	S
-Rule	Italy	1948	only	-	Oct	 3	2:00s	0	-
-Rule	Italy	1966	1968	-	May	Sun>=22	0:00	1:00	S
-Rule	Italy	1966	1969	-	Sep	Sun>=22	0:00	0	-
-Rule	Italy	1969	only	-	Jun	 1	0:00	1:00	S
-Rule	Italy	1970	only	-	May	31	0:00	1:00	S
-Rule	Italy	1970	only	-	Sep	lastSun	0:00	0	-
-Rule	Italy	1971	1972	-	May	Sun>=22	0:00	1:00	S
-Rule	Italy	1971	only	-	Sep	lastSun	1:00	0	-
-Rule	Italy	1972	only	-	Oct	 1	0:00	0	-
-Rule	Italy	1973	only	-	Jun	 3	0:00	1:00	S
-Rule	Italy	1973	1974	-	Sep	lastSun	0:00	0	-
-Rule	Italy	1974	only	-	May	26	0:00	1:00	S
-Rule	Italy	1975	only	-	Jun	 1	0:00s	1:00	S
-Rule	Italy	1975	1977	-	Sep	lastSun	0:00s	0	-
-Rule	Italy	1976	only	-	May	30	0:00s	1:00	S
-Rule	Italy	1977	1979	-	May	Sun>=22	0:00s	1:00	S
-Rule	Italy	1978	only	-	Oct	 1	0:00s	0	-
-Rule	Italy	1979	only	-	Sep	30	0:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Rome	0:49:56 -	LMT	1866 Sep 22
-			0:49:56	-	RMT	1893 Nov  1 0:00s # Rome Mean
-			1:00	Italy	CE%sT	1942 Nov  2 2:00s
-			1:00	C-Eur	CE%sT	1944 Jul
-			1:00	Italy	CE%sT	1980
-			1:00	EU	CE%sT
-
-Link	Europe/Rome	Europe/Vatican
-Link	Europe/Rome	Europe/San_Marino
-
-# Latvia
-
-# From Liene Kanepe (1998-09-17):
-
-# I asked about this matter Scientific Secretary of the Institute of Astronomy
-# of The University of Latvia Dr. paed Mr. Ilgonis Vilks. I also searched the
-# correct data in juridical acts and I found some juridical documents about
-# changes in the counting of time in Latvia from 1981....
-#
-# Act No.35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
-# according to the Act No.925 of the Council of Ministers of USSR of 1980-10-24
-# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
-# the hands of the clock 1 hour forward on 1 April at 00:00 (GMT 31 March 21:00)
-# and 1 hour backward on the 1 October at 00:00 (GMT 30 September 20:00).
-#
-# Act No.592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
-# according to the Act No.967 of the Council of Ministers of USSR of 1984-09-13
-# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
-# the hands of the clock 1 hour forward on the last Sunday of March at 02:00
-# (GMT 23:00 on the previous day) and 1 hour backward on the last Sunday of
-# September at 03:00 (GMT 23:00 on the previous day).
-#
-# Act No.81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
-# according to the Act No.227 of the Council of Ministers of USSR of 1989-03-14
-# ...: since the last Sunday of March 1989 in Lithuanian SSR, Latvian SSR,
-# Estonian SSR and Kaliningrad region of Russian Federation all year round the
-# time of 2nd time zone (Moscow time minus one hour). On the territory of Latvia
-# transition to summer time is performed on the last Sunday of March at 02:00
-# (GMT 00:00), turning the hands of the clock 1 hour forward.  The end of
-# daylight saving time is performed on the last Sunday of September at 03:00
-# (GMT 00:00), turning the hands of the clock 1 hour backward. Exception is
-# 1989-03-26, when we must not turn the hands of the clock....
-#
-# The Regulations of the Cabinet of Ministers of the Republic of Latvia of
-# 1997-01-21 on transition to Summer time ... established the same order of
-# daylight savings time settings as in the States of the European Union.
-
-# From Andrei Ivanov (2000-03-06):
-# This year Latvia will not switch to Daylight Savings Time (as specified in
-# <a href="http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm">
-# The Regulations of the Cabinet of Ministers of the Rep. of Latvia of
-# 29-Feb-2000 (#79)</a>, in Latvian for subscribers only).
-
-# <a href="http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html">
-# From RFE/RL Newsline (2001-01-03), noted after a heads-up by Rives McDow:
-# </a>
-# The Latvian government on 2 January decided that the country will
-# institute daylight-saving time this spring, LETA reported.
-# Last February the three Baltic states decided not to turn back their
-# clocks one hour in the spring....
-# Minister of Economy Aigars Kalvitis noted that Latvia had too few
-# daylight hours and thus decided to comply with a draft European
-# Commission directive that provides for instituting daylight-saving
-# time in EU countries between 2002 and 2006. The Latvian government
-# urged Lithuania and Estonia to adopt a similar time policy, but it
-# appears that they will not do so....
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Latvia	1989	1996	-	Mar	lastSun	 2:00s	1:00	S
-Rule	Latvia	1989	1996	-	Sep	lastSun	 2:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Riga	1:36:24	-	LMT	1880
-			1:36:24	-	RMT	1918 Apr 15 2:00 #Riga Mean Time
-			1:36:24	1:00	LST	1918 Sep 16 3:00 #Latvian Summer
-			1:36:24	-	RMT	1919 Apr  1 2:00
-			1:36:24	1:00	LST	1919 May 22 3:00
-			1:36:24	-	RMT	1926 May 11
-			2:00	-	EET	1940 Aug  5
-			3:00	-	MSK	1941 Jul
-			1:00	C-Eur	CE%sT	1944 Oct 13
-			3:00	Russia	MSK/MSD	1989 Mar lastSun 2:00s
-			2:00	1:00	EEST	1989 Sep lastSun 2:00s
-			2:00	Latvia	EE%sT	1997 Jan 21
-			2:00	EU	EE%sT	2000 Feb 29
-			2:00	-	EET	2001 Jan  2
-			2:00	EU	EE%sT
-
-# Liechtenstein
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Vaduz	0:38:04 -	LMT	1894 Jun
-			1:00	-	CET	1981
-			1:00	EU	CE%sT
-
-# Lithuania
-
-# From Paul Eggert (1996-11-22):
-# IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
-# known to be wrong about Estonia and Latvia, assume it's wrong here too.
-
-# From Marius Gedminas (1998-08-07):
-# I would like to inform that in this year Lithuanian time zone
-# (Europe/Vilnius) was changed.
-
-# From <a href="http://www.elta.lt/">ELTA</a> No. 972 (2582) (1999-09-29),
-# via Steffen Thorsen:
-# Lithuania has shifted back to the second time zone (GMT plus two hours)
-# to be valid here starting from October 31,
-# as decided by the national government on Wednesday....
-# The Lithuanian government also announced plans to consider a
-# motion to give up shifting to summer time in spring, as it was
-# already done by Estonia.
-
-# From the <a href="http://www.tourism.lt/informa/ff.htm">
-# Fact File, Lithuanian State Department of Tourism
-# </a> (2000-03-27): Local time is GMT+2 hours ..., no daylight saving.
-
-# From a user via Klaus Marten (2003-02-07):
-# As a candidate for membership of the European Union, Lithuania will
-# observe Summer Time in 2003, changing its clocks at the times laid
-# down in EU Directive 2000/84 of 19.I.01 (i.e. at the same times as its
-# neighbour Latvia). The text of the Lithuanian government Order of
-# 7.XI.02 to this effect can be found at
-# http://www.lrvk.lt/nut/11/n1749.htm
-
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Vilnius	1:41:16	-	LMT	1880
-			1:24:00	-	WMT	1917	    # Warsaw Mean Time
-			1:35:36	-	KMT	1919 Oct 10 # Kaunas Mean Time
-			1:00	-	CET	1920 Jul 12
-			2:00	-	EET	1920 Oct  9
-			1:00	-	CET	1940 Aug  3
-			3:00	-	MSK	1941 Jun 24
-			1:00	C-Eur	CE%sT	1944 Aug
-			3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
-			2:00	1:00	EEST	1991 Sep 29 2:00s
-			2:00	C-Eur	EE%sT	1998
-			2:00	-	EET	1998 Mar 29 1:00u
-			1:00	EU	CE%sT	1999 Oct 31 1:00u
-			2:00	-	EET	2003 Jan  1
-			2:00	EU	EE%sT
-
-# Luxembourg
-# Whitman disagrees with most of these dates in minor ways;
-# go with Shanks & Pottenger.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Lux	1916	only	-	May	14	23:00	1:00	S
-Rule	Lux	1916	only	-	Oct	 1	 1:00	0	-
-Rule	Lux	1917	only	-	Apr	28	23:00	1:00	S
-Rule	Lux	1917	only	-	Sep	17	 1:00	0	-
-Rule	Lux	1918	only	-	Apr	Mon>=15	 2:00s	1:00	S
-Rule	Lux	1918	only	-	Sep	Mon>=15	 2:00s	0	-
-Rule	Lux	1919	only	-	Mar	 1	23:00	1:00	S
-Rule	Lux	1919	only	-	Oct	 5	 3:00	0	-
-Rule	Lux	1920	only	-	Feb	14	23:00	1:00	S
-Rule	Lux	1920	only	-	Oct	24	 2:00	0	-
-Rule	Lux	1921	only	-	Mar	14	23:00	1:00	S
-Rule	Lux	1921	only	-	Oct	26	 2:00	0	-
-Rule	Lux	1922	only	-	Mar	25	23:00	1:00	S
-Rule	Lux	1922	only	-	Oct	Sun>=2	 1:00	0	-
-Rule	Lux	1923	only	-	Apr	21	23:00	1:00	S
-Rule	Lux	1923	only	-	Oct	Sun>=2	 2:00	0	-
-Rule	Lux	1924	only	-	Mar	29	23:00	1:00	S
-Rule	Lux	1924	1928	-	Oct	Sun>=2	 1:00	0	-
-Rule	Lux	1925	only	-	Apr	 5	23:00	1:00	S
-Rule	Lux	1926	only	-	Apr	17	23:00	1:00	S
-Rule	Lux	1927	only	-	Apr	 9	23:00	1:00	S
-Rule	Lux	1928	only	-	Apr	14	23:00	1:00	S
-Rule	Lux	1929	only	-	Apr	20	23:00	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Europe/Luxembourg	0:24:36 -	LMT	1904 Jun
-			1:00	Lux	CE%sT	1918 Nov 25
-			0:00	Lux	WE%sT	1929 Oct  6 2:00s
-			0:00	Belgium	WE%sT	1940 May 14 3:00
-			1:00	C-Eur	WE%sT	1944 Sep 18 3:00
-			1:00	Belgium	CE%sT	1977
-			1:00	EU	CE%sT
-
-# Macedonia
-# see Serbia
-
-# Malta
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Malta	1973	only	-	Mar	31	0:00s	1:00	S
-Rule	Malta	1973	only	-	Sep	29	0:00s	0	-
-Rule	Malta	1974	only	-	Apr	21	0:00s	1:00	S
-Rule	Malta	1974	only	-	Sep	16	0:00s	0	-
-Rule	Malta	1975	1979	-	Apr	Sun>=15	2:00	1:00	S
-Rule	Malta	1975	1980	-	Sep	Sun>=15	2:00	0	-
-Rule	Malta	1980	only	-	Mar	31	2:00	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Malta	0:58:04 -	LMT	1893 Nov  2 0:00s # Valletta
-			1:00	Italy	CE%sT	1942 Nov  2 2:00s
-			1:00	C-Eur	CE%sT	1945 Apr  2 2:00s
-			1:00	Italy	CE%sT	1973 Mar 31
-			1:00	Malta	CE%sT	1981
-			1:00	EU	CE%sT
-
-# Moldova
-
-# From Paul Eggert (2006-03-22):
-# A previous version of this database followed Shanks & Pottenger, who write
-# that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
-# However, this is most likely an error, as Moldova declared independence
-# on 1991-08-27 (the 1992-01-19 date is that of a Russian decree).
-# In early 1992 there was large-scale interethnic violence in the area
-# and it's possible that some Russophones continued to observe Moscow time.
-# But [two people] separately reported via
-# Jesper Norgaard that as of 2001-01-24 Tiraspol was like Chisinau.
-# The Tiraspol entry has therefore been removed for now.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Chisinau	1:55:20 -	LMT	1880
-			1:55	-	CMT	1918 Feb 15 # Chisinau MT
-			1:44:24	-	BMT	1931 Jul 24 # Bucharest MT
-			2:00	Romania	EE%sT	1940 Aug 15
-			2:00	1:00	EEST	1941 Jul 17
-			1:00	C-Eur	CE%sT	1944 Aug 24
-			3:00	Russia	MSK/MSD	1990
-			3:00	-	MSK	1990 May 6
-			2:00	-	EET	1991
-			2:00	Russia	EE%sT	1992
-			2:00	E-Eur	EE%sT	1997
-# See Romania commentary for the guessed 1997 transition to EU rules.
-			2:00	EU	EE%sT
-
-# Monaco
-# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
-# more precise 0:09:21.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Monaco	0:29:32 -	LMT	1891 Mar 15
-			0:09:21	-	PMT	1911 Mar 11    # Paris Mean Time
-			0:00	France	WE%sT	1945 Sep 16 3:00
-			1:00	France	CE%sT	1977
-			1:00	EU	CE%sT
-
-# Montenegro
-# see Serbia
-
-# Netherlands
-
-# Howse writes that the Netherlands' railways used GMT between 1892 and 1940,
-# but for other purposes the Netherlands used Amsterdam mean time.
-
-# However, Robert H. van Gent writes (2001-04-01):
-# Howse's statement is only correct up to 1909. From 1909-05-01 (00:00:00
-# Amsterdam mean time) onwards, the whole of the Netherlands (including
-# the Dutch railways) was required by law to observe Amsterdam mean time
-# (19 minutes 32.13 seconds ahead of GMT). This had already been the
-# common practice (except for the railways) for many decades but it was
-# not until 1909 when the Dutch government finally defined this by law.
-# On 1937-07-01 this was changed to 20 minutes (exactly) ahead of GMT and
-# was generally known as Dutch Time ("Nederlandse Tijd").
-#
-# (2001-04-08):
-# 1892-05-01 was the date when the Dutch railways were by law required to
-# observe GMT while the remainder of the Netherlands adhered to the common
-# practice of following Amsterdam mean time.
-#
-# (2001-04-09):
-# In 1835 the authorities of the province of North Holland requested the
-# municipal authorities of the towns and cities in the province to observe
-# Amsterdam mean time but I do not know in how many cases this request was
-# actually followed.
-#
-# From 1852 onwards the Dutch telegraph offices were by law required to
-# observe Amsterdam mean time. As the time signals from the observatory of
-# Leiden were also distributed by the telegraph system, I assume that most
-# places linked up with the telegraph (and railway) system automatically
-# adopted Amsterdam mean time.
-#
-# Although the early Dutch railway companies initially observed a variety
-# of times, most of them had adopted Amsterdam mean time by 1858 but it
-# was not until 1866 when they were all required by law to observe
-# Amsterdam mean time.
-
-# The data before 1945 are taken from
-# <http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm>.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Neth	1916	only	-	May	 1	0:00	1:00	NST	# Netherlands Summer Time
-Rule	Neth	1916	only	-	Oct	 1	0:00	0	AMT	# Amsterdam Mean Time
-Rule	Neth	1917	only	-	Apr	16	2:00s	1:00	NST
-Rule	Neth	1917	only	-	Sep	17	2:00s	0	AMT
-Rule	Neth	1918	1921	-	Apr	Mon>=1	2:00s	1:00	NST
-Rule	Neth	1918	1921	-	Sep	lastMon	2:00s	0	AMT
-Rule	Neth	1922	only	-	Mar	lastSun	2:00s	1:00	NST
-Rule	Neth	1922	1936	-	Oct	Sun>=2	2:00s	0	AMT
-Rule	Neth	1923	only	-	Jun	Fri>=1	2:00s	1:00	NST
-Rule	Neth	1924	only	-	Mar	lastSun	2:00s	1:00	NST
-Rule	Neth	1925	only	-	Jun	Fri>=1	2:00s	1:00	NST
-# From 1926 through 1939 DST began 05-15, except that it was delayed by a week
-# in years when 05-15 fell in the Pentecost weekend.
-Rule	Neth	1926	1931	-	May	15	2:00s	1:00	NST
-Rule	Neth	1932	only	-	May	22	2:00s	1:00	NST
-Rule	Neth	1933	1936	-	May	15	2:00s	1:00	NST
-Rule	Neth	1937	only	-	May	22	2:00s	1:00	NST
-Rule	Neth	1937	only	-	Jul	 1	0:00	1:00	S
-Rule	Neth	1937	1939	-	Oct	Sun>=2	2:00s	0	-
-Rule	Neth	1938	1939	-	May	15	2:00s	1:00	S
-Rule	Neth	1945	only	-	Apr	 2	2:00s	1:00	S
-Rule	Neth	1945	only	-	Sep	16	2:00s	0	-
-#
-# Amsterdam Mean Time was +00:19:32.13 exactly, but the .13 is omitted
-# below because the current format requires GMTOFF to be an integer.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Europe/Amsterdam	0:19:32 -	LMT	1835
-			0:19:32	Neth	%s	1937 Jul  1
-			0:20	Neth	NE%sT	1940 May 16 0:00 # Dutch Time
-			1:00	C-Eur	CE%sT	1945 Apr  2 2:00
-			1:00	Neth	CE%sT	1977
-			1:00	EU	CE%sT
-
-# Norway
-# http://met.no/met/met_lex/q_u/sommertid.html (2004-01) agrees with Shanks &
-# Pottenger.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Norway	1916	only	-	May	22	1:00	1:00	S
-Rule	Norway	1916	only	-	Sep	30	0:00	0	-
-Rule	Norway	1945	only	-	Apr	 2	2:00s	1:00	S
-Rule	Norway	1945	only	-	Oct	 1	2:00s	0	-
-Rule	Norway	1959	1964	-	Mar	Sun>=15	2:00s	1:00	S
-Rule	Norway	1959	1965	-	Sep	Sun>=15	2:00s	0	-
-Rule	Norway	1965	only	-	Apr	25	2:00s	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Oslo	0:43:00 -	LMT	1895 Jan  1
-			1:00	Norway	CE%sT	1940 Aug 10 23:00
-			1:00	C-Eur	CE%sT	1945 Apr  2  2:00
-			1:00	Norway	CE%sT	1980
-			1:00	EU	CE%sT
-
-# Svalbard & Jan Mayen
-
-# From Steffen Thorsen (2001-05-01):
-# Although I could not find it explicitly, it seems that Jan Mayen and
-# Svalbard have been using the same time as Norway at least since the
-# time they were declared as parts of Norway.  Svalbard was declared
-# as a part of Norway by law of 1925-07-17 no 11, section 4 and Jan
-# Mayen by law of 1930-02-27 no 2, section 2. (From
-# http://www.lovdata.no/all/nl-19250717-011.html and
-# http://www.lovdata.no/all/nl-19300227-002.html).  The law/regulation
-# for normal/standard time in Norway is from 1894-06-29 no 1 (came
-# into operation on 1895-01-01) and Svalbard/Jan Mayen seem to be a
-# part of this law since 1925/1930. (From
-# http://www.lovdata.no/all/nl-18940629-001.html ) I have not been
-# able to find if Jan Mayen used a different time zone (e.g. -0100)
-# before 1930. Jan Mayen has only been "inhabitated" since 1921 by
-# Norwegian meteorologists and maybe used the same time as Norway ever
-# since 1921.  Svalbard (Arctic/Longyearbyen) has been inhabited since
-# before 1895, and therefore probably changed the local time somewhere
-# between 1895 and 1925 (inclusive).
-
-# From Paul Eggert (2001-05-01):
-#
-# Actually, Jan Mayen was never occupied by Germany during World War II,
-# so it must have diverged from Oslo time during the war, as Oslo was
-# keeping Berlin time.
-#
-# <http://home.no.net/janmayen/history.htm> says that the meteorologists
-# burned down their station in 1940 and left the island, but returned in
-# 1941 with a small Norwegian garrison and continued operations despite
-# frequent air ttacks from Germans.  In 1943 the Americans established a
-# radiolocating station on the island, called "Atlantic City".  Possibly
-# the UTC offset changed during the war, but I think it unlikely that
-# Jan Mayen used German daylight-saving rules.
-#
-# Svalbard is more complicated, as it was raided in August 1941 by an
-# Allied party that evacuated the civilian population to England (says
-# <http://www.bartleby.com/65/sv/Svalbard.html>).  The Svalbard FAQ
-# <http://www.svalbard.com/SvalbardFAQ.html> says that the Germans were
-# expelled on 1942-05-14.  However, small parties of Germans did return,
-# and according to Wilhelm Dege's book "War North of 80" (1954)
-# <http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html>
-# the German armed forces at the Svalbard weather station code-named
-# Haudegen did not surrender to the Allies until September 1945.
-#
-# All these events predate our cutoff date of 1970.  Unless we can
-# come up with more definitive info about the timekeeping during the
-# war years it's probably best just do do the following for now:
-Link	Europe/Oslo	Arctic/Longyearbyen
-
-# Poland
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Poland	1918	1919	-	Sep	16	2:00s	0	-
-Rule	Poland	1919	only	-	Apr	15	2:00s	1:00	S
-Rule	Poland	1944	only	-	Apr	 3	2:00s	1:00	S
-# Whitman gives 1944 Nov 30; go with Shanks & Pottenger.
-Rule	Poland	1944	only	-	Oct	 4	2:00	0	-
-# For 1944-1948 Whitman gives the previous day; go with Shanks & Pottenger.
-Rule	Poland	1945	only	-	Apr	29	0:00	1:00	S
-Rule	Poland	1945	only	-	Nov	 1	0:00	0	-
-# For 1946 on the source is Kazimierz Borkowski,
-# Torun Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U.,
-# <http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1>
-# Thanks to Przemyslaw Augustyniak (2005-05-28) for this reference.
-# He also gives these further references:
-# Mon Pol nr 13, poz 162 (1995) <http://www.abc.com.pl/serwis/mp/1995/0162.htm>
-# Druk nr 2180 (2003) <http://www.senat.gov.pl/k5/dok/sejm/053/2180.pdf>
-Rule	Poland	1946	only	-	Apr	14	0:00s	1:00	S
-Rule	Poland	1946	only	-	Oct	 7	2:00s	0	-
-Rule	Poland	1947	only	-	May	 4	2:00s	1:00	S
-Rule	Poland	1947	1949	-	Oct	Sun>=1	2:00s	0	-
-Rule	Poland	1948	only	-	Apr	18	2:00s	1:00	S
-Rule	Poland	1949	only	-	Apr	10	2:00s	1:00	S
-Rule	Poland	1957	only	-	Jun	 2	1:00s	1:00	S
-Rule	Poland	1957	1958	-	Sep	lastSun	1:00s	0	-
-Rule	Poland	1958	only	-	Mar	30	1:00s	1:00	S
-Rule	Poland	1959	only	-	May	31	1:00s	1:00	S
-Rule	Poland	1959	1961	-	Oct	Sun>=1	1:00s	0	-
-Rule	Poland	1960	only	-	Apr	 3	1:00s	1:00	S
-Rule	Poland	1961	1964	-	May	lastSun	1:00s	1:00	S
-Rule	Poland	1962	1964	-	Sep	lastSun	1:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Warsaw	1:24:00 -	LMT	1880
-			1:24:00	-	WMT	1915 Aug  5   # Warsaw Mean Time
-			1:00	C-Eur	CE%sT	1918 Sep 16 3:00
-			2:00	Poland	EE%sT	1922 Jun
-			1:00	Poland	CE%sT	1940 Jun 23 2:00
-			1:00	C-Eur	CE%sT	1944 Oct
-			1:00	Poland	CE%sT	1977
-			1:00	W-Eur	CE%sT	1988
-			1:00	EU	CE%sT
-
-# Portugal
-#
-# From Rui Pedro Salgueiro (1992-11-12):
-# Portugal has recently (September, 27) changed timezone
-# (from WET to MET or CET) to harmonize with EEC.
-#
-# Martin Bruckmann (1996-02-29) reports via Peter Ilieve
-# that Portugal is reverting to 0:00 by not moving its clocks this spring.
-# The new Prime Minister was fed up with getting up in the dark in the winter.
-#
-# From Paul Eggert (1996-11-12):
-# IATA SSIM (1991-09) reports several 1991-09 and 1992-09 transitions
-# at 02:00u, not 01:00u.  Assume that these are typos.
-# IATA SSIM (1991/1992) reports that the Azores were at -1:00.
-# IATA SSIM (1993-02) says +0:00; later issues (through 1996-09) say -1:00.
-# Guess that the Azores changed to EU rules in 1992 (since that's when Portugal
-# harmonized with the EU), and that they stayed +0:00 that winter.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# DSH writes that despite Decree 1,469 (1915), the change to the clocks was not
-# done every year, depending on what Spain did, because of railroad schedules.
-# Go with Shanks & Pottenger.
-Rule	Port	1916	only	-	Jun	17	23:00	1:00	S
-# Whitman gives 1916 Oct 31; go with Shanks & Pottenger.
-Rule	Port	1916	only	-	Nov	 1	 1:00	0	-
-Rule	Port	1917	only	-	Feb	28	23:00s	1:00	S
-Rule	Port	1917	1921	-	Oct	14	23:00s	0	-
-Rule	Port	1918	only	-	Mar	 1	23:00s	1:00	S
-Rule	Port	1919	only	-	Feb	28	23:00s	1:00	S
-Rule	Port	1920	only	-	Feb	29	23:00s	1:00	S
-Rule	Port	1921	only	-	Feb	28	23:00s	1:00	S
-Rule	Port	1924	only	-	Apr	16	23:00s	1:00	S
-Rule	Port	1924	only	-	Oct	14	23:00s	0	-
-Rule	Port	1926	only	-	Apr	17	23:00s	1:00	S
-Rule	Port	1926	1929	-	Oct	Sat>=1	23:00s	0	-
-Rule	Port	1927	only	-	Apr	 9	23:00s	1:00	S
-Rule	Port	1928	only	-	Apr	14	23:00s	1:00	S
-Rule	Port	1929	only	-	Apr	20	23:00s	1:00	S
-Rule	Port	1931	only	-	Apr	18	23:00s	1:00	S
-# Whitman gives 1931 Oct 8; go with Shanks & Pottenger.
-Rule	Port	1931	1932	-	Oct	Sat>=1	23:00s	0	-
-Rule	Port	1932	only	-	Apr	 2	23:00s	1:00	S
-Rule	Port	1934	only	-	Apr	 7	23:00s	1:00	S
-# Whitman gives 1934 Oct 5; go with Shanks & Pottenger.
-Rule	Port	1934	1938	-	Oct	Sat>=1	23:00s	0	-
-# Shanks & Pottenger give 1935 Apr 30; go with Whitman.
-Rule	Port	1935	only	-	Mar	30	23:00s	1:00	S
-Rule	Port	1936	only	-	Apr	18	23:00s	1:00	S
-# Whitman gives 1937 Apr 2; go with Shanks & Pottenger.
-Rule	Port	1937	only	-	Apr	 3	23:00s	1:00	S
-Rule	Port	1938	only	-	Mar	26	23:00s	1:00	S
-Rule	Port	1939	only	-	Apr	15	23:00s	1:00	S
-# Whitman gives 1939 Oct 7; go with Shanks & Pottenger.
-Rule	Port	1939	only	-	Nov	18	23:00s	0	-
-Rule	Port	1940	only	-	Feb	24	23:00s	1:00	S
-# Shanks & Pottenger give 1940 Oct 7; go with Whitman.
-Rule	Port	1940	1941	-	Oct	 5	23:00s	0	-
-Rule	Port	1941	only	-	Apr	 5	23:00s	1:00	S
-Rule	Port	1942	1945	-	Mar	Sat>=8	23:00s	1:00	S
-Rule	Port	1942	only	-	Apr	25	22:00s	2:00	M # Midsummer
-Rule	Port	1942	only	-	Aug	15	22:00s	1:00	S
-Rule	Port	1942	1945	-	Oct	Sat>=24	23:00s	0	-
-Rule	Port	1943	only	-	Apr	17	22:00s	2:00	M
-Rule	Port	1943	1945	-	Aug	Sat>=25	22:00s	1:00	S
-Rule	Port	1944	1945	-	Apr	Sat>=21	22:00s	2:00	M
-Rule	Port	1946	only	-	Apr	Sat>=1	23:00s	1:00	S
-Rule	Port	1946	only	-	Oct	Sat>=1	23:00s	0	-
-Rule	Port	1947	1949	-	Apr	Sun>=1	 2:00s	1:00	S
-Rule	Port	1947	1949	-	Oct	Sun>=1	 2:00s	0	-
-# Shanks & Pottenger say DST was observed in 1950; go with Whitman.
-# Whitman gives Oct lastSun for 1952 on; go with Shanks & Pottenger.
-Rule	Port	1951	1965	-	Apr	Sun>=1	 2:00s	1:00	S
-Rule	Port	1951	1965	-	Oct	Sun>=1	 2:00s	0	-
-Rule	Port	1977	only	-	Mar	27	 0:00s	1:00	S
-Rule	Port	1977	only	-	Sep	25	 0:00s	0	-
-Rule	Port	1978	1979	-	Apr	Sun>=1	 0:00s	1:00	S
-Rule	Port	1978	only	-	Oct	 1	 0:00s	0	-
-Rule	Port	1979	1982	-	Sep	lastSun	 1:00s	0	-
-Rule	Port	1980	only	-	Mar	lastSun	 0:00s	1:00	S
-Rule	Port	1981	1982	-	Mar	lastSun	 1:00s	1:00	S
-Rule	Port	1983	only	-	Mar	lastSun	 2:00s	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24;
-# Willett says 1912-01-01.  Go with Willett.
-Zone	Europe/Lisbon	-0:36:32 -	LMT	1884
-			-0:36:32 -	LMT	1912 Jan  1  # Lisbon Mean Time
-			 0:00	Port	WE%sT	1966 Apr  3 2:00
-			 1:00	-	CET	1976 Sep 26 1:00
-			 0:00	Port	WE%sT	1983 Sep 25 1:00s
-			 0:00	W-Eur	WE%sT	1992 Sep 27 1:00s
-			 1:00	EU	CE%sT	1996 Mar 31 1:00u
-			 0:00	EU	WE%sT
-Zone Atlantic/Azores	-1:42:40 -	LMT	1884		# Ponta Delgada
-			-1:54:32 -	HMT	1911 May 24  # Horta Mean Time
-			-2:00	Port	AZO%sT	1966 Apr  3 2:00 # Azores Time
-			-1:00	Port	AZO%sT	1983 Sep 25 1:00s
-			-1:00	W-Eur	AZO%sT	1992 Sep 27 1:00s
-			 0:00	EU	WE%sT	1993 Mar 28 1:00u
-			-1:00	EU	AZO%sT
-Zone Atlantic/Madeira	-1:07:36 -	LMT	1884		# Funchal
-			-1:07:36 -	FMT	1911 May 24  # Funchal Mean Time
-			-1:00	Port	MAD%sT	1966 Apr  3 2:00 # Madeira Time
-			 0:00	Port	WE%sT	1983 Sep 25 1:00s
-			 0:00	EU	WE%sT
-
-# Romania
-#
-# From Paul Eggert (1999-10-07):
-# <a href="http://www.nineoclock.ro/POL/1778pol.html">
-# Nine O'clock</a> (1998-10-23) reports that the switch occurred at
-# 04:00 local time in fall 1998.  For lack of better info,
-# assume that Romania and Moldova switched to EU rules in 1997,
-# the same year as Bulgaria.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Romania	1932	only	-	May	21	 0:00s	1:00	S
-Rule	Romania	1932	1939	-	Oct	Sun>=1	 0:00s	0	-
-Rule	Romania	1933	1939	-	Apr	Sun>=2	 0:00s	1:00	S
-Rule	Romania	1979	only	-	May	27	 0:00	1:00	S
-Rule	Romania	1979	only	-	Sep	lastSun	 0:00	0	-
-Rule	Romania	1980	only	-	Apr	 5	23:00	1:00	S
-Rule	Romania	1980	only	-	Sep	lastSun	 1:00	0	-
-Rule	Romania	1991	1993	-	Mar	lastSun	 0:00s	1:00	S
-Rule	Romania	1991	1993	-	Sep	lastSun	 0:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Europe/Bucharest	1:44:24 -	LMT	1891 Oct
-			1:44:24	-	BMT	1931 Jul 24	# Bucharest MT
-			2:00	Romania	EE%sT	1981 Mar 29 2:00s
-			2:00	C-Eur	EE%sT	1991
-			2:00	Romania	EE%sT	1994
-			2:00	E-Eur	EE%sT	1997
-			2:00	EU	EE%sT
-
-# Russia
-
-# From Paul Eggert (2006-03-22):
-# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
-# Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
-# are from Andrey A. Chernov.  The rest is from Shanks & Pottenger,
-# except we follow Chernov's report that 1992 DST transitions were Sat
-# 23:00, not Sun 02:00s.
-#
-# From Stanislaw A. Kuzikowski (1994-06-29):
-# But now it is some months since Novosibirsk is 3 hours ahead of Moscow!
-# I do not know why they have decided to make this change;
-# as far as I remember it was done exactly during winter->summer switching
-# so we (Novosibirsk) simply did not switch.
-#
-# From Andrey A. Chernov (1996-10-04):
-# `MSK' and `MSD' were born and used initially on Moscow computers with
-# UNIX-like OSes by several developer groups (e.g. Demos group, Kiae group)....
-# The next step was the UUCP network, the Relcom predecessor
-# (used mainly for mail), and MSK/MSD was actively used there.
-#
-# From Chris Carrier (1996-10-30):
-# According to a friend of mine who rode the Trans-Siberian Railroad from
-# Moscow to Irkutsk in 1995, public air and rail transport in Russia ...
-# still follows Moscow time, no matter where in Russia it is located.
-#
-# For Grozny, Chechnya, we have the following story from
-# John Daniszewski, "Scavengers in the Rubble", Los Angeles Times (2001-02-07):
-# News--often false--is spread by word of mouth.  A rumor that it was
-# time to move the clocks back put this whole city out of sync with
-# the rest of Russia for two weeks--even soldiers stationed here began
-# enforcing curfew at the wrong time.
-#
-# From Gwillim Law (2001-06-05):
-# There's considerable evidence that Sakhalin Island used to be in
-# UTC+11, and has changed to UTC+10, in this decade.  I start with the
-# SSIM, which listed Yuzhno-Sakhalinsk in zone RU10 along with Magadan
-# until February 1997, and then in RU9 with Khabarovsk and Vladivostok
-# since September 1997....  Although the Kuril Islands are
-# administratively part of Sakhalin oblast', they appear to have
-# remained on UTC+11 along with Magadan.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-#
-# Kaliningradskaya oblast'.
-Zone Europe/Kaliningrad	 1:22:00 -	LMT	1893 Apr
-			 1:00	C-Eur	CE%sT	1945
-			 2:00	Poland	CE%sT	1946
-			 3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
-			 2:00	Russia	EE%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Adygeya, Arkhangel'skaya oblast',
-# Belgorodskaya oblast', Bryanskaya oblast', Vladimirskaya oblast',
-# Vologodskaya oblast', Voronezhskaya oblast',
-# Respublika Dagestan, Ivanovskaya oblast', Respublika Ingushetiya,
-# Kabarbino-Balkarskaya Respublika, Respublika Kalmykiya,
-# Kalyzhskaya oblast', Respublika Karachaevo-Cherkessiya,
-# Respublika Kareliya, Respublika Komi,
-# Kostromskaya oblast', Krasnodarskij kraj, Kurskaya oblast',
-# Leningradskaya oblast', Lipetskaya oblast', Respublika Marij El,
-# Respublika Mordoviya, Moskva, Moskovskaya oblast',
-# Murmanskaya oblast', Nenetskij avtonomnyj okrug,
-# Nizhegorodskaya oblast', Novgorodskaya oblast', Orlovskaya oblast',
-# Penzenskaya oblast', Pskovskaya oblast', Rostovskaya oblast',
-# Ryazanskaya oblast', Sankt-Peterburg,
-# Respublika Severnaya Osetiya, Smolenskaya oblast',
-# Stavropol'skij kraj, Tambovskaya oblast', Respublika Tatarstan,
-# Tverskaya oblast', Tyl'skaya oblast', Ul'yanovskaya oblast',
-# Chechenskaya Respublika, Chuvashskaya oblast',
-# Yaroslavskaya oblast'
-Zone Europe/Moscow	 2:30:20 -	LMT	1880
-			 2:30	-	MMT	1916 Jul  3 # Moscow Mean Time
-			 2:30:48 Russia	%s	1919 Jul  1 2:00
-			 3:00	Russia	MSK/MSD	1922 Oct
-			 2:00	-	EET	1930 Jun 21
-			 3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
-			 2:00	Russia	EE%sT	1992 Jan 19 2:00s
-			 3:00	Russia	MSK/MSD
-#
-# Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast',
-# Volgogradskaya oblast'.  Shanks & Pottenger say Kirov is still at +0400
-# but Wikipedia (2006-05-09) says +0300.  Perhaps it switched after the
-# others?  But we have no data.
-Zone Europe/Volgograd	 2:57:40 -	LMT	1920 Jan  3
-			 3:00	-	TSAT	1925 Apr  6 # Tsaritsyn Time
-			 3:00	-	STAT	1930 Jun 21 # Stalingrad Time
-			 4:00	-	STAT	1961 Nov 11
-			 4:00	Russia	VOL%sT	1989 Mar 26 2:00s # Volgograd T
-			 3:00	Russia	VOL%sT	1991 Mar 31 2:00s
-			 4:00	-	VOLT	1992 Mar 29 2:00s
-			 3:00	Russia	VOL%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Samarskaya oblast', Udmyrtskaya respublika
-Zone Europe/Samara	 3:20:36 -	LMT	1919 Jul  1 2:00
-			 3:00	-	SAMT	1930 Jun 21
-			 4:00	-	SAMT	1935 Jan 27
-			 4:00	Russia	KUY%sT	1989 Mar 26 2:00s # Kuybyshev
-			 3:00	Russia	KUY%sT	1991 Mar 31 2:00s
-			 2:00	Russia	KUY%sT	1991 Sep 29 2:00s
-			 3:00	-	KUYT	1991 Oct 20 3:00
-			 4:00	Russia	SAM%sT	# Samara Time
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Bashkortostan, Komi-Permyatskij avtonomnyj okrug,
-# Kurganskaya oblast', Orenburgskaya oblast', Permskaya oblast',
-# Sverdlovskaya oblast', Tyumenskaya oblast',
-# Khanty-Manskijskij avtonomnyj okrug, Chelyabinskaya oblast',
-# Yamalo-Nenetskij avtonomnyj okrug.
-Zone Asia/Yekaterinburg	 4:02:24 -	LMT	1919 Jul 15 4:00
-			 4:00	-	SVET	1930 Jun 21 # Sverdlovsk Time
-			 5:00	Russia	SVE%sT	1991 Mar 31 2:00s
-			 4:00	Russia	SVE%sT	1992 Jan 19 2:00s
-			 5:00	Russia	YEK%sT	# Yekaterinburg Time
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Altaj, Altajskij kraj, Omskaya oblast'.
-Zone Asia/Omsk		 4:53:36 -	LMT	1919 Nov 14
-			 5:00	-	OMST	1930 Jun 21 # Omsk TIme
-			 6:00	Russia	OMS%sT	1991 Mar 31 2:00s
-			 5:00	Russia	OMS%sT	1992 Jan 19 2:00s
-			 6:00	Russia	OMS%sT
-#
-# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
-# not clear when it switched from +7 to +6.
-# Novosibirskaya oblast', Tomskaya oblast'.
-Zone Asia/Novosibirsk	 5:31:40 -	LMT	1919 Dec 14 6:00
-			 6:00	-	NOVT	1930 Jun 21 # Novosibirsk Time
-			 7:00	Russia	NOV%sT	1991 Mar 31 2:00s
-			 6:00	Russia	NOV%sT	1992 Jan 19 2:00s
-			 7:00	Russia	NOV%sT	1993 May 23 # say Shanks & P.
-			 6:00	Russia	NOV%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Kemerovskaya oblast', Krasnoyarskij kraj,
-# Tajmyrskij (Dolgano-Nenetskij) avtonomnyj okrug,
-# Respublika Tuva, Respublika Khakasiya, Evenkijskij avtonomnyj okrug.
-Zone Asia/Krasnoyarsk	 6:11:20 -	LMT	1920 Jan  6
-			 6:00	-	KRAT	1930 Jun 21 # Krasnoyarsk Time
-			 7:00	Russia	KRA%sT	1991 Mar 31 2:00s
-			 6:00	Russia	KRA%sT	1992 Jan 19 2:00s
-			 7:00	Russia	KRA%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Respublika Buryatiya, Irkutskaya oblast',
-# Ust'-Ordynskij Buryatskij avtonomnyj okrug.
-Zone Asia/Irkutsk	 6:57:20 -	LMT	1880
-			 6:57:20 -	IMT	1920 Jan 25 # Irkutsk Mean Time
-			 7:00	-	IRKT	1930 Jun 21 # Irkutsk Time
-			 8:00	Russia	IRK%sT	1991 Mar 31 2:00s
-			 7:00	Russia	IRK%sT	1992 Jan 19 2:00s
-			 8:00	Russia	IRK%sT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast',
-# [parts of] Respublika Sakha (Yakutiya), Chitinskaya oblast'.
-# The Sakha districts are: Aldanskij, Amginskij, Anabarskij,
-# Bulunskij, Verkhnekolymskij, Verkhnevilyujskij, Vilyujskij, Gornyj,
-# Zhiganskij, Kobyajskij, Lenskij, Megino-Kangalasskij, Mirninskij,
-# Namskij, Nyurbinskij, Olenekskij, Olekminskij, Srednekolymskij,
-# Suntarskij, Tattinskij, Ust'-Aldanskij, Khangalasskij,
-# Churapchinskij, Eveno-Bytantajskij.
-Zone Asia/Yakutsk	 8:38:40 -	LMT	1919 Dec 15
-			 8:00	-	YAKT	1930 Jun 21 # Yakutsk Time
-			 9:00	Russia	YAK%sT	1991 Mar 31 2:00s
-			 8:00	Russia	YAK%sT	1992 Jan 19 2:00s
-			 9:00	Russia	YAK%sT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj,
-# [parts of] Respublika Sakha (Yakutiya).
-# The Sakha districts are: Verkhoyanskij, Tomponskij, Ust'-Majskij,
-# Ust'-Yanskij.
-Zone Asia/Vladivostok	 8:47:44 -	LMT	1922 Nov 15
-			 9:00	-	VLAT	1930 Jun 21 # Vladivostok Time
-			10:00	Russia	VLA%sT	1991 Mar 31 2:00s
-			 9:00	Russia	VLA%sST	1992 Jan 19 2:00s
-			10:00	Russia	VLA%sT
-#
-# Sakhalinskaya oblast'.
-# The Zone name should be Yuzhno-Sakhalinsk, but that's too long.
-Zone Asia/Sakhalin	 9:30:48 -	LMT	1905 Aug 23
-			 9:00	-	CJT	1938
-			 9:00	-	JST	1945 Aug 25
-			11:00	Russia	SAK%sT	1991 Mar 31 2:00s # Sakhalin T.
-			10:00	Russia	SAK%sT	1992 Jan 19 2:00s
-			11:00	Russia	SAK%sT	1997 Mar lastSun 2:00s
-			10:00	Russia	SAK%sT
-#
-# From Oscar van Vlijmen (2003-10-18): [This region consists of]
-# Magadanskaya oblast', Respublika Sakha (Yakutiya).
-# Probably also: Kuril Islands.
-# The Sakha districts are: Abyjskij, Allaikhovskij, Momskij,
-# Nizhnekolymskij, Ojmyakonskij.
-Zone Asia/Magadan	10:03:12 -	LMT	1924 May  2
-			10:00	-	MAGT	1930 Jun 21 # Magadan Time
-			11:00	Russia	MAG%sT	1991 Mar 31 2:00s
-			10:00	Russia	MAG%sT	1992 Jan 19 2:00s
-			11:00	Russia	MAG%sT
-#
-# From Oscar van Vlijmen (2001-08-25): [This region consists of]
-# Kamchatskaya oblast', Koryakskij avtonomnyj okrug.
-#
-# The Zone name should be Asia/Petropavlovsk-Kamchatski, but that's too long.
-Zone Asia/Kamchatka	10:34:36 -	LMT	1922 Nov 10
-			11:00	-	PETT	1930 Jun 21 # P-K Time
-			12:00	Russia	PET%sT	1991 Mar 31 2:00s
-			11:00	Russia	PET%sT	1992 Jan 19 2:00s
-			12:00	Russia	PET%sT
-#
-# Chukotskij avtonomnyj okrug
-Zone Asia/Anadyr	11:49:56 -	LMT	1924 May  2
-			12:00	-	ANAT	1930 Jun 21 # Anadyr Time
-			13:00	Russia	ANA%sT	1982 Apr  1 0:00s
-			12:00	Russia	ANA%sT	1991 Mar 31 2:00s
-			11:00	Russia	ANA%sT	1992 Jan 19 2:00s
-			12:00	Russia	ANA%sT
-
-# Serbia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Belgrade	1:22:00	-	LMT	1884
-			1:00	-	CET	1941 Apr 18 23:00
-			1:00	C-Eur	CE%sT	1945
-			1:00	-	CET	1945 May 8 2:00s
-			1:00	1:00	CEST	1945 Sep 16  2:00s
-# Metod Kozelj reports that the legal date of
-# transition to EU rules was 1982-11-27, for all of Yugoslavia at the time.
-# Shanks & Pottenger don't give as much detail, so go with Kozelj.
-			1:00	-	CET	1982 Nov 27
-			1:00	EU	CE%sT
-Link Europe/Belgrade Europe/Ljubljana	# Slovenia
-Link Europe/Belgrade Europe/Podgorica	# Montenegro
-Link Europe/Belgrade Europe/Sarajevo	# Bosnia and Herzegovina
-Link Europe/Belgrade Europe/Skopje	# Macedonia
-Link Europe/Belgrade Europe/Zagreb	# Croatia
-
-# Slovakia
-Link Europe/Prague Europe/Bratislava
-
-# Slovenia
-# see Serbia
-
-# Spain
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
-# go with Shanks & Pottenger.
-Rule	Spain	1917	only	-	May	 5	23:00s	1:00	S
-Rule	Spain	1917	1919	-	Oct	 6	23:00s	0	-
-Rule	Spain	1918	only	-	Apr	15	23:00s	1:00	S
-Rule	Spain	1919	only	-	Apr	 5	23:00s	1:00	S
-# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
-Rule	Spain	1924	only	-	Apr	16	23:00s	1:00	S
-# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
-Rule	Spain	1924	only	-	Oct	 4	23:00s	0	-
-Rule	Spain	1926	only	-	Apr	17	23:00s	1:00	S
-# Whitman says no DST in 1929; go with Shanks & Pottenger.
-Rule	Spain	1926	1929	-	Oct	Sat>=1	23:00s	0	-
-Rule	Spain	1927	only	-	Apr	 9	23:00s	1:00	S
-Rule	Spain	1928	only	-	Apr	14	23:00s	1:00	S
-Rule	Spain	1929	only	-	Apr	20	23:00s	1:00	S
-# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
-# go with Shanks & Pottenger.
-Rule	Spain	1937	only	-	May	22	23:00s	1:00	S
-Rule	Spain	1937	1939	-	Oct	Sat>=1	23:00s	0	-
-Rule	Spain	1938	only	-	Mar	22	23:00s	1:00	S
-Rule	Spain	1939	only	-	Apr	15	23:00s	1:00	S
-Rule	Spain	1940	only	-	Mar	16	23:00s	1:00	S
-# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
-Rule	Spain	1942	only	-	May	 2	22:00s	2:00	M # Midsummer
-Rule	Spain	1942	only	-	Sep	 1	22:00s	1:00	S
-Rule	Spain	1943	1946	-	Apr	Sat>=13	22:00s	2:00	M
-Rule	Spain	1943	only	-	Oct	 3	22:00s	1:00	S
-Rule	Spain	1944	only	-	Oct	10	22:00s	1:00	S
-Rule	Spain	1945	only	-	Sep	30	 1:00	1:00	S
-Rule	Spain	1946	only	-	Sep	30	 0:00	0	-
-Rule	Spain	1949	only	-	Apr	30	23:00	1:00	S
-Rule	Spain	1949	only	-	Sep	30	 1:00	0	-
-Rule	Spain	1974	1975	-	Apr	Sat>=13	23:00	1:00	S
-Rule	Spain	1974	1975	-	Oct	Sun>=1	 1:00	0	-
-Rule	Spain	1976	only	-	Mar	27	23:00	1:00	S
-Rule	Spain	1976	1977	-	Sep	lastSun	 1:00	0	-
-Rule	Spain	1977	1978	-	Apr	 2	23:00	1:00	S
-Rule	Spain	1978	only	-	Oct	 1	 1:00	0	-
-# The following rules are copied from Morocco from 1967 through 1978.
-Rule SpainAfrica 1967	only	-	Jun	 3	12:00	1:00	S
-Rule SpainAfrica 1967	only	-	Oct	 1	 0:00	0	-
-Rule SpainAfrica 1974	only	-	Jun	24	 0:00	1:00	S
-Rule SpainAfrica 1974	only	-	Sep	 1	 0:00	0	-
-Rule SpainAfrica 1976	1977	-	May	 1	 0:00	1:00	S
-Rule SpainAfrica 1976	only	-	Aug	 1	 0:00	0	-
-Rule SpainAfrica 1977	only	-	Sep	28	 0:00	0	-
-Rule SpainAfrica 1978	only	-	Jun	 1	 0:00	1:00	S
-Rule SpainAfrica 1978	only	-	Aug	 4	 0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Madrid	-0:14:44 -	LMT	1901 Jan  1  0:00s
-			 0:00	Spain	WE%sT	1946 Sep 30
-			 1:00	Spain	CE%sT	1979
-			 1:00	EU	CE%sT
-Zone	Africa/Ceuta	-0:21:16 -	LMT	1901
-			 0:00	-	WET	1918 May  6 23:00
-			 0:00	1:00	WEST	1918 Oct  7 23:00
-			 0:00	-	WET	1924
-			 0:00	Spain	WE%sT	1929
-			 0:00 SpainAfrica WE%sT 1984 Mar 16
-			 1:00	-	CET	1986
-			 1:00	EU	CE%sT
-Zone	Atlantic/Canary	-1:01:36 -	LMT	1922 Mar # Las Palmas de Gran C.
-			-1:00	-	CANT	1946 Sep 30 1:00 # Canaries Time
-			 0:00	-	WET	1980 Apr  6 0:00s
-			 0:00	1:00	WEST	1980 Sep 28 0:00s
-			 0:00	EU	WE%sT
-# IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u.
-# Ignore this for now, as the Canaries are part of the EU.
-
-# Sweden
-
-# From Ivan Nilsson (2001-04-13), superseding Shanks & Pottenger:
-#
-# The law "Svensk forfattningssamling 1878, no 14" about standard time in 1879:
-# From the beginning of 1879 (that is 01-01 00:00) the time for all
-# places in the country is "the mean solar time for the meridian at
-# three degrees, or twelve minutes of time, to the west of the
-# meridian of the Observatory of Stockholm".  The law is dated 1878-05-31.
-#
-# The observatory at that time had the meridian 18 degrees 03' 30"
-# eastern longitude = 01:12:14 in time.  Less 12 minutes gives the
-# national standard time as 01:00:14 ahead of GMT....
-#
-# About the beginning of CET in Sweden. The lawtext ("Svensk
-# forfattningssamling 1899, no 44") states, that "from the beginning
-# of 1900... ... the same as the mean solar time for the meridian at
-# the distance of one hour of time from the meridian of the English
-# observatory at Greenwich, or at 12 minutes 14 seconds to the west
-# from the meridian of the Observatory of Stockholm". The law is dated
-# 1899-06-16.  In short: At 1900-01-01 00:00:00 the new standard time
-# in Sweden is 01:00:00 ahead of GMT.
-#
-# 1916: The lawtext ("Svensk forfattningssamling 1916, no 124") states
-# that "1916-05-15 is considered to begin one hour earlier". It is
-# pretty obvious that at 05-14 23:00 the clocks are set to 05-15 00:00....
-# Further the law says, that "1916-09-30 is considered to end one hour later".
-#
-# The laws regulating [DST] are available on the site of the Swedish
-# Parliament beginning with 1985 - the laws regulating 1980/1984 are
-# not available on the site (to my knowledge they are only available
-# in Swedish): <http://www.riksdagen.se/english/work/sfst.asp> (type
-# "sommartid" without the quotes in the field "Fritext" and then click
-# the Sok-button).
-#
-# (2001-05-13):
-#
-# I have now found a newspaper stating that at 1916-10-01 01:00
-# summertime the church-clocks etc were set back one hour to show
-# 1916-10-01 00:00 standard time.  The article also reports that some
-# people thought the switch to standard time would take place already
-# at 1916-10-01 00:00 summer time, but they had to wait for another
-# hour before the event took place.
-#
-# Source: The newspaper "Dagens Nyheter", 1916-10-01, page 7 upper left.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Europe/Stockholm	1:12:12 -	LMT	1879 Jan  1
-			1:00:14	-	SET	1900 Jan  1	# Swedish Time
-			1:00	-	CET	1916 May 14 23:00
-			1:00	1:00	CEST	1916 Oct  1 01:00
-			1:00	-	CET	1980
-			1:00	EU	CE%sT
-
-# Switzerland
-# From Howse:
-# By the end of the 18th century clocks and watches became commonplace
-# and their performance improved enormously.  Communities began to keep
-# mean time in preference to apparent time -- Geneva from 1780 ....
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# From Whitman (who writes ``Midnight?''):
-Rule	Swiss	1940	only	-	Nov	 2	0:00	1:00	S
-Rule	Swiss	1940	only	-	Dec	31	0:00	0	-
-# From Shanks & Pottenger:
-Rule	Swiss	1941	1942	-	May	Sun>=1	2:00	1:00	S
-Rule	Swiss	1941	1942	-	Oct	Sun>=1	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Zurich	0:34:08 -	LMT	1848 Sep 12
-			0:29:44	-	BMT	1894 Jun # Bern Mean Time
-			1:00	Swiss	CE%sT	1981
-			1:00	EU	CE%sT
-
-# Turkey
-
-# From Amar Devegowda (2007-01-03):
-# The time zone rules for Istanbul, Turkey have not been changed for years now.
-# ... The latest rules are available at -
-# http://www.timeanddate.com/worldclock/timezone.html?n=107
-# From Steffen Thorsen (2007-01-03):
-# I have been able to find press records back to 1996 which all say that
-# DST started 01:00 local time and end at 02:00 local time.  I am not sure
-# what happened before that.  One example for each year from 1996 to 2001:
-# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
-# From Paul Eggert (2007-01-03):
-# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
-
-# From Steffen Thorsen (2007-03-09):
-# Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
-# start/end time, according to the following page (2007-03-07):
-# http://www.ntvmsnbc.com/news/402029.asp
-# The official document is located here - it is in Turkish...:
-# http://rega.basbakanlik.gov.tr/eskiler/2007/03/20070307-7.htm
-# I was able to locate the following seemingly official document
-# (on a non-government server though) describing dates between 2002 and 2006:
-# http://www.alomaliye.com/bkk_2002_3769.htm
-
-# From Sue Williams (2008-08-11):
-# I spotted this news article about a potential change in Turkey.
-#
-# <a href="http://www.hurriyet.com.tr/english/domestic/9626174.asp?scr=1">
-# http://www.hurriyet.com.tr/english/domestic/9626174.asp?scr=1
-# </a>
-
-# From Sue Williams (2008-08-20):
-# This article says that around the end of March 2011, Turkey wants to
-# adjust the clocks forward by 1/2 hour and stay that way permanently.
-# The article indicates that this is a change in timezone offset in addition
-# to stopping observance of DST.
-# This proposal has not yet been approved.
-#
-# Read more here...
-#
-# Turkey to abandon daylight saving time in 2011
-# <a href="http://www.turkishdailynews.com.tr/article.php?enewsid=112989">
-# http://www.turkishdailynews.com.tr/article.php?enewsid=112989
-# </a>
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Turkey	1916	only	-	May	 1	0:00	1:00	S
-Rule	Turkey	1916	only	-	Oct	 1	0:00	0	-
-Rule	Turkey	1920	only	-	Mar	28	0:00	1:00	S
-Rule	Turkey	1920	only	-	Oct	25	0:00	0	-
-Rule	Turkey	1921	only	-	Apr	 3	0:00	1:00	S
-Rule	Turkey	1921	only	-	Oct	 3	0:00	0	-
-Rule	Turkey	1922	only	-	Mar	26	0:00	1:00	S
-Rule	Turkey	1922	only	-	Oct	 8	0:00	0	-
-# Whitman gives 1923 Apr 28 - Sep 16 and no DST in 1924-1925;
-# go with Shanks & Pottenger.
-Rule	Turkey	1924	only	-	May	13	0:00	1:00	S
-Rule	Turkey	1924	1925	-	Oct	 1	0:00	0	-
-Rule	Turkey	1925	only	-	May	 1	0:00	1:00	S
-Rule	Turkey	1940	only	-	Jun	30	0:00	1:00	S
-Rule	Turkey	1940	only	-	Oct	 5	0:00	0	-
-Rule	Turkey	1940	only	-	Dec	 1	0:00	1:00	S
-Rule	Turkey	1941	only	-	Sep	21	0:00	0	-
-Rule	Turkey	1942	only	-	Apr	 1	0:00	1:00	S
-# Whitman omits the next two transition and gives 1945 Oct 1;
-# go with Shanks & Pottenger.
-Rule	Turkey	1942	only	-	Nov	 1	0:00	0	-
-Rule	Turkey	1945	only	-	Apr	 2	0:00	1:00	S
-Rule	Turkey	1945	only	-	Oct	 8	0:00	0	-
-Rule	Turkey	1946	only	-	Jun	 1	0:00	1:00	S
-Rule	Turkey	1946	only	-	Oct	 1	0:00	0	-
-Rule	Turkey	1947	1948	-	Apr	Sun>=16	0:00	1:00	S
-Rule	Turkey	1947	1950	-	Oct	Sun>=2	0:00	0	-
-Rule	Turkey	1949	only	-	Apr	10	0:00	1:00	S
-Rule	Turkey	1950	only	-	Apr	19	0:00	1:00	S
-Rule	Turkey	1951	only	-	Apr	22	0:00	1:00	S
-Rule	Turkey	1951	only	-	Oct	 8	0:00	0	-
-Rule	Turkey	1962	only	-	Jul	15	0:00	1:00	S
-Rule	Turkey	1962	only	-	Oct	 8	0:00	0	-
-Rule	Turkey	1964	only	-	May	15	0:00	1:00	S
-Rule	Turkey	1964	only	-	Oct	 1	0:00	0	-
-Rule	Turkey	1970	1972	-	May	Sun>=2	0:00	1:00	S
-Rule	Turkey	1970	1972	-	Oct	Sun>=2	0:00	0	-
-Rule	Turkey	1973	only	-	Jun	 3	1:00	1:00	S
-Rule	Turkey	1973	only	-	Nov	 4	3:00	0	-
-Rule	Turkey	1974	only	-	Mar	31	2:00	1:00	S
-Rule	Turkey	1974	only	-	Nov	 3	5:00	0	-
-Rule	Turkey	1975	only	-	Mar	30	0:00	1:00	S
-Rule	Turkey	1975	1976	-	Oct	lastSun	0:00	0	-
-Rule	Turkey	1976	only	-	Jun	 1	0:00	1:00	S
-Rule	Turkey	1977	1978	-	Apr	Sun>=1	0:00	1:00	S
-Rule	Turkey	1977	only	-	Oct	16	0:00	0	-
-Rule	Turkey	1979	1980	-	Apr	Sun>=1	3:00	1:00	S
-Rule	Turkey	1979	1982	-	Oct	Mon>=11	0:00	0	-
-Rule	Turkey	1981	1982	-	Mar	lastSun	3:00	1:00	S
-Rule	Turkey	1983	only	-	Jul	31	0:00	1:00	S
-Rule	Turkey	1983	only	-	Oct	 2	0:00	0	-
-Rule	Turkey	1985	only	-	Apr	20	0:00	1:00	S
-Rule	Turkey	1985	only	-	Sep	28	0:00	0	-
-Rule	Turkey	1986	1990	-	Mar	lastSun	2:00s	1:00	S
-Rule	Turkey	1986	1990	-	Sep	lastSun	2:00s	0	-
-Rule	Turkey	1991	2006	-	Mar	lastSun	1:00s	1:00	S
-Rule	Turkey	1991	1995	-	Sep	lastSun	1:00s	0	-
-Rule	Turkey	1996	2006	-	Oct	lastSun	1:00s	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	Europe/Istanbul	1:55:52 -	LMT	1880
-			1:56:56	-	IMT	1910 Oct # Istanbul Mean Time?
-			2:00	Turkey	EE%sT	1978 Oct 15
-			3:00	Turkey	TR%sT	1985 Apr 20 # Turkey Time
-			2:00	Turkey	EE%sT	2007
-			2:00	EU	EE%sT
-Link	Europe/Istanbul	Asia/Istanbul	# Istanbul is in both continents.
-
-# Ukraine
-#
-# From Igor Karpov, who works for the Ukranian Ministry of Justice,
-# via Garrett Wollman (2003-01-27):
-# BTW, I've found the official document on this matter. It's goverment
-# regulations number 509, May 13, 1996. In my poor translation it says:
-# "Time in Ukraine is set to second timezone (Kiev time). Each last Sunday
-# of March at 3am the time is changing to 4am and each last Sunday of
-# October the time at 4am is changing to 3am"
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-# Most of Ukraine since 1970 has been like Kiev.
-# "Kyiv" is the transliteration of the Ukrainian name, but
-# "Kiev" is more common in English.
-Zone Europe/Kiev	2:02:04 -	LMT	1880
-			2:02:04	-	KMT	1924 May  2 # Kiev Mean Time
-			2:00	-	EET	1930 Jun 21
-			3:00	-	MSK	1941 Sep 20
-			1:00	C-Eur	CE%sT	1943 Nov  6
-			3:00	Russia	MSK/MSD	1990
-			3:00	-	MSK	1990 Jul  1 2:00
-			2:00	-	EET	1992
-			2:00	E-Eur	EE%sT	1995
-			2:00	EU	EE%sT
-# Ruthenia used CET 1990/1991.
-# "Uzhhorod" is the transliteration of the Ukrainian name, but
-# "Uzhgorod" is more common in English.
-Zone Europe/Uzhgorod	1:29:12 -	LMT	1890 Oct
-			1:00	-	CET	1940
-			1:00	C-Eur	CE%sT	1944 Oct
-			1:00	1:00	CEST	1944 Oct 26
-			1:00	-	CET	1945 Jun 29
-			3:00	Russia	MSK/MSD	1990
-			3:00	-	MSK	1990 Jul  1 2:00
-			1:00	-	CET	1991 Mar 31 3:00
-			2:00	-	EET	1992
-			2:00	E-Eur	EE%sT	1995
-			2:00	EU	EE%sT
-# Zaporozh'ye and eastern Lugansk oblasts observed DST 1990/1991.
-# "Zaporizhia" is the transliteration of the Ukrainian name, but
-# "Zaporozh'ye" is more common in English.  Use the common English
-# spelling, except omit the apostrophe as it is not allowed in
-# portable Posix file names.
-Zone Europe/Zaporozhye	2:20:40 -	LMT	1880
-			2:20	-	CUT	1924 May  2 # Central Ukraine T
-			2:00	-	EET	1930 Jun 21
-			3:00	-	MSK	1941 Aug 25
-			1:00	C-Eur	CE%sT	1943 Oct 25
-			3:00	Russia	MSK/MSD	1991 Mar 31 2:00
-			2:00	E-Eur	EE%sT	1995
-			2:00	EU	EE%sT
-# Central Crimea used Moscow time 1994/1997.
-Zone Europe/Simferopol	2:16:24 -	LMT	1880
-			2:16	-	SMT	1924 May  2 # Simferopol Mean T
-			2:00	-	EET	1930 Jun 21
-			3:00	-	MSK	1941 Nov
-			1:00	C-Eur	CE%sT	1944 Apr 13
-			3:00	Russia	MSK/MSD	1990
-			3:00	-	MSK	1990 Jul  1 2:00
-			2:00	-	EET	1992
-# From Paul Eggert (2006-03-22):
-# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched
-# from Kiev to Moscow time sometime after the January 1994 elections.
-# Shanks (1999) says ``date of change uncertain'', but implies that it happened
-# sometime between the 1994 DST switches.  Shanks & Pottenger simply say
-# 1994-09-25 03:00, but that can't be right.  For now, guess it
-# changed in May.
-			2:00	E-Eur	EE%sT	1994 May
-# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
-			3:00	E-Eur	MSK/MSD	1996 Mar 31 3:00s
-			3:00	1:00	MSD	1996 Oct 27 3:00s
-# IATA SSIM (1997-09) says Crimea switched to EET/EEST.
-# Assume it happened in March by not changing the clocks.
-			3:00	Russia	MSK/MSD	1997
-			3:00	-	MSK	1997 Mar lastSun 1:00u
-			2:00	EU	EE%sT
-
-###############################################################################
-
-# One source shows that Bulgaria, Cyprus, Finland, and Greece observe DST from
-# the last Sunday in March to the last Sunday in September in 1986.
-# The source shows Romania changing a day later than everybody else.
-#
-# According to Bernard Sieloff's source, Poland is in the MET time zone but
-# uses the WE DST rules.  The Western USSR uses EET+1 and ME DST rules.
-# Bernard Sieloff's source claims Romania switches on the same day, but at
-# 00:00 standard time (i.e., 01:00 DST).  It also claims that Turkey
-# switches on the same day, but switches on at 01:00 standard time
-# and off at 00:00 standard time (i.e., 01:00 DST)
-
-# ...
-# Date: Wed, 28 Jan 87 16:56:27 -0100
-# From: Tom Hofmann
-# ...
-#
-# ...the European time rules are...standardized since 1981, when
-# most European coun[tr]ies started DST.  Before that year, only
-# a few countries (UK, France, Italy) had DST, each according
-# to own national rules.  In 1981, however, DST started on
-# 'Apr firstSun', and not on 'Mar lastSun' as in the following
-# years...
-# But also since 1981 there are some more national exceptions
-# than listed in 'europe': Switzerland, for example, joined DST
-# one year later, Denmark ended DST on 'Oct 1' instead of 'Sep
-# lastSun' in 1981---I don't know how they handle now.
-#
-# Finally, DST ist always from 'Apr 1' to 'Oct 1' in the
-# Soviet Union (as far as I know).
-#
-# Tom Hofmann, Scientific Computer Center, CIBA-GEIGY AG,
-# 4002 Basle, Switzerland
-# ...
-
-# ...
-# Date: Wed, 4 Feb 87 22:35:22 +0100
-# From: Dik T. Winter
-# ...
-#
-# The information from Tom Hofmann is (as far as I know) not entirely correct.
-# After a request from chongo at amdahl I tried to retrieve all information
-# about DST in Europe.  I was able to find all from about 1969.
-#
-# ...standardization on DST in Europe started in about 1977 with switches on
-# first Sunday in April and last Sunday in September...
-# In 1981 UK joined Europe insofar that
-# the starting day for both shifted to last Sunday in March.  And from 1982
-# the whole of Europe used DST, with switch dates April 1 and October 1 in
-# the Sov[i]et Union.  In 1985 the SU reverted to standard Europe[a]n switch
-# dates...
-#
-# It should also be remembered that time-zones are not constants; e.g.
-# Portugal switched in 1976 from MET (or CET) to WET with DST...
-# Note also that though there were rules for switch dates not
-# all countries abided to these dates, and many individual deviations
-# occurred, though not since 1982 I believe.  Another note: it is always
-# assumed that DST is 1 hour ahead of normal time, this need not be the
-# case; at least in the Netherlands there have been times when DST was 2 hours
-# in advance of normal time.
-#
-# ...
-# dik t. winter, cwi, amsterdam, nederland
-# ...
-
-# From Bob Devine (1988-01-28):
-# ...
-# Greece: Last Sunday in April to last Sunday in September (iffy on dates).
-# Since 1978.  Change at midnight.
-# ...
-# Monaco: has same DST as France.
-# ...
diff --git a/tools/zoneinfo/tzdata2008h/factory b/tools/zoneinfo/tzdata2008h/factory
deleted file mode 100644
index 946063c..0000000
--- a/tools/zoneinfo/tzdata2008h/factory
+++ /dev/null
@@ -1,8 +0,0 @@
-# @(#)factory	8.1
-
-# For companies who don't want to put time zone specification in
-# their installation procedures.  When users run date, they'll get the message.
-# Also useful for the "comp.sources" version.
-
-# Zone	NAME	GMTOFF	RULES	FORMAT
-Zone	Factory	0	- "Local time zone must be set--see zic manual page"
diff --git a/tools/zoneinfo/tzdata2008h/iso3166.tab b/tools/zoneinfo/tzdata2008h/iso3166.tab
deleted file mode 100644
index 8d62399..0000000
--- a/tools/zoneinfo/tzdata2008h/iso3166.tab
+++ /dev/null
@@ -1,269 +0,0 @@
-# ISO 3166 alpha-2 country codes
-#
-# @(#)iso3166.tab	8.5
-#
-# From Paul Eggert (2006-09-27):
-#
-# This file contains a table with the following columns:
-# 1.  ISO 3166-1 alpha-2 country code, current as of
-#     ISO 3166-1 Newsletter VI-1 (2007-09-21).  See:
-#     <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/index.html">
-#     ISO 3166 Maintenance agency (ISO 3166/MA)
-#     </a>.
-# 2.  The usual English name for the country,
-#     chosen so that alphabetic sorting of subsets produces helpful lists.
-#     This is not the same as the English name in the ISO 3166 tables.
-#
-# Columns are separated by a single tab.
-# The table is sorted by country code.
-#
-# Lines beginning with `#' are comments.
-#
-#country-
-#code	country name
-AD	Andorra
-AE	United Arab Emirates
-AF	Afghanistan
-AG	Antigua & Barbuda
-AI	Anguilla
-AL	Albania
-AM	Armenia
-AN	Netherlands Antilles
-AO	Angola
-AQ	Antarctica
-AR	Argentina
-AS	Samoa (American)
-AT	Austria
-AU	Australia
-AW	Aruba
-AX	Aaland Islands
-AZ	Azerbaijan
-BA	Bosnia & Herzegovina
-BB	Barbados
-BD	Bangladesh
-BE	Belgium
-BF	Burkina Faso
-BG	Bulgaria
-BH	Bahrain
-BI	Burundi
-BJ	Benin
-BL	St Barthelemy
-BM	Bermuda
-BN	Brunei
-BO	Bolivia
-BR	Brazil
-BS	Bahamas
-BT	Bhutan
-BV	Bouvet Island
-BW	Botswana
-BY	Belarus
-BZ	Belize
-CA	Canada
-CC	Cocos (Keeling) Islands
-CD	Congo (Dem. Rep.)
-CF	Central African Rep.
-CG	Congo (Rep.)
-CH	Switzerland
-CI	Cote d'Ivoire
-CK	Cook Islands
-CL	Chile
-CM	Cameroon
-CN	China
-CO	Colombia
-CR	Costa Rica
-CU	Cuba
-CV	Cape Verde
-CX	Christmas Island
-CY	Cyprus
-CZ	Czech Republic
-DE	Germany
-DJ	Djibouti
-DK	Denmark
-DM	Dominica
-DO	Dominican Republic
-DZ	Algeria
-EC	Ecuador
-EE	Estonia
-EG	Egypt
-EH	Western Sahara
-ER	Eritrea
-ES	Spain
-ET	Ethiopia
-FI	Finland
-FJ	Fiji
-FK	Falkland Islands
-FM	Micronesia
-FO	Faroe Islands
-FR	France
-GA	Gabon
-GB	Britain (UK)
-GD	Grenada
-GE	Georgia
-GF	French Guiana
-GG	Guernsey
-GH	Ghana
-GI	Gibraltar
-GL	Greenland
-GM	Gambia
-GN	Guinea
-GP	Guadeloupe
-GQ	Equatorial Guinea
-GR	Greece
-GS	South Georgia & the South Sandwich Islands
-GT	Guatemala
-GU	Guam
-GW	Guinea-Bissau
-GY	Guyana
-HK	Hong Kong
-HM	Heard Island & McDonald Islands
-HN	Honduras
-HR	Croatia
-HT	Haiti
-HU	Hungary
-ID	Indonesia
-IE	Ireland
-IL	Israel
-IM	Isle of Man
-IN	India
-IO	British Indian Ocean Territory
-IQ	Iraq
-IR	Iran
-IS	Iceland
-IT	Italy
-JE	Jersey
-JM	Jamaica
-JO	Jordan
-JP	Japan
-KE	Kenya
-KG	Kyrgyzstan
-KH	Cambodia
-KI	Kiribati
-KM	Comoros
-KN	St Kitts & Nevis
-KP	Korea (North)
-KR	Korea (South)
-KW	Kuwait
-KY	Cayman Islands
-KZ	Kazakhstan
-LA	Laos
-LB	Lebanon
-LC	St Lucia
-LI	Liechtenstein
-LK	Sri Lanka
-LR	Liberia
-LS	Lesotho
-LT	Lithuania
-LU	Luxembourg
-LV	Latvia
-LY	Libya
-MA	Morocco
-MC	Monaco
-MD	Moldova
-ME	Montenegro
-MF	St Martin (French part)
-MG	Madagascar
-MH	Marshall Islands
-MK	Macedonia
-ML	Mali
-MM	Myanmar (Burma)
-MN	Mongolia
-MO	Macau
-MP	Northern Mariana Islands
-MQ	Martinique
-MR	Mauritania
-MS	Montserrat
-MT	Malta
-MU	Mauritius
-MV	Maldives
-MW	Malawi
-MX	Mexico
-MY	Malaysia
-MZ	Mozambique
-NA	Namibia
-NC	New Caledonia
-NE	Niger
-NF	Norfolk Island
-NG	Nigeria
-NI	Nicaragua
-NL	Netherlands
-NO	Norway
-NP	Nepal
-NR	Nauru
-NU	Niue
-NZ	New Zealand
-OM	Oman
-PA	Panama
-PE	Peru
-PF	French Polynesia
-PG	Papua New Guinea
-PH	Philippines
-PK	Pakistan
-PL	Poland
-PM	St Pierre & Miquelon
-PN	Pitcairn
-PR	Puerto Rico
-PS	Palestine
-PT	Portugal
-PW	Palau
-PY	Paraguay
-QA	Qatar
-RE	Reunion
-RO	Romania
-RS	Serbia
-RU	Russia
-RW	Rwanda
-SA	Saudi Arabia
-SB	Solomon Islands
-SC	Seychelles
-SD	Sudan
-SE	Sweden
-SG	Singapore
-SH	St Helena
-SI	Slovenia
-SJ	Svalbard & Jan Mayen
-SK	Slovakia
-SL	Sierra Leone
-SM	San Marino
-SN	Senegal
-SO	Somalia
-SR	Suriname
-ST	Sao Tome & Principe
-SV	El Salvador
-SY	Syria
-SZ	Swaziland
-TC	Turks & Caicos Is
-TD	Chad
-TF	French Southern & Antarctic Lands
-TG	Togo
-TH	Thailand
-TJ	Tajikistan
-TK	Tokelau
-TL	East Timor
-TM	Turkmenistan
-TN	Tunisia
-TO	Tonga
-TR	Turkey
-TT	Trinidad & Tobago
-TV	Tuvalu
-TW	Taiwan
-TZ	Tanzania
-UA	Ukraine
-UG	Uganda
-UM	US minor outlying islands
-US	United States
-UY	Uruguay
-UZ	Uzbekistan
-VA	Vatican City
-VC	St Vincent
-VE	Venezuela
-VG	Virgin Islands (UK)
-VI	Virgin Islands (US)
-VN	Vietnam
-VU	Vanuatu
-WF	Wallis & Futuna
-WS	Samoa (western)
-YE	Yemen
-YT	Mayotte
-ZA	South Africa
-ZM	Zambia
-ZW	Zimbabwe
diff --git a/tools/zoneinfo/tzdata2008h/leapseconds b/tools/zoneinfo/tzdata2008h/leapseconds
deleted file mode 100644
index a2f4f0b..0000000
--- a/tools/zoneinfo/tzdata2008h/leapseconds
+++ /dev/null
@@ -1,92 +0,0 @@
-# @(#)leapseconds	8.6
-
-# Allowance for leapseconds added to each timezone file.
-
-# The International Earth Rotation Service periodically uses leap seconds
-# to keep UTC to within 0.9 s of UT1
-# (which measures the true angular orientation of the earth in space); see
-# Terry J Quinn, The BIPM and the accurate measure of time,
-# Proc IEEE 79, 7 (July 1991), 894-905.
-# There were no leap seconds before 1972, because the official mechanism
-# accounting for the discrepancy between atomic time and the earth's rotation
-# did not exist until the early 1970s.
-
-# The correction (+ or -) is made at the given time, so lines
-# will typically look like:
-#	Leap	YEAR	MON	DAY	23:59:60	+	R/S
-# or
-#	Leap	YEAR	MON	DAY	23:59:59	-	R/S
-
-# If the leapsecond is Rolling (R) the given time is local time
-# If the leapsecond is Stationary (S) the given time is UTC
-
-# Leap	YEAR	MONTH	DAY	HH:MM:SS	CORR	R/S
-Leap	1972	Jun	30	23:59:60	+	S
-Leap	1972	Dec	31	23:59:60	+	S
-Leap	1973	Dec	31	23:59:60	+	S
-Leap	1974	Dec	31	23:59:60	+	S
-Leap	1975	Dec	31	23:59:60	+	S
-Leap	1976	Dec	31	23:59:60	+	S
-Leap	1977	Dec	31	23:59:60	+	S
-Leap	1978	Dec	31	23:59:60	+	S
-Leap	1979	Dec	31	23:59:60	+	S
-Leap	1981	Jun	30	23:59:60	+	S
-Leap	1982	Jun	30	23:59:60	+	S
-Leap	1983	Jun	30	23:59:60	+	S
-Leap	1985	Jun	30	23:59:60	+	S
-Leap	1987	Dec	31	23:59:60	+	S
-Leap	1989	Dec	31	23:59:60	+	S
-Leap	1990	Dec	31	23:59:60	+	S
-Leap	1992	Jun	30	23:59:60	+	S
-Leap	1993	Jun	30	23:59:60	+	S
-Leap	1994	Jun	30	23:59:60	+	S
-Leap	1995	Dec	31	23:59:60	+	S
-Leap	1997	Jun	30	23:59:60	+	S
-Leap	1998	Dec	31	23:59:60	+	S
-Leap	2005	Dec	31	23:59:60	+	S
-Leap	2008	Dec	31	23:59:60	+	S
-
-# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
-#
-# SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
-#
-# SERVICE DE LA ROTATION TERRESTRE
-# OBSERVATOIRE DE PARIS
-# 61, Av. de l'Observatoire 75014 PARIS (France)
-# Tel.      : 33 (0) 1 40 51 22 26
-# FAX       : 33 (0) 1 40 51 22 91
-# e-mail    : services.iers@obspm.fr
-# http://hpiers.obspm.fr/eop-pc
-#
-# Paris, 4 July 2008
-#
-# Bulletin C 36
-#
-# To authorities responsible
-# for the measurement and
-# distribution of time
-#
-# UTC TIME STEP
-# on the 1st of January 2009
-#
-# A positive leap second will be introduced at the end of December 2008.
-# The sequence of dates of the UTC second markers will be:		
-#
-# 2008 December 31,     23h 59m 59s
-# 2008 December 31,     23h 59m 60s
-# 2009 January   1,      0h  0m  0s
-#
-# The difference between UTC and the International Atomic Time TAI is:
-#
-# from 2006 January 1, 0h UTC, to 2009 January 1  0h UTC  : UTC-TAI = - 33s
-# from 2009 January 1, 0h UTC, until further notice       : UTC-TAI = - 34s
-#
-# Leap seconds can be introduced in UTC at the end of the months of December
-# or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every
-# six months, either to announce a time step in UTC or to confirm that there
-# will be no time step at the next possible date.
-#
-# Daniel GAMBIS
-# Head		
-# Earth Orientation Center of IERS
-# Observatoire de Paris, France
diff --git a/tools/zoneinfo/tzdata2008h/northamerica b/tools/zoneinfo/tzdata2008h/northamerica
deleted file mode 100644
index b8b333c..0000000
--- a/tools/zoneinfo/tzdata2008h/northamerica
+++ /dev/null
@@ -1,2651 +0,0 @@
-# @(#)northamerica	8.24
-# <pre>
-
-# also includes Central America and the Caribbean
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (1999-03-22):
-# A reliable and entertaining source about time zones is
-# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
-
-###############################################################################
-
-# United States
-
-# From Paul Eggert (1999-03-31):
-# Howse writes (pp 121-125) that time zones were invented by
-# Professor Charles Ferdinand Dowd (1825-1904),
-# Principal of Temple Grove Ladies' Seminary (Saratoga Springs, NY).
-# His pamphlet ``A System of National Time for Railroads'' (1870)
-# was the result of his proposals at the Convention of Railroad Trunk Lines
-# in New York City (1869-10).  His 1870 proposal was based on Washington, DC,
-# but in 1872-05 he moved the proposed origin to Greenwich.
-# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
-# and the most of the country soon followed suit.
-
-# From Paul Eggert (2005-04-16):
-# That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
-# See p 46 of David Prerau, Seize the daylight, Thunder's Mouth Press (2005).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data in the US is
-# Thomas G. Shanks, The American Atlas (5th edition),
-# San Diego: ACS Publications, Inc. (1991).
-# Make sure you have the errata sheet; the book is somewhat useless without it.
-# It is the source for most of the pre-1991 US entries below.
-
-# From Paul Eggert (2001-03-06):
-# Daylight Saving Time was first suggested as a joke by Benjamin Franklin
-# in his whimsical essay ``An Economical Project for Diminishing the Cost
-# of Light'' published in the Journal de Paris (1784-04-26).
-# Not everyone is happy with the results:
-#
-#	I don't really care how time is reckoned so long as there is some
-#	agreement about it, but I object to being told that I am saving
-#	daylight when my reason tells me that I am doing nothing of the kind.
-#	I even object to the implication that I am wasting something
-#	valuable if I stay in bed after the sun has risen.  As an admirer
-#	of moonlight I resent the bossy insistence of those who want to
-#	reduce my time for enjoying it.  At the back of the Daylight Saving
-#	scheme I detect the bony, blue-fingered hand of Puritanism, eager
-#	to push people into bed earlier, and get them up earlier, to make
-#	them healthy, wealthy and wise in spite of themselves.
-#
-#	-- Robertson Davies, The diary of Samuel Marchbanks,
-#	   Clarke, Irwin (1947), XIX, Sunday
-#
-# For more about the first ten years of DST in the United States, see
-# Robert Garland's <a href="http://www.clpgh.org/exhibit/dst.html">
-# Ten years of daylight saving from the Pittsburgh standpoint
-# (Carnegie Library of Pittsburgh, 1927)</a>.
-#
-# Shanks says that DST was called "War Time" in the US in 1918 and 1919.
-# However, DST was imposed by the Standard Time Act of 1918, which
-# was the first nationwide legal time standard, and apparently
-# time was just called "Standard Time" or "Daylight Saving Time".
-
-# From Arthur David Olson:
-# US Daylight Saving Time ended on the last Sunday of *October* in 1974.
-# See, for example, the front page of the Saturday, 1974-10-26
-# and Sunday, 1974-10-27 editions of the Washington Post.
-
-# From Arthur David Olson:
-# Before the Uniform Time Act of 1966 took effect in 1967, observance of
-# Daylight Saving Time in the US was by local option, except during wartime.
-
-# From Arthur David Olson (2000-09-25):
-# Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama.
-# In the introduction, Oboler spoke of "Eastern Peace Time."
-# An AltaVista search turned up
-# <a href="http://rowayton.org/rhs/hstaug45.html">:
-# "When the time is announced over the radio now, it is 'Eastern Peace
-# Time' instead of the old familiar 'Eastern War Time.'  Peace is wonderful."
-# </a> (August 1945) by way of confirmation.
-
-# From Joseph Gallant citing
-# George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
-# At 7 P.M. (Eastern War Time) [on 1945-08-14], the networks were set
-# to switch to London for Attlee's address, but the American people
-# never got to hear his speech live. According to one press account,
-# CBS' Bob Trout was first to announce the word of Japan's surrender,
-# but a few seconds later, NBC, ABC and Mutual also flashed the word
-# of surrender, all of whom interrupting the bells of Big Ben in
-# London which were to precede Mr. Attlee's speech.
-
-# From Paul Eggert (2003-02-09): It was Robert St John, not Bob Trout.  From
-# Myrna Oliver's obituary of St John on page B16 of today's Los Angeles Times:
-#
-# ... a war-weary U.S. clung to radios, awaiting word of Japan's surrender.
-# Any announcement from Asia would reach St. John's New York newsroom on a
-# wire service teletype machine, which had prescribed signals for major news.
-# Associated Press, for example, would ring five bells before spewing out
-# typed copy of an important story, and 10 bells for news "of transcendental
-# importance."
-#
-# On Aug. 14, stalling while talking steadily into the NBC networks' open
-# microphone, St. John heard five bells and waited only to hear a sixth bell,
-# before announcing confidently: "Ladies and gentlemen, World War II is over.
-# The Japanese have agreed to our surrender terms."
-#
-# He had scored a 20-second scoop on other broadcasters.
-
-# From Arthur David Olson (2005-08-22):
-# Paul has been careful to use the "US" rules only in those locations
-# that are part of the United States; this reflects the real scope of
-# U.S. government action.  So even though the "US" rules have changed
-# in the latest release, other countries won't be affected.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	US	1918	1919	-	Mar	lastSun	2:00	1:00	D
-Rule	US	1918	1919	-	Oct	lastSun	2:00	0	S
-Rule	US	1942	only	-	Feb	9	2:00	1:00	W # War
-Rule	US	1945	only	-	Aug	14	23:00u	1:00	P # Peace
-Rule	US	1945	only	-	Sep	30	2:00	0	S
-Rule	US	1967	2006	-	Oct	lastSun	2:00	0	S
-Rule	US	1967	1973	-	Apr	lastSun	2:00	1:00	D
-Rule	US	1974	only	-	Jan	6	2:00	1:00	D
-Rule	US	1975	only	-	Feb	23	2:00	1:00	D
-Rule	US	1976	1986	-	Apr	lastSun	2:00	1:00	D
-Rule	US	1987	2006	-	Apr	Sun>=1	2:00	1:00	D
-Rule	US	2007	max	-	Mar	Sun>=8	2:00	1:00	D
-Rule	US	2007	max	-	Nov	Sun>=1	2:00	0	S
-
-# From Arthur David Olson, 2005-12-19
-# We generate the files specified below to guard against old files with
-# obsolete information being left in the time zone binary directory.
-# We limit the list to names that have appeared in previous versions of
-# this time zone package.
-# We do these as separate Zones rather than as Links to avoid problems if
-# a particular place changes whether it observes DST.
-# We put these specifications here in the northamerica file both to
-# increase the chances that they'll actually get compiled and to
-# avoid the need to duplicate the US rules in another file.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	EST		 -5:00	-	EST
-Zone	MST		 -7:00	-	MST
-Zone	HST		-10:00	-	HST
-Zone	EST5EDT		 -5:00	US	E%sT
-Zone	CST6CDT		 -6:00	US	C%sT
-Zone	MST7MDT		 -7:00	US	M%sT
-Zone	PST8PDT		 -8:00	US	P%sT
-
-# From Bob Devine (1988-01-28):
-# ...Alaska (and Hawaii) had the timezone names changed in 1967.
-#    old			 new
-#    Pacific Standard Time(PST)  -same-
-#    Yukon Standard Time(YST)    -same-
-#    Central Alaska S.T. (CAT)   Alaska-Hawaii St[an]dard Time (AHST)
-#    Nome Standard Time (NT)     Bering Standard Time (BST)
-#
-# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
-#    The YST zone now covers nearly all of the state, AHST just part
-#    of the Aleutian islands.   No DST.
-
-# From Paul Eggert (1995-12-19):
-# The tables below use `NST', not `NT', for Nome Standard Time.
-# I invented `CAWT' for Central Alaska War Time.
-
-# From U. S. Naval Observatory (1989-01-19):
-# USA  EASTERN       5 H  BEHIND UTC    NEW YORK, WASHINGTON
-# USA  EASTERN       4 H  BEHIND UTC    APR 3 - OCT 30
-# USA  CENTRAL       6 H  BEHIND UTC    CHICAGO, HOUSTON
-# USA  CENTRAL       5 H  BEHIND UTC    APR 3 - OCT 30
-# USA  MOUNTAIN      7 H  BEHIND UTC    DENVER
-# USA  MOUNTAIN      6 H  BEHIND UTC    APR 3 - OCT 30
-# USA  PACIFIC       8 H  BEHIND UTC    L.A., SAN FRANCISCO
-# USA  PACIFIC       7 H  BEHIND UTC    APR 3 - OCT 30
-# USA  ALASKA STD    9 H  BEHIND UTC    MOST OF ALASKA     (AKST)
-# USA  ALASKA STD    8 H  BEHIND UTC    APR 3 - OCT 30 (AKDT)
-# USA  ALEUTIAN     10 H  BEHIND UTC    ISLANDS WEST OF 170W
-# USA  - " -         9 H  BEHIND UTC    APR 3 - OCT 30
-# USA  HAWAII       10 H  BEHIND UTC
-# USA  BERING       11 H  BEHIND UTC    SAMOA, MIDWAY
-
-# From Arthur David Olson (1989-01-21):
-# The above dates are for 1988.
-# Note the "AKST" and "AKDT" abbreviations, the claim that there's
-# no DST in Samoa, and the claim that there is DST in Alaska and the
-# Aleutians.
-
-# From Arthur David Olson (1988-02-13):
-# Legal standard time zone names, from United States Code (1982 Edition and
-# Supplement III), Title 15, Chapter 6, Section 260 and forward.  First, names
-# up to 1967-04-01 (when most provisions of the Uniform Time Act of 1966
-# took effect), as explained in sections 263 and 261:
-#	(none)
-#	United States standard eastern time
-#	United States standard mountain time
-#	United States standard central time
-#	United States standard Pacific time
-#	(none)
-#	United States standard Alaska time
-#	(none)
-# Next, names from 1967-04-01 until 1983-11-30 (the date for
-# public law 98-181):
-#	Atlantic standard time
-#	eastern standard time
-#	central standard time
-#	mountain standard time
-#	Pacific standard time
-#	Yukon standard time
-#	Alaska-Hawaii standard time
-#	Bering standard time
-# And after 1983-11-30:
-#	Atlantic standard time
-#	eastern standard time
-#	central standard time
-#	mountain standard time
-#	Pacific standard time
-#	Alaska standard time
-#	Hawaii-Aleutian standard time
-#	Samoa standard time
-# The law doesn't give abbreviations.
-#
-# From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
-# Public law 106-564 (2000-12-23) introduced the abbreviation
-# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
-# See the file "australasia".
-
-# From Arthur David Olson, 2005-08-09
-# The following was signed into law on 2005-08-08.
-#
-# H.R. 6, Energy Policy Act of 2005, SEC. 110. DAYLIGHT SAVINGS.
-#   (a) Amendment- Section 3(a) of the Uniform Time Act of 1966 (15
-#   U.S.C. 260a(a)) is amended--
-#     (1) by striking `first Sunday of April' and inserting `second
-#     Sunday of March'; and
-#     (2) by striking `last Sunday of October' and inserting `first
-#     Sunday of November'.
-#   (b) Effective Date- Subsection (a) shall take effect 1 year after the
-#   date of enactment of this Act or March 1, 2007, whichever is later.
-#   (c) Report to Congress- Not later than 9 months after the effective
-#   date stated in subsection (b), the Secretary shall report to Congress
-#   on the impact of this section on energy consumption in the United
-#   States.
-#   (d) Right to Revert- Congress retains the right to revert the
-#   Daylight Saving Time back to the 2005 time schedules once the
-#   Department study is complete.
-
-# US eastern time, represented by New York
-
-# Connecticut, Delaware, District of Columbia, most of Florida,
-# Georgia, southeast Indiana (Dearborn and Ohio counties), eastern Kentucky
-# (except America/Kentucky/Louisville below), Maine, Maryland, Massachusetts,
-# New Hampshire, New Jersey, New York, North Carolina, Ohio,
-# Pennsylvania, Rhode Island, South Carolina, eastern Tennessee,
-# Vermont, Virginia, West Virginia
-
-# From Dave Cantor (2004-11-02):
-# Early this summer I had the occasion to visit the Mount Washington
-# Observatory weather station atop (of course!) Mount Washington [, NH]....
-# One of the staff members said that the station was on Eastern Standard Time
-# and didn't change their clocks for Daylight Saving ... so that their
-# reports will always have times which are 5 hours behind UTC.
-
-# From Paul Eggert (2005-08-26):
-# According to today's Huntsville Times
-# <http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1>
-# a few towns on Alabama's "eastern border with Georgia, such as Phenix City
-# in Russell County, Lanett in Chambers County and some towns in Lee County,
-# set their watches and clocks on Eastern time."  It quotes H.H. "Bubba"
-# Roberts, city administrator in Phenix City. as saying "We are in the Central
-# time zone, but we do go by the Eastern time zone because so many people work
-# in Columbus."
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	NYC	1920	only	-	Mar	lastSun	2:00	1:00	D
-Rule	NYC	1920	only	-	Oct	lastSun	2:00	0	S
-Rule	NYC	1921	1966	-	Apr	lastSun	2:00	1:00	D
-Rule	NYC	1921	1954	-	Sep	lastSun	2:00	0	S
-Rule	NYC	1955	1966	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/New_York	-4:56:02 -	LMT	1883 Nov 18 12:03:58
-			-5:00	US	E%sT	1920
-			-5:00	NYC	E%sT	1942
-			-5:00	US	E%sT	1946
-			-5:00	NYC	E%sT	1967
-			-5:00	US	E%sT
-
-# US central time, represented by Chicago
-
-# Alabama, Arkansas, Florida panhandle (Bay, Calhoun, Escambia,
-# Gulf, Holmes, Jackson, Okaloosa, Santa Rosa, Walton, and
-# Washington counties), Illinois, western Indiana
-# (Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
-# Vanderburgh, and Warrick counties), Iowa, most of Kansas, western
-# Kentucky, Louisiana, Minnesota, Mississippi, Missouri, eastern
-# Nebraska, eastern North Dakota, Oklahoma, eastern South Dakota,
-# western Tennessee, most of Texas, Wisconsin
-
-# From Larry M. Smith (2006-04-26) re Wisconsin:
-# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
-# is currently enforced at the 01:00 time of change.  Because the local
-# "bar time" in the state corresponds to 02:00, a number of citations
-# are issued for the "sale of class 'B' alcohol after prohibited
-# hours" within the deviated hour of this change every year....
-#
-# From Douglas R. Bomberg (2007-03-12):
-# Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
-# Statue 175 closer in synch with the US Congress' intent....
-# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	Chicago	1920	only	-	Jun	13	2:00	1:00	D
-Rule	Chicago	1920	1921	-	Oct	lastSun	2:00	0	S
-Rule	Chicago	1921	only	-	Mar	lastSun	2:00	1:00	D
-Rule	Chicago	1922	1966	-	Apr	lastSun	2:00	1:00	D
-Rule	Chicago	1922	1954	-	Sep	lastSun	2:00	0	S
-Rule	Chicago	1955	1966	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Chicago	-5:50:36 -	LMT	1883 Nov 18 12:09:24
-			-6:00	US	C%sT	1920
-			-6:00	Chicago	C%sT	1936 Mar  1 2:00
-			-5:00	-	EST	1936 Nov 15 2:00
-			-6:00	Chicago	C%sT	1942
-			-6:00	US	C%sT	1946
-			-6:00	Chicago	C%sT	1967
-			-6:00	US	C%sT
-# Oliver County, ND switched from mountain to central time on 1992-10-25.
-Zone America/North_Dakota/Center -6:45:12 - LMT	1883 Nov 18 12:14:48
-			-7:00	US	M%sT	1992 Oct 25 02:00
-			-6:00	US	C%sT
-# Morton County, ND, switched from mountain to central time on
-# 2003-10-26, except for the area around Mandan which was already central time.
-# See <http://dmses.dot.gov/docimages/p63/135818.pdf>.
-# Officially this switch also included part of Sioux County, and
-# Jones, Mellette, and Todd Counties in South Dakota;
-# but in practice these other counties were already observing central time.
-# See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>.
-Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
-			-7:00	US	M%sT	2003 Oct 26 02:00
-			-6:00	US	C%sT
-
-# US mountain time, represented by Denver
-#
-# Colorado, far western Kansas, Montana, western
-# Nebraska, Nevada border (Jackpot, Owyhee, and Mountain City),
-# New Mexico, southwestern North Dakota,
-# western South Dakota, far western Texas (El Paso County, Hudspeth County,
-# and Pine Springs and Nickel Creek in Culberson County), Utah, Wyoming
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	Denver	1920	1921	-	Mar	lastSun	2:00	1:00	D
-Rule	Denver	1920	only	-	Oct	lastSun	2:00	0	S
-Rule	Denver	1921	only	-	May	22	2:00	0	S
-Rule	Denver	1965	1966	-	Apr	lastSun	2:00	1:00	D
-Rule	Denver	1965	1966	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Denver	-6:59:56 -	LMT	1883 Nov 18 12:00:04
-			-7:00	US	M%sT	1920
-			-7:00	Denver	M%sT	1942
-			-7:00	US	M%sT	1946
-			-7:00	Denver	M%sT	1967
-			-7:00	US	M%sT
-
-# US Pacific time, represented by Los Angeles
-#
-# California, northern Idaho (Benewah, Bonner, Boundary, Clearwater,
-# Idaho, Kootenai, Latah, Lewis, Nez Perce, and Shoshone counties,
-# and the northern three-quarters of Idaho county),
-# most of Nevada, most of Oregon, and Washington
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	CA	1948	only	-	Mar	14	2:00	1:00	D
-Rule	CA	1949	only	-	Jan	 1	2:00	0	S
-Rule	CA	1950	1966	-	Apr	lastSun	2:00	1:00	D
-Rule	CA	1950	1961	-	Sep	lastSun	2:00	0	S
-Rule	CA	1962	1966	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Los_Angeles -7:52:58 -	LMT	1883 Nov 18 12:07:02
-			-8:00	US	P%sT	1946
-			-8:00	CA	P%sT	1967
-			-8:00	US	P%sT
-
-# Alaska
-# AK%sT is the modern abbreviation for -9:00 per USNO.
-#
-# From Paul Eggert (2001-05-30):
-# Howse writes that Alaska switched from the Julian to the Gregorian calendar,
-# and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
-# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
-# also a Friday.  Include only the time zone part of this transition,
-# ignoring the switch from Julian to Gregorian, since we can't represent
-# the Julian calendar.
-#
-# As far as we know, none of the exact locations mentioned below were
-# permanently inhabited in 1867 by anyone using either calendar.
-# (Yakutat was colonized by the Russians in 1799, but the settlement
-# was destroyed in 1805 by a Yakutat-kon war party.)  However, there
-# were nearby inhabitants in some cases and for our purposes perhaps
-# it's best to simply use the official transition.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Juneau	 15:02:19 -	LMT	1867 Oct 18
-			 -8:57:41 -	LMT	1900 Aug 20 12:00
-			 -8:00	-	PST	1942
-			 -8:00	US	P%sT	1946
-			 -8:00	-	PST	1969
-			 -8:00	US	P%sT	1983 Oct 30 2:00
-			 -9:00	US	Y%sT	1983 Nov 30
-			 -9:00	US	AK%sT
-Zone America/Yakutat	 14:41:05 -	LMT	1867 Oct 18
-			 -9:18:55 -	LMT	1900 Aug 20 12:00
-			 -9:00	-	YST	1942
-			 -9:00	US	Y%sT	1946
-			 -9:00	-	YST	1969
-			 -9:00	US	Y%sT	1983 Nov 30
-			 -9:00	US	AK%sT
-Zone America/Anchorage	 14:00:24 -	LMT	1867 Oct 18
-			 -9:59:36 -	LMT	1900 Aug 20 12:00
-			-10:00	-	CAT	1942
-			-10:00	US	CAT/CAWT 1945 Aug 14 23:00u
-			-10:00	US	CAT/CAPT 1946 # Peace
-			-10:00	-	CAT	1967 Apr
-			-10:00	-	AHST	1969
-			-10:00	US	AH%sT	1983 Oct 30 2:00
-			 -9:00	US	Y%sT	1983 Nov 30
-			 -9:00	US	AK%sT
-Zone America/Nome	 12:58:21 -	LMT	1867 Oct 18
-			-11:01:38 -	LMT	1900 Aug 20 12:00
-			-11:00	-	NST	1942
-			-11:00	US	N%sT	1946
-			-11:00	-	NST	1967 Apr
-			-11:00	-	BST	1969
-			-11:00	US	B%sT	1983 Oct 30 2:00
-			 -9:00	US	Y%sT	1983 Nov 30
-			 -9:00	US	AK%sT
-Zone America/Adak	 12:13:21 -	LMT	1867 Oct 18
-			-11:46:38 -	LMT	1900 Aug 20 12:00
-			-11:00	-	NST	1942
-			-11:00	US	N%sT	1946
-			-11:00	-	NST	1967 Apr
-			-11:00	-	BST	1969
-			-11:00	US	B%sT	1983 Oct 30 2:00
-			-10:00	US	AH%sT	1983 Nov 30
-			-10:00	US	HA%sT
-# The following switches don't quite make our 1970 cutoff.
-#
-# Shanks writes that part of southwest Alaska (e.g. Aniak)
-# switched from -11:00 to -10:00 on 1968-09-22 at 02:00,
-# and another part (e.g. Akiak) made the same switch five weeks later.
-#
-# From David Flater (2004-11-09):
-# In e-mail, 2004-11-02, Ray Hudson, historian/liaison to the Unalaska
-# Historic Preservation Commission, provided this information, which
-# suggests that Unalaska deviated from statutory time from early 1967
-# possibly until 1983:
-#
-#  Minutes of the Unalaska City Council Meeting, January 10, 1967:
-#  "Except for St. Paul and Akutan, Unalaska is the only important
-#  location not on Alaska Standard Time.  The following resolution was
-#  made by William Robinson and seconded by Henry Swanson:  Be it
-#  resolved that the City of Unalaska hereby goes to Alaska Standard
-#  Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday,
-#  January 14, Alaska Standard Time.)  This resolution was passed with
-#  three votes for and one against."
-
-# Hawaii
-#
-# From Arthur David Olson:
-# And then there's Hawaii.
-# DST was observed for one day in 1933;
-# standard time was changed by half an hour in 1947;
-# it's always standard as of 1986.
-#
-# From Paul Eggert:
-# Shanks says the 1933 experiment lasted for three weeks.  Go with Shanks.
-#
-Zone Pacific/Honolulu	-10:31:26 -	LMT	1900 Jan  1 12:00
-			-10:30	-	HST	1933 Apr 30 2:00
-			-10:30	1:00	HDT	1933 May 21 2:00
-			-10:30	US	H%sT	1947 Jun  8 2:00
-			-10:00	-	HST
-
-# Now we turn to US areas that have diverged from the consensus since 1970.
-
-# Arizona mostly uses MST.
-
-# From Paul Eggert (2002-10-20):
-#
-# The information in the rest of this paragraph is derived from the
-# <a href="http://www.dlapr.lib.az.us/links/daylight.htm">
-# Daylight Saving Time web page (2002-01-23)</a> maintained by the
-# Arizona State Library, Archives and Public Records.
-# Between 1944-01-01 and 1944-04-01 the State of Arizona used standard
-# time, but by federal law railroads, airlines, bus lines, military
-# personnel, and some engaged in interstate commerce continued to
-# observe war (i.e., daylight saving) time.  The 1944-03-17 Phoenix
-# Gazette says that was the date the law changed, and that 04-01 was
-# the date the state's clocks would change.  In 1945 the State of
-# Arizona used standard time all year, again with exceptions only as
-# mandated by federal law.  Arizona observed DST in 1967, but Arizona
-# Laws 1968, ch. 183 (effective 1968-03-21) repealed DST.
-#
-# Shanks says the 1944 experiment came to an end on 1944-03-17.
-# Go with the Arizona State Library instead.
-
-Zone America/Phoenix	-7:28:18 -	LMT	1883 Nov 18 11:31:42
-			-7:00	US	M%sT	1944 Jan  1 00:01
-			-7:00	-	MST	1944 Apr  1 00:01
-			-7:00	US	M%sT	1944 Oct  1 00:01
-			-7:00	-	MST	1967
-			-7:00	US	M%sT	1968 Mar 21
-			-7:00	-	MST
-# From Arthur David Olson (1988-02-13):
-# A writer from the Inter Tribal Council of Arizona, Inc.,
-# notes in private correspondence dated 1987-12-28 that "Presently, only the
-# Navajo Nation participates in the Daylight Saving Time policy, due to its
-# large size and location in three states."  (The "only" means that other
-# tribal nations don't use DST.)
-
-Link America/Denver America/Shiprock
-
-# Southern Idaho (Ada, Adams, Bannock, Bear Lake, Bingham, Blaine,
-# Boise, Bonneville, Butte, Camas, Canyon, Caribou, Cassia, Clark,
-# Custer, Elmore, Franklin, Fremont, Gem, Gooding, Jefferson, Jerome,
-# Lemhi, Lincoln, Madison, Minidoka, Oneida, Owyhee, Payette, Power,
-# Teton, Twin Falls, Valley, Washington counties, and the southern
-# quarter of Idaho county) and eastern Oregon (most of Malheur County)
-# switched four weeks late in 1974.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Boise	-7:44:49 -	LMT	1883 Nov 18 12:15:11
-			-8:00	US	P%sT	1923 May 13 2:00
-			-7:00	US	M%sT	1974
-			-7:00	-	MST	1974 Feb  3 2:00
-			-7:00	US	M%sT
-
-# Indiana
-#
-# For a map of Indiana's time zone regions, see:
-# <a href="http://www.mccsc.edu/time.html">
-# What time is it in Indiana?
-# </a> (2006-03-01)
-#
-# From Paul Eggert (2007-08-17):
-# Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
-# with the following exceptions:
-#
-# - Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
-#   Vandenburgh, and Warrick counties have been like America/Chicago.
-#
-# - Dearborn and Ohio counties have been like America/New_York.
-#
-# - Clark, Floyd, and Harrison counties have been like
-#   America/Kentucky/Louisville.
-#
-# - Crawford, Daviess, Dubois, Knox, Martin, Perry, Pike, Pulaski, Starke,
-#   and Switzerland counties have their own time zone histories as noted below.
-#
-# Shanks partitioned Indiana into 345 regions, each with its own time history,
-# and wrote ``Even newspaper reports present contradictory information.''
-# Those Hoosiers!  Such a flighty and changeable people!
-# Fortunately, most of the complexity occurred before our cutoff date of 1970.
-#
-# Other than Indianapolis, the Indiana place names are so nondescript
-# that they would be ambiguous if we left them at the `America' level.
-# So we reluctantly put them all in a subdirectory `America/Indiana'.
-
-# From Paul Eggert (2005-08-16):
-# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
-
-# From Nathan Stratton Treadway (2006-03-30):
-# http://www.dot.gov/affairs/dot0406.htm [3705 B]
-# From Deborah Goldsmith (2006-01-18):
-# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf [2.9 MB]
-# From Paul Eggert (2006-01-20):
-# It says "DOT is relocating the time zone boundary in Indiana to move Starke,
-# Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the
-# Eastern Time Zone to the Central Time Zone.... The effective date of
-# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the
-# changeover date from standard time to Daylight Saving Time."
-# Strictly speaking, this means the affected counties will change their
-# clocks twice that night, but this obviously is in error.  The intent
-# is that 01:59:59 EST be followed by 02:00:00 CDT.
-
-# From Gwillim Law (2007-02-10):
-# The Associated Press has been reporting that Pulaski County, Indiana is
-# going to switch from Central to Eastern Time on March 11, 2007....
-# http://www.indystar.com/apps/pbcs.dll/article?AID=/20070207/LOCAL190108/702070524/0/LOCAL
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule Indianapolis 1941	only	-	Jun	22	2:00	1:00	D
-Rule Indianapolis 1941	1954	-	Sep	lastSun	2:00	0	S
-Rule Indianapolis 1946	1954	-	Apr	lastSun	2:00	1:00	D
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
-			-6:00	US	C%sT	1920
-			-6:00 Indianapolis C%sT	1942
-			-6:00	US	C%sT	1946
-			-6:00 Indianapolis C%sT	1955 Apr 24 2:00
-			-5:00	-	EST	1957 Sep 29 2:00
-			-6:00	-	CST	1958 Apr 27 2:00
-			-5:00	-	EST	1969
-			-5:00	US	E%sT	1971
-			-5:00	-	EST	2006
-			-5:00	US	E%sT
-#
-# Eastern Crawford County, Indiana, left its clocks alone in 1974,
-# as well as from 1976 through 2005.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	Marengo	1951	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Marengo	1951	only	-	Sep	lastSun	2:00	0	S
-Rule	Marengo	1954	1960	-	Apr	lastSun	2:00	1:00	D
-Rule	Marengo	1954	1960	-	Sep	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Indiana/Marengo -5:45:23 -	LMT	1883 Nov 18 12:14:37
-			-6:00	US	C%sT	1951
-			-6:00	Marengo	C%sT	1961 Apr 30 2:00
-			-5:00	-	EST	1969
-			-5:00	US	E%sT	1974 Jan  6 2:00
-			-6:00	1:00	CDT	1974 Oct 27 2:00
-			-5:00	US	E%sT	1976
-			-5:00	-	EST	2006
-			-5:00	US	E%sT
-#
-# Daviess, Dubois, Knox, and Martin Counties, Indiana,
-# switched from eastern to central time in April 2006, then switched back
-# in November 2007.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule Vincennes	1946	only	-	Apr	lastSun	2:00	1:00	D
-Rule Vincennes	1946	only	-	Sep	lastSun	2:00	0	S
-Rule Vincennes	1953	1954	-	Apr	lastSun	2:00	1:00	D
-Rule Vincennes	1953	1959	-	Sep	lastSun	2:00	0	S
-Rule Vincennes	1955	only	-	May	 1	0:00	1:00	D
-Rule Vincennes	1956	1963	-	Apr	lastSun	2:00	1:00	D
-Rule Vincennes	1960	only	-	Oct	lastSun	2:00	0	S
-Rule Vincennes	1961	only	-	Sep	lastSun	2:00	0	S
-Rule Vincennes	1962	1963	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Indiana/Vincennes -5:50:07 - LMT	1883 Nov 18 12:09:53
-			-6:00	US	C%sT	1946
-			-6:00 Vincennes	C%sT	1964 Apr 26 2:00
-			-5:00	-	EST	1969
-			-5:00	US	E%sT	1971
-			-5:00	-	EST	2006 Apr  2 2:00
-			-6:00	US	C%sT	2007 Nov  4 2:00
-			-5:00	US	E%sT
-#
-# Perry County, Indiana, switched from eastern to central time in April 2006.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule Perry	1946	only	-	Apr	lastSun	2:00	1:00	D
-Rule Perry	1946	only	-	Sep	lastSun	2:00	0	S
-Rule Perry	1953	1954	-	Apr	lastSun	2:00	1:00	D
-Rule Perry	1953	1959	-	Sep	lastSun	2:00	0	S
-Rule Perry	1955	only	-	May	 1	0:00	1:00	D
-Rule Perry	1956	1963	-	Apr	lastSun	2:00	1:00	D
-Rule Perry	1960	only	-	Oct	lastSun	2:00	0	S
-Rule Perry	1961	only	-	Sep	lastSun	2:00	0	S
-Rule Perry	1962	1963	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Indiana/Tell_City -5:47:03 - LMT	1883 Nov 18 12:12:57
-			-6:00	US	C%sT	1946
-			-6:00 Perry	C%sT	1964 Apr 26 2:00
-			-5:00	-	EST	1969
-			-5:00	US	E%sT	1971
-			-5:00	-	EST	2006 Apr  2 2:00
-			-6:00	US	C%sT
-#
-# Pike County, Indiana moved from central to eastern time in 1977,
-# then switched back in 2006, then switched back again in 2007.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	Pike	1955	only	-	May	 1	0:00	1:00	D
-Rule	Pike	1955	1960	-	Sep	lastSun	2:00	0	S
-Rule	Pike	1956	1964	-	Apr	lastSun	2:00	1:00	D
-Rule	Pike	1961	1964	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Indiana/Petersburg -5:49:07 - LMT	1883 Nov 18 12:10:53
-			-6:00	US	C%sT	1955
-			-6:00	Pike	C%sT	1965 Apr 25 2:00
-			-5:00	-	EST	1966 Oct 30 2:00
-			-6:00	US	C%sT	1977 Oct 30 2:00
-			-5:00	-	EST	2006 Apr  2 2:00
-			-6:00	US	C%sT	2007 Nov  4 2:00
-			-5:00	US	E%sT
-#
-# Starke County, Indiana moved from central to eastern time in 1991,
-# then switched back in 2006.
-# From Arthur David Olson (1991-10-28):
-# An article on page A3 of the Sunday, 1991-10-27 Washington Post
-# notes that Starke County switched from Central time to Eastern time as of
-# 1991-10-27.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	Starke	1947	1961	-	Apr	lastSun	2:00	1:00	D
-Rule	Starke	1947	1954	-	Sep	lastSun	2:00	0	S
-Rule	Starke	1955	1956	-	Oct	lastSun	2:00	0	S
-Rule	Starke	1957	1958	-	Sep	lastSun	2:00	0	S
-Rule	Starke	1959	1961	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Indiana/Knox -5:46:30 -	LMT	1883 Nov 18 12:13:30
-			-6:00	US	C%sT	1947
-			-6:00	Starke	C%sT	1962 Apr 29 2:00
-			-5:00	-	EST	1963 Oct 27 2:00
-			-6:00	US	C%sT	1991 Oct 27 2:00
-			-5:00	-	EST	2006 Apr  2 2:00
-			-6:00	US	C%sT
-#
-# Pulaski County, Indiana, switched from eastern to central time in
-# April 2006 and then switched back in March 2007.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	Pulaski	1946	1960	-	Apr	lastSun	2:00	1:00	D
-Rule	Pulaski	1946	1954	-	Sep	lastSun	2:00	0	S
-Rule	Pulaski	1955	1956	-	Oct	lastSun	2:00	0	S
-Rule	Pulaski	1957	1960	-	Sep	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Indiana/Winamac -5:46:25 - LMT	1883 Nov 18 12:13:35
-			-6:00	US	C%sT	1946
-			-6:00	Pulaski	C%sT	1961 Apr 30 2:00
-			-5:00	-	EST	1969
-			-5:00	US	E%sT	1971
-			-5:00	-	EST	2006 Apr  2 2:00
-			-6:00	US	C%sT	2007 Mar 11 2:00
-			-5:00	US	E%sT
-#
-# Switzerland County, Indiana, did not observe DST from 1973 through 2005.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Indiana/Vevay -5:40:16 -	LMT	1883 Nov 18 12:19:44
-			-6:00	US	C%sT	1954 Apr 25 2:00
-			-5:00	-	EST	1969
-			-5:00	US	E%sT	1973
-			-5:00	-	EST	2006
-			-5:00	US	E%sT
-
-# Part of Kentucky left its clocks alone in 1974.
-# This also includes Clark, Floyd, and Harrison counties in Indiana.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule Louisville	1921	only	-	May	1	2:00	1:00	D
-Rule Louisville	1921	only	-	Sep	1	2:00	0	S
-Rule Louisville	1941	1961	-	Apr	lastSun	2:00	1:00	D
-Rule Louisville	1941	only	-	Sep	lastSun	2:00	0	S
-Rule Louisville	1946	only	-	Jun	2	2:00	0	S
-Rule Louisville	1950	1955	-	Sep	lastSun	2:00	0	S
-Rule Louisville	1956	1960	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Kentucky/Louisville -5:43:02 -	LMT	1883 Nov 18 12:16:58
-			-6:00	US	C%sT	1921
-			-6:00 Louisville C%sT	1942
-			-6:00	US	C%sT	1946
-			-6:00 Louisville C%sT	1961 Jul 23 2:00
-			-5:00	-	EST	1968
-			-5:00	US	E%sT	1974 Jan  6 2:00
-			-6:00	1:00	CDT	1974 Oct 27 2:00
-			-5:00	US	E%sT
-#
-# Wayne County, Kentucky
-#
-# From
-# <a href="http://www.lake-cumberland.com/life/archive/news990129time.shtml">
-# Lake Cumberland LIFE
-# </a> (1999-01-29) via WKYM-101.7:
-# Clinton County has joined Wayne County in asking the DoT to change from
-# the Central to the Eastern time zone....  The Wayne County government made
-# the same request in December.  And while Russell County officials have not
-# taken action, the majority of respondents to a poll conducted there in
-# August indicated they would like to change to "fast time" also.
-# The three Lake Cumberland counties are the farthest east of any U.S.
-# location in the Central time zone.
-#
-# From Rich Wales (2000-08-29):
-# After prolonged debate, and despite continuing deep differences of opinion,
-# Wayne County (central Kentucky) is switching from Central (-0600) to Eastern
-# (-0500) time.  They won't "fall back" this year.  See Sara Shipley,
-# The difference an hour makes, Nando Times (2000-08-29 15:33 -0400).
-#
-# From Paul Eggert (2001-07-16):
-# The final rule was published in the
-# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22">
-# Federal Register 65, 160 (2000-08-17), page 50154-50158.
-# </a>
-#
-Zone America/Kentucky/Monticello -5:39:24 - LMT	1883 Nov 18 12:20:36
-			-6:00	US	C%sT	1946
-			-6:00	-	CST	1968
-			-6:00	US	C%sT	2000 Oct 29  2:00
-			-5:00	US	E%sT
-
-
-# From Rives McDow (2000-08-30):
-# Here ... are all the changes in the US since 1985.
-# Kearny County, KS (put all of county on central;
-#	previously split between MST and CST) ... 1990-10
-# Starke County, IN (from CST to EST) ... 1991-10
-# Oliver County, ND (from MST to CST) ... 1992-10
-# West Wendover, NV (from PST TO MST) ... 1999-10
-# Wayne County, KY (from CST to EST) ... 2000-10
-#
-# From Paul Eggert (2001-07-17):
-# We don't know where the line used to be within Kearny County, KS,
-# so omit that change for now.
-# See America/Indiana/Knox for the Starke County, IN change.
-# See America/North_Dakota/Center for the Oliver County, ND change.
-# West Wendover, NV officially switched from Pacific to mountain time on
-# 1999-10-31.  See the
-# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15">
-# Federal Register 64, 203 (1999-10-21), page 56705-56707.
-# </a>
-# However, the Federal Register says that West Wendover already operated
-# on mountain time, and the rule merely made this official;
-# hence a separate tz entry is not needed.
-
-# Michigan
-#
-# From Bob Devine (1988-01-28):
-# Michigan didn't observe DST from 1968 to 1973.
-#
-# From Paul Eggert (1999-03-31):
-# Shanks writes that Michigan started using standard time on 1885-09-18,
-# but Howse writes (pp 124-125, referring to Popular Astronomy, 1901-01)
-# that Detroit kept
-#
-#	local time until 1900 when the City Council decreed that clocks should
-#	be put back twenty-eight minutes to Central Standard Time.  Half the
-#	city obeyed, half refused.  After considerable debate, the decision
-#	was rescinded and the city reverted to Sun time.  A derisive offer to
-#	erect a sundial in front of the city hall was referred to the
-#	Committee on Sewers.  Then, in 1905, Central time was adopted
-#	by city vote.
-#
-# This story is too entertaining to be false, so go with Howse over Shanks.
-#
-# From Paul Eggert (2001-03-06):
-# Garland (1927) writes ``Cleveland and Detroit advanced their clocks
-# one hour in 1914.''  This change is not in Shanks.  We have no more
-# info, so omit this for now.
-#
-# Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule	Detroit	1948	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Detroit	1948	only	-	Sep	lastSun	2:00	0	S
-Rule	Detroit	1967	only	-	Jun	14	2:00	1:00	D
-Rule	Detroit	1967	only	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Detroit	-5:32:11 -	LMT	1905
-			-6:00	-	CST	1915 May 15 2:00
-			-5:00	-	EST	1942
-			-5:00	US	E%sT	1946
-			-5:00	Detroit	E%sT	1973
-			-5:00	US	E%sT	1975
-			-5:00	-	EST	1975 Apr 27 2:00
-			-5:00	US	E%sT
-#
-# Dickinson, Gogebic, Iron, and Menominee Counties, Michigan,
-# switched from EST to CST/CDT in 1973.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
-Rule Menominee	1946	only	-	Apr	lastSun	2:00	1:00	D
-Rule Menominee	1946	only	-	Sep	lastSun	2:00	0	S
-Rule Menominee	1966	only	-	Apr	lastSun	2:00	1:00	D
-Rule Menominee	1966	only	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Menominee	-5:50:27 -	LMT	1885 Sep 18 12:00
-			-6:00	US	C%sT	1946
-			-6:00 Menominee	C%sT	1969 Apr 27 2:00
-			-5:00	-	EST	1973 Apr 29 2:00
-			-6:00	US	C%sT
-
-# Navassa
-# administered by the US Fish and Wildlife Service
-# claimed by US under the provisions of the 1856 Guano Islands Act
-# also claimed by Haiti
-# occupied 1857/1900 by the Navassa Phosphate Co
-# US lighthouse 1917/1996-09
-# currently uninhabited
-# see Mark Fineman, ``An Isle Rich in Guano and Discord'',
-# _Los Angeles Times_ (1998-11-10), A1, A10; it cites
-# Jimmy Skaggs, _The Great Guano Rush_ (1994).
-
-################################################################################
-
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually.  Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Other sources occasionally used include:
-#
-#	Edward W. Whitman, World Time Differences,
-#	Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
-#	which I found in the UCLA library.
-#
-#	<a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf">
-#	William Willett, The Waste of Daylight, 19th edition
-#	</a> (1914-03)
-#
-# See the `europe' file for Greenland.
-
-# Canada
-
-# From Alain LaBont<e'> (1994-11-14):
-# I post here the time zone abbreviations standardized in Canada
-# for both English and French in the CAN/CSA-Z234.4-89 standard....
-#
-#	UTC	Standard time	Daylight savings time
-#	offset	French	English	French	English
-#	-2:30	-	-	HAT	NDT
-#	-3	-	-	HAA	ADT
-#	-3:30	HNT	NST	-	-
-#	-4	HNA	AST	HAE	EDT
-#	-5	HNE	EST	HAC	CDT
-#	-6	HNC	CST	HAR	MDT
-#	-7	HNR	MST	HAP	PDT
-#	-8	HNP	PST	HAY	YDT
-#	-9	HNY	YST	-	-
-#
-#	HN: Heure Normale	ST: Standard Time
-#	HA: Heure Avanc<e'>e	DT: Daylight saving Time
-#
-#	A: de l'Atlantique	Atlantic
-#	C: du Centre		Central
-#	E: de l'Est		Eastern
-#	M:			Mountain
-#	N:			Newfoundland
-#	P: du Pacifique		Pacific
-#	R: des Rocheuses
-#	T: de Terre-Neuve
-#	Y: du Yukon		Yukon
-#
-# From Paul Eggert (1994-11-22):
-# Alas, this sort of thing must be handled by localization software.
-
-# Unless otherwise specified, the data for Canada are all from Shanks
-# & Pottenger.
-
-# From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31,
-# 2007-03-01):
-# The British Columbia government announced yesterday that it will
-# adjust daylight savings next year to align with changes in the
-# U.S. and the rest of Canada....
-# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
-# ...
-# Nova Scotia
-# Daylight saving time will be extended by four weeks starting in 2007....
-# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
-#
-# [For New Brunswick] the new legislation dictates that the time change is to
-# be done at 02:00 instead of 00:01.
-# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
-# ...
-# Manitoba has traditionally changed the clock every fall at 03:00.
-# As of 2006, the transition is to take place one hour earlier at 02:00.
-# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
-# ...
-# [Alberta, Ontario, Quebec] will follow US rules.
-# http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
-# http://www.e-laws.gov.on.ca/DBLaws/Source/Regs/English/2006/R06111_e.htm
-# http://www2.publicationsduquebec.gouv.qc.ca/dynamicSearch/telecharge.php?type=5&file=2006C39A.PDF
-# ...
-# P.E.I. will follow US rules....
-# http://www.assembly.pe.ca/bills/pdf_chapter/62/3/chapter-41.pdf
-# ...
-# Province of Newfoundland and Labrador....
-# http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
-# ...
-# Yukon
-# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
-# ...
-# N.W.T. will follow US rules.  Whoever maintains the government web site
-# does not seem to believe in bookmarks.  To see the news release, click the
-# following link and search for "Daylight Savings Time Change".  Press the
-# "Daylight Savings Time Change" link; it will fire off a popup using
-# JavaScript.
-# http://www.exec.gov.nt.ca/currentnews/currentPR.asp?mode=archive
-# ...
-# Nunavut
-# An amendment to the Interpretation Act was registered on February 19/2007....
-# http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf
-
-# From Paul Eggert (2006-04-25):
-# H. David Matthews and Mary Vincent's map
-# <a href="http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp">
-# "It's about TIME", _Canadian Geographic_ (September-October 1998)
-# </a> contains detailed boundaries for regions observing nonstandard
-# time and daylight saving time arrangements in Canada circa 1998.
-#
-# INMS, the Institute for National Measurement Standards in Ottawa, has <a
-# href="http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php">
-# information about standard and daylight saving time zones in Canada.
-# </a> (updated periodically).
-# Its unofficial information is often taken from Matthews and Vincent.
-
-# From Paul Eggert (2006-06-27):
-# For now, assume all of DST-observing Canada will fall into line with the
-# new US DST rules,
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Canada	1918	only	-	Apr	14	2:00	1:00	D
-Rule	Canada	1918	only	-	Oct	31	2:00	0	S
-Rule	Canada	1942	only	-	Feb	 9	2:00	1:00	W # War
-Rule	Canada	1945	only	-	Aug	14	23:00u	1:00	P # Peace
-Rule	Canada	1945	only	-	Sep	30	2:00	0	S
-Rule	Canada	1974	1986	-	Apr	lastSun	2:00	1:00	D
-Rule	Canada	1974	2006	-	Oct	lastSun	2:00	0	S
-Rule	Canada	1987	2006	-	Apr	Sun>=1	2:00	1:00	D
-Rule	Canada	2007	max	-	Mar	Sun>=8	2:00	1:00	D
-Rule	Canada	2007	max	-	Nov	Sun>=1	2:00	0	S
-
-
-# Newfoundland and Labrador
-
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
-# but the only part of Labrador that follows the rules is the
-# southeast corner, including Port Hope Simpson and Mary's Harbour,
-# but excluding, say, Black Tickle.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	StJohns	1917	only	-	Apr	 8	2:00	1:00	D
-Rule	StJohns	1917	only	-	Sep	17	2:00	0	S
-# Whitman gives 1919 Apr 5 and 1920 Apr 5; go with Shanks & Pottenger.
-Rule	StJohns	1919	only	-	May	 5	23:00	1:00	D
-Rule	StJohns	1919	only	-	Aug	12	23:00	0	S
-# For 1931-1935 Whitman gives Apr same date; go with Shanks & Pottenger.
-Rule	StJohns	1920	1935	-	May	Sun>=1	23:00	1:00	D
-Rule	StJohns	1920	1935	-	Oct	lastSun	23:00	0	S
-# For 1936-1941 Whitman gives May Sun>=8 and Oct Sun>=1; go with Shanks &
-# Pottenger.
-Rule	StJohns	1936	1941	-	May	Mon>=9	0:00	1:00	D
-Rule	StJohns	1936	1941	-	Oct	Mon>=2	0:00	0	S
-# Whitman gives the following transitions:
-# 1942 03-01/12-31, 1943 05-30/09-05, 1944 07-10/09-02, 1945 01-01/10-07
-# but go with Shanks & Pottenger and assume they used Canadian rules.
-# For 1946-9 Whitman gives May 5,4,9,1 - Oct 1,5,3,2, and for 1950 he gives
-# Apr 30 - Sep 24; go with Shanks & Pottenger.
-Rule	StJohns	1946	1950	-	May	Sun>=8	2:00	1:00	D
-Rule	StJohns	1946	1950	-	Oct	Sun>=2	2:00	0	S
-Rule	StJohns	1951	1986	-	Apr	lastSun	2:00	1:00	D
-Rule	StJohns	1951	1959	-	Sep	lastSun	2:00	0	S
-Rule	StJohns	1960	1986	-	Oct	lastSun	2:00	0	S
-# From Paul Eggert (2000-10-02):
-# INMS (2000-09-12) says that, since 1988 at least, Newfoundland switches
-# at 00:01 local time.  For now, assume it started in 1987.
-Rule	StJohns	1987	only	-	Apr	Sun>=1	0:01	1:00	D
-Rule	StJohns	1987	2006	-	Oct	lastSun	0:01	0	S
-Rule	StJohns	1988	only	-	Apr	Sun>=1	0:01	2:00	DD
-Rule	StJohns	1989	2006	-	Apr	Sun>=1	0:01	1:00	D
-Rule	StJohns	2007	max	-	Mar	Sun>=8	0:01	1:00	D
-Rule	StJohns	2007	max	-	Nov	Sun>=1	0:01	0	S
-#
-# St John's has an apostrophe, but Posix file names can't have apostrophes.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/St_Johns	-3:30:52 -	LMT	1884
-			-3:30:52 StJohns N%sT	1918
-			-3:30:52 Canada	N%sT	1919
-			-3:30:52 StJohns N%sT	1935 Mar 30
-			-3:30	StJohns	N%sT	1942 May 11
-			-3:30	Canada	N%sT	1946
-			-3:30	StJohns	N%sT
-
-# most of east Labrador
-
-# The name `Happy Valley-Goose Bay' is too long; use `Goose Bay'.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Goose_Bay	-4:01:40 -	LMT	1884 # Happy Valley-Goose Bay
-			-3:30:52 -	NST	1918
-			-3:30:52 Canada N%sT	1919
-			-3:30:52 -	NST	1935 Mar 30
-			-3:30	-	NST	1936
-			-3:30	StJohns	N%sT	1942 May 11
-			-3:30	Canada	N%sT	1946
-			-3:30	StJohns	N%sT	1966 Mar 15 2:00
-			-4:00	StJohns	A%sT
-
-
-# west Labrador, Nova Scotia, Prince Edward I
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that since 1970 most of this region has been like
-# Halifax.  Many locales did not observe peacetime DST until 1972;
-# Glace Bay, NS is the largest that we know of.
-# Shanks & Pottenger also write that Liverpool, NS was the only town
-# in Canada to observe DST in 1971 but not 1970; for now we'll assume
-# this is a typo.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Halifax	1916	only	-	Apr	 1	0:00	1:00	D
-Rule	Halifax	1916	only	-	Oct	 1	0:00	0	S
-Rule	Halifax	1920	only	-	May	 9	0:00	1:00	D
-Rule	Halifax	1920	only	-	Aug	29	0:00	0	S
-Rule	Halifax	1921	only	-	May	 6	0:00	1:00	D
-Rule	Halifax	1921	1922	-	Sep	 5	0:00	0	S
-Rule	Halifax	1922	only	-	Apr	30	0:00	1:00	D
-Rule	Halifax	1923	1925	-	May	Sun>=1	0:00	1:00	D
-Rule	Halifax	1923	only	-	Sep	 4	0:00	0	S
-Rule	Halifax	1924	only	-	Sep	15	0:00	0	S
-Rule	Halifax	1925	only	-	Sep	28	0:00	0	S
-Rule	Halifax	1926	only	-	May	16	0:00	1:00	D
-Rule	Halifax	1926	only	-	Sep	13	0:00	0	S
-Rule	Halifax	1927	only	-	May	 1	0:00	1:00	D
-Rule	Halifax	1927	only	-	Sep	26	0:00	0	S
-Rule	Halifax	1928	1931	-	May	Sun>=8	0:00	1:00	D
-Rule	Halifax	1928	only	-	Sep	 9	0:00	0	S
-Rule	Halifax	1929	only	-	Sep	 3	0:00	0	S
-Rule	Halifax	1930	only	-	Sep	15	0:00	0	S
-Rule	Halifax	1931	1932	-	Sep	Mon>=24	0:00	0	S
-Rule	Halifax	1932	only	-	May	 1	0:00	1:00	D
-Rule	Halifax	1933	only	-	Apr	30	0:00	1:00	D
-Rule	Halifax	1933	only	-	Oct	 2	0:00	0	S
-Rule	Halifax	1934	only	-	May	20	0:00	1:00	D
-Rule	Halifax	1934	only	-	Sep	16	0:00	0	S
-Rule	Halifax	1935	only	-	Jun	 2	0:00	1:00	D
-Rule	Halifax	1935	only	-	Sep	30	0:00	0	S
-Rule	Halifax	1936	only	-	Jun	 1	0:00	1:00	D
-Rule	Halifax	1936	only	-	Sep	14	0:00	0	S
-Rule	Halifax	1937	1938	-	May	Sun>=1	0:00	1:00	D
-Rule	Halifax	1937	1941	-	Sep	Mon>=24	0:00	0	S
-Rule	Halifax	1939	only	-	May	28	0:00	1:00	D
-Rule	Halifax	1940	1941	-	May	Sun>=1	0:00	1:00	D
-Rule	Halifax	1946	1949	-	Apr	lastSun	2:00	1:00	D
-Rule	Halifax	1946	1949	-	Sep	lastSun	2:00	0	S
-Rule	Halifax	1951	1954	-	Apr	lastSun	2:00	1:00	D
-Rule	Halifax	1951	1954	-	Sep	lastSun	2:00	0	S
-Rule	Halifax	1956	1959	-	Apr	lastSun	2:00	1:00	D
-Rule	Halifax	1956	1959	-	Sep	lastSun	2:00	0	S
-Rule	Halifax	1962	1973	-	Apr	lastSun	2:00	1:00	D
-Rule	Halifax	1962	1973	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Halifax	-4:14:24 -	LMT	1902 Jun 15
-			-4:00	Halifax	A%sT	1918
-			-4:00	Canada	A%sT	1919
-			-4:00	Halifax	A%sT	1942 Feb  9 2:00s
-			-4:00	Canada	A%sT	1946
-			-4:00	Halifax	A%sT	1974
-			-4:00	Canada	A%sT
-Zone America/Glace_Bay	-3:59:48 -	LMT	1902 Jun 15
-			-4:00	Canada	A%sT	1953
-			-4:00	Halifax	A%sT	1954
-			-4:00	-	AST	1972
-			-4:00	Halifax	A%sT	1974
-			-4:00	Canada	A%sT
-
-# New Brunswick
-
-# From Paul Eggert (2007-01-31):
-# The Time Definition Act <http://www.gnb.ca/0062/PDF-acts/t-06.pdf>
-# says they changed at 00:01 through 2006, and
-# <http://www.canlii.org/nb/laws/sta/t-6/20030127/whole.html> makes it
-# clear that this was the case since at least 1993.
-# For now, assume it started in 1993.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Moncton	1933	1935	-	Jun	Sun>=8	1:00	1:00	D
-Rule	Moncton	1933	1935	-	Sep	Sun>=8	1:00	0	S
-Rule	Moncton	1936	1938	-	Jun	Sun>=1	1:00	1:00	D
-Rule	Moncton	1936	1938	-	Sep	Sun>=1	1:00	0	S
-Rule	Moncton	1939	only	-	May	27	1:00	1:00	D
-Rule	Moncton	1939	1941	-	Sep	Sat>=21	1:00	0	S
-Rule	Moncton	1940	only	-	May	19	1:00	1:00	D
-Rule	Moncton	1941	only	-	May	 4	1:00	1:00	D
-Rule	Moncton	1946	1972	-	Apr	lastSun	2:00	1:00	D
-Rule	Moncton	1946	1956	-	Sep	lastSun	2:00	0	S
-Rule	Moncton	1957	1972	-	Oct	lastSun	2:00	0	S
-Rule	Moncton	1993	2006	-	Apr	Sun>=1	0:01	1:00	D
-Rule	Moncton	1993	2006	-	Oct	lastSun	0:01	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Moncton	-4:19:08 -	LMT	1883 Dec  9
-			-5:00	-	EST	1902 Jun 15
-			-4:00	Canada	A%sT	1933
-			-4:00	Moncton	A%sT	1942
-			-4:00	Canada	A%sT	1946
-			-4:00	Moncton	A%sT	1973
-			-4:00	Canada	A%sT	1993
-			-4:00	Moncton	A%sT	2007
-			-4:00	Canada	A%sT
-
-# Quebec
-
-# From Paul Eggert (2006-07-09):
-# Shanks & Pottenger write that since 1970 most of Quebec has been
-# like Montreal.
-
-# From Paul Eggert (2006-06-27):
-# Matthews and Vincent (1998) also write that Quebec east of the -63
-# meridian is supposed to observe AST, but residents as far east as
-# Natashquan use EST/EDT, and residents east of Natashquan use AST.
-# In "Official time in Quebec" the Quebec department of justice writes in
-# http://www.justice.gouv.qc.ca/english/publications/generale/temps-regl-1-a.htm
-# that "The residents of the Municipality of the
-# Cote-Nord-du-Golfe-Saint-Laurent and the municipalities of Saint-Augustin,
-# Bonne-Esperance and Blanc-Sablon apply the Official Time Act as it is
-# written and use Atlantic standard time all year round. The same applies to
-# the residents of the Native facilities along the lower North Shore."
-# <http://www.assnat.qc.ca/eng/37legislature2/Projets-loi/Publics/06-a002.htm>
-# says this common practice was codified into law as of 2007.
-# For lack of better info, guess this practice began around 1970, contra to
-# Shanks & Pottenger who have this region observing AST/ADT.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Mont	1917	only	-	Mar	25	2:00	1:00	D
-Rule	Mont	1917	only	-	Apr	24	0:00	0	S
-Rule	Mont	1919	only	-	Mar	31	2:30	1:00	D
-Rule	Mont	1919	only	-	Oct	25	2:30	0	S
-Rule	Mont	1920	only	-	May	 2	2:30	1:00	D
-Rule	Mont	1920	1922	-	Oct	Sun>=1	2:30	0	S
-Rule	Mont	1921	only	-	May	 1	2:00	1:00	D
-Rule	Mont	1922	only	-	Apr	30	2:00	1:00	D
-Rule	Mont	1924	only	-	May	17	2:00	1:00	D
-Rule	Mont	1924	1926	-	Sep	lastSun	2:30	0	S
-Rule	Mont	1925	1926	-	May	Sun>=1	2:00	1:00	D
-# The 1927-to-1937 rules can be expressed more simply as
-# Rule	Mont	1927	1937	-	Apr	lastSat	24:00	1:00	D
-# Rule	Mont	1927	1937	-	Sep	lastSat	24:00	0	S
-# The rules below avoid use of 24:00
-# (which pre-1998 versions of zic cannot handle).
-Rule	Mont	1927	only	-	May	1	0:00	1:00	D
-Rule	Mont	1927	1932	-	Sep	lastSun	0:00	0	S
-Rule	Mont	1928	1931	-	Apr	lastSun	0:00	1:00	D
-Rule	Mont	1932	only	-	May	1	0:00	1:00	D
-Rule	Mont	1933	1940	-	Apr	lastSun	0:00	1:00	D
-Rule	Mont	1933	only	-	Oct	1	0:00	0	S
-Rule	Mont	1934	1939	-	Sep	lastSun	0:00	0	S
-Rule	Mont	1946	1973	-	Apr	lastSun	2:00	1:00	D
-Rule	Mont	1945	1948	-	Sep	lastSun	2:00	0	S
-Rule	Mont	1949	1950	-	Oct	lastSun	2:00	0	S
-Rule	Mont	1951	1956	-	Sep	lastSun	2:00	0	S
-Rule	Mont	1957	1973	-	Oct	lastSun	2:00	0	S
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Blanc-Sablon -3:48:28 -	LMT	1884
-			-4:00	Canada	A%sT	1970
-			-4:00	-	AST
-Zone America/Montreal	-4:54:16 -	LMT	1884
-			-5:00	Mont	E%sT	1918
-			-5:00	Canada	E%sT	1919
-			-5:00	Mont	E%sT	1942 Feb  9 2:00s
-			-5:00	Canada	E%sT	1946
-			-5:00	Mont	E%sT	1974
-			-5:00	Canada	E%sT
-
-
-# Ontario
-
-# From Paul Eggert (2006-07-09):
-# Shanks & Pottenger write that since 1970 most of Ontario has been like
-# Toronto.
-# Thunder Bay skipped DST in 1973.
-# Many smaller locales did not observe peacetime DST until 1974;
-# Nipigon (EST) and Rainy River (CST) are the largest that we know of.
-# Far west Ontario is like Winnipeg; far east Quebec is like Halifax.
-
-# From Mark Brader (2003-07-26):
-# [According to the Toronto Star] Orillia, Ontario, adopted DST
-# effective Saturday, 1912-06-22, 22:00; the article mentions that
-# Port Arthur (now part of Thunder Bay, Ontario) as well as Moose Jaw
-# have already done so.  In Orillia DST was to run until Saturday,
-# 1912-08-31 (no time mentioned), but it was met with considerable
-# hostility from certain segments of the public, and was revoked after
-# only two weeks -- I copied it as Saturday, 1912-07-07, 22:00, but
-# presumably that should be -07-06.  (1912-06-19, -07-12; also letters
-# earlier in June).
-#
-# Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
-
-# From Paul Eggert (1997-10-17):
-# Mark Brader writes that an article in the 1997-10-14 Toronto Star
-# says that Atikokan, Ontario currently does not observe DST,
-# but will vote on 11-10 whether to use EST/EDT.
-# He also writes that the
-# <a href="http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html">
-# Ontario Time Act (1990, Chapter T.9)
-# </a>
-# says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
-# Officially Atikokan is therefore on CST/CDT, and most likely this report
-# concerns a non-official time observed as a matter of local practice.
-#
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) write that Atikokan, Pickle Lake, and
-# New Osnaburgh observe CST all year, that Big Trout Lake observes
-# CST/CDT, and that Upsala and Shebandowan observe EST/EDT, all in
-# violation of the official Ontario rules.
-#
-# From Paul Eggert (2006-07-09):
-# Chris Walton (2006-07-06) mentioned an article by Stephanie MacLellan in the
-# 2005-07-21 Chronicle-Journal, which said:
-#
-#	The clocks in Atikokan stay set on standard time year-round.
-#	This means they spend about half the time on central time and
-#	the other half on eastern time.
-#
-#	For the most part, the system works, Mayor Dennis Brown said.
-#
-#	"The majority of businesses in Atikokan deal more with Eastern
-#	Canada, but there are some that deal with Western Canada," he
-#	said.  "I don't see any changes happening here."
-#
-# Walton also writes "Supposedly Pickle Lake and Mishkeegogamang
-# [New Osnaburgh] follow the same practice."
-
-# From Garry McKinnon (2006-07-14) via Chris Walton:
-# I chatted with a member of my board who has an outstanding memory
-# and a long history in Atikokan (and in the telecom industry) and he
-# can say for certain that Atikokan has been practicing the current
-# time keeping since 1952, at least.
-
-# From Paul Eggert (2006-07-17):
-# Shanks & Pottenger say that Atikokan has agreed with Rainy River
-# ever since standard time was introduced, but the information from
-# McKinnon sounds more authoritative.  For now, assume that Atikokan
-# switched to EST immediately after WWII era daylight saving time
-# ended.  This matches the old (less-populous) America/Coral_Harbour
-# entry since our cutoff date of 1970, so we can move
-# America/Coral_Harbour to the 'backward' file.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Toronto	1919	only	-	Mar	30	23:30	1:00	D
-Rule	Toronto	1919	only	-	Oct	26	0:00	0	S
-Rule	Toronto	1920	only	-	May	 2	2:00	1:00	D
-Rule	Toronto	1920	only	-	Sep	26	0:00	0	S
-Rule	Toronto	1921	only	-	May	15	2:00	1:00	D
-Rule	Toronto	1921	only	-	Sep	15	2:00	0	S
-Rule	Toronto	1922	1923	-	May	Sun>=8	2:00	1:00	D
-# Shanks & Pottenger say 1923-09-19; assume it's a typo and that "-16"
-# was meant.
-Rule	Toronto	1922	1926	-	Sep	Sun>=15	2:00	0	S
-Rule	Toronto	1924	1927	-	May	Sun>=1	2:00	1:00	D
-# The 1927-to-1939 rules can be expressed more simply as
-# Rule	Toronto	1927	1937	-	Sep	Sun>=25	2:00	0	S
-# Rule	Toronto	1928	1937	-	Apr	Sun>=25	2:00	1:00	D
-# Rule	Toronto	1938	1940	-	Apr	lastSun	2:00	1:00	D
-# Rule	Toronto	1938	1939	-	Sep	lastSun	2:00	0	S
-# The rules below avoid use of Sun>=25
-# (which pre-2004 versions of zic cannot handle).
-Rule	Toronto	1927	1932	-	Sep	lastSun	2:00	0	S
-Rule	Toronto	1928	1931	-	Apr	lastSun	2:00	1:00	D
-Rule	Toronto	1932	only	-	May	1	2:00	1:00	D
-Rule	Toronto	1933	1940	-	Apr	lastSun	2:00	1:00	D
-Rule	Toronto	1933	only	-	Oct	1	2:00	0	S
-Rule	Toronto	1934	1939	-	Sep	lastSun	2:00	0	S
-Rule	Toronto	1945	1946	-	Sep	lastSun	2:00	0	S
-Rule	Toronto	1946	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Toronto	1947	1949	-	Apr	lastSun	0:00	1:00	D
-Rule	Toronto	1947	1948	-	Sep	lastSun	0:00	0	S
-Rule	Toronto	1949	only	-	Nov	lastSun	0:00	0	S
-Rule	Toronto	1950	1973	-	Apr	lastSun	2:00	1:00	D
-Rule	Toronto	1950	only	-	Nov	lastSun	2:00	0	S
-Rule	Toronto	1951	1956	-	Sep	lastSun	2:00	0	S
-# Shanks & Pottenger say Toronto ended DST a week early in 1971,
-# namely on 1971-10-24, but Mark Brader wrote (2003-05-31) that this
-# is wrong, and that he had confirmed it by checking the 1971-10-30
-# Toronto Star, which said that DST was ending 1971-10-31 as usual.
-Rule	Toronto	1957	1973	-	Oct	lastSun	2:00	0	S
-
-# From Paul Eggert (2003-07-27):
-# Willett (1914-03) writes (p. 17) "In the Cities of Fort William, and
-# Port Arthur, Ontario, the principle of the Bill has been in
-# operation for the past three years, and in the City of Moose Jaw,
-# Saskatchewan, for one year."
-
-# From David Bryan via Tory Tronrud, Director/Curator,
-# Thunder Bay Museum (2003-11-12):
-# There is some suggestion, however, that, by-law or not, daylight
-# savings time was being practiced in Fort William and Port Arthur
-# before 1909.... [I]n 1910, the line between the Eastern and Central
-# Time Zones was permanently moved about two hundred miles west to
-# include the Thunder Bay area....  When Canada adopted daylight
-# savings time in 1916, Fort William and Port Arthur, having done so
-# already, did not change their clocks....  During the Second World
-# War,... [t]he cities agreed to implement DST during the summer
-# months for the remainder of the war years.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Toronto	-5:17:32 -	LMT	1895
-			-5:00	Canada	E%sT	1919
-			-5:00	Toronto	E%sT	1942 Feb  9 2:00s
-			-5:00	Canada	E%sT	1946
-			-5:00	Toronto	E%sT	1974
-			-5:00	Canada	E%sT
-Zone America/Thunder_Bay -5:57:00 -	LMT	1895
-			-6:00	-	CST	1910
-			-5:00	-	EST	1942
-			-5:00	Canada	E%sT	1970
-			-5:00	Mont	E%sT	1973
-			-5:00	-	EST	1974
-			-5:00	Canada	E%sT
-Zone America/Nipigon	-5:53:04 -	LMT	1895
-			-5:00	Canada	E%sT	1940 Sep 29
-			-5:00	1:00	EDT	1942 Feb  9 2:00s
-			-5:00	Canada	E%sT
-Zone America/Rainy_River -6:18:16 -	LMT	1895
-			-6:00	Canada	C%sT	1940 Sep 29
-			-6:00	1:00	CDT	1942 Feb  9 2:00s
-			-6:00	Canada	C%sT
-Zone America/Atikokan	-6:06:28 -	LMT	1895
-			-6:00	Canada	C%sT	1940 Sep 29
-			-6:00	1:00	CDT	1942 Feb  9 2:00s
-			-6:00	Canada	C%sT	1945 Sep 30 2:00
-			-5:00	-	EST
-
-
-# Manitoba
-
-# From Rob Douglas (2006-04-06):
-# the old Manitoba Time Act - as amended by Bill 2, assented to
-# March 27, 1987 ... said ...
-# "between two o'clock Central Standard Time in the morning of
-# the first Sunday of April of each year and two o'clock Central
-# Standard Time in the morning of the last Sunday of October next
-# following, one hour in advance of Central Standard Time."...
-# I believe that the English legislation [of the old time act] had =
-# been assented to (March 22, 1967)....
-# Also, as far as I can tell, there was no order-in-council varying
-# the time of Daylight Saving Time for 2005 and so the provisions of
-# the 1987 version would apply - the changeover was at 2:00 Central
-# Standard Time (i.e. not until 3:00 Central Daylight Time).
-
-# From Paul Eggert (2006-04-10):
-# Shanks & Pottenger say Manitoba switched at 02:00 (not 02:00s)
-# starting 1966.  Since 02:00s is clearly correct for 1967 on, assume
-# it was also 02:00s in 1966.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Winn	1916	only	-	Apr	23	0:00	1:00	D
-Rule	Winn	1916	only	-	Sep	17	0:00	0	S
-Rule	Winn	1918	only	-	Apr	14	2:00	1:00	D
-Rule	Winn	1918	only	-	Oct	31	2:00	0	S
-Rule	Winn	1937	only	-	May	16	2:00	1:00	D
-Rule	Winn	1937	only	-	Sep	26	2:00	0	S
-Rule	Winn	1942	only	-	Feb	 9	2:00	1:00	W # War
-Rule	Winn	1945	only	-	Aug	14	23:00u	1:00	P # Peace
-Rule	Winn	1945	only	-	Sep	lastSun	2:00	0	S
-Rule	Winn	1946	only	-	May	12	2:00	1:00	D
-Rule	Winn	1946	only	-	Oct	13	2:00	0	S
-Rule	Winn	1947	1949	-	Apr	lastSun	2:00	1:00	D
-Rule	Winn	1947	1949	-	Sep	lastSun	2:00	0	S
-Rule	Winn	1950	only	-	May	 1	2:00	1:00	D
-Rule	Winn	1950	only	-	Sep	30	2:00	0	S
-Rule	Winn	1951	1960	-	Apr	lastSun	2:00	1:00	D
-Rule	Winn	1951	1958	-	Sep	lastSun	2:00	0	S
-Rule	Winn	1959	only	-	Oct	lastSun	2:00	0	S
-Rule	Winn	1960	only	-	Sep	lastSun	2:00	0	S
-Rule	Winn	1963	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Winn	1963	only	-	Sep	22	2:00	0	S
-Rule	Winn	1966	1986	-	Apr	lastSun	2:00s	1:00	D
-Rule	Winn	1966	2005	-	Oct	lastSun	2:00s	0	S
-Rule	Winn	1987	2005	-	Apr	Sun>=1	2:00s	1:00	D
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Winnipeg	-6:28:36 -	LMT	1887 Jul 16
-			-6:00	Winn	C%sT	2006
-			-6:00	Canada	C%sT
-
-
-# Saskatchewan
-
-# From Mark Brader (2003-07-26):
-# The first actual adoption of DST in Canada was at the municipal
-# level.  As the [Toronto] Star put it (1912-06-07), "While people
-# elsewhere have long been talking of legislation to save daylight,
-# the city of Moose Jaw [Saskatchewan] has acted on its own hook."
-# DST in Moose Jaw began on Saturday, 1912-06-01 (no time mentioned:
-# presumably late evening, as below), and would run until "the end of
-# the summer".  The discrepancy between municipal time and railroad
-# time was noted.
-
-# From Paul Eggert (2003-07-27):
-# Willett (1914-03) notes that DST "has been in operation ... in the
-# City of Moose Jaw, Saskatchewan, for one year."
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that since 1970 this region has mostly been as Regina.
-# Some western towns (e.g. Swift Current) switched from MST/MDT to CST in 1972.
-# Other western towns (e.g. Lloydminster) are like Edmonton.
-# Matthews and Vincent (1998) write that Denare Beach and Creighton
-# are like Winnipeg, in violation of Saskatchewan law.
-
-# From W. Jones (1992-11-06):
-# The. . .below is based on information I got from our law library, the
-# provincial archives, and the provincial Community Services department.
-# A precise history would require digging through newspaper archives, and
-# since you didn't say what you wanted, I didn't bother.
-#
-# Saskatchewan is split by a time zone meridian (105W) and over the years
-# the boundary became pretty ragged as communities near it reevaluated
-# their affiliations in one direction or the other.  In 1965 a provincial
-# referendum favoured legislating common time practices.
-#
-# On 15 April 1966 the Time Act (c. T-14, Revised Statutes of
-# Saskatchewan 1978) was proclaimed, and established that the eastern
-# part of Saskatchewan would use CST year round, that districts in
-# northwest Saskatchewan would by default follow CST but could opt to
-# follow Mountain Time rules (thus 1 hour difference in the winter and
-# zero in the summer), and that districts in southwest Saskatchewan would
-# by default follow MT but could opt to follow CST.
-#
-# It took a few years for the dust to settle (I know one story of a town
-# on one time zone having its school in another, such that a mom had to
-# serve her family lunch in two shifts), but presently it seems that only
-# a few towns on the border with Alberta (e.g. Lloydminster) follow MT
-# rules any more; all other districts appear to have used CST year round
-# since sometime in the 1960s.
-
-# From Chris Walton (2006-06-26):
-# The Saskatchewan time act which was last updated in 1996 is about 30 pages
-# long and rather painful to read.
-# http://www.qp.gov.sk.ca/documents/English/Statutes/Statutes/T14.pdf
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Regina	1918	only	-	Apr	14	2:00	1:00	D
-Rule	Regina	1918	only	-	Oct	31	2:00	0	S
-Rule	Regina	1930	1934	-	May	Sun>=1	0:00	1:00	D
-Rule	Regina	1930	1934	-	Oct	Sun>=1	0:00	0	S
-Rule	Regina	1937	1941	-	Apr	Sun>=8	0:00	1:00	D
-Rule	Regina	1937	only	-	Oct	Sun>=8	0:00	0	S
-Rule	Regina	1938	only	-	Oct	Sun>=1	0:00	0	S
-Rule	Regina	1939	1941	-	Oct	Sun>=8	0:00	0	S
-Rule	Regina	1942	only	-	Feb	 9	2:00	1:00	W # War
-Rule	Regina	1945	only	-	Aug	14	23:00u	1:00	P # Peace
-Rule	Regina	1945	only	-	Sep	lastSun	2:00	0	S
-Rule	Regina	1946	only	-	Apr	Sun>=8	2:00	1:00	D
-Rule	Regina	1946	only	-	Oct	Sun>=8	2:00	0	S
-Rule	Regina	1947	1957	-	Apr	lastSun	2:00	1:00	D
-Rule	Regina	1947	1957	-	Sep	lastSun	2:00	0	S
-Rule	Regina	1959	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Regina	1959	only	-	Oct	lastSun	2:00	0	S
-#
-Rule	Swift	1957	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Swift	1957	only	-	Oct	lastSun	2:00	0	S
-Rule	Swift	1959	1961	-	Apr	lastSun	2:00	1:00	D
-Rule	Swift	1959	only	-	Oct	lastSun	2:00	0	S
-Rule	Swift	1960	1961	-	Sep	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Regina	-6:58:36 -	LMT	1905 Sep
-			-7:00	Regina	M%sT	1960 Apr lastSun 2:00
-			-6:00	-	CST
-Zone America/Swift_Current -7:11:20 -	LMT	1905 Sep
-			-7:00	Canada	M%sT	1946 Apr lastSun 2:00
-			-7:00	Regina	M%sT	1950
-			-7:00	Swift	M%sT	1972 Apr lastSun 2:00
-			-6:00	-	CST
-
-
-# Alberta
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Edm	1918	1919	-	Apr	Sun>=8	2:00	1:00	D
-Rule	Edm	1918	only	-	Oct	31	2:00	0	S
-Rule	Edm	1919	only	-	May	27	2:00	0	S
-Rule	Edm	1920	1923	-	Apr	lastSun	2:00	1:00	D
-Rule	Edm	1920	only	-	Oct	lastSun	2:00	0	S
-Rule	Edm	1921	1923	-	Sep	lastSun	2:00	0	S
-Rule	Edm	1942	only	-	Feb	 9	2:00	1:00	W # War
-Rule	Edm	1945	only	-	Aug	14	23:00u	1:00	P # Peace
-Rule	Edm	1945	only	-	Sep	lastSun	2:00	0	S
-Rule	Edm	1947	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Edm	1947	only	-	Sep	lastSun	2:00	0	S
-Rule	Edm	1967	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Edm	1967	only	-	Oct	lastSun	2:00	0	S
-Rule	Edm	1969	only	-	Apr	lastSun	2:00	1:00	D
-Rule	Edm	1969	only	-	Oct	lastSun	2:00	0	S
-Rule	Edm	1972	1986	-	Apr	lastSun	2:00	1:00	D
-Rule	Edm	1972	2006	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Edmonton	-7:33:52 -	LMT	1906 Sep
-			-7:00	Edm	M%sT	1987
-			-7:00	Canada	M%sT
-
-
-# British Columbia
-
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger write that since 1970 most of this region has
-# been like Vancouver.
-# Dawson Creek uses MST.  Much of east BC is like Edmonton.
-# Matthews and Vincent (1998) write that Creston is like Dawson Creek.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Vanc	1918	only	-	Apr	14	2:00	1:00	D
-Rule	Vanc	1918	only	-	Oct	31	2:00	0	S
-Rule	Vanc	1942	only	-	Feb	 9	2:00	1:00	W # War
-Rule	Vanc	1945	only	-	Aug	14	23:00u	1:00	P # Peace
-Rule	Vanc	1945	only	-	Sep	30	2:00	0	S
-Rule	Vanc	1946	1986	-	Apr	lastSun	2:00	1:00	D
-Rule	Vanc	1946	only	-	Oct	13	2:00	0	S
-Rule	Vanc	1947	1961	-	Sep	lastSun	2:00	0	S
-Rule	Vanc	1962	2006	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Vancouver	-8:12:28 -	LMT	1884
-			-8:00	Vanc	P%sT	1987
-			-8:00	Canada	P%sT
-Zone America/Dawson_Creek -8:00:56 -	LMT	1884
-			-8:00	Canada	P%sT	1947
-			-8:00	Vanc	P%sT	1972 Aug 30 2:00
-			-7:00	-	MST
-
-
-# Northwest Territories, Nunavut, Yukon
-
-# From Paul Eggert (2006-03-22):
-# Dawson switched to PST in 1973.  Inuvik switched to MST in 1979.
-# Mathew Englander (1996-10-07) gives the following refs:
-#	* 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
-#	c. 7 defines Yukon standard time as UTC-9.  This is still valid;
-#	see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
-#	* C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
-#	* O.I.C. 1980/02 established DST.
-#	* O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
-# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
-# with Englander.
-# From Chris Walton (2006-06-26):
-# Here is a link to the old daylight saving portion of the interpretation
-# act which was last updated in 1987:
-# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
-
-# From Rives McDow (1999-09-04):
-# Nunavut ... moved ... to incorporate the whole territory into one time zone.
-# <a href="http://www.nunatsiaq.com/nunavut/nvt90903_13.html">
-# Nunavut moves to single time zone Oct. 31
-# </a>
-#
-# From Antoine Leca (1999-09-06):
-# We then need to create a new timezone for the Kitikmeot region of Nunavut
-# to differentiate it from the Yellowknife region.
-
-# From Paul Eggert (1999-09-20):
-# <a href="http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html">
-# Basic Facts: The New Territory
-# </a> (1999) reports that Pangnirtung operates on eastern time,
-# and that Coral Harbour does not observe DST.  We don't know when
-# Pangnirtung switched to eastern time; we'll guess 1995.
-
-# From Rives McDow (1999-11-08):
-# On October 31, when the rest of Nunavut went to Central time,
-# Pangnirtung wobbled.  Here is the result of their wobble:
-#
-# The following businesses and organizations in Pangnirtung use Central Time:
-#
-#	First Air, Power Corp, Nunavut Construction, Health Center, RCMP,
-#	Eastern Arctic National Parks, A & D Specialist
-#
-# The following businesses and organizations in Pangnirtung use Eastern Time:
-#
-#	Hamlet office, All other businesses, Both schools, Airport operator
-#
-# This has made for an interesting situation there, which warranted the news.
-# No one there that I spoke with seems concerned, or has plans to
-# change the local methods of keeping time, as it evidently does not
-# really interfere with any activities or make things difficult locally.
-# They plan to celebrate New Year's turn-over twice, one hour apart,
-# so it appears that the situation will last at least that long.
-# The Nunavut Intergovernmental Affairs hopes that they will "come to
-# their senses", but the locals evidently don't see any problem with
-# the current state of affairs.
-
-# From Michaela Rodrigue, writing in the
-# <a href="http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html">
-# Nunatsiaq News (1999-11-19)</a>:
-# Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones,
-# central - or Nunavut time - for government offices, and eastern time
-# for municipal offices and schools....  Igloolik [was similar but then]
-# made the switch to central time on Saturday, Nov. 6.
-
-# From Paul Eggert (2000-10-02):
-# Matthews and Vincent (1998) say the following, but we lack histories
-# for these potential new Zones.
-#
-# The Canadian Forces station at Alert uses Eastern Time while the
-# handful of residents at the Eureka weather station [in the Central
-# zone] skip daylight savings.  Baffin Island, which is crossed by the
-# Central, Eastern and Atlantic Time zones only uses Eastern Time.
-# Gjoa Haven, Taloyoak and Pelly Bay all use Mountain instead of
-# Central Time and Southampton Island [in the Central zone] is not
-# required to use daylight savings.
-
-# From
-# <a href="http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html">
-# Nunavut now has two time zones
-# </a> (2000-11-10):
-# The Nunavut government would allow its employees in Kugluktuk and
-# Cambridge Bay to operate on central time year-round, putting them
-# one hour behind the rest of Nunavut for six months during the winter.
-# At the end of October the two communities had rebelled against
-# Nunavut's unified time zone, refusing to shift to eastern time with
-# the rest of the territory for the winter.  Cambridge Bay remained on
-# central time, while Kugluktuk, even farther west, reverted to
-# mountain time, which they had used before the advent of Nunavut's
-# unified time zone in 1999.
-#
-# From Rives McDow (2001-01-20), quoting the Nunavut government:
-# The preceding decision came into effect at midnight, Saturday Nov 4, 2000.
-
-# From Paul Eggert (2000-12-04):
-# Let's just keep track of the official times for now.
-
-# From Rives McDow (2001-03-07):
-# The premier of Nunavut has issued a ministerial statement advising
-# that effective 2001-04-01, the territory of Nunavut will revert
-# back to three time zones (mountain, central, and eastern).  Of the
-# cities in Nunavut, Coral Harbor is the only one that I know of that
-# has said it will not observe dst, staying on EST year round.  I'm
-# checking for more info, and will get back to you if I come up with
-# more.
-# [Also see <http://www.nunatsiaq.com/nunavut/nvt10309_06.html> (2001-03-09).]
-
-# From Gwillim Law (2005-05-21):
-# According to maps at
-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg
-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg
-# (both dated 2003), and
-# http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp
-# (from a 1998 Canadian Geographic article), the de facto and de jure time
-# for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year
-# round.  Using Google, it's easy to find other websites that confirm this.
-# I wasn't able to find how far back this time regimen goes, but since it
-# predates the creation of Nunavut, it probably goes back many years....
-# The Inuktitut name of Coral Harbour is Sallit, but it's rarely used.
-#
-# From Paul Eggert (2005-07-26):
-# For lack of better information, assume that Southampton Island observed
-# daylight saving only during wartime.
-
-# From Chris Walton (2007-03-01):
-# ... the community of Resolute (located on Cornwallis Island in
-# Nunavut) moved from Central Time to Eastern Time last November.
-# Basically the community did not change its clocks at the end of
-# daylight saving....
-# http://www.nnsl.com/frames/newspapers/2006-11/nov13_06none.html
-
-# From Chris Walton (2007-03-14):
-# Today I phoned the "hamlet office" to find out what Resolute was doing with
-# its clocks.
-#
-# The individual that answered the phone confirmed that the clocks did not
-# move at the end of daylight saving on October 29/2006.  He also told me that
-# the clocks did not move this past weekend (March 11/2007)....
-#
-# America/Resolute should use the "Canada" Rule up to October 29/2006.
-# After that it should be fixed on Eastern Standard Time until further notice.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	NT_YK	1918	only	-	Apr	14	2:00	1:00	D
-Rule	NT_YK	1918	only	-	Oct	27	2:00	0	S
-Rule	NT_YK	1919	only	-	May	25	2:00	1:00	D
-Rule	NT_YK	1919	only	-	Nov	 1	0:00	0	S
-Rule	NT_YK	1942	only	-	Feb	 9	2:00	1:00	W # War
-Rule	NT_YK	1945	only	-	Aug	14	23:00u	1:00	P # Peace
-Rule	NT_YK	1945	only	-	Sep	30	2:00	0	S
-Rule	NT_YK	1965	only	-	Apr	lastSun	0:00	2:00	DD
-Rule	NT_YK	1965	only	-	Oct	lastSun	2:00	0	S
-Rule	NT_YK	1980	1986	-	Apr	lastSun	2:00	1:00	D
-Rule	NT_YK	1980	2006	-	Oct	lastSun	2:00	0	S
-Rule	NT_YK	1987	2006	-	Apr	Sun>=1	2:00	1:00	D
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-# aka Panniqtuuq
-Zone America/Pangnirtung 0	-	zzz	1921 # trading post est.
-			-4:00	NT_YK	A%sT	1995 Apr Sun>=1 2:00
-			-5:00	Canada	E%sT	1999 Oct 31 2:00
-			-6:00	Canada	C%sT	2000 Oct 29 2:00
-			-5:00	Canada	E%sT
-# formerly Frobisher Bay
-Zone America/Iqaluit	0	-	zzz	1942 Aug # Frobisher Bay est.
-			-5:00	NT_YK	E%sT	1999 Oct 31 2:00
-			-6:00	Canada	C%sT	2000 Oct 29 2:00
-			-5:00	Canada	E%sT
-# aka Qausuittuq
-Zone America/Resolute	0	-	zzz	1947 Aug 31 # Resolute founded
-			-6:00	NT_YK	C%sT	2000 Oct 29 2:00
-			-5:00	-	EST	2001 Apr  1 3:00
-			-6:00	Canada	C%sT	2006 Oct 29 2:00
-			-5:00	-	EST
-# aka Kangiqiniq
-Zone America/Rankin_Inlet 0	-	zzz	1957 # Rankin Inlet founded
-			-6:00	NT_YK	C%sT	2000 Oct 29 2:00
-			-5:00	-	EST	2001 Apr  1 3:00
-			-6:00	Canada	C%sT
-# aka Iqaluktuuttiaq
-Zone America/Cambridge_Bay 0	-	zzz	1920 # trading post est.?
-			-7:00	NT_YK	M%sT	1999 Oct 31 2:00
-			-6:00	Canada	C%sT	2000 Oct 29 2:00
-			-5:00	-	EST	2000 Nov  5 0:00
-			-6:00	-	CST	2001 Apr  1 3:00
-			-7:00	Canada	M%sT
-Zone America/Yellowknife 0	-	zzz	1935 # Yellowknife founded?
-			-7:00	NT_YK	M%sT	1980
-			-7:00	Canada	M%sT
-Zone America/Inuvik	0	-	zzz	1953 # Inuvik founded
-			-8:00	NT_YK	P%sT	1979 Apr lastSun 2:00
-			-7:00	NT_YK	M%sT	1980
-			-7:00	Canada	M%sT
-Zone America/Whitehorse	-9:00:12 -	LMT	1900 Aug 20
-			-9:00	NT_YK	Y%sT	1966 Jul 1 2:00
-			-8:00	NT_YK	P%sT	1980
-			-8:00	Canada	P%sT
-Zone America/Dawson	-9:17:40 -	LMT	1900 Aug 20
-			-9:00	NT_YK	Y%sT	1973 Oct 28 0:00
-			-8:00	NT_YK	P%sT	1980
-			-8:00	Canada	P%sT
-
-
-###############################################################################
-
-# Mexico
-
-# From Paul Eggert (2001-03-05):
-# The Investigation and Analysis Service of the
-# Mexican Library of Congress (MLoC) has published a
-# <a href="http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/">
-# history of Mexican local time (in Spanish)
-# </a>.
-#
-# Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC.
-# (In all cases we go with the MLoC.)
-# S&P report that Baja was at -8:00 in 1922/1923.
-# S&P say the 1930 transition in Baja was 1930-11-16.
-# S&P report no DST during summer 1931.
-# S&P report a transition at 1932-03-30 23:00, not 1932-04-01.
-
-# From Gwillim Law (2001-02-20):
-# There are some other discrepancies between the Decrees page and the
-# tz database.  I think they can best be explained by supposing that
-# the researchers who prepared the Decrees page failed to find some of
-# the relevant documents.
-
-# From Alan Perry (1996-02-15):
-# A guy from our Mexico subsidiary finally found the Presidential Decree
-# outlining the timezone changes in Mexico.
-#
-# ------------- Begin Forwarded Message -------------
-#
-# I finally got my hands on the Official Presidential Decree that sets up the
-# rules for the DST changes. The rules are:
-#
-# 1. The country is divided in 3 timezones:
-#    - Baja California Norte (the Mexico/BajaNorte TZ)
-#    - Baja California Sur, Nayarit, Sinaloa and Sonora (the Mexico/BajaSur TZ)
-#    - The rest of the country (the Mexico/General TZ)
-#
-# 2. From the first Sunday in April at 2:00 AM to the last Sunday in October
-#    at 2:00 AM, the times in each zone are as follows:
-#    BajaNorte: GMT+7
-#    BajaSur:   GMT+6
-#    General:   GMT+5
-#
-# 3. The rest of the year, the times are as follows:
-#    BajaNorte: GMT+8
-#    BajaSur:   GMT+7
-#    General:   GMT+6
-#
-# The Decree was published in Mexico's Official Newspaper on January 4th.
-#
-# -------------- End Forwarded Message --------------
-# From Paul Eggert (1996-06-12):
-# For an English translation of the decree, see
-# <a href="http://mexico-travel.com/extra/timezone_eng.html">
-# ``Diario Oficial: Time Zone Changeover'' (1996-01-04).
-# </a>
-
-# From Rives McDow (1998-10-08):
-# The State of Quintana Roo has reverted back to central STD and DST times
-# (i.e. UTC -0600 and -0500 as of 1998-08-02).
-
-# From Rives McDow (2000-01-10):
-# Effective April 4, 1999 at 2:00 AM local time, Sonora changed to the time
-# zone 5 hours from the International Date Line, and will not observe daylight
-# savings time so as to stay on the same time zone as the southern part of
-# Arizona year round.
-
-# From Jesper Norgaard, translating
-# <http://www.reforma.com/nacional/articulo/064327/> (2001-01-17):
-# In Oaxaca, the 55.000 teachers from the Section 22 of the National
-# Syndicate of Education Workers, refuse to apply daylight saving each
-# year, so that the more than 10,000 schools work at normal hour the
-# whole year.
-
-# From Gwillim Law (2001-01-19):
-# <http://www.reforma.com/negocios_y_dinero/articulo/064481/> ... says
-# (translated):...
-# January 17, 2000 - The Energy Secretary, Ernesto Martens, announced
-# that Summer Time will be reduced from seven to five months, starting
-# this year....
-# <http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001>
-# [translated], says "summer time will ... take effect on the first Sunday
-# in May, and end on the last Sunday of September.
-
-# From Arthur David Olson (2001-01-25):
-# The 2001-01-24 traditional Washington Post contained the page one
-# story "Timely Issue Divides Mexicans."...
-# http://www.washingtonpost.com/wp-dyn/articles/A37383-2001Jan23.html
-# ... Mexico City Mayor Lopez Obrador "...is threatening to keep
-# Mexico City and its 20 million residents on a different time than
-# the rest of the country..." In particular, Lopez Obrador would abolish
-# observation of Daylight Saving Time.
-
-# <a href="http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre">
-# Official statute published by the Energy Department
-# </a> (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
-# and Sonora with no DST.  This was reported by Jesper Norgaard (2001-02-03).
-
-# From Paul Eggert (2001-03-03):
-#
-# <a href="http://www.latimes.com/news/nation/20010303/t000018766.html">
-# James F. Smith writes in today's LA Times
-# </a>
-# * Sonora will continue to observe standard time.
-# * Last week Mexico City's mayor Andres Manuel Lopez Obrador decreed that
-#   the Federal District will not adopt DST.
-# * 4 of 16 district leaders announced they'll ignore the decree.
-# * The decree does not affect federal-controlled facilities including
-#   the airport, banks, hospitals, and schools.
-#
-# For now we'll assume that the Federal District will bow to federal rules.
-
-# From Jesper Norgaard (2001-04-01):
-# I found some references to the Mexican application of daylight
-# saving, which modifies what I had already sent you, stating earlier
-# that a number of northern Mexican states would go on daylight
-# saving. The modification reverts this to only cover Baja California
-# (Norte), while all other states (except Sonora, who has no daylight
-# saving all year) will follow the original decree of president
-# Vicente Fox, starting daylight saving May 6, 2001 and ending
-# September 30, 2001.
-# References: "Diario de Monterrey" <www.diariodemonterrey.com/index.asp>
-# Palabra <http://palabra.infosel.com/010331/primera/ppri3101.pdf> (2001-03-31)
-
-# From Reuters (2001-09-04):
-# Mexico's Supreme Court on Tuesday declared that daylight savings was
-# unconstitutional in Mexico City, creating the possibility the
-# capital will be in a different time zone from the rest of the nation
-# next year....  The Supreme Court's ruling takes effect at 2:00
-# a.m. (0800 GMT) on Sept. 30, when Mexico is scheduled to revert to
-# standard time. "This is so residents of the Federal District are not
-# subject to unexpected time changes," a statement from the court said.
-
-# From Jesper Norgaard Welen (2002-03-12):
-# ... consulting my local grocery store(!) and my coworkers, they all insisted
-# that a new decision had been made to reinstate US style DST in Mexico....
-# http://www.conae.gob.mx/ahorro/horaver2001_m1_2002.html (2002-02-20)
-# confirms this.  Sonora as usual is the only state where DST is not applied.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Mexico	1939	only	-	Feb	5	0:00	1:00	D
-Rule	Mexico	1939	only	-	Jun	25	0:00	0	S
-Rule	Mexico	1940	only	-	Dec	9	0:00	1:00	D
-Rule	Mexico	1941	only	-	Apr	1	0:00	0	S
-Rule	Mexico	1943	only	-	Dec	16	0:00	1:00	W # War
-Rule	Mexico	1944	only	-	May	1	0:00	0	S
-Rule	Mexico	1950	only	-	Feb	12	0:00	1:00	D
-Rule	Mexico	1950	only	-	Jul	30	0:00	0	S
-Rule	Mexico	1996	2000	-	Apr	Sun>=1	2:00	1:00	D
-Rule	Mexico	1996	2000	-	Oct	lastSun	2:00	0	S
-Rule	Mexico	2001	only	-	May	Sun>=1	2:00	1:00	D
-Rule	Mexico	2001	only	-	Sep	lastSun	2:00	0	S
-Rule	Mexico	2002	max	-	Apr	Sun>=1	2:00	1:00	D
-Rule	Mexico	2002	max	-	Oct	lastSun	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-# Quintana Roo
-Zone America/Cancun	-5:47:04 -	LMT	1922 Jan  1  0:12:56
-			-6:00	-	CST	1981 Dec 23
-			-5:00	Mexico	E%sT	1998 Aug  2  2:00
-			-6:00	Mexico	C%sT
-# Campeche, Yucatan
-Zone America/Merida	-5:58:28 -	LMT	1922 Jan  1  0:01:32
-			-6:00	-	CST	1981 Dec 23
-			-5:00	-	EST	1982 Dec  2
-			-6:00	Mexico	C%sT
-# Coahuila, Durango, Nuevo Leon, Tamaulipas
-Zone America/Monterrey	-6:41:16 -	LMT	1921 Dec 31 23:18:44
-			-6:00	-	CST	1988
-			-6:00	US	C%sT	1989
-			-6:00	Mexico	C%sT
-# Central Mexico
-Zone America/Mexico_City -6:36:36 -	LMT	1922 Jan  1  0:23:24
-			-7:00	-	MST	1927 Jun 10 23:00
-			-6:00	-	CST	1930 Nov 15
-			-7:00	-	MST	1931 May  1 23:00
-			-6:00	-	CST	1931 Oct
-			-7:00	-	MST	1932 Apr  1
-			-6:00	Mexico	C%sT	2001 Sep 30 02:00
-			-6:00	-	CST	2002 Feb 20
-			-6:00	Mexico	C%sT
-# Chihuahua
-Zone America/Chihuahua	-7:04:20 -	LMT	1921 Dec 31 23:55:40
-			-7:00	-	MST	1927 Jun 10 23:00
-			-6:00	-	CST	1930 Nov 15
-			-7:00	-	MST	1931 May  1 23:00
-			-6:00	-	CST	1931 Oct
-			-7:00	-	MST	1932 Apr  1
-			-6:00	-	CST	1996
-			-6:00	Mexico	C%sT	1998
-			-6:00	-	CST	1998 Apr Sun>=1 3:00
-			-7:00	Mexico	M%sT
-# Sonora
-Zone America/Hermosillo	-7:23:52 -	LMT	1921 Dec 31 23:36:08
-			-7:00	-	MST	1927 Jun 10 23:00
-			-6:00	-	CST	1930 Nov 15
-			-7:00	-	MST	1931 May  1 23:00
-			-6:00	-	CST	1931 Oct
-			-7:00	-	MST	1932 Apr  1
-			-6:00	-	CST	1942 Apr 24
-			-7:00	-	MST	1949 Jan 14
-			-8:00	-	PST	1970
-			-7:00	Mexico	M%sT	1999
-			-7:00	-	MST
-# Baja California Sur, Nayarit, Sinaloa
-Zone America/Mazatlan	-7:05:40 -	LMT	1921 Dec 31 23:54:20
-			-7:00	-	MST	1927 Jun 10 23:00
-			-6:00	-	CST	1930 Nov 15
-			-7:00	-	MST	1931 May  1 23:00
-			-6:00	-	CST	1931 Oct
-			-7:00	-	MST	1932 Apr  1
-			-6:00	-	CST	1942 Apr 24
-			-7:00	-	MST	1949 Jan 14
-			-8:00	-	PST	1970
-			-7:00	Mexico	M%sT
-# Baja California
-Zone America/Tijuana	-7:48:04 -	LMT	1922 Jan  1  0:11:56
-			-7:00	-	MST	1924
-			-8:00	-	PST	1927 Jun 10 23:00
-			-7:00	-	MST	1930 Nov 15
-			-8:00	-	PST	1931 Apr  1
-			-8:00	1:00	PDT	1931 Sep 30
-			-8:00	-	PST	1942 Apr 24
-			-8:00	1:00	PWT	1945 Aug 14 23:00u
-			-8:00	1:00	PPT	1945 Nov 12 # Peace
-			-8:00	-	PST	1948 Apr  5
-			-8:00	1:00	PDT	1949 Jan 14
-			-8:00	-	PST	1954
-			-8:00	CA	P%sT	1961
-			-8:00	-	PST	1976
-			-8:00	US	P%sT	1996
-			-8:00	Mexico	P%sT	2001
-			-8:00	US	P%sT	2002 Feb 20
-			-8:00	Mexico	P%sT
-# From Paul Eggert (2006-03-22):
-# Formerly there was an America/Ensenada zone, which differed from
-# America/Tijuana only in that it did not observe DST from 1976
-# through 1995.  This was as per Shanks (1999).  But Shanks & Pottenger say
-# Ensenada did not observe DST from 1948 through 1975.  Guy Harris reports
-# that the 1987 OAG says "Only Ensenada, Mexicale, San Felipe and
-# Tijuana observe DST," which agrees with Shanks & Pottenger but implies that
-# DST-observance was a town-by-town matter back then.  This concerns
-# data after 1970 so most likely there should be at least one Zone
-# other than America/Tijuana for Baja, but it's not clear yet what its
-# name or contents should be.
-#
-# Revillagigedo Is
-# no information
-
-###############################################################################
-
-# Anguilla
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Anguilla	-4:12:16 -	LMT	1912 Mar 2
-			-4:00	-	AST
-
-# Antigua and Barbuda
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Antigua	-4:07:12 -	LMT	1912 Mar 2
-			-5:00	-	EST	1951
-			-4:00	-	AST
-
-# Bahamas
-#
-# From Sue Williams (2006-12-07):
-# The Bahamas announced about a month ago that they plan to change their DST
-# rules to sync with the U.S. starting in 2007....
-# http://www.jonesbahamas.com/?c=45&a=10412
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Bahamas	1964	1975	-	Oct	lastSun	2:00	0	S
-Rule	Bahamas	1964	1975	-	Apr	lastSun	2:00	1:00	D
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Nassau	-5:09:24 -	LMT	1912 Mar 2
-			-5:00	Bahamas	E%sT	1976
-			-5:00	US	E%sT
-
-# Barbados
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Barb	1977	only	-	Jun	12	2:00	1:00	D
-Rule	Barb	1977	1978	-	Oct	Sun>=1	2:00	0	S
-Rule	Barb	1978	1980	-	Apr	Sun>=15	2:00	1:00	D
-Rule	Barb	1979	only	-	Sep	30	2:00	0	S
-Rule	Barb	1980	only	-	Sep	25	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Barbados	-3:58:28 -	LMT	1924		# Bridgetown
-			-3:58:28 -	BMT	1932	  # Bridgetown Mean Time
-			-4:00	Barb	A%sT
-
-# Belize
-# Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Belize	1918	1942	-	Oct	Sun>=2	0:00	0:30	HD
-Rule	Belize	1919	1943	-	Feb	Sun>=9	0:00	0	S
-Rule	Belize	1973	only	-	Dec	 5	0:00	1:00	D
-Rule	Belize	1974	only	-	Feb	 9	0:00	0	S
-Rule	Belize	1982	only	-	Dec	18	0:00	1:00	D
-Rule	Belize	1983	only	-	Feb	12	0:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Belize	-5:52:48 -	LMT	1912 Apr
-			-6:00	Belize	C%sT
-
-# Bermuda
-
-# From Dan Jones, reporting in The Royal Gazette (2006-06-26):
-
-# Next year, however, clocks in the US will go forward on the second Sunday
-# in March, until the first Sunday in November.  And, after the Time Zone
-# (Seasonal Variation) Bill 2006 was passed in the House of Assembly on
-# Friday, the same thing will happen in Bermuda.
-# http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Atlantic/Bermuda	-4:19:04 -	LMT	1930 Jan  1 2:00    # Hamilton
-			-4:00	-	AST	1974 Apr 28 2:00
-			-4:00	Bahamas	A%sT	1976
-			-4:00	US	A%sT
-
-# Cayman Is
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Cayman	-5:25:32 -	LMT	1890		# Georgetown
-			-5:07:12 -	KMT	1912 Feb    # Kingston Mean Time
-			-5:00	-	EST
-
-# Costa Rica
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	CR	1979	1980	-	Feb	lastSun	0:00	1:00	D
-Rule	CR	1979	1980	-	Jun	Sun>=1	0:00	0	S
-Rule	CR	1991	1992	-	Jan	Sat>=15	0:00	1:00	D
-# IATA SSIM (1991-09) says the following was at 1:00;
-# go with Shanks & Pottenger.
-Rule	CR	1991	only	-	Jul	 1	0:00	0	S
-Rule	CR	1992	only	-	Mar	15	0:00	0	S
-# There are too many San Joses elsewhere, so we'll use `Costa Rica'.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Costa_Rica	-5:36:20 -	LMT	1890		# San Jose
-			-5:36:20 -	SJMT	1921 Jan 15 # San Jose Mean Time
-			-6:00	CR	C%sT
-# Coco
-# no information; probably like America/Costa_Rica
-
-# Cuba
-
-# From Arthur David Olson (1999-03-29):
-# The 1999-03-28 exhibition baseball game held in Havana, Cuba, between
-# the Cuban National Team and the Baltimore Orioles was carried live on
-# the Orioles Radio Network, including affiliate WTOP in Washington, DC.
-# During the game, play-by-play announcer Jim Hunter noted that
-# "We'll be losing two hours of sleep...Cuba switched to Daylight Saving
-# Time today."  (The "two hour" remark referred to losing one hour of
-# sleep on 1999-03-28--when the announcers were in Cuba as it switched
-# to DST--and one more hour on 1999-04-04--when the announcers will have
-# returned to Baltimore, which switches on that date.)
-
-# From Evert van der Veer via Steffen Thorsen (2004-10-28):
-# Cuba is not going back to standard time this year.
-# From Paul Eggert (2006-03-22):
-# http://www.granma.cu/ingles/2004/septiembre/juev30/41medid-i.html
-# says that it's due to a problem at the Antonio Guiteras
-# thermoelectric plant, and says "This October there will be no return
-# to normal hours (after daylight saving time)".
-# For now, let's assume that it's a temporary measure.
-
-# From Carlos A. Carnero Delgado (2005-11-12):
-# This year (just like in 2004-2005) there's no change in time zone
-# adjustment in Cuba.  We will stay in daylight saving time:
-# http://www.granma.cu/espanol/2005/noviembre/mier9/horario.html
-
-# From Jesper Norgaard Welen (2006-10-21):
-# An article in GRANMA INTERNACIONAL claims that Cuba will end
-# the 3 years of permanent DST next weekend, see
-# http://www.granma.cu/ingles/2006/octubre/lun16/43horario.html
-# "On Saturday night, October 28 going into Sunday, October 29, at 01:00,
-# watches should be set back one hour -- going back to 00:00 hours -- returning
-# to the normal schedule....
-
-# From Paul Eggert (2007-03-02):
-# http://www.granma.cubaweb.cu/english/news/art89.html, dated yesterday,
-# says Cuban clocks will advance at midnight on March 10.
-# For lack of better information, assume Cuba will use US rules,
-# except that it switches at midnight standard time as usual.
-#
-# From Steffen Thorsen (2007-10-25):
-# Carlos Alberto Fonseca Arauz informed me that Cuba will end DST one week 
-# earlier - on the last Sunday of October, just like in 2006.
-# 
-# He supplied these references:
-# 
-# http://www.prensalatina.com.mx/article.asp?ID=%7B4CC32C1B-A9F7-42FB-8A07-8631AFC923AF%7D&language=ES
-# http://actualidad.terra.es/sociedad/articulo/cuba_llama_ahorrar_energia_cambio_1957044.htm
-# 
-# From Alex Kryvenishev (2007-10-25):
-# Here is also article from Granma (Cuba):
-# 
-# [Regira] el Horario Normal desde el [proximo] domingo 28 de octubre
-# http://www.granma.cubaweb.cu/2007/10/24/nacional/artic07.html
-# 
-# http://www.worldtimezone.com/dst_news/dst_news_cuba03.html
-
-# From Arthur David Olson (2008-03-09):
-# I'm in Maryland which is now observing United States Eastern Daylight
-# Time. At 9:44 local time I used RealPlayer to listen to
-# <a href="http://media.enet.cu/radioreloj">
-# http://media.enet.cu/radioreloj
-# </a>, a Cuban information station, and heard
-# the time announced as "ocho cuarenta y cuatro" ("eight forty-four"),
-# indicating that Cuba is still on standard time.
-
-# From Steffen Thorsen (2008-03-12):
-# It seems that Cuba will start DST on Sunday, 2007-03-16...
-# It was announced yesterday, according to this source (in Spanish):
-# <a href="http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm">
-# http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
-# </a>
-#
-# Some more background information is posted here:
-# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html">
-# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
-# </a>
-#
-# The article also says that Cuba has been observing DST since 1963,
-# while Shanks (and tzdata) has 1965 as the first date (except in the
-# 1940's). Many other web pages in Cuba also claim that it has been
-# observed since 1963, but with the exception of 1970 - an exception
-# which is not present in tzdata/Shanks. So there is a chance we need to
-# change some historic records as well.
-#
-# One example:
-# <a href="http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm">
-# http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm
-# </a>
-
-# From Jesper Norgaard Welen (2008-03-13):
-# The Cuban time change has just been confirmed on the most authoritative
-# web site, the Granma.  Please check out
-# <a href="http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html">
-# http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html
-# </a>
-#
-# Basically as expected after Steffen Thorsens information, the change
-# will take place midnight between Saturday and Sunday.
-
-# From Arthur David Olson (2008-03-12):
-# Assume Sun>=15 (third Sunday) going forward.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Cuba	1928	only	-	Jun	10	0:00	1:00	D
-Rule	Cuba	1928	only	-	Oct	10	0:00	0	S
-Rule	Cuba	1940	1942	-	Jun	Sun>=1	0:00	1:00	D
-Rule	Cuba	1940	1942	-	Sep	Sun>=1	0:00	0	S
-Rule	Cuba	1945	1946	-	Jun	Sun>=1	0:00	1:00	D
-Rule	Cuba	1945	1946	-	Sep	Sun>=1	0:00	0	S
-Rule	Cuba	1965	only	-	Jun	1	0:00	1:00	D
-Rule	Cuba	1965	only	-	Sep	30	0:00	0	S
-Rule	Cuba	1966	only	-	May	29	0:00	1:00	D
-Rule	Cuba	1966	only	-	Oct	2	0:00	0	S
-Rule	Cuba	1967	only	-	Apr	8	0:00	1:00	D
-Rule	Cuba	1967	1968	-	Sep	Sun>=8	0:00	0	S
-Rule	Cuba	1968	only	-	Apr	14	0:00	1:00	D
-Rule	Cuba	1969	1977	-	Apr	lastSun	0:00	1:00	D
-Rule	Cuba	1969	1971	-	Oct	lastSun	0:00	0	S
-Rule	Cuba	1972	1974	-	Oct	8	0:00	0	S
-Rule	Cuba	1975	1977	-	Oct	lastSun	0:00	0	S
-Rule	Cuba	1978	only	-	May	7	0:00	1:00	D
-Rule	Cuba	1978	1990	-	Oct	Sun>=8	0:00	0	S
-Rule	Cuba	1979	1980	-	Mar	Sun>=15	0:00	1:00	D
-Rule	Cuba	1981	1985	-	May	Sun>=5	0:00	1:00	D
-Rule	Cuba	1986	1989	-	Mar	Sun>=14	0:00	1:00	D
-Rule	Cuba	1990	1997	-	Apr	Sun>=1	0:00	1:00	D
-Rule	Cuba	1991	1995	-	Oct	Sun>=8	0:00s	0	S
-Rule	Cuba	1996	only	-	Oct	 6	0:00s	0	S
-Rule	Cuba	1997	only	-	Oct	12	0:00s	0	S
-Rule	Cuba	1998	1999	-	Mar	lastSun	0:00s	1:00	D
-Rule	Cuba	1998	2003	-	Oct	lastSun	0:00s	0	S
-Rule	Cuba	2000	2006	-	Apr	Sun>=1	0:00s	1:00	D
-Rule	Cuba	2006	max	-	Oct	lastSun	0:00s	0	S
-Rule	Cuba	2007	only	-	Mar	Sun>=8	0:00s	1:00	D
-Rule	Cuba	2008	max	-	Mar	Sun>=15	0:00s	1:00	D
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Havana	-5:29:28 -	LMT	1890
-			-5:29:36 -	HMT	1925 Jul 19 12:00 # Havana MT
-			-5:00	Cuba	C%sT
-
-# Dominica
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Dominica	-4:05:36 -	LMT	1911 Jul 1 0:01		# Roseau
-			-4:00	-	AST
-
-# Dominican Republic
-
-# From Steffen Thorsen (2000-10-30):
-# Enrique Morales reported to me that the Dominican Republic has changed the
-# time zone to Eastern Standard Time as of Sunday 29 at 2 am....
-# http://www.listin.com.do/antes/261000/republica/princi.html
-
-# From Paul Eggert (2000-12-04):
-# That URL (2000-10-26, in Spanish) says they planned to use US-style DST.
-
-# From Rives McDow (2000-12-01):
-# Dominican Republic changed its mind and presidential decree on Tuesday,
-# November 28, 2000, with a new decree.  On Sunday, December 3 at 1:00 AM the
-# Dominican Republic will be reverting to 8 hours from the International Date
-# Line, and will not be using DST in the foreseeable future.  The reason they
-# decided to use DST was to be in synch with Puerto Rico, who was also going
-# to implement DST.  When Puerto Rico didn't implement DST, the president
-# decided to revert.
-
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	DR	1966	only	-	Oct	30	0:00	1:00	D
-Rule	DR	1967	only	-	Feb	28	0:00	0	S
-Rule	DR	1969	1973	-	Oct	lastSun	0:00	0:30	HD
-Rule	DR	1970	only	-	Feb	21	0:00	0	S
-Rule	DR	1971	only	-	Jan	20	0:00	0	S
-Rule	DR	1972	1974	-	Jan	21	0:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Santo_Domingo -4:39:36 -	LMT	1890
-			-4:40	-	SDMT	1933 Apr  1 12:00 # S. Dom. MT
-			-5:00	DR	E%sT	1974 Oct 27
-			-4:00	-	AST	2000 Oct 29 02:00
-			-5:00	US	E%sT	2000 Dec  3 01:00
-			-4:00	-	AST
-
-# El Salvador
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Salv	1987	1988	-	May	Sun>=1	0:00	1:00	D
-Rule	Salv	1987	1988	-	Sep	lastSun	0:00	0	S
-# There are too many San Salvadors elsewhere, so use America/El_Salvador
-# instead of America/San_Salvador.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/El_Salvador -5:56:48 -	LMT	1921		# San Salvador
-			-6:00	Salv	C%sT
-
-# Grenada
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Grenada	-4:07:00 -	LMT	1911 Jul	# St George's
-			-4:00	-	AST
-
-# Guadeloupe
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Guadeloupe	-4:06:08 -	LMT	1911 Jun 8	# Pointe a Pitre
-			-4:00	-	AST
-# St Barthelemy
-Link America/Guadeloupe	America/St_Barthelemy
-# St Martin (French part)
-Link America/Guadeloupe	America/Marigot
-
-# Guatemala
-#
-# From Gwillim Law (2006-04-22), after a heads-up from Oscar van Vlijmen:
-# Diario Co Latino, at
-# http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079,
-# says in an article dated 2006-04-19 that the Guatemalan government had
-# decided on that date to advance official time by 60 minutes, to lessen the
-# impact of the elevated cost of oil....  Daylight saving time will last from
-# 2006-04-29 24:00 (Guatemalan standard time) to 2006-09-30 (time unspecified).
-# From Paul Eggert (2006-06-22):
-# The Ministry of Energy and Mines, press release CP-15/2006
-# (2006-04-19), says DST ends at 24:00.  See
-# <http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf>.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Guat	1973	only	-	Nov	25	0:00	1:00	D
-Rule	Guat	1974	only	-	Feb	24	0:00	0	S
-Rule	Guat	1983	only	-	May	21	0:00	1:00	D
-Rule	Guat	1983	only	-	Sep	22	0:00	0	S
-Rule	Guat	1991	only	-	Mar	23	0:00	1:00	D
-Rule	Guat	1991	only	-	Sep	 7	0:00	0	S
-Rule	Guat	2006	only	-	Apr	30	0:00	1:00	D
-Rule	Guat	2006	only	-	Oct	 1	0:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Guatemala	-6:02:04 -	LMT	1918 Oct 5
-			-6:00	Guat	C%sT
-
-# Haiti
-# From Gwillim Law (2005-04-15):
-# Risto O. Nykanen wrote me that Haiti is now on DST.
-# I searched for confirmation, and I found a
-# <a href="http://www.haitianconsulate.org/time.doc"> press release
-# on the Web page of the Haitian Consulate in Chicago (2005-03-31),
-# </a>.  Translated from French, it says:
-#
-#  "The Prime Minister's Communication Office notifies the public in general
-#   and the press in particular that, following a decision of the Interior
-#   Ministry and the Territorial Collectivities [I suppose that means the
-#   provinces], Haiti will move to Eastern Daylight Time in the night from next
-#   Saturday the 2nd to Sunday the 3rd.
-#
-#  "Consequently, the Prime Minister's Communication Office wishes to inform
-#   the population that the country's clocks will be set forward one hour
-#   starting at midnight.  This provision will hold until the last Saturday in
-#   October 2005.
-#
-#  "Port-au-Prince, March 31, 2005"
-#
-# From Steffen Thorsen (2006-04-04):
-# I have been informed by users that Haiti observes DST this year like
-# last year, so the current "only" rule for 2005 might be changed to a
-# "max" rule or to last until 2006. (Who knows if they will observe DST
-# next year or if they will extend their DST like US/Canada next year).
-#
-# I have found this article about it (in French):
-# http://www.haitipressnetwork.com/news.cfm?articleID=7612
-#
-# The reason seems to be an energy crisis.
-
-# From Stephen Colebourne (2007-02-22):
-# Some IATA info: Haiti won't be having DST in 2007.
-
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Haiti	1983	only	-	May	8	0:00	1:00	D
-Rule	Haiti	1984	1987	-	Apr	lastSun	0:00	1:00	D
-Rule	Haiti	1983	1987	-	Oct	lastSun	0:00	0	S
-# Shanks & Pottenger say AT is 2:00, but IATA SSIM (1991/1997) says 1:00s.
-# Go with IATA.
-Rule	Haiti	1988	1997	-	Apr	Sun>=1	1:00s	1:00	D
-Rule	Haiti	1988	1997	-	Oct	lastSun	1:00s	0	S
-Rule	Haiti	2005	2006	-	Apr	Sun>=1	0:00	1:00	D
-Rule	Haiti	2005	2006	-	Oct	lastSun	0:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Port-au-Prince -4:49:20 -	LMT	1890
-			-4:49	-	PPMT	1917 Jan 24 12:00 # P-a-P MT
-			-5:00	Haiti	E%sT
-
-# Honduras
-# Shanks & Pottenger say 1921 Jan 1; go with Whitman's more precise Apr 1.
-
-# From Paul Eggert (2006-05-05):
-# worldtimezone.com reports a 2006-05-02 Spanish-language AP article
-# saying Honduras will start using DST midnight Saturday, effective 4
-# months until September.  La Tribuna reported today
-# <http://www.latribuna.hn/99299.html> that Manuel Zelaya, the president
-# of Honduras, refused to back down on this.
-
-# From Jesper Norgaard Welen (2006-08-08):
-# It seems that Honduras has returned from DST to standard time this Monday at
-# 00:00 hours (prolonging Sunday to 25 hours duration).
-# http://www.worldtimezone.com/dst_news/dst_news_honduras04.html
-
-# From Paul Eggert (2006-08-08):
-# Also see Diario El Heraldo, The country returns to standard time (2006-08-08)
-# <http://www.elheraldo.hn/nota.php?nid=54941&sec=12>.
-# It mentions executive decree 18-2006.
-
-# From Steffen Thorsen (2006-08-17):
-# Honduras will observe DST from 2007 to 2009, exact dates are not
-# published, I have located this authoritative source:
-# http://www.presidencia.gob.hn/noticia.aspx?nId=47
-
-# From Steffen Thorsen (2007-03-30):
-# http://www.laprensahn.com/pais_nota.php?id04962=7386
-# So it seems that Honduras will not enter DST this year....
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Hond	1987	1988	-	May	Sun>=1	0:00	1:00	D
-Rule	Hond	1987	1988	-	Sep	lastSun	0:00	0	S
-Rule	Hond	2006	only	-	May	Sun>=1	0:00	1:00	D
-Rule	Hond	2006	only	-	Aug	Mon>=1	0:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Tegucigalpa -5:48:52 -	LMT	1921 Apr
-			-6:00	Hond	C%sT
-#
-# Great Swan I ceded by US to Honduras in 1972
-
-# Jamaica
-
-# From Bob Devine (1988-01-28):
-# Follows US rules.
-
-# From U. S. Naval Observatory (1989-01-19):
-# JAMAICA             5 H  BEHIND UTC
-
-# From Shanks & Pottenger:
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Jamaica	-5:07:12 -	LMT	1890		# Kingston
-			-5:07:12 -	KMT	1912 Feb    # Kingston Mean Time
-			-5:00	-	EST	1974 Apr 28 2:00
-			-5:00	US	E%sT	1984
-			-5:00	-	EST
-
-# Martinique
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Martinique	-4:04:20 -      LMT	1890		# Fort-de-France
-			-4:04:20 -	FFMT	1911 May     # Fort-de-France MT
-			-4:00	-	AST	1980 Apr  6
-			-4:00	1:00	ADT	1980 Sep 28
-			-4:00	-	AST
-
-# Montserrat
-# From Paul Eggert (2006-03-22):
-# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
-# world.gazetteer.com says Cork Hill is the most populous location now.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Montserrat	-4:08:52 -	LMT	1911 Jul 1 0:01   # Cork Hill
-			-4:00	-	AST
-
-# Nicaragua
-#
-# This uses Shanks & Pottenger for times before 2005.
-#
-# From Steffen Thorsen (2005-04-12):
-# I've got reports from 8 different people that Nicaragua just started
-# DST on Sunday 2005-04-10, in order to save energy because of
-# expensive petroleum.  The exact end date for DST is not yet
-# announced, only "September" but some sites also say "mid-September".
-# Some background information is available on the President's official site:
-# http://www.presidencia.gob.ni/Presidencia/Files_index/Secretaria/Notas%20de%20Prensa/Presidente/2005/ABRIL/Gobierno-de-nicaragua-adelanta-hora-oficial-06abril.htm
-# The Decree, no 23-2005 is available here:
-# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2005/Decreto%2023-2005%20Se%20adelanta%20en%20una%20hora%20en%20todo%20el%20territorio%20nacional%20apartir%20de%20las%2024horas%20del%2009%20de%20Abril.pdf
-#
-# From Paul Eggert (2005-05-01):
-# The decree doesn't say anything about daylight saving, but for now let's
-# assume that it is daylight saving....
-#
-# From Gwillim Law (2005-04-21):
-# The Associated Press story on the time change, which can be found at
-# http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html
-# and elsewhere, says (fifth paragraph, translated from Spanish):  "The last
-# time that a change of clocks was applied to save energy was in the year 2000
-# during the Arnoldo Aleman administration."...
-# The northamerica file says that Nicaragua has been on UTC-6 continuously
-# since December 1998.  I wasn't able to find any details of Nicaraguan time
-# changes in 2000.  Perhaps a note could be added to the northamerica file, to
-# the effect that we have indirect evidence that DST was observed in 2000.
-#
-# From Jesper Norgaard Welen (2005-11-02):
-# Nicaragua left DST the 2005-10-02 at 00:00 (local time).
-# http://www.presidencia.gob.ni/presidencia/files_index/secretaria/comunicados/2005/septiembre/26septiembre-cambio-hora.htm
-# (2005-09-26)
-#
-# From Jesper Norgaard Welen (2006-05-05):
-# http://www.elnuevodiario.com.ni/2006/05/01/nacionales/18410
-# (my informal translation)
-# By order of the president of the republic, Enrique Bolanos, Nicaragua
-# advanced by sixty minutes their official time, yesterday at 2 in the
-# morning, and will stay that way until 30.th. of september.
-#
-# From Jesper Norgaard Welen (2006-09-30):
-# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2006/D-063-2006P-PRN-Cambio-Hora.pdf
-# My informal translation runs:
-# The natural sun time is restored in all the national territory, in that the
-# time is returned one hour at 01:00 am of October 1 of 2006.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Nic	1979	1980	-	Mar	Sun>=16	0:00	1:00	D
-Rule	Nic	1979	1980	-	Jun	Mon>=23	0:00	0	S
-Rule	Nic	2005	only	-	Apr	10	0:00	1:00	D
-Rule	Nic	2005	only	-	Oct	Sun>=1	0:00	0	S
-Rule	Nic	2006	only	-	Apr	30	2:00	1:00	D
-Rule	Nic	2006	only	-	Oct	Sun>=1	1:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Managua	-5:45:08 -	LMT	1890
-			-5:45:12 -	MMT	1934 Jun 23 # Managua Mean Time?
-			-6:00	-	CST	1973 May
-			-5:00	-	EST	1975 Feb 16
-			-6:00	Nic	C%sT	1992 Jan  1 4:00
-			-5:00	-	EST	1992 Sep 24
-			-6:00	-	CST	1993
-			-5:00	-	EST	1997
-			-6:00	Nic	C%sT
-
-# Panama
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Panama	-5:18:08 -	LMT	1890
-			-5:19:36 -	CMT	1908 Apr 22   # Colon Mean Time
-			-5:00	-	EST
-
-# Puerto Rico
-# There are too many San Juans elsewhere, so we'll use `Puerto_Rico'.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Puerto_Rico -4:24:25 -	LMT	1899 Mar 28 12:00    # San Juan
-			-4:00	-	AST	1942 May  3
-			-4:00	US	A%sT	1946
-			-4:00	-	AST
-
-# St Kitts-Nevis
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/St_Kitts	-4:10:52 -	LMT	1912 Mar 2	# Basseterre
-			-4:00	-	AST
-
-# St Lucia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/St_Lucia	-4:04:00 -	LMT	1890		# Castries
-			-4:04:00 -	CMT	1912	    # Castries Mean Time
-			-4:00	-	AST
-
-# St Pierre and Miquelon
-# There are too many St Pierres elsewhere, so we'll use `Miquelon'.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Miquelon	-3:44:40 -	LMT	1911 May 15	# St Pierre
-			-4:00	-	AST	1980 May
-			-3:00	-	PMST	1987 # Pierre & Miquelon Time
-			-3:00	Canada	PM%sT
-
-# St Vincent and the Grenadines
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/St_Vincent	-4:04:56 -	LMT	1890		# Kingstown
-			-4:04:56 -	KMT	1912	   # Kingstown Mean Time
-			-4:00	-	AST
-
-# Turks and Caicos
-#
-# From Chris Dunn in
-# <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007>
-# (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the
-# daylight saving dates for time changes have been adjusted to match
-# the recent U.S. change of dates.
-#
-# From Brian Inglis (2007-04-28):
-# http://www.turksandcaicos.tc/calendar/index.htm [2007-04-26]
-# there is an entry for Nov 4 "Daylight Savings Time Ends 2007" and three
-# rows before that there is an out of date entry for Oct:
-# "Eastern Standard Times Begins 2007
-# Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time"
-# indicating that the normal ET rules are followed.
-#
-# From Paul Eggert (2006-05-01):
-# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998)
-# says they switch at midnight.  Go with Shanks & Pottenger.
-#
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	TC	1979	1986	-	Apr	lastSun	2:00	1:00	D
-Rule	TC	1979	2006	-	Oct	lastSun	2:00	0	S
-Rule	TC	1987	2006	-	Apr	Sun>=1	2:00	1:00	D
-Rule	TC	2007	max	-	Mar	Sun>=8	2:00	1:00	D
-Rule	TC	2007	max	-	Nov	Sun>=1	2:00	0	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Grand_Turk	-4:44:32 -	LMT	1890
-			-5:07:12 -	KMT	1912 Feb    # Kingston Mean Time
-			-5:00	TC	E%sT
-
-# British Virgin Is
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Tortola	-4:18:28 -	LMT	1911 Jul    # Road Town
-			-4:00	-	AST
-
-# Virgin Is
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/St_Thomas	-4:19:44 -	LMT	1911 Jul    # Charlotte Amalie
-			-4:00	-	AST
diff --git a/tools/zoneinfo/tzdata2008h/pacificnew b/tools/zoneinfo/tzdata2008h/pacificnew
deleted file mode 100644
index 667940b..0000000
--- a/tools/zoneinfo/tzdata2008h/pacificnew
+++ /dev/null
@@ -1,26 +0,0 @@
-# @(#)pacificnew	8.1
-
-# From Arthur David Olson (1989-04-05):
-# On 1989-04-05, the U. S. House of Representatives passed (238-154) a bill
-# establishing "Pacific Presidential Election Time"; it was not acted on
-# by the Senate or signed into law by the President.
-# You might want to change the "PE" (Presidential Election) below to
-# "Q" (Quadrennial) to maintain three-character zone abbreviations.
-# If you're really conservative, you might want to change it to "D".
-# Avoid "L" (Leap Year), which won't be true in 2100.
-
-# If Presidential Election Time is ever established, replace "XXXX" below
-# with the year the law takes effect and uncomment the "##" lines.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-## Rule	Twilite	XXXX	max	-	Apr	Sun>=1	2:00	1:00	D
-## Rule	Twilite	XXXX	max	uspres	Oct	lastSun	2:00	1:00	PE
-## Rule	Twilite	XXXX	max	uspres	Nov	Sun>=7	2:00	0	S
-## Rule	Twilite	XXXX	max	nonpres	Oct	lastSun	2:00	0	S
-
-# Zone	NAME			GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
-## Zone	America/Los_Angeles-PET	-8:00	US		P%sT	XXXX
-##				-8:00	Twilite		P%sT
-
-# For now...
-Link	America/Los_Angeles	US/Pacific-New	##
diff --git a/tools/zoneinfo/tzdata2008h/solar87 b/tools/zoneinfo/tzdata2008h/solar87
deleted file mode 100644
index 7183932..0000000
--- a/tools/zoneinfo/tzdata2008h/solar87
+++ /dev/null
@@ -1,388 +0,0 @@
-# @(#)solar87	8.1
-
-# So much for footnotes about Saudi Arabia.
-# Apparent noon times below are for Riyadh; your mileage will vary.
-# Times were computed using formulas in the U.S. Naval Observatory's
-# Almanac for Computers 1987; the formulas "will give EqT to an accuracy of
-# [plus or minus two] seconds during the current year."
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	sol87	1987	only	-	Jan	1	12:03:20s -0:03:20 -
-Rule	sol87	1987	only	-	Jan	2	12:03:50s -0:03:50 -
-Rule	sol87	1987	only	-	Jan	3	12:04:15s -0:04:15 -
-Rule	sol87	1987	only	-	Jan	4	12:04:45s -0:04:45 -
-Rule	sol87	1987	only	-	Jan	5	12:05:10s -0:05:10 -
-Rule	sol87	1987	only	-	Jan	6	12:05:40s -0:05:40 -
-Rule	sol87	1987	only	-	Jan	7	12:06:05s -0:06:05 -
-Rule	sol87	1987	only	-	Jan	8	12:06:30s -0:06:30 -
-Rule	sol87	1987	only	-	Jan	9	12:06:55s -0:06:55 -
-Rule	sol87	1987	only	-	Jan	10	12:07:20s -0:07:20 -
-Rule	sol87	1987	only	-	Jan	11	12:07:45s -0:07:45 -
-Rule	sol87	1987	only	-	Jan	12	12:08:10s -0:08:10 -
-Rule	sol87	1987	only	-	Jan	13	12:08:30s -0:08:30 -
-Rule	sol87	1987	only	-	Jan	14	12:08:55s -0:08:55 -
-Rule	sol87	1987	only	-	Jan	15	12:09:15s -0:09:15 -
-Rule	sol87	1987	only	-	Jan	16	12:09:35s -0:09:35 -
-Rule	sol87	1987	only	-	Jan	17	12:09:55s -0:09:55 -
-Rule	sol87	1987	only	-	Jan	18	12:10:15s -0:10:15 -
-Rule	sol87	1987	only	-	Jan	19	12:10:35s -0:10:35 -
-Rule	sol87	1987	only	-	Jan	20	12:10:55s -0:10:55 -
-Rule	sol87	1987	only	-	Jan	21	12:11:10s -0:11:10 -
-Rule	sol87	1987	only	-	Jan	22	12:11:30s -0:11:30 -
-Rule	sol87	1987	only	-	Jan	23	12:11:45s -0:11:45 -
-Rule	sol87	1987	only	-	Jan	24	12:12:00s -0:12:00 -
-Rule	sol87	1987	only	-	Jan	25	12:12:15s -0:12:15 -
-Rule	sol87	1987	only	-	Jan	26	12:12:30s -0:12:30 -
-Rule	sol87	1987	only	-	Jan	27	12:12:40s -0:12:40 -
-Rule	sol87	1987	only	-	Jan	28	12:12:55s -0:12:55 -
-Rule	sol87	1987	only	-	Jan	29	12:13:05s -0:13:05 -
-Rule	sol87	1987	only	-	Jan	30	12:13:15s -0:13:15 -
-Rule	sol87	1987	only	-	Jan	31	12:13:25s -0:13:25 -
-Rule	sol87	1987	only	-	Feb	1	12:13:35s -0:13:35 -
-Rule	sol87	1987	only	-	Feb	2	12:13:40s -0:13:40 -
-Rule	sol87	1987	only	-	Feb	3	12:13:50s -0:13:50 -
-Rule	sol87	1987	only	-	Feb	4	12:13:55s -0:13:55 -
-Rule	sol87	1987	only	-	Feb	5	12:14:00s -0:14:00 -
-Rule	sol87	1987	only	-	Feb	6	12:14:05s -0:14:05 -
-Rule	sol87	1987	only	-	Feb	7	12:14:10s -0:14:10 -
-Rule	sol87	1987	only	-	Feb	8	12:14:10s -0:14:10 -
-Rule	sol87	1987	only	-	Feb	9	12:14:15s -0:14:15 -
-Rule	sol87	1987	only	-	Feb	10	12:14:15s -0:14:15 -
-Rule	sol87	1987	only	-	Feb	11	12:14:15s -0:14:15 -
-Rule	sol87	1987	only	-	Feb	12	12:14:15s -0:14:15 -
-Rule	sol87	1987	only	-	Feb	13	12:14:15s -0:14:15 -
-Rule	sol87	1987	only	-	Feb	14	12:14:15s -0:14:15 -
-Rule	sol87	1987	only	-	Feb	15	12:14:10s -0:14:10 -
-Rule	sol87	1987	only	-	Feb	16	12:14:10s -0:14:10 -
-Rule	sol87	1987	only	-	Feb	17	12:14:05s -0:14:05 -
-Rule	sol87	1987	only	-	Feb	18	12:14:00s -0:14:00 -
-Rule	sol87	1987	only	-	Feb	19	12:13:55s -0:13:55 -
-Rule	sol87	1987	only	-	Feb	20	12:13:50s -0:13:50 -
-Rule	sol87	1987	only	-	Feb	21	12:13:45s -0:13:45 -
-Rule	sol87	1987	only	-	Feb	22	12:13:35s -0:13:35 -
-Rule	sol87	1987	only	-	Feb	23	12:13:30s -0:13:30 -
-Rule	sol87	1987	only	-	Feb	24	12:13:20s -0:13:20 -
-Rule	sol87	1987	only	-	Feb	25	12:13:10s -0:13:10 -
-Rule	sol87	1987	only	-	Feb	26	12:13:00s -0:13:00 -
-Rule	sol87	1987	only	-	Feb	27	12:12:50s -0:12:50 -
-Rule	sol87	1987	only	-	Feb	28	12:12:40s -0:12:40 -
-Rule	sol87	1987	only	-	Mar	1	12:12:30s -0:12:30 -
-Rule	sol87	1987	only	-	Mar	2	12:12:20s -0:12:20 -
-Rule	sol87	1987	only	-	Mar	3	12:12:05s -0:12:05 -
-Rule	sol87	1987	only	-	Mar	4	12:11:55s -0:11:55 -
-Rule	sol87	1987	only	-	Mar	5	12:11:40s -0:11:40 -
-Rule	sol87	1987	only	-	Mar	6	12:11:25s -0:11:25 -
-Rule	sol87	1987	only	-	Mar	7	12:11:15s -0:11:15 -
-Rule	sol87	1987	only	-	Mar	8	12:11:00s -0:11:00 -
-Rule	sol87	1987	only	-	Mar	9	12:10:45s -0:10:45 -
-Rule	sol87	1987	only	-	Mar	10	12:10:30s -0:10:30 -
-Rule	sol87	1987	only	-	Mar	11	12:10:15s -0:10:15 -
-Rule	sol87	1987	only	-	Mar	12	12:09:55s -0:09:55 -
-Rule	sol87	1987	only	-	Mar	13	12:09:40s -0:09:40 -
-Rule	sol87	1987	only	-	Mar	14	12:09:25s -0:09:25 -
-Rule	sol87	1987	only	-	Mar	15	12:09:10s -0:09:10 -
-Rule	sol87	1987	only	-	Mar	16	12:08:50s -0:08:50 -
-Rule	sol87	1987	only	-	Mar	17	12:08:35s -0:08:35 -
-Rule	sol87	1987	only	-	Mar	18	12:08:15s -0:08:15 -
-Rule	sol87	1987	only	-	Mar	19	12:08:00s -0:08:00 -
-Rule	sol87	1987	only	-	Mar	20	12:07:40s -0:07:40 -
-Rule	sol87	1987	only	-	Mar	21	12:07:25s -0:07:25 -
-Rule	sol87	1987	only	-	Mar	22	12:07:05s -0:07:05 -
-Rule	sol87	1987	only	-	Mar	23	12:06:50s -0:06:50 -
-Rule	sol87	1987	only	-	Mar	24	12:06:30s -0:06:30 -
-Rule	sol87	1987	only	-	Mar	25	12:06:10s -0:06:10 -
-Rule	sol87	1987	only	-	Mar	26	12:05:55s -0:05:55 -
-Rule	sol87	1987	only	-	Mar	27	12:05:35s -0:05:35 -
-Rule	sol87	1987	only	-	Mar	28	12:05:15s -0:05:15 -
-Rule	sol87	1987	only	-	Mar	29	12:05:00s -0:05:00 -
-Rule	sol87	1987	only	-	Mar	30	12:04:40s -0:04:40 -
-Rule	sol87	1987	only	-	Mar	31	12:04:25s -0:04:25 -
-Rule	sol87	1987	only	-	Apr	1	12:04:05s -0:04:05 -
-Rule	sol87	1987	only	-	Apr	2	12:03:45s -0:03:45 -
-Rule	sol87	1987	only	-	Apr	3	12:03:30s -0:03:30 -
-Rule	sol87	1987	only	-	Apr	4	12:03:10s -0:03:10 -
-Rule	sol87	1987	only	-	Apr	5	12:02:55s -0:02:55 -
-Rule	sol87	1987	only	-	Apr	6	12:02:35s -0:02:35 -
-Rule	sol87	1987	only	-	Apr	7	12:02:20s -0:02:20 -
-Rule	sol87	1987	only	-	Apr	8	12:02:05s -0:02:05 -
-Rule	sol87	1987	only	-	Apr	9	12:01:45s -0:01:45 -
-Rule	sol87	1987	only	-	Apr	10	12:01:30s -0:01:30 -
-Rule	sol87	1987	only	-	Apr	11	12:01:15s -0:01:15 -
-Rule	sol87	1987	only	-	Apr	12	12:00:55s -0:00:55 -
-Rule	sol87	1987	only	-	Apr	13	12:00:40s -0:00:40 -
-Rule	sol87	1987	only	-	Apr	14	12:00:25s -0:00:25 -
-Rule	sol87	1987	only	-	Apr	15	12:00:10s -0:00:10 -
-Rule	sol87	1987	only	-	Apr	16	11:59:55s 0:00:05 -
-Rule	sol87	1987	only	-	Apr	17	11:59:45s 0:00:15 -
-Rule	sol87	1987	only	-	Apr	18	11:59:30s 0:00:30 -
-Rule	sol87	1987	only	-	Apr	19	11:59:15s 0:00:45 -
-Rule	sol87	1987	only	-	Apr	20	11:59:05s 0:00:55 -
-Rule	sol87	1987	only	-	Apr	21	11:58:50s 0:01:10 -
-Rule	sol87	1987	only	-	Apr	22	11:58:40s 0:01:20 -
-Rule	sol87	1987	only	-	Apr	23	11:58:25s 0:01:35 -
-Rule	sol87	1987	only	-	Apr	24	11:58:15s 0:01:45 -
-Rule	sol87	1987	only	-	Apr	25	11:58:05s 0:01:55 -
-Rule	sol87	1987	only	-	Apr	26	11:57:55s 0:02:05 -
-Rule	sol87	1987	only	-	Apr	27	11:57:45s 0:02:15 -
-Rule	sol87	1987	only	-	Apr	28	11:57:35s 0:02:25 -
-Rule	sol87	1987	only	-	Apr	29	11:57:25s 0:02:35 -
-Rule	sol87	1987	only	-	Apr	30	11:57:15s 0:02:45 -
-Rule	sol87	1987	only	-	May	1	11:57:10s 0:02:50 -
-Rule	sol87	1987	only	-	May	2	11:57:00s 0:03:00 -
-Rule	sol87	1987	only	-	May	3	11:56:55s 0:03:05 -
-Rule	sol87	1987	only	-	May	4	11:56:50s 0:03:10 -
-Rule	sol87	1987	only	-	May	5	11:56:45s 0:03:15 -
-Rule	sol87	1987	only	-	May	6	11:56:40s 0:03:20 -
-Rule	sol87	1987	only	-	May	7	11:56:35s 0:03:25 -
-Rule	sol87	1987	only	-	May	8	11:56:30s 0:03:30 -
-Rule	sol87	1987	only	-	May	9	11:56:25s 0:03:35 -
-Rule	sol87	1987	only	-	May	10	11:56:25s 0:03:35 -
-Rule	sol87	1987	only	-	May	11	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	May	12	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	May	13	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	May	14	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	May	15	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	May	16	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	May	17	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	May	18	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	May	19	11:56:25s 0:03:35 -
-Rule	sol87	1987	only	-	May	20	11:56:25s 0:03:35 -
-Rule	sol87	1987	only	-	May	21	11:56:30s 0:03:30 -
-Rule	sol87	1987	only	-	May	22	11:56:35s 0:03:25 -
-Rule	sol87	1987	only	-	May	23	11:56:40s 0:03:20 -
-Rule	sol87	1987	only	-	May	24	11:56:45s 0:03:15 -
-Rule	sol87	1987	only	-	May	25	11:56:50s 0:03:10 -
-Rule	sol87	1987	only	-	May	26	11:56:55s 0:03:05 -
-Rule	sol87	1987	only	-	May	27	11:57:00s 0:03:00 -
-Rule	sol87	1987	only	-	May	28	11:57:10s 0:02:50 -
-Rule	sol87	1987	only	-	May	29	11:57:15s 0:02:45 -
-Rule	sol87	1987	only	-	May	30	11:57:25s 0:02:35 -
-Rule	sol87	1987	only	-	May	31	11:57:30s 0:02:30 -
-Rule	sol87	1987	only	-	Jun	1	11:57:40s 0:02:20 -
-Rule	sol87	1987	only	-	Jun	2	11:57:50s 0:02:10 -
-Rule	sol87	1987	only	-	Jun	3	11:58:00s 0:02:00 -
-Rule	sol87	1987	only	-	Jun	4	11:58:10s 0:01:50 -
-Rule	sol87	1987	only	-	Jun	5	11:58:20s 0:01:40 -
-Rule	sol87	1987	only	-	Jun	6	11:58:30s 0:01:30 -
-Rule	sol87	1987	only	-	Jun	7	11:58:40s 0:01:20 -
-Rule	sol87	1987	only	-	Jun	8	11:58:50s 0:01:10 -
-Rule	sol87	1987	only	-	Jun	9	11:59:05s 0:00:55 -
-Rule	sol87	1987	only	-	Jun	10	11:59:15s 0:00:45 -
-Rule	sol87	1987	only	-	Jun	11	11:59:30s 0:00:30 -
-Rule	sol87	1987	only	-	Jun	12	11:59:40s 0:00:20 -
-Rule	sol87	1987	only	-	Jun	13	11:59:50s 0:00:10 -
-Rule	sol87	1987	only	-	Jun	14	12:00:05s -0:00:05 -
-Rule	sol87	1987	only	-	Jun	15	12:00:15s -0:00:15 -
-Rule	sol87	1987	only	-	Jun	16	12:00:30s -0:00:30 -
-Rule	sol87	1987	only	-	Jun	17	12:00:45s -0:00:45 -
-Rule	sol87	1987	only	-	Jun	18	12:00:55s -0:00:55 -
-Rule	sol87	1987	only	-	Jun	19	12:01:10s -0:01:10 -
-Rule	sol87	1987	only	-	Jun	20	12:01:20s -0:01:20 -
-Rule	sol87	1987	only	-	Jun	21	12:01:35s -0:01:35 -
-Rule	sol87	1987	only	-	Jun	22	12:01:50s -0:01:50 -
-Rule	sol87	1987	only	-	Jun	23	12:02:00s -0:02:00 -
-Rule	sol87	1987	only	-	Jun	24	12:02:15s -0:02:15 -
-Rule	sol87	1987	only	-	Jun	25	12:02:25s -0:02:25 -
-Rule	sol87	1987	only	-	Jun	26	12:02:40s -0:02:40 -
-Rule	sol87	1987	only	-	Jun	27	12:02:50s -0:02:50 -
-Rule	sol87	1987	only	-	Jun	28	12:03:05s -0:03:05 -
-Rule	sol87	1987	only	-	Jun	29	12:03:15s -0:03:15 -
-Rule	sol87	1987	only	-	Jun	30	12:03:30s -0:03:30 -
-Rule	sol87	1987	only	-	Jul	1	12:03:40s -0:03:40 -
-Rule	sol87	1987	only	-	Jul	2	12:03:50s -0:03:50 -
-Rule	sol87	1987	only	-	Jul	3	12:04:05s -0:04:05 -
-Rule	sol87	1987	only	-	Jul	4	12:04:15s -0:04:15 -
-Rule	sol87	1987	only	-	Jul	5	12:04:25s -0:04:25 -
-Rule	sol87	1987	only	-	Jul	6	12:04:35s -0:04:35 -
-Rule	sol87	1987	only	-	Jul	7	12:04:45s -0:04:45 -
-Rule	sol87	1987	only	-	Jul	8	12:04:55s -0:04:55 -
-Rule	sol87	1987	only	-	Jul	9	12:05:05s -0:05:05 -
-Rule	sol87	1987	only	-	Jul	10	12:05:15s -0:05:15 -
-Rule	sol87	1987	only	-	Jul	11	12:05:20s -0:05:20 -
-Rule	sol87	1987	only	-	Jul	12	12:05:30s -0:05:30 -
-Rule	sol87	1987	only	-	Jul	13	12:05:40s -0:05:40 -
-Rule	sol87	1987	only	-	Jul	14	12:05:45s -0:05:45 -
-Rule	sol87	1987	only	-	Jul	15	12:05:50s -0:05:50 -
-Rule	sol87	1987	only	-	Jul	16	12:06:00s -0:06:00 -
-Rule	sol87	1987	only	-	Jul	17	12:06:05s -0:06:05 -
-Rule	sol87	1987	only	-	Jul	18	12:06:10s -0:06:10 -
-Rule	sol87	1987	only	-	Jul	19	12:06:15s -0:06:15 -
-Rule	sol87	1987	only	-	Jul	20	12:06:15s -0:06:15 -
-Rule	sol87	1987	only	-	Jul	21	12:06:20s -0:06:20 -
-Rule	sol87	1987	only	-	Jul	22	12:06:25s -0:06:25 -
-Rule	sol87	1987	only	-	Jul	23	12:06:25s -0:06:25 -
-Rule	sol87	1987	only	-	Jul	24	12:06:25s -0:06:25 -
-Rule	sol87	1987	only	-	Jul	25	12:06:30s -0:06:30 -
-Rule	sol87	1987	only	-	Jul	26	12:06:30s -0:06:30 -
-Rule	sol87	1987	only	-	Jul	27	12:06:30s -0:06:30 -
-Rule	sol87	1987	only	-	Jul	28	12:06:30s -0:06:30 -
-Rule	sol87	1987	only	-	Jul	29	12:06:25s -0:06:25 -
-Rule	sol87	1987	only	-	Jul	30	12:06:25s -0:06:25 -
-Rule	sol87	1987	only	-	Jul	31	12:06:25s -0:06:25 -
-Rule	sol87	1987	only	-	Aug	1	12:06:20s -0:06:20 -
-Rule	sol87	1987	only	-	Aug	2	12:06:15s -0:06:15 -
-Rule	sol87	1987	only	-	Aug	3	12:06:10s -0:06:10 -
-Rule	sol87	1987	only	-	Aug	4	12:06:05s -0:06:05 -
-Rule	sol87	1987	only	-	Aug	5	12:06:00s -0:06:00 -
-Rule	sol87	1987	only	-	Aug	6	12:05:55s -0:05:55 -
-Rule	sol87	1987	only	-	Aug	7	12:05:50s -0:05:50 -
-Rule	sol87	1987	only	-	Aug	8	12:05:40s -0:05:40 -
-Rule	sol87	1987	only	-	Aug	9	12:05:35s -0:05:35 -
-Rule	sol87	1987	only	-	Aug	10	12:05:25s -0:05:25 -
-Rule	sol87	1987	only	-	Aug	11	12:05:15s -0:05:15 -
-Rule	sol87	1987	only	-	Aug	12	12:05:05s -0:05:05 -
-Rule	sol87	1987	only	-	Aug	13	12:04:55s -0:04:55 -
-Rule	sol87	1987	only	-	Aug	14	12:04:45s -0:04:45 -
-Rule	sol87	1987	only	-	Aug	15	12:04:35s -0:04:35 -
-Rule	sol87	1987	only	-	Aug	16	12:04:25s -0:04:25 -
-Rule	sol87	1987	only	-	Aug	17	12:04:10s -0:04:10 -
-Rule	sol87	1987	only	-	Aug	18	12:04:00s -0:04:00 -
-Rule	sol87	1987	only	-	Aug	19	12:03:45s -0:03:45 -
-Rule	sol87	1987	only	-	Aug	20	12:03:30s -0:03:30 -
-Rule	sol87	1987	only	-	Aug	21	12:03:15s -0:03:15 -
-Rule	sol87	1987	only	-	Aug	22	12:03:00s -0:03:00 -
-Rule	sol87	1987	only	-	Aug	23	12:02:45s -0:02:45 -
-Rule	sol87	1987	only	-	Aug	24	12:02:30s -0:02:30 -
-Rule	sol87	1987	only	-	Aug	25	12:02:15s -0:02:15 -
-Rule	sol87	1987	only	-	Aug	26	12:02:00s -0:02:00 -
-Rule	sol87	1987	only	-	Aug	27	12:01:40s -0:01:40 -
-Rule	sol87	1987	only	-	Aug	28	12:01:25s -0:01:25 -
-Rule	sol87	1987	only	-	Aug	29	12:01:05s -0:01:05 -
-Rule	sol87	1987	only	-	Aug	30	12:00:50s -0:00:50 -
-Rule	sol87	1987	only	-	Aug	31	12:00:30s -0:00:30 -
-Rule	sol87	1987	only	-	Sep	1	12:00:10s -0:00:10 -
-Rule	sol87	1987	only	-	Sep	2	11:59:50s 0:00:10 -
-Rule	sol87	1987	only	-	Sep	3	11:59:35s 0:00:25 -
-Rule	sol87	1987	only	-	Sep	4	11:59:15s 0:00:45 -
-Rule	sol87	1987	only	-	Sep	5	11:58:55s 0:01:05 -
-Rule	sol87	1987	only	-	Sep	6	11:58:35s 0:01:25 -
-Rule	sol87	1987	only	-	Sep	7	11:58:15s 0:01:45 -
-Rule	sol87	1987	only	-	Sep	8	11:57:55s 0:02:05 -
-Rule	sol87	1987	only	-	Sep	9	11:57:30s 0:02:30 -
-Rule	sol87	1987	only	-	Sep	10	11:57:10s 0:02:50 -
-Rule	sol87	1987	only	-	Sep	11	11:56:50s 0:03:10 -
-Rule	sol87	1987	only	-	Sep	12	11:56:30s 0:03:30 -
-Rule	sol87	1987	only	-	Sep	13	11:56:10s 0:03:50 -
-Rule	sol87	1987	only	-	Sep	14	11:55:45s 0:04:15 -
-Rule	sol87	1987	only	-	Sep	15	11:55:25s 0:04:35 -
-Rule	sol87	1987	only	-	Sep	16	11:55:05s 0:04:55 -
-Rule	sol87	1987	only	-	Sep	17	11:54:45s 0:05:15 -
-Rule	sol87	1987	only	-	Sep	18	11:54:20s 0:05:40 -
-Rule	sol87	1987	only	-	Sep	19	11:54:00s 0:06:00 -
-Rule	sol87	1987	only	-	Sep	20	11:53:40s 0:06:20 -
-Rule	sol87	1987	only	-	Sep	21	11:53:15s 0:06:45 -
-Rule	sol87	1987	only	-	Sep	22	11:52:55s 0:07:05 -
-Rule	sol87	1987	only	-	Sep	23	11:52:35s 0:07:25 -
-Rule	sol87	1987	only	-	Sep	24	11:52:15s 0:07:45 -
-Rule	sol87	1987	only	-	Sep	25	11:51:55s 0:08:05 -
-Rule	sol87	1987	only	-	Sep	26	11:51:35s 0:08:25 -
-Rule	sol87	1987	only	-	Sep	27	11:51:10s 0:08:50 -
-Rule	sol87	1987	only	-	Sep	28	11:50:50s 0:09:10 -
-Rule	sol87	1987	only	-	Sep	29	11:50:30s 0:09:30 -
-Rule	sol87	1987	only	-	Sep	30	11:50:10s 0:09:50 -
-Rule	sol87	1987	only	-	Oct	1	11:49:50s 0:10:10 -
-Rule	sol87	1987	only	-	Oct	2	11:49:35s 0:10:25 -
-Rule	sol87	1987	only	-	Oct	3	11:49:15s 0:10:45 -
-Rule	sol87	1987	only	-	Oct	4	11:48:55s 0:11:05 -
-Rule	sol87	1987	only	-	Oct	5	11:48:35s 0:11:25 -
-Rule	sol87	1987	only	-	Oct	6	11:48:20s 0:11:40 -
-Rule	sol87	1987	only	-	Oct	7	11:48:00s 0:12:00 -
-Rule	sol87	1987	only	-	Oct	8	11:47:45s 0:12:15 -
-Rule	sol87	1987	only	-	Oct	9	11:47:25s 0:12:35 -
-Rule	sol87	1987	only	-	Oct	10	11:47:10s 0:12:50 -
-Rule	sol87	1987	only	-	Oct	11	11:46:55s 0:13:05 -
-Rule	sol87	1987	only	-	Oct	12	11:46:40s 0:13:20 -
-Rule	sol87	1987	only	-	Oct	13	11:46:25s 0:13:35 -
-Rule	sol87	1987	only	-	Oct	14	11:46:10s 0:13:50 -
-Rule	sol87	1987	only	-	Oct	15	11:45:55s 0:14:05 -
-Rule	sol87	1987	only	-	Oct	16	11:45:45s 0:14:15 -
-Rule	sol87	1987	only	-	Oct	17	11:45:30s 0:14:30 -
-Rule	sol87	1987	only	-	Oct	18	11:45:20s 0:14:40 -
-Rule	sol87	1987	only	-	Oct	19	11:45:05s 0:14:55 -
-Rule	sol87	1987	only	-	Oct	20	11:44:55s 0:15:05 -
-Rule	sol87	1987	only	-	Oct	21	11:44:45s 0:15:15 -
-Rule	sol87	1987	only	-	Oct	22	11:44:35s 0:15:25 -
-Rule	sol87	1987	only	-	Oct	23	11:44:25s 0:15:35 -
-Rule	sol87	1987	only	-	Oct	24	11:44:20s 0:15:40 -
-Rule	sol87	1987	only	-	Oct	25	11:44:10s 0:15:50 -
-Rule	sol87	1987	only	-	Oct	26	11:44:05s 0:15:55 -
-Rule	sol87	1987	only	-	Oct	27	11:43:55s 0:16:05 -
-Rule	sol87	1987	only	-	Oct	28	11:43:50s 0:16:10 -
-Rule	sol87	1987	only	-	Oct	29	11:43:45s 0:16:15 -
-Rule	sol87	1987	only	-	Oct	30	11:43:45s 0:16:15 -
-Rule	sol87	1987	only	-	Oct	31	11:43:40s 0:16:20 -
-Rule	sol87	1987	only	-	Nov	1	11:43:40s 0:16:20 -
-Rule	sol87	1987	only	-	Nov	2	11:43:35s 0:16:25 -
-Rule	sol87	1987	only	-	Nov	3	11:43:35s 0:16:25 -
-Rule	sol87	1987	only	-	Nov	4	11:43:35s 0:16:25 -
-Rule	sol87	1987	only	-	Nov	5	11:43:35s 0:16:25 -
-Rule	sol87	1987	only	-	Nov	6	11:43:40s 0:16:20 -
-Rule	sol87	1987	only	-	Nov	7	11:43:40s 0:16:20 -
-Rule	sol87	1987	only	-	Nov	8	11:43:45s 0:16:15 -
-Rule	sol87	1987	only	-	Nov	9	11:43:50s 0:16:10 -
-Rule	sol87	1987	only	-	Nov	10	11:43:55s 0:16:05 -
-Rule	sol87	1987	only	-	Nov	11	11:44:00s 0:16:00 -
-Rule	sol87	1987	only	-	Nov	12	11:44:05s 0:15:55 -
-Rule	sol87	1987	only	-	Nov	13	11:44:15s 0:15:45 -
-Rule	sol87	1987	only	-	Nov	14	11:44:20s 0:15:40 -
-Rule	sol87	1987	only	-	Nov	15	11:44:30s 0:15:30 -
-Rule	sol87	1987	only	-	Nov	16	11:44:40s 0:15:20 -
-Rule	sol87	1987	only	-	Nov	17	11:44:50s 0:15:10 -
-Rule	sol87	1987	only	-	Nov	18	11:45:05s 0:14:55 -
-Rule	sol87	1987	only	-	Nov	19	11:45:15s 0:14:45 -
-Rule	sol87	1987	only	-	Nov	20	11:45:30s 0:14:30 -
-Rule	sol87	1987	only	-	Nov	21	11:45:45s 0:14:15 -
-Rule	sol87	1987	only	-	Nov	22	11:46:00s 0:14:00 -
-Rule	sol87	1987	only	-	Nov	23	11:46:15s 0:13:45 -
-Rule	sol87	1987	only	-	Nov	24	11:46:30s 0:13:30 -
-Rule	sol87	1987	only	-	Nov	25	11:46:50s 0:13:10 -
-Rule	sol87	1987	only	-	Nov	26	11:47:10s 0:12:50 -
-Rule	sol87	1987	only	-	Nov	27	11:47:25s 0:12:35 -
-Rule	sol87	1987	only	-	Nov	28	11:47:45s 0:12:15 -
-Rule	sol87	1987	only	-	Nov	29	11:48:05s 0:11:55 -
-Rule	sol87	1987	only	-	Nov	30	11:48:30s 0:11:30 -
-Rule	sol87	1987	only	-	Dec	1	11:48:50s 0:11:10 -
-Rule	sol87	1987	only	-	Dec	2	11:49:10s 0:10:50 -
-Rule	sol87	1987	only	-	Dec	3	11:49:35s 0:10:25 -
-Rule	sol87	1987	only	-	Dec	4	11:50:00s 0:10:00 -
-Rule	sol87	1987	only	-	Dec	5	11:50:25s 0:09:35 -
-Rule	sol87	1987	only	-	Dec	6	11:50:50s 0:09:10 -
-Rule	sol87	1987	only	-	Dec	7	11:51:15s 0:08:45 -
-Rule	sol87	1987	only	-	Dec	8	11:51:40s 0:08:20 -
-Rule	sol87	1987	only	-	Dec	9	11:52:05s 0:07:55 -
-Rule	sol87	1987	only	-	Dec	10	11:52:30s 0:07:30 -
-Rule	sol87	1987	only	-	Dec	11	11:53:00s 0:07:00 -
-Rule	sol87	1987	only	-	Dec	12	11:53:25s 0:06:35 -
-Rule	sol87	1987	only	-	Dec	13	11:53:55s 0:06:05 -
-Rule	sol87	1987	only	-	Dec	14	11:54:25s 0:05:35 -
-Rule	sol87	1987	only	-	Dec	15	11:54:50s 0:05:10 -
-Rule	sol87	1987	only	-	Dec	16	11:55:20s 0:04:40 -
-Rule	sol87	1987	only	-	Dec	17	11:55:50s 0:04:10 -
-Rule	sol87	1987	only	-	Dec	18	11:56:20s 0:03:40 -
-Rule	sol87	1987	only	-	Dec	19	11:56:50s 0:03:10 -
-Rule	sol87	1987	only	-	Dec	20	11:57:20s 0:02:40 -
-Rule	sol87	1987	only	-	Dec	21	11:57:50s 0:02:10 -
-Rule	sol87	1987	only	-	Dec	22	11:58:20s 0:01:40 -
-Rule	sol87	1987	only	-	Dec	23	11:58:50s 0:01:10 -
-Rule	sol87	1987	only	-	Dec	24	11:59:20s 0:00:40 -
-Rule	sol87	1987	only	-	Dec	25	11:59:50s 0:00:10 -
-Rule	sol87	1987	only	-	Dec	26	12:00:20s -0:00:20 -
-Rule	sol87	1987	only	-	Dec	27	12:00:45s -0:00:45 -
-Rule	sol87	1987	only	-	Dec	28	12:01:15s -0:01:15 -
-Rule	sol87	1987	only	-	Dec	29	12:01:45s -0:01:45 -
-Rule	sol87	1987	only	-	Dec	30	12:02:15s -0:02:15 -
-Rule	sol87	1987	only	-	Dec	31	12:02:45s -0:02:45 -
-
-# Riyadh is at about 46 degrees 46 minutes East:  3 hrs, 7 mins, 4 secs
-# Before and after 1987, we'll operate on local mean solar time.
-
-# Zone	NAME		GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
-Zone	Asia/Riyadh87	3:07:04	-		zzz	1987
-			3:07:04	sol87		zzz	1988
-			3:07:04	-		zzz
-# For backward compatibility...
-Link	Asia/Riyadh87	Mideast/Riyadh87
diff --git a/tools/zoneinfo/tzdata2008h/solar88 b/tools/zoneinfo/tzdata2008h/solar88
deleted file mode 100644
index b4cfe8e..0000000
--- a/tools/zoneinfo/tzdata2008h/solar88
+++ /dev/null
@@ -1,388 +0,0 @@
-# @(#)solar88	8.1
-
-# Apparent noon times below are for Riyadh; they're a bit off for other places.
-# Times were computed using formulas in the U.S. Naval Observatory's
-# Almanac for Computers 1988; the formulas "will give EqT to an accuracy of
-# [plus or minus two] seconds during the current year."
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	sol88	1988	only	-	Jan	1	12:03:15s -0:03:15 -
-Rule	sol88	1988	only	-	Jan	2	12:03:40s -0:03:40 -
-Rule	sol88	1988	only	-	Jan	3	12:04:10s -0:04:10 -
-Rule	sol88	1988	only	-	Jan	4	12:04:40s -0:04:40 -
-Rule	sol88	1988	only	-	Jan	5	12:05:05s -0:05:05 -
-Rule	sol88	1988	only	-	Jan	6	12:05:30s -0:05:30 -
-Rule	sol88	1988	only	-	Jan	7	12:06:00s -0:06:00 -
-Rule	sol88	1988	only	-	Jan	8	12:06:25s -0:06:25 -
-Rule	sol88	1988	only	-	Jan	9	12:06:50s -0:06:50 -
-Rule	sol88	1988	only	-	Jan	10	12:07:15s -0:07:15 -
-Rule	sol88	1988	only	-	Jan	11	12:07:40s -0:07:40 -
-Rule	sol88	1988	only	-	Jan	12	12:08:05s -0:08:05 -
-Rule	sol88	1988	only	-	Jan	13	12:08:25s -0:08:25 -
-Rule	sol88	1988	only	-	Jan	14	12:08:50s -0:08:50 -
-Rule	sol88	1988	only	-	Jan	15	12:09:10s -0:09:10 -
-Rule	sol88	1988	only	-	Jan	16	12:09:30s -0:09:30 -
-Rule	sol88	1988	only	-	Jan	17	12:09:50s -0:09:50 -
-Rule	sol88	1988	only	-	Jan	18	12:10:10s -0:10:10 -
-Rule	sol88	1988	only	-	Jan	19	12:10:30s -0:10:30 -
-Rule	sol88	1988	only	-	Jan	20	12:10:50s -0:10:50 -
-Rule	sol88	1988	only	-	Jan	21	12:11:05s -0:11:05 -
-Rule	sol88	1988	only	-	Jan	22	12:11:25s -0:11:25 -
-Rule	sol88	1988	only	-	Jan	23	12:11:40s -0:11:40 -
-Rule	sol88	1988	only	-	Jan	24	12:11:55s -0:11:55 -
-Rule	sol88	1988	only	-	Jan	25	12:12:10s -0:12:10 -
-Rule	sol88	1988	only	-	Jan	26	12:12:25s -0:12:25 -
-Rule	sol88	1988	only	-	Jan	27	12:12:40s -0:12:40 -
-Rule	sol88	1988	only	-	Jan	28	12:12:50s -0:12:50 -
-Rule	sol88	1988	only	-	Jan	29	12:13:00s -0:13:00 -
-Rule	sol88	1988	only	-	Jan	30	12:13:10s -0:13:10 -
-Rule	sol88	1988	only	-	Jan	31	12:13:20s -0:13:20 -
-Rule	sol88	1988	only	-	Feb	1	12:13:30s -0:13:30 -
-Rule	sol88	1988	only	-	Feb	2	12:13:40s -0:13:40 -
-Rule	sol88	1988	only	-	Feb	3	12:13:45s -0:13:45 -
-Rule	sol88	1988	only	-	Feb	4	12:13:55s -0:13:55 -
-Rule	sol88	1988	only	-	Feb	5	12:14:00s -0:14:00 -
-Rule	sol88	1988	only	-	Feb	6	12:14:05s -0:14:05 -
-Rule	sol88	1988	only	-	Feb	7	12:14:10s -0:14:10 -
-Rule	sol88	1988	only	-	Feb	8	12:14:10s -0:14:10 -
-Rule	sol88	1988	only	-	Feb	9	12:14:15s -0:14:15 -
-Rule	sol88	1988	only	-	Feb	10	12:14:15s -0:14:15 -
-Rule	sol88	1988	only	-	Feb	11	12:14:15s -0:14:15 -
-Rule	sol88	1988	only	-	Feb	12	12:14:15s -0:14:15 -
-Rule	sol88	1988	only	-	Feb	13	12:14:15s -0:14:15 -
-Rule	sol88	1988	only	-	Feb	14	12:14:15s -0:14:15 -
-Rule	sol88	1988	only	-	Feb	15	12:14:10s -0:14:10 -
-Rule	sol88	1988	only	-	Feb	16	12:14:10s -0:14:10 -
-Rule	sol88	1988	only	-	Feb	17	12:14:05s -0:14:05 -
-Rule	sol88	1988	only	-	Feb	18	12:14:00s -0:14:00 -
-Rule	sol88	1988	only	-	Feb	19	12:13:55s -0:13:55 -
-Rule	sol88	1988	only	-	Feb	20	12:13:50s -0:13:50 -
-Rule	sol88	1988	only	-	Feb	21	12:13:45s -0:13:45 -
-Rule	sol88	1988	only	-	Feb	22	12:13:40s -0:13:40 -
-Rule	sol88	1988	only	-	Feb	23	12:13:30s -0:13:30 -
-Rule	sol88	1988	only	-	Feb	24	12:13:20s -0:13:20 -
-Rule	sol88	1988	only	-	Feb	25	12:13:15s -0:13:15 -
-Rule	sol88	1988	only	-	Feb	26	12:13:05s -0:13:05 -
-Rule	sol88	1988	only	-	Feb	27	12:12:55s -0:12:55 -
-Rule	sol88	1988	only	-	Feb	28	12:12:45s -0:12:45 -
-Rule	sol88	1988	only	-	Feb	29	12:12:30s -0:12:30 -
-Rule	sol88	1988	only	-	Mar	1	12:12:20s -0:12:20 -
-Rule	sol88	1988	only	-	Mar	2	12:12:10s -0:12:10 -
-Rule	sol88	1988	only	-	Mar	3	12:11:55s -0:11:55 -
-Rule	sol88	1988	only	-	Mar	4	12:11:45s -0:11:45 -
-Rule	sol88	1988	only	-	Mar	5	12:11:30s -0:11:30 -
-Rule	sol88	1988	only	-	Mar	6	12:11:15s -0:11:15 -
-Rule	sol88	1988	only	-	Mar	7	12:11:00s -0:11:00 -
-Rule	sol88	1988	only	-	Mar	8	12:10:45s -0:10:45 -
-Rule	sol88	1988	only	-	Mar	9	12:10:30s -0:10:30 -
-Rule	sol88	1988	only	-	Mar	10	12:10:15s -0:10:15 -
-Rule	sol88	1988	only	-	Mar	11	12:10:00s -0:10:00 -
-Rule	sol88	1988	only	-	Mar	12	12:09:45s -0:09:45 -
-Rule	sol88	1988	only	-	Mar	13	12:09:30s -0:09:30 -
-Rule	sol88	1988	only	-	Mar	14	12:09:10s -0:09:10 -
-Rule	sol88	1988	only	-	Mar	15	12:08:55s -0:08:55 -
-Rule	sol88	1988	only	-	Mar	16	12:08:40s -0:08:40 -
-Rule	sol88	1988	only	-	Mar	17	12:08:20s -0:08:20 -
-Rule	sol88	1988	only	-	Mar	18	12:08:05s -0:08:05 -
-Rule	sol88	1988	only	-	Mar	19	12:07:45s -0:07:45 -
-Rule	sol88	1988	only	-	Mar	20	12:07:30s -0:07:30 -
-Rule	sol88	1988	only	-	Mar	21	12:07:10s -0:07:10 -
-Rule	sol88	1988	only	-	Mar	22	12:06:50s -0:06:50 -
-Rule	sol88	1988	only	-	Mar	23	12:06:35s -0:06:35 -
-Rule	sol88	1988	only	-	Mar	24	12:06:15s -0:06:15 -
-Rule	sol88	1988	only	-	Mar	25	12:06:00s -0:06:00 -
-Rule	sol88	1988	only	-	Mar	26	12:05:40s -0:05:40 -
-Rule	sol88	1988	only	-	Mar	27	12:05:20s -0:05:20 -
-Rule	sol88	1988	only	-	Mar	28	12:05:05s -0:05:05 -
-Rule	sol88	1988	only	-	Mar	29	12:04:45s -0:04:45 -
-Rule	sol88	1988	only	-	Mar	30	12:04:25s -0:04:25 -
-Rule	sol88	1988	only	-	Mar	31	12:04:10s -0:04:10 -
-Rule	sol88	1988	only	-	Apr	1	12:03:50s -0:03:50 -
-Rule	sol88	1988	only	-	Apr	2	12:03:35s -0:03:35 -
-Rule	sol88	1988	only	-	Apr	3	12:03:15s -0:03:15 -
-Rule	sol88	1988	only	-	Apr	4	12:03:00s -0:03:00 -
-Rule	sol88	1988	only	-	Apr	5	12:02:40s -0:02:40 -
-Rule	sol88	1988	only	-	Apr	6	12:02:25s -0:02:25 -
-Rule	sol88	1988	only	-	Apr	7	12:02:05s -0:02:05 -
-Rule	sol88	1988	only	-	Apr	8	12:01:50s -0:01:50 -
-Rule	sol88	1988	only	-	Apr	9	12:01:35s -0:01:35 -
-Rule	sol88	1988	only	-	Apr	10	12:01:15s -0:01:15 -
-Rule	sol88	1988	only	-	Apr	11	12:01:00s -0:01:00 -
-Rule	sol88	1988	only	-	Apr	12	12:00:45s -0:00:45 -
-Rule	sol88	1988	only	-	Apr	13	12:00:30s -0:00:30 -
-Rule	sol88	1988	only	-	Apr	14	12:00:15s -0:00:15 -
-Rule	sol88	1988	only	-	Apr	15	12:00:00s 0:00:00 -
-Rule	sol88	1988	only	-	Apr	16	11:59:45s 0:00:15 -
-Rule	sol88	1988	only	-	Apr	17	11:59:30s 0:00:30 -
-Rule	sol88	1988	only	-	Apr	18	11:59:20s 0:00:40 -
-Rule	sol88	1988	only	-	Apr	19	11:59:05s 0:00:55 -
-Rule	sol88	1988	only	-	Apr	20	11:58:55s 0:01:05 -
-Rule	sol88	1988	only	-	Apr	21	11:58:40s 0:01:20 -
-Rule	sol88	1988	only	-	Apr	22	11:58:30s 0:01:30 -
-Rule	sol88	1988	only	-	Apr	23	11:58:15s 0:01:45 -
-Rule	sol88	1988	only	-	Apr	24	11:58:05s 0:01:55 -
-Rule	sol88	1988	only	-	Apr	25	11:57:55s 0:02:05 -
-Rule	sol88	1988	only	-	Apr	26	11:57:45s 0:02:15 -
-Rule	sol88	1988	only	-	Apr	27	11:57:35s 0:02:25 -
-Rule	sol88	1988	only	-	Apr	28	11:57:30s 0:02:30 -
-Rule	sol88	1988	only	-	Apr	29	11:57:20s 0:02:40 -
-Rule	sol88	1988	only	-	Apr	30	11:57:10s 0:02:50 -
-Rule	sol88	1988	only	-	May	1	11:57:05s 0:02:55 -
-Rule	sol88	1988	only	-	May	2	11:56:55s 0:03:05 -
-Rule	sol88	1988	only	-	May	3	11:56:50s 0:03:10 -
-Rule	sol88	1988	only	-	May	4	11:56:45s 0:03:15 -
-Rule	sol88	1988	only	-	May	5	11:56:40s 0:03:20 -
-Rule	sol88	1988	only	-	May	6	11:56:35s 0:03:25 -
-Rule	sol88	1988	only	-	May	7	11:56:30s 0:03:30 -
-Rule	sol88	1988	only	-	May	8	11:56:25s 0:03:35 -
-Rule	sol88	1988	only	-	May	9	11:56:25s 0:03:35 -
-Rule	sol88	1988	only	-	May	10	11:56:20s 0:03:40 -
-Rule	sol88	1988	only	-	May	11	11:56:20s 0:03:40 -
-Rule	sol88	1988	only	-	May	12	11:56:20s 0:03:40 -
-Rule	sol88	1988	only	-	May	13	11:56:20s 0:03:40 -
-Rule	sol88	1988	only	-	May	14	11:56:20s 0:03:40 -
-Rule	sol88	1988	only	-	May	15	11:56:20s 0:03:40 -
-Rule	sol88	1988	only	-	May	16	11:56:20s 0:03:40 -
-Rule	sol88	1988	only	-	May	17	11:56:20s 0:03:40 -
-Rule	sol88	1988	only	-	May	18	11:56:25s 0:03:35 -
-Rule	sol88	1988	only	-	May	19	11:56:25s 0:03:35 -
-Rule	sol88	1988	only	-	May	20	11:56:30s 0:03:30 -
-Rule	sol88	1988	only	-	May	21	11:56:35s 0:03:25 -
-Rule	sol88	1988	only	-	May	22	11:56:40s 0:03:20 -
-Rule	sol88	1988	only	-	May	23	11:56:45s 0:03:15 -
-Rule	sol88	1988	only	-	May	24	11:56:50s 0:03:10 -
-Rule	sol88	1988	only	-	May	25	11:56:55s 0:03:05 -
-Rule	sol88	1988	only	-	May	26	11:57:00s 0:03:00 -
-Rule	sol88	1988	only	-	May	27	11:57:05s 0:02:55 -
-Rule	sol88	1988	only	-	May	28	11:57:15s 0:02:45 -
-Rule	sol88	1988	only	-	May	29	11:57:20s 0:02:40 -
-Rule	sol88	1988	only	-	May	30	11:57:30s 0:02:30 -
-Rule	sol88	1988	only	-	May	31	11:57:40s 0:02:20 -
-Rule	sol88	1988	only	-	Jun	1	11:57:50s 0:02:10 -
-Rule	sol88	1988	only	-	Jun	2	11:57:55s 0:02:05 -
-Rule	sol88	1988	only	-	Jun	3	11:58:05s 0:01:55 -
-Rule	sol88	1988	only	-	Jun	4	11:58:15s 0:01:45 -
-Rule	sol88	1988	only	-	Jun	5	11:58:30s 0:01:30 -
-Rule	sol88	1988	only	-	Jun	6	11:58:40s 0:01:20 -
-Rule	sol88	1988	only	-	Jun	7	11:58:50s 0:01:10 -
-Rule	sol88	1988	only	-	Jun	8	11:59:00s 0:01:00 -
-Rule	sol88	1988	only	-	Jun	9	11:59:15s 0:00:45 -
-Rule	sol88	1988	only	-	Jun	10	11:59:25s 0:00:35 -
-Rule	sol88	1988	only	-	Jun	11	11:59:35s 0:00:25 -
-Rule	sol88	1988	only	-	Jun	12	11:59:50s 0:00:10 -
-Rule	sol88	1988	only	-	Jun	13	12:00:00s 0:00:00 -
-Rule	sol88	1988	only	-	Jun	14	12:00:15s -0:00:15 -
-Rule	sol88	1988	only	-	Jun	15	12:00:25s -0:00:25 -
-Rule	sol88	1988	only	-	Jun	16	12:00:40s -0:00:40 -
-Rule	sol88	1988	only	-	Jun	17	12:00:55s -0:00:55 -
-Rule	sol88	1988	only	-	Jun	18	12:01:05s -0:01:05 -
-Rule	sol88	1988	only	-	Jun	19	12:01:20s -0:01:20 -
-Rule	sol88	1988	only	-	Jun	20	12:01:30s -0:01:30 -
-Rule	sol88	1988	only	-	Jun	21	12:01:45s -0:01:45 -
-Rule	sol88	1988	only	-	Jun	22	12:02:00s -0:02:00 -
-Rule	sol88	1988	only	-	Jun	23	12:02:10s -0:02:10 -
-Rule	sol88	1988	only	-	Jun	24	12:02:25s -0:02:25 -
-Rule	sol88	1988	only	-	Jun	25	12:02:35s -0:02:35 -
-Rule	sol88	1988	only	-	Jun	26	12:02:50s -0:02:50 -
-Rule	sol88	1988	only	-	Jun	27	12:03:00s -0:03:00 -
-Rule	sol88	1988	only	-	Jun	28	12:03:15s -0:03:15 -
-Rule	sol88	1988	only	-	Jun	29	12:03:25s -0:03:25 -
-Rule	sol88	1988	only	-	Jun	30	12:03:40s -0:03:40 -
-Rule	sol88	1988	only	-	Jul	1	12:03:50s -0:03:50 -
-Rule	sol88	1988	only	-	Jul	2	12:04:00s -0:04:00 -
-Rule	sol88	1988	only	-	Jul	3	12:04:10s -0:04:10 -
-Rule	sol88	1988	only	-	Jul	4	12:04:25s -0:04:25 -
-Rule	sol88	1988	only	-	Jul	5	12:04:35s -0:04:35 -
-Rule	sol88	1988	only	-	Jul	6	12:04:45s -0:04:45 -
-Rule	sol88	1988	only	-	Jul	7	12:04:55s -0:04:55 -
-Rule	sol88	1988	only	-	Jul	8	12:05:05s -0:05:05 -
-Rule	sol88	1988	only	-	Jul	9	12:05:10s -0:05:10 -
-Rule	sol88	1988	only	-	Jul	10	12:05:20s -0:05:20 -
-Rule	sol88	1988	only	-	Jul	11	12:05:30s -0:05:30 -
-Rule	sol88	1988	only	-	Jul	12	12:05:35s -0:05:35 -
-Rule	sol88	1988	only	-	Jul	13	12:05:45s -0:05:45 -
-Rule	sol88	1988	only	-	Jul	14	12:05:50s -0:05:50 -
-Rule	sol88	1988	only	-	Jul	15	12:05:55s -0:05:55 -
-Rule	sol88	1988	only	-	Jul	16	12:06:00s -0:06:00 -
-Rule	sol88	1988	only	-	Jul	17	12:06:05s -0:06:05 -
-Rule	sol88	1988	only	-	Jul	18	12:06:10s -0:06:10 -
-Rule	sol88	1988	only	-	Jul	19	12:06:15s -0:06:15 -
-Rule	sol88	1988	only	-	Jul	20	12:06:20s -0:06:20 -
-Rule	sol88	1988	only	-	Jul	21	12:06:25s -0:06:25 -
-Rule	sol88	1988	only	-	Jul	22	12:06:25s -0:06:25 -
-Rule	sol88	1988	only	-	Jul	23	12:06:25s -0:06:25 -
-Rule	sol88	1988	only	-	Jul	24	12:06:30s -0:06:30 -
-Rule	sol88	1988	only	-	Jul	25	12:06:30s -0:06:30 -
-Rule	sol88	1988	only	-	Jul	26	12:06:30s -0:06:30 -
-Rule	sol88	1988	only	-	Jul	27	12:06:30s -0:06:30 -
-Rule	sol88	1988	only	-	Jul	28	12:06:30s -0:06:30 -
-Rule	sol88	1988	only	-	Jul	29	12:06:25s -0:06:25 -
-Rule	sol88	1988	only	-	Jul	30	12:06:25s -0:06:25 -
-Rule	sol88	1988	only	-	Jul	31	12:06:20s -0:06:20 -
-Rule	sol88	1988	only	-	Aug	1	12:06:15s -0:06:15 -
-Rule	sol88	1988	only	-	Aug	2	12:06:15s -0:06:15 -
-Rule	sol88	1988	only	-	Aug	3	12:06:10s -0:06:10 -
-Rule	sol88	1988	only	-	Aug	4	12:06:05s -0:06:05 -
-Rule	sol88	1988	only	-	Aug	5	12:05:55s -0:05:55 -
-Rule	sol88	1988	only	-	Aug	6	12:05:50s -0:05:50 -
-Rule	sol88	1988	only	-	Aug	7	12:05:45s -0:05:45 -
-Rule	sol88	1988	only	-	Aug	8	12:05:35s -0:05:35 -
-Rule	sol88	1988	only	-	Aug	9	12:05:25s -0:05:25 -
-Rule	sol88	1988	only	-	Aug	10	12:05:20s -0:05:20 -
-Rule	sol88	1988	only	-	Aug	11	12:05:10s -0:05:10 -
-Rule	sol88	1988	only	-	Aug	12	12:05:00s -0:05:00 -
-Rule	sol88	1988	only	-	Aug	13	12:04:50s -0:04:50 -
-Rule	sol88	1988	only	-	Aug	14	12:04:35s -0:04:35 -
-Rule	sol88	1988	only	-	Aug	15	12:04:25s -0:04:25 -
-Rule	sol88	1988	only	-	Aug	16	12:04:15s -0:04:15 -
-Rule	sol88	1988	only	-	Aug	17	12:04:00s -0:04:00 -
-Rule	sol88	1988	only	-	Aug	18	12:03:50s -0:03:50 -
-Rule	sol88	1988	only	-	Aug	19	12:03:35s -0:03:35 -
-Rule	sol88	1988	only	-	Aug	20	12:03:20s -0:03:20 -
-Rule	sol88	1988	only	-	Aug	21	12:03:05s -0:03:05 -
-Rule	sol88	1988	only	-	Aug	22	12:02:50s -0:02:50 -
-Rule	sol88	1988	only	-	Aug	23	12:02:35s -0:02:35 -
-Rule	sol88	1988	only	-	Aug	24	12:02:20s -0:02:20 -
-Rule	sol88	1988	only	-	Aug	25	12:02:00s -0:02:00 -
-Rule	sol88	1988	only	-	Aug	26	12:01:45s -0:01:45 -
-Rule	sol88	1988	only	-	Aug	27	12:01:30s -0:01:30 -
-Rule	sol88	1988	only	-	Aug	28	12:01:10s -0:01:10 -
-Rule	sol88	1988	only	-	Aug	29	12:00:50s -0:00:50 -
-Rule	sol88	1988	only	-	Aug	30	12:00:35s -0:00:35 -
-Rule	sol88	1988	only	-	Aug	31	12:00:15s -0:00:15 -
-Rule	sol88	1988	only	-	Sep	1	11:59:55s 0:00:05 -
-Rule	sol88	1988	only	-	Sep	2	11:59:35s 0:00:25 -
-Rule	sol88	1988	only	-	Sep	3	11:59:20s 0:00:40 -
-Rule	sol88	1988	only	-	Sep	4	11:59:00s 0:01:00 -
-Rule	sol88	1988	only	-	Sep	5	11:58:40s 0:01:20 -
-Rule	sol88	1988	only	-	Sep	6	11:58:20s 0:01:40 -
-Rule	sol88	1988	only	-	Sep	7	11:58:00s 0:02:00 -
-Rule	sol88	1988	only	-	Sep	8	11:57:35s 0:02:25 -
-Rule	sol88	1988	only	-	Sep	9	11:57:15s 0:02:45 -
-Rule	sol88	1988	only	-	Sep	10	11:56:55s 0:03:05 -
-Rule	sol88	1988	only	-	Sep	11	11:56:35s 0:03:25 -
-Rule	sol88	1988	only	-	Sep	12	11:56:15s 0:03:45 -
-Rule	sol88	1988	only	-	Sep	13	11:55:50s 0:04:10 -
-Rule	sol88	1988	only	-	Sep	14	11:55:30s 0:04:30 -
-Rule	sol88	1988	only	-	Sep	15	11:55:10s 0:04:50 -
-Rule	sol88	1988	only	-	Sep	16	11:54:50s 0:05:10 -
-Rule	sol88	1988	only	-	Sep	17	11:54:25s 0:05:35 -
-Rule	sol88	1988	only	-	Sep	18	11:54:05s 0:05:55 -
-Rule	sol88	1988	only	-	Sep	19	11:53:45s 0:06:15 -
-Rule	sol88	1988	only	-	Sep	20	11:53:25s 0:06:35 -
-Rule	sol88	1988	only	-	Sep	21	11:53:00s 0:07:00 -
-Rule	sol88	1988	only	-	Sep	22	11:52:40s 0:07:20 -
-Rule	sol88	1988	only	-	Sep	23	11:52:20s 0:07:40 -
-Rule	sol88	1988	only	-	Sep	24	11:52:00s 0:08:00 -
-Rule	sol88	1988	only	-	Sep	25	11:51:40s 0:08:20 -
-Rule	sol88	1988	only	-	Sep	26	11:51:15s 0:08:45 -
-Rule	sol88	1988	only	-	Sep	27	11:50:55s 0:09:05 -
-Rule	sol88	1988	only	-	Sep	28	11:50:35s 0:09:25 -
-Rule	sol88	1988	only	-	Sep	29	11:50:15s 0:09:45 -
-Rule	sol88	1988	only	-	Sep	30	11:49:55s 0:10:05 -
-Rule	sol88	1988	only	-	Oct	1	11:49:35s 0:10:25 -
-Rule	sol88	1988	only	-	Oct	2	11:49:20s 0:10:40 -
-Rule	sol88	1988	only	-	Oct	3	11:49:00s 0:11:00 -
-Rule	sol88	1988	only	-	Oct	4	11:48:40s 0:11:20 -
-Rule	sol88	1988	only	-	Oct	5	11:48:25s 0:11:35 -
-Rule	sol88	1988	only	-	Oct	6	11:48:05s 0:11:55 -
-Rule	sol88	1988	only	-	Oct	7	11:47:50s 0:12:10 -
-Rule	sol88	1988	only	-	Oct	8	11:47:30s 0:12:30 -
-Rule	sol88	1988	only	-	Oct	9	11:47:15s 0:12:45 -
-Rule	sol88	1988	only	-	Oct	10	11:47:00s 0:13:00 -
-Rule	sol88	1988	only	-	Oct	11	11:46:45s 0:13:15 -
-Rule	sol88	1988	only	-	Oct	12	11:46:30s 0:13:30 -
-Rule	sol88	1988	only	-	Oct	13	11:46:15s 0:13:45 -
-Rule	sol88	1988	only	-	Oct	14	11:46:00s 0:14:00 -
-Rule	sol88	1988	only	-	Oct	15	11:45:45s 0:14:15 -
-Rule	sol88	1988	only	-	Oct	16	11:45:35s 0:14:25 -
-Rule	sol88	1988	only	-	Oct	17	11:45:20s 0:14:40 -
-Rule	sol88	1988	only	-	Oct	18	11:45:10s 0:14:50 -
-Rule	sol88	1988	only	-	Oct	19	11:45:00s 0:15:00 -
-Rule	sol88	1988	only	-	Oct	20	11:44:45s 0:15:15 -
-Rule	sol88	1988	only	-	Oct	21	11:44:40s 0:15:20 -
-Rule	sol88	1988	only	-	Oct	22	11:44:30s 0:15:30 -
-Rule	sol88	1988	only	-	Oct	23	11:44:20s 0:15:40 -
-Rule	sol88	1988	only	-	Oct	24	11:44:10s 0:15:50 -
-Rule	sol88	1988	only	-	Oct	25	11:44:05s 0:15:55 -
-Rule	sol88	1988	only	-	Oct	26	11:44:00s 0:16:00 -
-Rule	sol88	1988	only	-	Oct	27	11:43:55s 0:16:05 -
-Rule	sol88	1988	only	-	Oct	28	11:43:50s 0:16:10 -
-Rule	sol88	1988	only	-	Oct	29	11:43:45s 0:16:15 -
-Rule	sol88	1988	only	-	Oct	30	11:43:40s 0:16:20 -
-Rule	sol88	1988	only	-	Oct	31	11:43:40s 0:16:20 -
-Rule	sol88	1988	only	-	Nov	1	11:43:35s 0:16:25 -
-Rule	sol88	1988	only	-	Nov	2	11:43:35s 0:16:25 -
-Rule	sol88	1988	only	-	Nov	3	11:43:35s 0:16:25 -
-Rule	sol88	1988	only	-	Nov	4	11:43:35s 0:16:25 -
-Rule	sol88	1988	only	-	Nov	5	11:43:40s 0:16:20 -
-Rule	sol88	1988	only	-	Nov	6	11:43:40s 0:16:20 -
-Rule	sol88	1988	only	-	Nov	7	11:43:45s 0:16:15 -
-Rule	sol88	1988	only	-	Nov	8	11:43:45s 0:16:15 -
-Rule	sol88	1988	only	-	Nov	9	11:43:50s 0:16:10 -
-Rule	sol88	1988	only	-	Nov	10	11:44:00s 0:16:00 -
-Rule	sol88	1988	only	-	Nov	11	11:44:05s 0:15:55 -
-Rule	sol88	1988	only	-	Nov	12	11:44:10s 0:15:50 -
-Rule	sol88	1988	only	-	Nov	13	11:44:20s 0:15:40 -
-Rule	sol88	1988	only	-	Nov	14	11:44:30s 0:15:30 -
-Rule	sol88	1988	only	-	Nov	15	11:44:40s 0:15:20 -
-Rule	sol88	1988	only	-	Nov	16	11:44:50s 0:15:10 -
-Rule	sol88	1988	only	-	Nov	17	11:45:00s 0:15:00 -
-Rule	sol88	1988	only	-	Nov	18	11:45:15s 0:14:45 -
-Rule	sol88	1988	only	-	Nov	19	11:45:25s 0:14:35 -
-Rule	sol88	1988	only	-	Nov	20	11:45:40s 0:14:20 -
-Rule	sol88	1988	only	-	Nov	21	11:45:55s 0:14:05 -
-Rule	sol88	1988	only	-	Nov	22	11:46:10s 0:13:50 -
-Rule	sol88	1988	only	-	Nov	23	11:46:30s 0:13:30 -
-Rule	sol88	1988	only	-	Nov	24	11:46:45s 0:13:15 -
-Rule	sol88	1988	only	-	Nov	25	11:47:05s 0:12:55 -
-Rule	sol88	1988	only	-	Nov	26	11:47:20s 0:12:40 -
-Rule	sol88	1988	only	-	Nov	27	11:47:40s 0:12:20 -
-Rule	sol88	1988	only	-	Nov	28	11:48:00s 0:12:00 -
-Rule	sol88	1988	only	-	Nov	29	11:48:25s 0:11:35 -
-Rule	sol88	1988	only	-	Nov	30	11:48:45s 0:11:15 -
-Rule	sol88	1988	only	-	Dec	1	11:49:05s 0:10:55 -
-Rule	sol88	1988	only	-	Dec	2	11:49:30s 0:10:30 -
-Rule	sol88	1988	only	-	Dec	3	11:49:55s 0:10:05 -
-Rule	sol88	1988	only	-	Dec	4	11:50:15s 0:09:45 -
-Rule	sol88	1988	only	-	Dec	5	11:50:40s 0:09:20 -
-Rule	sol88	1988	only	-	Dec	6	11:51:05s 0:08:55 -
-Rule	sol88	1988	only	-	Dec	7	11:51:35s 0:08:25 -
-Rule	sol88	1988	only	-	Dec	8	11:52:00s 0:08:00 -
-Rule	sol88	1988	only	-	Dec	9	11:52:25s 0:07:35 -
-Rule	sol88	1988	only	-	Dec	10	11:52:55s 0:07:05 -
-Rule	sol88	1988	only	-	Dec	11	11:53:20s 0:06:40 -
-Rule	sol88	1988	only	-	Dec	12	11:53:50s 0:06:10 -
-Rule	sol88	1988	only	-	Dec	13	11:54:15s 0:05:45 -
-Rule	sol88	1988	only	-	Dec	14	11:54:45s 0:05:15 -
-Rule	sol88	1988	only	-	Dec	15	11:55:15s 0:04:45 -
-Rule	sol88	1988	only	-	Dec	16	11:55:45s 0:04:15 -
-Rule	sol88	1988	only	-	Dec	17	11:56:15s 0:03:45 -
-Rule	sol88	1988	only	-	Dec	18	11:56:40s 0:03:20 -
-Rule	sol88	1988	only	-	Dec	19	11:57:10s 0:02:50 -
-Rule	sol88	1988	only	-	Dec	20	11:57:40s 0:02:20 -
-Rule	sol88	1988	only	-	Dec	21	11:58:10s 0:01:50 -
-Rule	sol88	1988	only	-	Dec	22	11:58:40s 0:01:20 -
-Rule	sol88	1988	only	-	Dec	23	11:59:10s 0:00:50 -
-Rule	sol88	1988	only	-	Dec	24	11:59:40s 0:00:20 -
-Rule	sol88	1988	only	-	Dec	25	12:00:10s -0:00:10 -
-Rule	sol88	1988	only	-	Dec	26	12:00:40s -0:00:40 -
-Rule	sol88	1988	only	-	Dec	27	12:01:10s -0:01:10 -
-Rule	sol88	1988	only	-	Dec	28	12:01:40s -0:01:40 -
-Rule	sol88	1988	only	-	Dec	29	12:02:10s -0:02:10 -
-Rule	sol88	1988	only	-	Dec	30	12:02:35s -0:02:35 -
-Rule	sol88	1988	only	-	Dec	31	12:03:05s -0:03:05 -
-
-# Riyadh is at about 46 degrees 46 minutes East:  3 hrs, 7 mins, 4 secs
-# Before and after 1988, we'll operate on local mean solar time.
-
-# Zone	NAME		GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
-Zone	Asia/Riyadh88	3:07:04	-		zzz	1988
-			3:07:04	sol88		zzz	1989
-			3:07:04	-		zzz
-# For backward compatibility...
-Link	Asia/Riyadh88	Mideast/Riyadh88
diff --git a/tools/zoneinfo/tzdata2008h/solar89 b/tools/zoneinfo/tzdata2008h/solar89
deleted file mode 100644
index 8c48531..0000000
--- a/tools/zoneinfo/tzdata2008h/solar89
+++ /dev/null
@@ -1,393 +0,0 @@
-# @(#)solar89	8.1
-
-# Apparent noon times below are for Riyadh; they're a bit off for other places.
-# Times were computed using a formula provided by the U. S. Naval Observatory:
-#	eqt = -105.8 * sin(l) + 596.2 * sin(2 * l) + 4.4 * sin(3 * l)
-#		-12.7 * sin(4 * l) - 429.0 * cos(l) - 2.1 * cos (2 * l)
-#		+ 19.3 * cos(3 * l);
-# where l is the "mean longitude of the Sun" given by
-#	l = 279.642 degrees + 0.985647 * d
-# and d is the interval in days from January 0, 0 hours Universal Time
-# (equaling the day of the year plus the fraction of a day from zero hours).
-# The accuracy of the formula is plus or minus three seconds.
-#
-# Rounding to the nearest five seconds results in fewer than
-# 256 different "time types"--a limit that's faced because time types are
-# stored on disk as unsigned chars.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	sol89	1989	only	-	Jan	1	12:03:35s -0:03:35 -
-Rule	sol89	1989	only	-	Jan	2	12:04:05s -0:04:05 -
-Rule	sol89	1989	only	-	Jan	3	12:04:30s -0:04:30 -
-Rule	sol89	1989	only	-	Jan	4	12:05:00s -0:05:00 -
-Rule	sol89	1989	only	-	Jan	5	12:05:25s -0:05:25 -
-Rule	sol89	1989	only	-	Jan	6	12:05:50s -0:05:50 -
-Rule	sol89	1989	only	-	Jan	7	12:06:15s -0:06:15 -
-Rule	sol89	1989	only	-	Jan	8	12:06:45s -0:06:45 -
-Rule	sol89	1989	only	-	Jan	9	12:07:10s -0:07:10 -
-Rule	sol89	1989	only	-	Jan	10	12:07:35s -0:07:35 -
-Rule	sol89	1989	only	-	Jan	11	12:07:55s -0:07:55 -
-Rule	sol89	1989	only	-	Jan	12	12:08:20s -0:08:20 -
-Rule	sol89	1989	only	-	Jan	13	12:08:45s -0:08:45 -
-Rule	sol89	1989	only	-	Jan	14	12:09:05s -0:09:05 -
-Rule	sol89	1989	only	-	Jan	15	12:09:25s -0:09:25 -
-Rule	sol89	1989	only	-	Jan	16	12:09:45s -0:09:45 -
-Rule	sol89	1989	only	-	Jan	17	12:10:05s -0:10:05 -
-Rule	sol89	1989	only	-	Jan	18	12:10:25s -0:10:25 -
-Rule	sol89	1989	only	-	Jan	19	12:10:45s -0:10:45 -
-Rule	sol89	1989	only	-	Jan	20	12:11:05s -0:11:05 -
-Rule	sol89	1989	only	-	Jan	21	12:11:20s -0:11:20 -
-Rule	sol89	1989	only	-	Jan	22	12:11:35s -0:11:35 -
-Rule	sol89	1989	only	-	Jan	23	12:11:55s -0:11:55 -
-Rule	sol89	1989	only	-	Jan	24	12:12:10s -0:12:10 -
-Rule	sol89	1989	only	-	Jan	25	12:12:20s -0:12:20 -
-Rule	sol89	1989	only	-	Jan	26	12:12:35s -0:12:35 -
-Rule	sol89	1989	only	-	Jan	27	12:12:50s -0:12:50 -
-Rule	sol89	1989	only	-	Jan	28	12:13:00s -0:13:00 -
-Rule	sol89	1989	only	-	Jan	29	12:13:10s -0:13:10 -
-Rule	sol89	1989	only	-	Jan	30	12:13:20s -0:13:20 -
-Rule	sol89	1989	only	-	Jan	31	12:13:30s -0:13:30 -
-Rule	sol89	1989	only	-	Feb	1	12:13:40s -0:13:40 -
-Rule	sol89	1989	only	-	Feb	2	12:13:45s -0:13:45 -
-Rule	sol89	1989	only	-	Feb	3	12:13:55s -0:13:55 -
-Rule	sol89	1989	only	-	Feb	4	12:14:00s -0:14:00 -
-Rule	sol89	1989	only	-	Feb	5	12:14:05s -0:14:05 -
-Rule	sol89	1989	only	-	Feb	6	12:14:10s -0:14:10 -
-Rule	sol89	1989	only	-	Feb	7	12:14:10s -0:14:10 -
-Rule	sol89	1989	only	-	Feb	8	12:14:15s -0:14:15 -
-Rule	sol89	1989	only	-	Feb	9	12:14:15s -0:14:15 -
-Rule	sol89	1989	only	-	Feb	10	12:14:20s -0:14:20 -
-Rule	sol89	1989	only	-	Feb	11	12:14:20s -0:14:20 -
-Rule	sol89	1989	only	-	Feb	12	12:14:20s -0:14:20 -
-Rule	sol89	1989	only	-	Feb	13	12:14:15s -0:14:15 -
-Rule	sol89	1989	only	-	Feb	14	12:14:15s -0:14:15 -
-Rule	sol89	1989	only	-	Feb	15	12:14:10s -0:14:10 -
-Rule	sol89	1989	only	-	Feb	16	12:14:10s -0:14:10 -
-Rule	sol89	1989	only	-	Feb	17	12:14:05s -0:14:05 -
-Rule	sol89	1989	only	-	Feb	18	12:14:00s -0:14:00 -
-Rule	sol89	1989	only	-	Feb	19	12:13:55s -0:13:55 -
-Rule	sol89	1989	only	-	Feb	20	12:13:50s -0:13:50 -
-Rule	sol89	1989	only	-	Feb	21	12:13:40s -0:13:40 -
-Rule	sol89	1989	only	-	Feb	22	12:13:35s -0:13:35 -
-Rule	sol89	1989	only	-	Feb	23	12:13:25s -0:13:25 -
-Rule	sol89	1989	only	-	Feb	24	12:13:15s -0:13:15 -
-Rule	sol89	1989	only	-	Feb	25	12:13:05s -0:13:05 -
-Rule	sol89	1989	only	-	Feb	26	12:12:55s -0:12:55 -
-Rule	sol89	1989	only	-	Feb	27	12:12:45s -0:12:45 -
-Rule	sol89	1989	only	-	Feb	28	12:12:35s -0:12:35 -
-Rule	sol89	1989	only	-	Mar	1	12:12:25s -0:12:25 -
-Rule	sol89	1989	only	-	Mar	2	12:12:10s -0:12:10 -
-Rule	sol89	1989	only	-	Mar	3	12:12:00s -0:12:00 -
-Rule	sol89	1989	only	-	Mar	4	12:11:45s -0:11:45 -
-Rule	sol89	1989	only	-	Mar	5	12:11:35s -0:11:35 -
-Rule	sol89	1989	only	-	Mar	6	12:11:20s -0:11:20 -
-Rule	sol89	1989	only	-	Mar	7	12:11:05s -0:11:05 -
-Rule	sol89	1989	only	-	Mar	8	12:10:50s -0:10:50 -
-Rule	sol89	1989	only	-	Mar	9	12:10:35s -0:10:35 -
-Rule	sol89	1989	only	-	Mar	10	12:10:20s -0:10:20 -
-Rule	sol89	1989	only	-	Mar	11	12:10:05s -0:10:05 -
-Rule	sol89	1989	only	-	Mar	12	12:09:50s -0:09:50 -
-Rule	sol89	1989	only	-	Mar	13	12:09:30s -0:09:30 -
-Rule	sol89	1989	only	-	Mar	14	12:09:15s -0:09:15 -
-Rule	sol89	1989	only	-	Mar	15	12:09:00s -0:09:00 -
-Rule	sol89	1989	only	-	Mar	16	12:08:40s -0:08:40 -
-Rule	sol89	1989	only	-	Mar	17	12:08:25s -0:08:25 -
-Rule	sol89	1989	only	-	Mar	18	12:08:05s -0:08:05 -
-Rule	sol89	1989	only	-	Mar	19	12:07:50s -0:07:50 -
-Rule	sol89	1989	only	-	Mar	20	12:07:30s -0:07:30 -
-Rule	sol89	1989	only	-	Mar	21	12:07:15s -0:07:15 -
-Rule	sol89	1989	only	-	Mar	22	12:06:55s -0:06:55 -
-Rule	sol89	1989	only	-	Mar	23	12:06:35s -0:06:35 -
-Rule	sol89	1989	only	-	Mar	24	12:06:20s -0:06:20 -
-Rule	sol89	1989	only	-	Mar	25	12:06:00s -0:06:00 -
-Rule	sol89	1989	only	-	Mar	26	12:05:40s -0:05:40 -
-Rule	sol89	1989	only	-	Mar	27	12:05:25s -0:05:25 -
-Rule	sol89	1989	only	-	Mar	28	12:05:05s -0:05:05 -
-Rule	sol89	1989	only	-	Mar	29	12:04:50s -0:04:50 -
-Rule	sol89	1989	only	-	Mar	30	12:04:30s -0:04:30 -
-Rule	sol89	1989	only	-	Mar	31	12:04:10s -0:04:10 -
-Rule	sol89	1989	only	-	Apr	1	12:03:55s -0:03:55 -
-Rule	sol89	1989	only	-	Apr	2	12:03:35s -0:03:35 -
-Rule	sol89	1989	only	-	Apr	3	12:03:20s -0:03:20 -
-Rule	sol89	1989	only	-	Apr	4	12:03:00s -0:03:00 -
-Rule	sol89	1989	only	-	Apr	5	12:02:45s -0:02:45 -
-Rule	sol89	1989	only	-	Apr	6	12:02:25s -0:02:25 -
-Rule	sol89	1989	only	-	Apr	7	12:02:10s -0:02:10 -
-Rule	sol89	1989	only	-	Apr	8	12:01:50s -0:01:50 -
-Rule	sol89	1989	only	-	Apr	9	12:01:35s -0:01:35 -
-Rule	sol89	1989	only	-	Apr	10	12:01:20s -0:01:20 -
-Rule	sol89	1989	only	-	Apr	11	12:01:05s -0:01:05 -
-Rule	sol89	1989	only	-	Apr	12	12:00:50s -0:00:50 -
-Rule	sol89	1989	only	-	Apr	13	12:00:35s -0:00:35 -
-Rule	sol89	1989	only	-	Apr	14	12:00:20s -0:00:20 -
-Rule	sol89	1989	only	-	Apr	15	12:00:05s -0:00:05 -
-Rule	sol89	1989	only	-	Apr	16	11:59:50s 0:00:10 -
-Rule	sol89	1989	only	-	Apr	17	11:59:35s 0:00:25 -
-Rule	sol89	1989	only	-	Apr	18	11:59:20s 0:00:40 -
-Rule	sol89	1989	only	-	Apr	19	11:59:10s 0:00:50 -
-Rule	sol89	1989	only	-	Apr	20	11:58:55s 0:01:05 -
-Rule	sol89	1989	only	-	Apr	21	11:58:45s 0:01:15 -
-Rule	sol89	1989	only	-	Apr	22	11:58:30s 0:01:30 -
-Rule	sol89	1989	only	-	Apr	23	11:58:20s 0:01:40 -
-Rule	sol89	1989	only	-	Apr	24	11:58:10s 0:01:50 -
-Rule	sol89	1989	only	-	Apr	25	11:58:00s 0:02:00 -
-Rule	sol89	1989	only	-	Apr	26	11:57:50s 0:02:10 -
-Rule	sol89	1989	only	-	Apr	27	11:57:40s 0:02:20 -
-Rule	sol89	1989	only	-	Apr	28	11:57:30s 0:02:30 -
-Rule	sol89	1989	only	-	Apr	29	11:57:20s 0:02:40 -
-Rule	sol89	1989	only	-	Apr	30	11:57:15s 0:02:45 -
-Rule	sol89	1989	only	-	May	1	11:57:05s 0:02:55 -
-Rule	sol89	1989	only	-	May	2	11:57:00s 0:03:00 -
-Rule	sol89	1989	only	-	May	3	11:56:50s 0:03:10 -
-Rule	sol89	1989	only	-	May	4	11:56:45s 0:03:15 -
-Rule	sol89	1989	only	-	May	5	11:56:40s 0:03:20 -
-Rule	sol89	1989	only	-	May	6	11:56:35s 0:03:25 -
-Rule	sol89	1989	only	-	May	7	11:56:30s 0:03:30 -
-Rule	sol89	1989	only	-	May	8	11:56:30s 0:03:30 -
-Rule	sol89	1989	only	-	May	9	11:56:25s 0:03:35 -
-Rule	sol89	1989	only	-	May	10	11:56:25s 0:03:35 -
-Rule	sol89	1989	only	-	May	11	11:56:20s 0:03:40 -
-Rule	sol89	1989	only	-	May	12	11:56:20s 0:03:40 -
-Rule	sol89	1989	only	-	May	13	11:56:20s 0:03:40 -
-Rule	sol89	1989	only	-	May	14	11:56:20s 0:03:40 -
-Rule	sol89	1989	only	-	May	15	11:56:20s 0:03:40 -
-Rule	sol89	1989	only	-	May	16	11:56:20s 0:03:40 -
-Rule	sol89	1989	only	-	May	17	11:56:20s 0:03:40 -
-Rule	sol89	1989	only	-	May	18	11:56:25s 0:03:35 -
-Rule	sol89	1989	only	-	May	19	11:56:25s 0:03:35 -
-Rule	sol89	1989	only	-	May	20	11:56:30s 0:03:30 -
-Rule	sol89	1989	only	-	May	21	11:56:35s 0:03:25 -
-Rule	sol89	1989	only	-	May	22	11:56:35s 0:03:25 -
-Rule	sol89	1989	only	-	May	23	11:56:40s 0:03:20 -
-Rule	sol89	1989	only	-	May	24	11:56:45s 0:03:15 -
-Rule	sol89	1989	only	-	May	25	11:56:55s 0:03:05 -
-Rule	sol89	1989	only	-	May	26	11:57:00s 0:03:00 -
-Rule	sol89	1989	only	-	May	27	11:57:05s 0:02:55 -
-Rule	sol89	1989	only	-	May	28	11:57:15s 0:02:45 -
-Rule	sol89	1989	only	-	May	29	11:57:20s 0:02:40 -
-Rule	sol89	1989	only	-	May	30	11:57:30s 0:02:30 -
-Rule	sol89	1989	only	-	May	31	11:57:35s 0:02:25 -
-Rule	sol89	1989	only	-	Jun	1	11:57:45s 0:02:15 -
-Rule	sol89	1989	only	-	Jun	2	11:57:55s 0:02:05 -
-Rule	sol89	1989	only	-	Jun	3	11:58:05s 0:01:55 -
-Rule	sol89	1989	only	-	Jun	4	11:58:15s 0:01:45 -
-Rule	sol89	1989	only	-	Jun	5	11:58:25s 0:01:35 -
-Rule	sol89	1989	only	-	Jun	6	11:58:35s 0:01:25 -
-Rule	sol89	1989	only	-	Jun	7	11:58:45s 0:01:15 -
-Rule	sol89	1989	only	-	Jun	8	11:59:00s 0:01:00 -
-Rule	sol89	1989	only	-	Jun	9	11:59:10s 0:00:50 -
-Rule	sol89	1989	only	-	Jun	10	11:59:20s 0:00:40 -
-Rule	sol89	1989	only	-	Jun	11	11:59:35s 0:00:25 -
-Rule	sol89	1989	only	-	Jun	12	11:59:45s 0:00:15 -
-Rule	sol89	1989	only	-	Jun	13	12:00:00s 0:00:00 -
-Rule	sol89	1989	only	-	Jun	14	12:00:10s -0:00:10 -
-Rule	sol89	1989	only	-	Jun	15	12:00:25s -0:00:25 -
-Rule	sol89	1989	only	-	Jun	16	12:00:35s -0:00:35 -
-Rule	sol89	1989	only	-	Jun	17	12:00:50s -0:00:50 -
-Rule	sol89	1989	only	-	Jun	18	12:01:05s -0:01:05 -
-Rule	sol89	1989	only	-	Jun	19	12:01:15s -0:01:15 -
-Rule	sol89	1989	only	-	Jun	20	12:01:30s -0:01:30 -
-Rule	sol89	1989	only	-	Jun	21	12:01:40s -0:01:40 -
-Rule	sol89	1989	only	-	Jun	22	12:01:55s -0:01:55 -
-Rule	sol89	1989	only	-	Jun	23	12:02:10s -0:02:10 -
-Rule	sol89	1989	only	-	Jun	24	12:02:20s -0:02:20 -
-Rule	sol89	1989	only	-	Jun	25	12:02:35s -0:02:35 -
-Rule	sol89	1989	only	-	Jun	26	12:02:45s -0:02:45 -
-Rule	sol89	1989	only	-	Jun	27	12:03:00s -0:03:00 -
-Rule	sol89	1989	only	-	Jun	28	12:03:10s -0:03:10 -
-Rule	sol89	1989	only	-	Jun	29	12:03:25s -0:03:25 -
-Rule	sol89	1989	only	-	Jun	30	12:03:35s -0:03:35 -
-Rule	sol89	1989	only	-	Jul	1	12:03:45s -0:03:45 -
-Rule	sol89	1989	only	-	Jul	2	12:04:00s -0:04:00 -
-Rule	sol89	1989	only	-	Jul	3	12:04:10s -0:04:10 -
-Rule	sol89	1989	only	-	Jul	4	12:04:20s -0:04:20 -
-Rule	sol89	1989	only	-	Jul	5	12:04:30s -0:04:30 -
-Rule	sol89	1989	only	-	Jul	6	12:04:40s -0:04:40 -
-Rule	sol89	1989	only	-	Jul	7	12:04:50s -0:04:50 -
-Rule	sol89	1989	only	-	Jul	8	12:05:00s -0:05:00 -
-Rule	sol89	1989	only	-	Jul	9	12:05:10s -0:05:10 -
-Rule	sol89	1989	only	-	Jul	10	12:05:20s -0:05:20 -
-Rule	sol89	1989	only	-	Jul	11	12:05:25s -0:05:25 -
-Rule	sol89	1989	only	-	Jul	12	12:05:35s -0:05:35 -
-Rule	sol89	1989	only	-	Jul	13	12:05:40s -0:05:40 -
-Rule	sol89	1989	only	-	Jul	14	12:05:50s -0:05:50 -
-Rule	sol89	1989	only	-	Jul	15	12:05:55s -0:05:55 -
-Rule	sol89	1989	only	-	Jul	16	12:06:00s -0:06:00 -
-Rule	sol89	1989	only	-	Jul	17	12:06:05s -0:06:05 -
-Rule	sol89	1989	only	-	Jul	18	12:06:10s -0:06:10 -
-Rule	sol89	1989	only	-	Jul	19	12:06:15s -0:06:15 -
-Rule	sol89	1989	only	-	Jul	20	12:06:20s -0:06:20 -
-Rule	sol89	1989	only	-	Jul	21	12:06:20s -0:06:20 -
-Rule	sol89	1989	only	-	Jul	22	12:06:25s -0:06:25 -
-Rule	sol89	1989	only	-	Jul	23	12:06:25s -0:06:25 -
-Rule	sol89	1989	only	-	Jul	24	12:06:30s -0:06:30 -
-Rule	sol89	1989	only	-	Jul	25	12:06:30s -0:06:30 -
-Rule	sol89	1989	only	-	Jul	26	12:06:30s -0:06:30 -
-Rule	sol89	1989	only	-	Jul	27	12:06:30s -0:06:30 -
-Rule	sol89	1989	only	-	Jul	28	12:06:30s -0:06:30 -
-Rule	sol89	1989	only	-	Jul	29	12:06:25s -0:06:25 -
-Rule	sol89	1989	only	-	Jul	30	12:06:25s -0:06:25 -
-Rule	sol89	1989	only	-	Jul	31	12:06:20s -0:06:20 -
-Rule	sol89	1989	only	-	Aug	1	12:06:20s -0:06:20 -
-Rule	sol89	1989	only	-	Aug	2	12:06:15s -0:06:15 -
-Rule	sol89	1989	only	-	Aug	3	12:06:10s -0:06:10 -
-Rule	sol89	1989	only	-	Aug	4	12:06:05s -0:06:05 -
-Rule	sol89	1989	only	-	Aug	5	12:06:00s -0:06:00 -
-Rule	sol89	1989	only	-	Aug	6	12:05:50s -0:05:50 -
-Rule	sol89	1989	only	-	Aug	7	12:05:45s -0:05:45 -
-Rule	sol89	1989	only	-	Aug	8	12:05:35s -0:05:35 -
-Rule	sol89	1989	only	-	Aug	9	12:05:30s -0:05:30 -
-Rule	sol89	1989	only	-	Aug	10	12:05:20s -0:05:20 -
-Rule	sol89	1989	only	-	Aug	11	12:05:10s -0:05:10 -
-Rule	sol89	1989	only	-	Aug	12	12:05:00s -0:05:00 -
-Rule	sol89	1989	only	-	Aug	13	12:04:50s -0:04:50 -
-Rule	sol89	1989	only	-	Aug	14	12:04:40s -0:04:40 -
-Rule	sol89	1989	only	-	Aug	15	12:04:30s -0:04:30 -
-Rule	sol89	1989	only	-	Aug	16	12:04:15s -0:04:15 -
-Rule	sol89	1989	only	-	Aug	17	12:04:05s -0:04:05 -
-Rule	sol89	1989	only	-	Aug	18	12:03:50s -0:03:50 -
-Rule	sol89	1989	only	-	Aug	19	12:03:35s -0:03:35 -
-Rule	sol89	1989	only	-	Aug	20	12:03:25s -0:03:25 -
-Rule	sol89	1989	only	-	Aug	21	12:03:10s -0:03:10 -
-Rule	sol89	1989	only	-	Aug	22	12:02:55s -0:02:55 -
-Rule	sol89	1989	only	-	Aug	23	12:02:40s -0:02:40 -
-Rule	sol89	1989	only	-	Aug	24	12:02:20s -0:02:20 -
-Rule	sol89	1989	only	-	Aug	25	12:02:05s -0:02:05 -
-Rule	sol89	1989	only	-	Aug	26	12:01:50s -0:01:50 -
-Rule	sol89	1989	only	-	Aug	27	12:01:30s -0:01:30 -
-Rule	sol89	1989	only	-	Aug	28	12:01:15s -0:01:15 -
-Rule	sol89	1989	only	-	Aug	29	12:00:55s -0:00:55 -
-Rule	sol89	1989	only	-	Aug	30	12:00:40s -0:00:40 -
-Rule	sol89	1989	only	-	Aug	31	12:00:20s -0:00:20 -
-Rule	sol89	1989	only	-	Sep	1	12:00:00s 0:00:00 -
-Rule	sol89	1989	only	-	Sep	2	11:59:45s 0:00:15 -
-Rule	sol89	1989	only	-	Sep	3	11:59:25s 0:00:35 -
-Rule	sol89	1989	only	-	Sep	4	11:59:05s 0:00:55 -
-Rule	sol89	1989	only	-	Sep	5	11:58:45s 0:01:15 -
-Rule	sol89	1989	only	-	Sep	6	11:58:25s 0:01:35 -
-Rule	sol89	1989	only	-	Sep	7	11:58:05s 0:01:55 -
-Rule	sol89	1989	only	-	Sep	8	11:57:45s 0:02:15 -
-Rule	sol89	1989	only	-	Sep	9	11:57:20s 0:02:40 -
-Rule	sol89	1989	only	-	Sep	10	11:57:00s 0:03:00 -
-Rule	sol89	1989	only	-	Sep	11	11:56:40s 0:03:20 -
-Rule	sol89	1989	only	-	Sep	12	11:56:20s 0:03:40 -
-Rule	sol89	1989	only	-	Sep	13	11:56:00s 0:04:00 -
-Rule	sol89	1989	only	-	Sep	14	11:55:35s 0:04:25 -
-Rule	sol89	1989	only	-	Sep	15	11:55:15s 0:04:45 -
-Rule	sol89	1989	only	-	Sep	16	11:54:55s 0:05:05 -
-Rule	sol89	1989	only	-	Sep	17	11:54:35s 0:05:25 -
-Rule	sol89	1989	only	-	Sep	18	11:54:10s 0:05:50 -
-Rule	sol89	1989	only	-	Sep	19	11:53:50s 0:06:10 -
-Rule	sol89	1989	only	-	Sep	20	11:53:30s 0:06:30 -
-Rule	sol89	1989	only	-	Sep	21	11:53:10s 0:06:50 -
-Rule	sol89	1989	only	-	Sep	22	11:52:45s 0:07:15 -
-Rule	sol89	1989	only	-	Sep	23	11:52:25s 0:07:35 -
-Rule	sol89	1989	only	-	Sep	24	11:52:05s 0:07:55 -
-Rule	sol89	1989	only	-	Sep	25	11:51:45s 0:08:15 -
-Rule	sol89	1989	only	-	Sep	26	11:51:25s 0:08:35 -
-Rule	sol89	1989	only	-	Sep	27	11:51:05s 0:08:55 -
-Rule	sol89	1989	only	-	Sep	28	11:50:40s 0:09:20 -
-Rule	sol89	1989	only	-	Sep	29	11:50:20s 0:09:40 -
-Rule	sol89	1989	only	-	Sep	30	11:50:00s 0:10:00 -
-Rule	sol89	1989	only	-	Oct	1	11:49:45s 0:10:15 -
-Rule	sol89	1989	only	-	Oct	2	11:49:25s 0:10:35 -
-Rule	sol89	1989	only	-	Oct	3	11:49:05s 0:10:55 -
-Rule	sol89	1989	only	-	Oct	4	11:48:45s 0:11:15 -
-Rule	sol89	1989	only	-	Oct	5	11:48:30s 0:11:30 -
-Rule	sol89	1989	only	-	Oct	6	11:48:10s 0:11:50 -
-Rule	sol89	1989	only	-	Oct	7	11:47:50s 0:12:10 -
-Rule	sol89	1989	only	-	Oct	8	11:47:35s 0:12:25 -
-Rule	sol89	1989	only	-	Oct	9	11:47:20s 0:12:40 -
-Rule	sol89	1989	only	-	Oct	10	11:47:00s 0:13:00 -
-Rule	sol89	1989	only	-	Oct	11	11:46:45s 0:13:15 -
-Rule	sol89	1989	only	-	Oct	12	11:46:30s 0:13:30 -
-Rule	sol89	1989	only	-	Oct	13	11:46:15s 0:13:45 -
-Rule	sol89	1989	only	-	Oct	14	11:46:00s 0:14:00 -
-Rule	sol89	1989	only	-	Oct	15	11:45:50s 0:14:10 -
-Rule	sol89	1989	only	-	Oct	16	11:45:35s 0:14:25 -
-Rule	sol89	1989	only	-	Oct	17	11:45:20s 0:14:40 -
-Rule	sol89	1989	only	-	Oct	18	11:45:10s 0:14:50 -
-Rule	sol89	1989	only	-	Oct	19	11:45:00s 0:15:00 -
-Rule	sol89	1989	only	-	Oct	20	11:44:50s 0:15:10 -
-Rule	sol89	1989	only	-	Oct	21	11:44:40s 0:15:20 -
-Rule	sol89	1989	only	-	Oct	22	11:44:30s 0:15:30 -
-Rule	sol89	1989	only	-	Oct	23	11:44:20s 0:15:40 -
-Rule	sol89	1989	only	-	Oct	24	11:44:10s 0:15:50 -
-Rule	sol89	1989	only	-	Oct	25	11:44:05s 0:15:55 -
-Rule	sol89	1989	only	-	Oct	26	11:44:00s 0:16:00 -
-Rule	sol89	1989	only	-	Oct	27	11:43:50s 0:16:10 -
-Rule	sol89	1989	only	-	Oct	28	11:43:45s 0:16:15 -
-Rule	sol89	1989	only	-	Oct	29	11:43:40s 0:16:20 -
-Rule	sol89	1989	only	-	Oct	30	11:43:40s 0:16:20 -
-Rule	sol89	1989	only	-	Oct	31	11:43:35s 0:16:25 -
-Rule	sol89	1989	only	-	Nov	1	11:43:35s 0:16:25 -
-Rule	sol89	1989	only	-	Nov	2	11:43:35s 0:16:25 -
-Rule	sol89	1989	only	-	Nov	3	11:43:30s 0:16:30 -
-Rule	sol89	1989	only	-	Nov	4	11:43:35s 0:16:25 -
-Rule	sol89	1989	only	-	Nov	5	11:43:35s 0:16:25 -
-Rule	sol89	1989	only	-	Nov	6	11:43:35s 0:16:25 -
-Rule	sol89	1989	only	-	Nov	7	11:43:40s 0:16:20 -
-Rule	sol89	1989	only	-	Nov	8	11:43:45s 0:16:15 -
-Rule	sol89	1989	only	-	Nov	9	11:43:50s 0:16:10 -
-Rule	sol89	1989	only	-	Nov	10	11:43:55s 0:16:05 -
-Rule	sol89	1989	only	-	Nov	11	11:44:00s 0:16:00 -
-Rule	sol89	1989	only	-	Nov	12	11:44:05s 0:15:55 -
-Rule	sol89	1989	only	-	Nov	13	11:44:15s 0:15:45 -
-Rule	sol89	1989	only	-	Nov	14	11:44:25s 0:15:35 -
-Rule	sol89	1989	only	-	Nov	15	11:44:35s 0:15:25 -
-Rule	sol89	1989	only	-	Nov	16	11:44:45s 0:15:15 -
-Rule	sol89	1989	only	-	Nov	17	11:44:55s 0:15:05 -
-Rule	sol89	1989	only	-	Nov	18	11:45:10s 0:14:50 -
-Rule	sol89	1989	only	-	Nov	19	11:45:20s 0:14:40 -
-Rule	sol89	1989	only	-	Nov	20	11:45:35s 0:14:25 -
-Rule	sol89	1989	only	-	Nov	21	11:45:50s 0:14:10 -
-Rule	sol89	1989	only	-	Nov	22	11:46:05s 0:13:55 -
-Rule	sol89	1989	only	-	Nov	23	11:46:25s 0:13:35 -
-Rule	sol89	1989	only	-	Nov	24	11:46:40s 0:13:20 -
-Rule	sol89	1989	only	-	Nov	25	11:47:00s 0:13:00 -
-Rule	sol89	1989	only	-	Nov	26	11:47:20s 0:12:40 -
-Rule	sol89	1989	only	-	Nov	27	11:47:35s 0:12:25 -
-Rule	sol89	1989	only	-	Nov	28	11:47:55s 0:12:05 -
-Rule	sol89	1989	only	-	Nov	29	11:48:20s 0:11:40 -
-Rule	sol89	1989	only	-	Nov	30	11:48:40s 0:11:20 -
-Rule	sol89	1989	only	-	Dec	1	11:49:00s 0:11:00 -
-Rule	sol89	1989	only	-	Dec	2	11:49:25s 0:10:35 -
-Rule	sol89	1989	only	-	Dec	3	11:49:50s 0:10:10 -
-Rule	sol89	1989	only	-	Dec	4	11:50:15s 0:09:45 -
-Rule	sol89	1989	only	-	Dec	5	11:50:35s 0:09:25 -
-Rule	sol89	1989	only	-	Dec	6	11:51:00s 0:09:00 -
-Rule	sol89	1989	only	-	Dec	7	11:51:30s 0:08:30 -
-Rule	sol89	1989	only	-	Dec	8	11:51:55s 0:08:05 -
-Rule	sol89	1989	only	-	Dec	9	11:52:20s 0:07:40 -
-Rule	sol89	1989	only	-	Dec	10	11:52:50s 0:07:10 -
-Rule	sol89	1989	only	-	Dec	11	11:53:15s 0:06:45 -
-Rule	sol89	1989	only	-	Dec	12	11:53:45s 0:06:15 -
-Rule	sol89	1989	only	-	Dec	13	11:54:10s 0:05:50 -
-Rule	sol89	1989	only	-	Dec	14	11:54:40s 0:05:20 -
-Rule	sol89	1989	only	-	Dec	15	11:55:10s 0:04:50 -
-Rule	sol89	1989	only	-	Dec	16	11:55:40s 0:04:20 -
-Rule	sol89	1989	only	-	Dec	17	11:56:05s 0:03:55 -
-Rule	sol89	1989	only	-	Dec	18	11:56:35s 0:03:25 -
-Rule	sol89	1989	only	-	Dec	19	11:57:05s 0:02:55 -
-Rule	sol89	1989	only	-	Dec	20	11:57:35s 0:02:25 -
-Rule	sol89	1989	only	-	Dec	21	11:58:05s 0:01:55 -
-Rule	sol89	1989	only	-	Dec	22	11:58:35s 0:01:25 -
-Rule	sol89	1989	only	-	Dec	23	11:59:05s 0:00:55 -
-Rule	sol89	1989	only	-	Dec	24	11:59:35s 0:00:25 -
-Rule	sol89	1989	only	-	Dec	25	12:00:05s -0:00:05 -
-Rule	sol89	1989	only	-	Dec	26	12:00:35s -0:00:35 -
-Rule	sol89	1989	only	-	Dec	27	12:01:05s -0:01:05 -
-Rule	sol89	1989	only	-	Dec	28	12:01:35s -0:01:35 -
-Rule	sol89	1989	only	-	Dec	29	12:02:00s -0:02:00 -
-Rule	sol89	1989	only	-	Dec	30	12:02:30s -0:02:30 -
-Rule	sol89	1989	only	-	Dec	31	12:03:00s -0:03:00 -
-
-# Riyadh is at about 46 degrees 46 minutes East:  3 hrs, 7 mins, 4 secs
-# Before and after 1989, we'll operate on local mean solar time.
-
-# Zone	NAME		GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
-Zone	Asia/Riyadh89	3:07:04	-		zzz	1989
-			3:07:04	sol89		zzz	1990
-			3:07:04	-		zzz
-# For backward compatibility...
-Link	Asia/Riyadh89	Mideast/Riyadh89
diff --git a/tools/zoneinfo/tzdata2008h/southamerica b/tools/zoneinfo/tzdata2008h/southamerica
deleted file mode 100644
index 5dae61a..0000000
--- a/tools/zoneinfo/tzdata2008h/southamerica
+++ /dev/null
@@ -1,1390 +0,0 @@
-# @(#)southamerica	8.30
-# <pre>
-
-# This data is by no means authoritative; if you think you know better,
-# go ahead and edit the file (and please send any changes to
-# tz@elsie.nci.nih.gov for general use in the future).
-
-# From Paul Eggert (2006-03-22):
-# A good source for time zone historical data outside the U.S. is
-# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
-# San Diego: ACS Publications, Inc. (2003).
-#
-# Gwillim Law writes that a good source
-# for recent time zone data is the International Air Transport
-# Association's Standard Schedules Information Manual (IATA SSIM),
-# published semiannually.  Law sent in several helpful summaries
-# of the IATA's data after 1990.
-#
-# Except where otherwise noted, Shanks & Pottenger is the source for
-# entries through 1990, and IATA SSIM is the source for entries afterwards.
-#
-# Earlier editions of these tables used the North American style (e.g. ARST and
-# ARDT for Argentine Standard and Daylight Time), but the following quote
-# suggests that it's better to use European style (e.g. ART and ARST).
-#	I suggest the use of _Summer time_ instead of the more cumbersome
-#	_daylight-saving time_.  _Summer time_ seems to be in general use
-#	in Europe and South America.
-#	-- E O Cutler, _New York Times_ (1937-02-14), quoted in
-#	H L Mencken, _The American Language: Supplement I_ (1960), p 466
-#
-# Earlier editions of these tables also used the North American style
-# for time zones in Brazil, but this was incorrect, as Brazilians say
-# "summer time".  Reinaldo Goulart, a Sao Paulo businessman active in
-# the railroad sector, writes (1999-07-06):
-#	The subject of time zones is currently a matter of discussion/debate in
-#	Brazil.  Let's say that "the Brasilia time" is considered the
-#	"official time" because Brasilia is the capital city.
-#	The other three time zones are called "Brasilia time "minus one" or
-#	"plus one" or "plus two".  As far as I know there is no such
-#	name/designation as "Eastern Time" or "Central Time".
-# So I invented the following (English-language) abbreviations for now.
-# Corrections are welcome!
-#		std	dst
-#	-2:00	FNT	FNST	Fernando de Noronha
-#	-3:00	BRT	BRST	Brasilia
-#	-4:00	AMT	AMST	Amazon
-#	-5:00	ACT	ACST	Acre
-
-###############################################################################
-
-###############################################################################
-
-# Argentina
-
-# From Bob Devine (1988-01-28):
-# Argentina: first Sunday in October to first Sunday in April since 1976.
-# Double Summer time from 1969 to 1974.  Switches at midnight.
-
-# From U. S. Naval Observatory (1988-01-199):
-# ARGENTINA           3 H BEHIND   UTC
-
-# From Hernan G. Otero (1995-06-26):
-# I am sending modifications to the Argentine time zone table...
-# AR was chosen because they are the ISO letters that represent Argentina.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Arg	1930	only	-	Dec	 1	0:00	1:00	S
-Rule	Arg	1931	only	-	Apr	 1	0:00	0	-
-Rule	Arg	1931	only	-	Oct	15	0:00	1:00	S
-Rule	Arg	1932	1940	-	Mar	 1	0:00	0	-
-Rule	Arg	1932	1939	-	Nov	 1	0:00	1:00	S
-Rule	Arg	1940	only	-	Jul	 1	0:00	1:00	S
-Rule	Arg	1941	only	-	Jun	15	0:00	0	-
-Rule	Arg	1941	only	-	Oct	15	0:00	1:00	S
-Rule	Arg	1943	only	-	Aug	 1	0:00	0	-
-Rule	Arg	1943	only	-	Oct	15	0:00	1:00	S
-Rule	Arg	1946	only	-	Mar	 1	0:00	0	-
-Rule	Arg	1946	only	-	Oct	 1	0:00	1:00	S
-Rule	Arg	1963	only	-	Oct	 1	0:00	0	-
-Rule	Arg	1963	only	-	Dec	15	0:00	1:00	S
-Rule	Arg	1964	1966	-	Mar	 1	0:00	0	-
-Rule	Arg	1964	1966	-	Oct	15	0:00	1:00	S
-Rule	Arg	1967	only	-	Apr	 2	0:00	0	-
-Rule	Arg	1967	1968	-	Oct	Sun>=1	0:00	1:00	S
-Rule	Arg	1968	1969	-	Apr	Sun>=1	0:00	0	-
-Rule	Arg	1974	only	-	Jan	23	0:00	1:00	S
-Rule	Arg	1974	only	-	May	 1	0:00	0	-
-Rule	Arg	1988	only	-	Dec	 1	0:00	1:00	S
-#
-# From Hernan G. Otero (1995-06-26):
-# These corrections were contributed by InterSoft Argentina S.A.,
-# obtaining the data from the:
-# Talleres de Hidrografia Naval Argentina
-# (Argentine Naval Hydrography Institute)
-Rule	Arg	1989	1993	-	Mar	Sun>=1	0:00	0	-
-Rule	Arg	1989	1992	-	Oct	Sun>=15	0:00	1:00	S
-#
-# From Hernan G. Otero (1995-06-26):
-# From this moment on, the law that mandated the daylight saving
-# time corrections was derogated and no more modifications
-# to the time zones (for daylight saving) are now made.
-#
-# From Rives McDow (2000-01-10):
-# On October 3, 1999, 0:00 local, Argentina implemented daylight savings time,
-# which did not result in the switch of a time zone, as they stayed 9 hours
-# from the International Date Line.
-Rule	Arg	1999	only	-	Oct	Sun>=1	0:00	1:00	S
-# From Paul Eggert (2007-12-28):
-# DST was set to expire on March 5, not March 3, but since it was converted
-# to standard time on March 3 it's more convenient for us to pretend that
-# it ended on March 3.
-Rule	Arg	2000	only	-	Mar	3	0:00	0	-
-#
-# From Peter Gradelski via Steffen Thorsen (2000-03-01):
-# We just checked with our Sao Paulo office and they say the government of
-# Argentina decided not to become one of the countries that go on or off DST.
-# So Buenos Aires should be -3 hours from GMT at all times.
-#
-# From Fabian L. Arce Jofre (2000-04-04):
-# The law that claimed DST for Argentina was derogated by President Fernando
-# de la Rua on March 2, 2000, because it would make people spend more energy
-# in the winter time, rather than less.  The change took effect on March 3.
-#
-# From Mariano Absatz (2001-06-06):
-# one of the major newspapers here in Argentina said that the 1999
-# Timezone Law (which never was effectively applied) will (would?) be
-# in effect.... The article is at
-# http://ar.clarin.com/diario/2001-06-06/e-01701.htm
-# ... The Law itself is "Ley No 25155", sanctioned on 1999-08-25, enacted
-# 1999-09-17, and published 1999-09-21.  The official publication is at:
-# http://www.boletin.jus.gov.ar/BON/Primera/1999/09-Septiembre/21/PDF/BO21-09-99LEG.PDF
-# Regretfully, you have to subscribe (and pay) for the on-line version....
-#
-# (2001-06-12):
-# the timezone for Argentina will not change next Sunday.
-# Apparently it will do so on Sunday 24th....
-# http://ar.clarin.com/diario/2001-06-12/s-03501.htm
-#
-# (2001-06-25):
-# Last Friday (yes, the last working day before the date of the change), the
-# Senate annulled the 1999 law that introduced the changes later postponed.
-# http://www.clarin.com.ar/diario/2001-06-22/s-03601.htm
-# It remains the vote of the Deputies..., but it will be the same....
-# This kind of things had always been done this way in Argentina.
-# We are still -03:00 all year round in all of the country.
-#
-# From Steffen Thorsen (2007-12-21):
-# A user (Leonardo Chaim) reported that Argentina will adopt DST....
-# all of the country (all Zone-entries) are affected.  News reports like
-# http://www.lanacion.com.ar/opinion/nota.asp?nota_id=973037 indicate
-# that Argentina will use DST next year as well, from October to
-# March, although exact rules are not given.
-#
-# From Jesper Norgaard Welen (2007-12-26)
-# The last hurdle of Argentina DST is over, the proposal was approved in
-# the lower chamber too (Deputados) with a vote 192 for and 2 against.
-# By the way thanks to Mariano Absatz and Daniel Mario Vega for the link to
-# the original scanned proposal, where the dates and the zero hours are
-# clear and unambiguous...This is the article about final approval:
-# <a href="http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996">
-# http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996
-# </a>
-#
-# From Paul Eggert (2007-12-22):
-# For dates after mid-2008, the following rules are my guesses and
-# are quite possibly wrong, but are more likely than no DST at all.
-
-# From Alexander Krivenyshev (2008-09-05):
-# As per message from Carlos Alberto Fonseca Arauz (Nicaragua),
-# Argentina will start DST on Sunday October 19, 2008.
-#
-# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina03.html">
-# http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
-# </a>
-# OR
-# <a href="http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)">
-# http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
-# </a>
-
-# From Rodrigo Severo (2008-10-06):
-# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
-# ...
-# ------- Comment #1 from [jmdocile]  2008-10-06 16:28 0000 -------
-# Hi, there is a problem with timezone-data-2008e and maybe with
-# timezone-data-2008f
-# Argentinian law [Number] 25.155 is no longer valid.
-# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm">
-# http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
-# </a>
-# The new one is law [Number] 26.350
-# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm">
-# http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
-# </a>
-# So there is no summer time in Argentina for now.
-
-Rule	Arg	2007	only	-	Dec	30	0:00	1:00	S
-Rule	Arg	2008	max	-	Mar	Sun>=15	0:00	0	-
-Rule	Arg	2008	max	-	Oct	Sun>=15	0:00	1:00	S
- 
-# From Mariano Absatz (2004-05-21):
-# Today it was officially published that the Province of Mendoza is changing
-# its timezone this winter... starting tomorrow night....
-# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040521-27158-normas.pdf
-# From Paul Eggert (2004-05-24):
-# It's Law No. 7,210.  This change is due to a public power emergency, so for
-# now we'll assume it's for this year only.
-#
-# From Paul Eggert (2006-03-22):
-# <a href="http://www.spicasc.net/horvera.html">
-# Hora de verano para la Republica Argentina (2003-06-08)
-# </a> says that standard time in Argentina from 1894-10-31
-# to 1920-05-01 was -4:16:48.25.  Go with this more-precise value
-# over Shanks & Pottenger.
-#
-# From Mariano Absatz (2004-06-05):
-# These media articles from a major newspaper mostly cover the current state:
-# http://www.lanacion.com.ar/04/05/27/de_604825.asp
-# http://www.lanacion.com.ar/04/05/28/de_605203.asp
-#
-# The following eight (8) provinces pulled clocks back to UTC-04:00 at
-# midnight Monday May 31st. (that is, the night between 05/31 and 06/01).
-# Apparently, all nine provinces would go back to UTC-03:00 at the same
-# time in October 17th.
-#
-# Catamarca, Chubut, La Rioja, San Juan, San Luis, Santa Cruz,
-# Tierra del Fuego, Tucuman.
-#
-# From Mariano Absatz (2004-06-14):
-# ... this weekend, the Province of Tucuman decided it'd go back to UTC-03:00
-# yesterday midnight (that is, at 24:00 Saturday 12th), since the people's
-# annoyance with the change is much higher than the power savings obtained....
-#
-# From Gwillim Law (2004-06-14):
-# http://www.lanacion.com.ar/04/06/10/de_609078.asp ...
-#     "The time change in Tierra del Fuego was a conflicted decision from
-#   the start.  The government had decreed that the measure would take
-#   effect on June 1, but a normative error forced the new time to begin
-#   three days earlier, from a Saturday to a Sunday....
-# Our understanding was that the change was originally scheduled to take place
-# on June 1 at 00:00 in Chubut, Santa Cruz, Tierra del Fuego (and some other
-# provinces).  Sunday was May 30, only two days earlier.  So the article
-# contains a contradiction.  I would give more credence to the Saturday/Sunday
-# date than the "three days earlier" phrase, and conclude that Tierra del
-# Fuego set its clocks back at 2004-05-30 00:00.
-#
-# From Steffen Thorsen (2004-10-05):
-# The previous law 7210 which changed the province of Mendoza's time zone
-# back in May have been modified slightly in a new law 7277, which set the
-# new end date to 2004-09-26 (original date was 2004-10-17).
-# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040924-27244-normas.pdf
-#
-# From Mariano Absatz (2004-10-05):
-# San Juan changed from UTC-03:00 to UTC-04:00 at midnight between
-# Sunday, May 30th and Monday, May 31st.  It changed back to UTC-03:00
-# at midnight between Saturday, July 24th and Sunday, July 25th....
-# http://www.sanjuan.gov.ar/prensa/archivo/000329.html
-# http://www.sanjuan.gov.ar/prensa/archivo/000426.html
-# http://www.sanjuan.gov.ar/prensa/archivo/000441.html
-
-# From Alex Krivenyshev (2008-01-17):
-# Here are articles that Argentina Province San Luis is planning to end DST
-# as earlier as upcoming Monday January 21, 2008 or February 2008:
-#
-# Provincia argentina retrasa reloj y marca diferencia con resto del pais
-# (Argentine Province delayed clock and mark difference with the rest of the
-# country)
-# <a href="http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel">
-# http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel
-# </a>
-#
-# Es inminente que en San Luis atrasen una hora los relojes
-# (It is imminent in San Luis clocks one hour delay)
-# <a href="http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414">
-# http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414
-# </a>
-#
-# <a href="http://www.worldtimezone.net/dst_news/dst_news_argentina02.html">
-# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
-# </a>
-
-# From Jesper Norgaard Welen (2008-01-18):
-# The page of the San Luis provincial government
-# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812">
-# http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812
-# </a>
-# confirms what Alex Krivenyshev has earlier sent to the tz
-# emailing list about that San Luis plans to return to standard
-# time much earlier than the rest of the country. It also
-# confirms that upon request the provinces San Juan and Mendoza 
-# refused to follow San Luis in this change. 
-# 
-# The change is supposed to take place Monday the 21.st at 0:00
-# hours. As far as I understand it if this goes ahead, we need
-# a new timezone for San Luis (although there are also documented
-# independent changes in the southamerica file of San Luis in
-# 1990 and 1991 which has not been confirmed).
-
-# From Jesper Norgaard Welen (2008-01-25):
-# Unfortunately the below page has become defunct, about the San Luis
-# time change. Perhaps because it now is part of a group of pages "Most
-# important pages of 2008."
-#
-# You can use
-# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834">
-# http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834
-# </a>
-# instead it seems. Or use "Buscador" from the main page of the San Luis
-# government, and fill in "huso" and click OK, and you will get 3 pages
-# from which the first one is identical to the above.
-
-# From Mariano Absatz (2008-01-28):
-# I can confirm that the Province of San Luis (and so far only that
-# province) decided to go back to UTC-3 effective midnight Jan 20th 2008
-# (that is, Monday 21st at 0:00 is the time the clocks were delayed back
-# 1 hour), and they intend to keep UTC-3 as their timezone all year round
-# (that is, unless they change their mind any minute now).
-#
-# So we'll have to add yet another city to 'southamerica' (I think San
-# Luis city is the mos populated city in the Province, so it'd be
-# America/Argentina/San_Luis... of course I can't remember if San Luis's
-# history of particular changes goes along with Mendoza or San Juan :-(
-# (I only remember not being able to collect hard facts about San Luis
-# back in 2004, when these provinces changed to UTC-4 for a few days, I
-# mailed them personally and never got an answer).
-
-# From Paul Eggert (2008-06-30):
-# Unless otherwise specified, data are from Shanks & Pottenger through 1992,
-# from the IATA otherwise.  As noted below, Shanks & Pottenger say that
-# America/Cordoba split into 6 subregions during 1991/1992, one of which
-# was America/San_Luis, but we haven't verified this yet so for now we'll
-# keep America/Cordoba a single region rather than splitting it into the
-# other 5 subregions.
-
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-#
-# Buenos Aires (BA), Capital Federal (CF),
-Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
-			-4:16:48 -	CMT	1920 May # Cordoba Mean Time
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	Arg	AR%sT
-#
-# Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN), Chaco (CC),
-# Formosa (FM), Salta (SA), Santiago del Estero (SE), Cordoba (CB),
-# La Pampa (LP), Neuquen (NQ), Rio Negro (RN)
-#
-# Shanks & Pottenger also make the following claims, which we haven't verified:
-# - Formosa switched to -3:00 on 1991-01-07.
-# - Misiones switched to -3:00 on 1990-12-29.
-# - Chaco switched to -3:00 on 1991-01-04.
-# - Santiago del Estero switched to -4:00 on 1991-04-01,
-#   then to -3:00 on 1991-04-26.
-#
-Zone America/Argentina/Cordoba -4:16:48 - LMT	1894 Oct 31
-			-4:16:48 -	CMT	1920 May
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1991 Mar  3
-			-4:00	-	WART	1991 Oct 20
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	Arg	AR%sT
-#
-# Tucuman (TM)
-Zone America/Argentina/Tucuman -4:20:52 - LMT	1894 Oct 31
-			-4:16:48 -	CMT	1920 May
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1991 Mar  3
-			-4:00	-	WART	1991 Oct 20
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	-	ART	2004 Jun  1
-			-4:00	-	WART	2004 Jun 13
-			-3:00	Arg	AR%sT
-#
-# La Rioja (LR)
-Zone America/Argentina/La_Rioja -4:27:24 - LMT	1894 Oct 31
-			-4:16:48 -	CMT	1920 May
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1991 Mar  1
-			-4:00	-	WART	1991 May  7
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	-	ART	2004 Jun  1
-			-4:00	-	WART	2004 Jun 20
-			-3:00	Arg	AR%sT
-#
-# San Juan (SJ)
-Zone America/Argentina/San_Juan -4:34:04 - LMT	1894 Oct 31
-			-4:16:48 -	CMT	1920 May
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1991 Mar  1
-			-4:00	-	WART	1991 May  7
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	-	ART	2004 May 31
-			-4:00	-	WART	2004 Jul 25
-			-3:00	Arg	AR%sT
-#
-# Jujuy (JY)
-Zone America/Argentina/Jujuy -4:21:12 -	LMT	1894 Oct 31
-			-4:16:48 -	CMT	1920 May
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1990 Mar  4
-			-4:00	-	WART	1990 Oct 28
-			-4:00	1:00	WARST	1991 Mar 17
-			-4:00	-	WART	1991 Oct  6
-			-3:00	1:00	ARST	1992
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	Arg	AR%sT
-#
-# Catamarca (CT), Chubut (CH)
-Zone America/Argentina/Catamarca -4:23:08 - LMT	1894 Oct 31
-			-4:16:48 -	CMT	1920 May
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1991 Mar  3
-			-4:00	-	WART	1991 Oct 20
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	-	ART	2004 Jun  1
-			-4:00	-	WART	2004 Jun 20
-			-3:00	Arg	AR%sT
-#
-# Mendoza (MZ)
-Zone America/Argentina/Mendoza -4:35:16 - LMT	1894 Oct 31
-			-4:16:48 -	CMT	1920 May
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1990 Mar  4
-			-4:00	-	WART	1990 Oct 15
-			-4:00	1:00	WARST	1991 Mar  1
-			-4:00	-	WART	1991 Oct 15
-			-4:00	1:00	WARST	1992 Mar  1
-			-4:00	-	WART	1992 Oct 18
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	-	ART	2004 May 23
-			-4:00	-	WART	2004 Sep 26
-			-3:00	Arg	AR%sT
-#
-# San Luis (SL)
-Zone America/Argentina/San_Luis -4:25:24 - LMT	1894 Oct 31
-			-4:16:48 -	CMT	1920 May
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1990
-			-3:00	1:00	ARST	1990 Mar 14
-			-4:00	-	WART	1990 Oct 15
-			-4:00	1:00	WARST	1991 Mar  1
-			-4:00	-	WART	1991 Jun  1
-			-3:00	-	ART	1999 Oct  3
-			-4:00	1:00	WARST	2000 Mar  3
-			-3:00	-	ART	2004 May 31
-			-4:00	-	WART	2004 Jul 25
-			-3:00	Arg	AR%sT	2008 Jan 21
-			-3:00	-	ART
-#
-# Santa Cruz (SC)
-Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
-			-4:16:48 -	CMT	1920 May # Cordoba Mean Time
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	-	ART	2004 Jun  1
-			-4:00	-	WART	2004 Jun 20
-			-3:00	Arg	AR%sT
-#
-# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF)
-Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
-			-4:16:48 -	CMT	1920 May # Cordoba Mean Time
-			-4:00	-	ART	1930 Dec
-			-4:00	Arg	AR%sT	1969 Oct  5
-			-3:00	Arg	AR%sT	1999 Oct  3
-			-4:00	Arg	AR%sT	2000 Mar  3
-			-3:00	-	ART	2004 May 30
-			-4:00	-	WART	2004 Jun 20
-			-3:00	Arg	AR%sT
-
-# Aruba
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Aruba	-4:40:24 -	LMT	1912 Feb 12	# Oranjestad
-			-4:30	-	ANT	1965 # Netherlands Antilles Time
-			-4:00	-	AST
-
-# Bolivia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/La_Paz	-4:32:36 -	LMT	1890
-			-4:32:36 -	CMT	1931 Oct 15 # Calamarca MT
-			-4:32:36 1:00	BOST	1932 Mar 21 # Bolivia ST
-			-4:00	-	BOT	# Bolivia Time
-
-# Brazil
-
-# From Paul Eggert (1993-11-18):
-# The mayor of Rio recently attempted to change the time zone rules
-# just in his city, in order to leave more summer time for the tourist trade.
-# The rule change lasted only part of the day;
-# the federal government refused to follow the city's rules, and business
-# was in a chaos, so the mayor backed down that afternoon.
-
-# From IATA SSIM (1996-02):
-# _Only_ the following states in BR1 observe DST: Rio Grande do Sul (RS),
-# Santa Catarina (SC), Parana (PR), Sao Paulo (SP), Rio de Janeiro (RJ),
-# Espirito Santo (ES), Minas Gerais (MG), Bahia (BA), Goias (GO),
-# Distrito Federal (DF), Tocantins (TO), Sergipe [SE] and Alagoas [AL].
-# [The last three states are new to this issue of the IATA SSIM.]
-
-# From Gwillim Law (1996-10-07):
-# Geography, history (Tocantins was part of Goias until 1989), and other
-# sources of time zone information lead me to believe that AL, SE, and TO were
-# always in BR1, and so the only change was whether or not they observed DST....
-# The earliest issue of the SSIM I have is 2/91.  Each issue from then until
-# 9/95 says that DST is observed only in the ten states I quoted from 9/95,
-# along with Mato Grosso (MT) and Mato Grosso do Sul (MS), which are in BR2
-# (UTC-4)....  The other two time zones given for Brazil are BR3, which is
-# UTC-5, no DST, and applies only in the state of Acre (AC); and BR4, which is
-# UTC-2, and applies to Fernando de Noronha (formerly FN, but I believe it's
-# become part of the state of Pernambuco).  The boundary between BR1 and BR2
-# has never been clearly stated.  They've simply been called East and West.
-# However, some conclusions can be drawn from another IATA manual: the Airline
-# Coding Directory, which lists close to 400 airports in Brazil.  For each
-# airport it gives a time zone which is coded to the SSIM.  From that
-# information, I'm led to conclude that the states of Amapa (AP), Ceara (CE),
-# Maranhao (MA), Paraiba (PR), Pernambuco (PE), Piaui (PI), and Rio Grande do
-# Norte (RN), and the eastern part of Para (PA) are all in BR1 without DST.
-
-# From Marcos Tadeu (1998-09-27):
-# <a href="http://pcdsh01.on.br/verao1.html">
-# Brazilian official page
-# </a>
-
-# From Jesper Norgaard (2000-11-03):
-# [For an official list of which regions in Brazil use which time zones, see:]
-# http://pcdsh01.on.br/Fusbr.htm
-# http://pcdsh01.on.br/Fusbrhv.htm
-
-# From Celso Doria via David Madeo (2002-10-09):
-# The reason for the delay this year has to do with elections in Brazil.
-#
-# Unlike in the United States, elections in Brazil are 100% computerized and
-# the results are known almost immediately.  Yesterday, it was the first
-# round of the elections when 115 million Brazilians voted for President,
-# Governor, Senators, Federal Deputies, and State Deputies.  Nobody is
-# counting (or re-counting) votes anymore and we know there will be a second
-# round for the Presidency and also for some Governors.  The 2nd round will
-# take place on October 27th.
-#
-# The reason why the DST will only begin November 3rd is that the thousands
-# of electoral machines used cannot have their time changed, and since the
-# Constitution says the elections must begin at 8:00 AM and end at 5:00 PM,
-# the Government decided to postpone DST, instead of changing the Constitution
-# (maybe, for the next elections, it will be possible to change the clock)...
-
-# From Rodrigo Severo (2004-10-04):
-# It's just the biannual change made necessary by the much hyped, supposedly
-# modern Brazilian eletronic voting machines which, apparently, can't deal
-# with a time change between the first and the second rounds of the elections.
-
-# From Steffen Thorsen (2007-09-20):
-# Brazil will start DST on 2007-10-14 00:00 and end on 2008-02-17 00:00:
-# http://www.mme.gov.br/site/news/detail.do;jsessionid=BBA06811AFCAAC28F0285210913513DA?newsId=13975
-
-# From Paul Schulze (2008-06-24):
-# ...by law number 11.662 of April 24, 2008 (published in the "Diario
-# Oficial da Uniao"...) in Brazil there are changes in the timezones,
-# effective today (00:00am at June 24, 2008) as follows:
-#
-# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the
-# part of the Amazonas state that had this timezone now being put to the
-# timezone UTC+4
-# b) The whole Para state now is put at timezone UTC+3, instead of just
-# part of it, as was before.
-#
-# This change follows a proposal of senator Tiao Viana of Acre state, that
-# proposed it due to concerns about open television channels displaying
-# programs inappropriate to youths in the states that had the timezone
-# UTC+5 too early in the night. In the occasion, some more corrections
-# were proposed, trying to unify the timezones of any given state. This
-# change modifies timezone rules defined in decree 2.784 of 18 June,
-# 1913.
-
-# From Rodrigo Severo (2008-06-24):
-# Just correcting the URL:
-# <a href="https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=3Ddo&secao=3D1&pagina=3D1&data=3D25/04/2008">
-# https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=3Ddo&secao=3D1&pagina=3D1&data=3D25/04/2008
-# </a>
-#
-# As a result of the above Decree I believe the America/Rio_Branco
-# timezone shall be modified from UTC-5 to UTC-4 and a new timezone shall
-# be created to represent the the west side of the Para State. I
-# suggest this new timezone be called Santarem as the most
-# important/populated city in the affected area.
-#
-# This new timezone would be the same as the Rio_Branco timezone up to
-# the 2008/06/24 change which would be to UTC-3 instead of UTC-4.
-
-# From Alex Krivenyshev (2008-06-24):
-# This is a quick reference page for New and Old Brazil Time Zones map.
-# <a href="http://www.worldtimezone.com/brazil-time-new-old.php">
-# http://www.worldtimezone.com/brazil-time-new-old.php
-# </a>
-#
-# - 4 time zones replaced by 3 time zones-eliminating time zone UTC- 05
-# (state Acre and the part of the Amazonas will be UTC/GMT- 04) - western
-# part of Par state is moving to one timezone UTC- 03 (from UTC -04).
-
-# From Paul Eggert (2002-10-10):
-# The official decrees referenced below are mostly taken from
-# <a href="http://pcdsh01.on.br/DecHV.html">
-# Decretos sobre o Horario de Verao no Brasil
-# </a>.
-
-# From Steffen Thorsen (2008-08-29):
-# As announced by the government and many newspapers in Brazil late
-# yesterday, Brazil will start DST on 2008-10-19 (need to change rule) and
-# it will end on 2009-02-15 (current rule for Brazil is fine). Based on
-# past years experience with the elections, there was a good chance that
-# the start was postponed to November, but it did not happen this year.
-#
-# It has not yet been posted to http://pcdsh01.on.br/DecHV.html
-#
-# An official page about it:
-# <a href="http://www.mme.gov.br/site/news/detail.do?newsId=16722">
-# http://www.mme.gov.br/site/news/detail.do?newsId=16722
-# </a>
-# Note that this link does not always work directly, but must be accessed
-# by going to
-# <a href="http://www.mme.gov.br/first">
-# http://www.mme.gov.br/first
-# </a>
-#
-# One example link that works directly:
-# <a href="http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54">
-# http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54
-# (Portuguese)
-# </a>
-#
-# We have a written a short article about it as well:
-# <a href="http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html">
-# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
-# </a>
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# Decree <a href="http://pcdsh01.on.br/HV20466.htm">20,466</a> (1931-10-01)
-# Decree <a href="http://pcdsh01.on.br/HV21896.htm">21,896</a> (1932-01-10)
-Rule	Brazil	1931	only	-	Oct	 3	11:00	1:00	S
-Rule	Brazil	1932	1933	-	Apr	 1	 0:00	0	-
-Rule	Brazil	1932	only	-	Oct	 3	 0:00	1:00	S
-# Decree <a href="http://pcdsh01.on.br/HV23195.htm">23,195</a> (1933-10-10)
-# revoked DST.
-# Decree <a href="http://pcdsh01.on.br/HV27496.htm">27,496</a> (1949-11-24)
-# Decree <a href="http://pcdsh01.on.br/HV27998.htm">27,998</a> (1950-04-13)
-Rule	Brazil	1949	1952	-	Dec	 1	 0:00	1:00	S
-Rule	Brazil	1950	only	-	Apr	16	 1:00	0	-
-Rule	Brazil	1951	1952	-	Apr	 1	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV32308.htm">32,308</a> (1953-02-24)
-Rule	Brazil	1953	only	-	Mar	 1	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV34724.htm">34,724</a> (1953-11-30)
-# revoked DST.
-# Decree <a href="http://pcdsh01.on.br/HV52700.htm">52,700</a> (1963-10-18)
-# established DST from 1963-10-23 00:00 to 1964-02-29 00:00
-# in SP, RJ, GB, MG, ES, due to the prolongation of the drought.
-# Decree <a href="http://pcdsh01.on.br/HV53071.htm">53,071</a> (1963-12-03)
-# extended the above decree to all of the national territory on 12-09.
-Rule	Brazil	1963	only	-	Dec	 9	 0:00	1:00	S
-# Decree <a href="http://pcdsh01.on.br/HV53604.htm">53,604</a> (1964-02-25)
-# extended summer time by one day to 1964-03-01 00:00 (start of school).
-Rule	Brazil	1964	only	-	Mar	 1	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV55639.htm">55,639</a> (1965-01-27)
-Rule	Brazil	1965	only	-	Jan	31	 0:00	1:00	S
-Rule	Brazil	1965	only	-	Mar	31	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV57303.htm">57,303</a> (1965-11-22)
-Rule	Brazil	1965	only	-	Dec	 1	 0:00	1:00	S
-# Decree <a href="http://pcdsh01.on.br/HV57843.htm">57,843</a> (1966-02-18)
-Rule	Brazil	1966	1968	-	Mar	 1	 0:00	0	-
-Rule	Brazil	1966	1967	-	Nov	 1	 0:00	1:00	S
-# Decree <a href="http://pcdsh01.on.br/HV63429.htm">63,429</a> (1968-10-15)
-# revoked DST.
-# Decree <a href="http://pcdsh01.on.br/HV91698.htm">91,698</a> (1985-09-27)
-Rule	Brazil	1985	only	-	Nov	 2	 0:00	1:00	S
-# Decree 92,310 (1986-01-21)
-# Decree 92,463 (1986-03-13)
-Rule	Brazil	1986	only	-	Mar	15	 0:00	0	-
-# Decree 93,316 (1986-10-01)
-Rule	Brazil	1986	only	-	Oct	25	 0:00	1:00	S
-Rule	Brazil	1987	only	-	Feb	14	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV94922.htm">94,922</a> (1987-09-22)
-Rule	Brazil	1987	only	-	Oct	25	 0:00	1:00	S
-Rule	Brazil	1988	only	-	Feb	 7	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV96676.htm">96,676</a> (1988-09-12)
-# except for the states of AC, AM, PA, RR, RO, and AP (then a territory)
-Rule	Brazil	1988	only	-	Oct	16	 0:00	1:00	S
-Rule	Brazil	1989	only	-	Jan	29	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV98077.htm">98,077</a> (1989-08-21)
-# with the same exceptions
-Rule	Brazil	1989	only	-	Oct	15	 0:00	1:00	S
-Rule	Brazil	1990	only	-	Feb	11	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV99530.htm">99,530</a> (1990-09-17)
-# adopted by RS, SC, PR, SP, RJ, ES, MG, GO, MS, DF.
-# Decree 99,629 (1990-10-19) adds BA, MT.
-Rule	Brazil	1990	only	-	Oct	21	 0:00	1:00	S
-Rule	Brazil	1991	only	-	Feb	17	 0:00	0	-
-# <a href="http://pcdsh01.on.br/HV1991.htm">Unnumbered decree</a> (1991-09-25)
-# adopted by RS, SC, PR, SP, RJ, ES, MG, BA, GO, MT, MS, DF.
-Rule	Brazil	1991	only	-	Oct	20	 0:00	1:00	S
-Rule	Brazil	1992	only	-	Feb	 9	 0:00	0	-
-# <a href="http://pcdsh01.on.br/HV1992.htm">Unnumbered decree</a> (1992-10-16)
-# adopted by same states.
-Rule	Brazil	1992	only	-	Oct	25	 0:00	1:00	S
-Rule	Brazil	1993	only	-	Jan	31	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV942.htm">942</a> (1993-09-28)
-# adopted by same states, plus AM.
-# Decree <a href="http://pcdsh01.on.br/HV1252.htm">1,252</a> (1994-09-22;
-# web page corrected 2004-01-07) adopted by same states, minus AM.
-# Decree <a href="http://pcdsh01.on.br/HV1636.htm">1,636</a> (1995-09-14)
-# adopted by same states, plus MT and TO.
-# Decree <a href="http://pcdsh01.on.br/HV1674.htm">1,674</a> (1995-10-13)
-# adds AL, SE.
-Rule	Brazil	1993	1995	-	Oct	Sun>=11	 0:00	1:00	S
-Rule	Brazil	1994	1995	-	Feb	Sun>=15	 0:00	0	-
-Rule	Brazil	1996	only	-	Feb	11	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/HV2000.htm">2,000</a> (1996-09-04)
-# adopted by same states, minus AL, SE.
-Rule	Brazil	1996	only	-	Oct	 6	 0:00	1:00	S
-Rule	Brazil	1997	only	-	Feb	16	 0:00	0	-
-# From Daniel C. Sobral (1998-02-12):
-# In 1997, the DS began on October 6. The stated reason was that
-# because international television networks ignored Brazil's policy on DS,
-# they bought the wrong times on satellite for coverage of Pope's visit.
-# This year, the ending date of DS was postponed to March 1
-# to help dealing with the shortages of electric power.
-#
-# Decree 2,317 (1997-09-04), adopted by same states.
-Rule	Brazil	1997	only	-	Oct	 6	 0:00	1:00	S
-# Decree <a href="http://pcdsh01.on.br/figuras/HV2495.JPG">2,495</a>
-# (1998-02-10)
-Rule	Brazil	1998	only	-	Mar	 1	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/figuras/Hv98.jpg">2,780</a> (1998-09-11)
-# adopted by the same states as before.
-Rule	Brazil	1998	only	-	Oct	11	 0:00	1:00	S
-Rule	Brazil	1999	only	-	Feb	21	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/figuras/HV3150.gif">3,150</a>
-# (1999-08-23) adopted by same states.
-# Decree <a href="http://pcdsh01.on.br/DecHV99.gif">3,188</a> (1999-09-30)
-# adds SE, AL, PB, PE, RN, CE, PI, MA and RR.
-Rule	Brazil	1999	only	-	Oct	 3	 0:00	1:00	S
-Rule	Brazil	2000	only	-	Feb	27	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/DEC3592.htm">3,592</a> (2000-09-06)
-# adopted by the same states as before.
-# Decree <a href="http://pcdsh01.on.br/Dec3630.jpg">3,630</a> (2000-10-13)
-# repeals DST in PE and RR, effective 2000-10-15 00:00.
-# Decree <a href="http://pcdsh01.on.br/Dec3632.jpg">3,632</a> (2000-10-17)
-# repeals DST in SE, AL, PB, RN, CE, PI and MA, effective 2000-10-22 00:00.
-# Decree <a href="http://pcdsh01.on.br/figuras/HV3916.gif">3,916</a>
-# (2001-09-13) reestablishes DST in AL, CE, MA, PB, PE, PI, RN, SE.
-Rule	Brazil	2000	2001	-	Oct	Sun>=8	 0:00	1:00	S
-Rule	Brazil	2001	2006	-	Feb	Sun>=15	 0:00	0	-
-# Decree 4,399 (2002-10-01) repeals DST in AL, CE, MA, PB, PE, PI, RN, SE.
-# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm">4,399</a>
-Rule	Brazil	2002	only	-	Nov	 3	 0:00	1:00	S
-# Decree 4,844 (2003-09-24; corrected 2003-09-26) repeals DST in BA, MT, TO.
-# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm">4,844</a>
-Rule	Brazil	2003	only	-	Oct	19	 0:00	1:00	S
-# Decree 5,223 (2004-10-01) reestablishes DST in MT.
-# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm">5,223</a>
-Rule	Brazil	2004	only	-	Nov	 2	 0:00	1:00	S
-# Decree <a href="http://pcdsh01.on.br/DecHV5539.gif">5,539</a> (2005-09-19),
-# adopted by the same states as before.
-Rule	Brazil	2005	only	-	Oct	16	 0:00	1:00	S
-# Decree <a href="http://pcdsh01.on.br/DecHV5920.gif">5,920</a> (2006-10-03),
-# adopted by the same states as before.
-Rule	Brazil	2006	only	-	Nov	 5	 0:00	1:00	S
-Rule	Brazil	2007	only	-	Feb	25	 0:00	0	-
-# Decree <a href="http://pcdsh01.on.br/DecHV6212.gif">6,212</a> (2007-09-26),
-# adopted by the same states as before.
-Rule	Brazil	2007	only	-	Oct	Sun>=8	 0:00	1:00	S
-# From Frederico A. C. Neves (2008-09-10):
-# Acording to this decree
-# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm">
-# http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm
-# </a>
-# [t]he DST period in Brazil now on will be from the 3rd Oct Sunday to the
-# 3rd Feb Sunday. There is an exception on the return date when this is
-# the Carnival Sunday then the return date will be the next Sunday...
-Rule	Brazil	2008	max	-	Oct	Sun>=15	0:00	1:00	S
-Rule	Brazil	2008	2011	-	Feb	Sun>=15	0:00	0	-
-Rule	Brazil	2012	only	-	Feb	Sun>=22	0:00	0	-
-Rule	Brazil	2013	2014	-	Feb	Sun>=15	0:00	0	-
-Rule	Brazil	2015	only	-	Feb	Sun>=22	0:00	0	-
-Rule	Brazil	2016	2022	-	Feb	Sun>=15	0:00	0	-
-Rule	Brazil	2023	only	-	Feb	Sun>=22	0:00	0	-
-Rule	Brazil	2024	2025	-	Feb	Sun>=15	0:00	0	-
-Rule	Brazil	2026	only	-	Feb	Sun>=22	0:00	0	-
-Rule	Brazil	2027	2033	-	Feb	Sun>=15	0:00	0	-
-Rule	Brazil	2034	only	-	Feb	Sun>=22	0:00	0	-
-Rule	Brazil	2035	2036	-	Feb	Sun>=15	0:00	0	-
-Rule	Brazil	2037	only	-	Feb	Sun>=22	0:00	0	-
-# From Arthur David Olson (2008-09-29):
-# The next is wrong in some years but is better than nothing.
-Rule	Brazil	2038	max	-	Feb	Sun>=15	0:00	0	-
-
-# The latest ruleset listed above says that the following states observe DST:
-# DF, ES, GO, MG, MS, MT, PR, RJ, RS, SC, SP.
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-#
-# Fernando de Noronha (administratively part of PE)
-Zone America/Noronha	-2:09:40 -	LMT	1914
-			-2:00	Brazil	FN%sT	1990 Sep 17
-			-2:00	-	FNT	1999 Sep 30
-			-2:00	Brazil	FN%sT	2000 Oct 15
-			-2:00	-	FNT	2001 Sep 13
-			-2:00	Brazil	FN%sT	2002 Oct  1
-			-2:00	-	FNT
-# Other Atlantic islands have no permanent settlement.
-# These include Trindade and Martin Vaz (administratively part of ES),
-# Atol das Rocas (RN), and Penedos de Sao Pedro e Sao Paulo (PE).
-# Fernando de Noronha was a separate territory from 1942-09-02 to 1989-01-01;
-# it also included the Penedos.
-#
-# Amapa (AP), east Para (PA)
-# East Para includes Belem, Maraba, Serra Norte, and Sao Felix do Xingu.
-# The division between east and west Para is the river Xingu.
-# In the north a very small part from the river Javary (now Jari I guess,
-# the border with Amapa) to the Amazon, then to the Xingu.
-Zone America/Belem	-3:13:56 -	LMT	1914
-			-3:00	Brazil	BR%sT	1988 Sep 12
-			-3:00	-	BRT
-#
-# west Para (PA)
-# West Para includes Altamira, Oribidos, Prainha, Oriximina, and Santarem.
-Zone America/Santarem	-3:38:48 -	LMT	1914
-			-4:00	Brazil	AM%sT	1988 Sep 12
-			-4:00	-	AMT	2008 Jun 24 00:00
-			-3:00	-	BRT
-#
-# Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN),
-# Paraiba (PB)
-Zone America/Fortaleza	-2:34:00 -	LMT	1914
-			-3:00	Brazil	BR%sT	1990 Sep 17
-			-3:00	-	BRT	1999 Sep 30
-			-3:00	Brazil	BR%sT	2000 Oct 22
-			-3:00	-	BRT	2001 Sep 13
-			-3:00	Brazil	BR%sT	2002 Oct  1
-			-3:00	-	BRT
-#
-# Pernambuco (PE) (except Atlantic islands)
-Zone America/Recife	-2:19:36 -	LMT	1914
-			-3:00	Brazil	BR%sT	1990 Sep 17
-			-3:00	-	BRT	1999 Sep 30
-			-3:00	Brazil	BR%sT	2000 Oct 15
-			-3:00	-	BRT	2001 Sep 13
-			-3:00	Brazil	BR%sT	2002 Oct  1
-			-3:00	-	BRT
-#
-# Tocantins (TO)
-Zone America/Araguaina	-3:12:48 -	LMT	1914
-			-3:00	Brazil	BR%sT	1990 Sep 17
-			-3:00	-	BRT	1995 Sep 14
-			-3:00	Brazil	BR%sT	2003 Sep 24
-			-3:00	-	BRT
-#
-# Alagoas (AL), Sergipe (SE)
-Zone America/Maceio	-2:22:52 -	LMT	1914
-			-3:00	Brazil	BR%sT	1990 Sep 17
-			-3:00	-	BRT	1995 Oct 13
-			-3:00	Brazil	BR%sT	1996 Sep  4
-			-3:00	-	BRT	1999 Sep 30
-			-3:00	Brazil	BR%sT	2000 Oct 22
-			-3:00	-	BRT	2001 Sep 13
-			-3:00	Brazil	BR%sT	2002 Oct  1
-			-3:00	-	BRT
-#
-# Bahia (BA)
-# There are too many Salvadors elsewhere, so use America/Bahia instead
-# of America/Salvador.
-Zone America/Bahia	-2:34:04 -	LMT	1914
-			-3:00	Brazil	BR%sT	2003 Sep 24
-			-3:00	-	BRT
-#
-# Goias (GO), Distrito Federal (DF), Minas Gerais (MG),
-# Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR),
-# Santa Catarina (SC), Rio Grande do Sul (RS)
-Zone America/Sao_Paulo	-3:06:28 -	LMT	1914
-			-3:00	Brazil	BR%sT	1963 Oct 23 00:00
-			-3:00	1:00	BRST	1964
-			-3:00	Brazil	BR%sT
-#
-# Mato Grosso do Sul (MS)
-Zone America/Campo_Grande -3:38:28 -	LMT	1914
-			-4:00	Brazil	AM%sT
-#
-# Mato Grosso (MT)
-Zone America/Cuiaba	-3:44:20 -	LMT	1914
-			-4:00	Brazil	AM%sT	2003 Sep 24
-			-4:00	-	AMT	2004 Oct  1
-			-4:00	Brazil	AM%sT
-#
-# Rondonia (RO)
-Zone America/Porto_Velho -4:15:36 -	LMT	1914
-			-4:00	Brazil	AM%sT	1988 Sep 12
-			-4:00	-	AMT
-#
-# Roraima (RR)
-Zone America/Boa_Vista	-4:02:40 -	LMT	1914
-			-4:00	Brazil	AM%sT	1988 Sep 12
-			-4:00	-	AMT	1999 Sep 30
-			-4:00	Brazil	AM%sT	2000 Oct 15
-			-4:00	-	AMT
-#
-# east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto
-# The great circle line from Tabatinga to Porto Acre divides
-# east from west Amazonas.
-Zone America/Manaus	-4:00:04 -	LMT	1914
-			-4:00	Brazil	AM%sT	1988 Sep 12
-			-4:00	-	AMT	1993 Sep 28
-			-4:00	Brazil	AM%sT	1994 Sep 22
-			-4:00	-	AMT
-#
-# west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
-#	Eirunepe, Envira, Ipixuna
-Zone America/Eirunepe	-4:39:28 -	LMT	1914
-			-5:00	Brazil	AC%sT	1988 Sep 12
-			-5:00	-	ACT	1993 Sep 28
-			-5:00	Brazil	AC%sT	1994 Sep 22
-			-5:00	-	ACT	2008 Jun 24 00:00
-			-4:00	-	AMT
-#
-# Acre (AC)
-Zone America/Rio_Branco	-4:31:12 -	LMT	1914
-			-5:00	Brazil	AC%sT	1988 Sep 12
-			-5:00	-	ACT	2008 Jun 24 00:00
-			-4:00	-	AMT
-
-# Chile
-
-# From Eduardo Krell (1995-10-19):
-# The law says to switch to DST at midnight [24:00] on the second SATURDAY
-# of October....  The law is the same for March and October.
-# (1998-09-29):
-# Because of the drought this year, the government decided to go into
-# DST earlier (saturday 9/26 at 24:00). This is a one-time change only ...
-# (unless there's another dry season next year, I guess).
-
-# From Julio I. Pacheco Troncoso (1999-03-18):
-# Because of the same drought, the government decided to end DST later,
-# on April 3, (one-time change).
-
-# From Oscar van Vlijmen (2006-10-08):
-# http://www.horaoficial.cl/cambio.htm
-
-# From Jesper Norgaard Welen (2006-10-08):
-# I think that there are some obvious mistakes in the suggested link
-# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
-# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
-# (they should have been 1990-09-15 and 1990-09-16 respectively), but
-# anyhow it clears up some doubts too.
-
-# From Paul Eggert (2006-12-27):
-# The following data for Chile and America/Santiago are from
-# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
-# Jesper Norgaard Welen.  The data for Pacific/Easter are from Shanks
-# & Pottenger, except with DST transitions after 1932 cloned from
-# America/Santiago.  The pre-1980 Pacific/Easter data are dubious,
-# but we have no other source.
-
-# From German Poo-Caaman~o (2008-03-03):
-# Due to drought, Chile extends Daylight Time in three weeks.  This
-# is one-time change (Saturday 3/29 at 24:00 for America/Santiago
-# and Saturday 3/29 at 22:00 for Pacific/Easter)
-# The Supreme Decree is located at 
-# <a href="http://www.shoa.cl/servicios/supremo316.pdf">
-# http://www.shoa.cl/servicios/supremo316.pdf
-# </a>
-# and the instructions for 2008 are located in:
-# <a href="http://www.horaoficial.cl/cambio.htm">
-# http://www.horaoficial.cl/cambio.htm
-# </a>.
-
-# From Jose Miguel Garrido (2008-03-05):
-# ...
-# You could see the announces of the change on 
-# <a href="http://www.shoa.cl/noticias/2008/04hora/hora.htm">
-# http://www.shoa.cl/noticias/2008/04hora/hora.htm
-# </a>.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Chile	1927	1932	-	Sep	 1	0:00	1:00	S
-Rule	Chile	1928	1932	-	Apr	 1	0:00	0	-
-Rule	Chile	1942	only	-	Jun	 1	4:00u	0	-
-Rule	Chile	1942	only	-	Aug	 1	5:00u	1:00	S
-Rule	Chile	1946	only	-	Jul	15	4:00u	1:00	S
-Rule	Chile	1946	only	-	Sep	 1	3:00u	0:00	-
-Rule	Chile	1947	only	-	Apr	 1	4:00u	0	-
-Rule	Chile	1968	only	-	Nov	 3	4:00u	1:00	S
-Rule	Chile	1969	only	-	Mar	30	3:00u	0	-
-Rule	Chile	1969	only	-	Nov	23	4:00u	1:00	S
-Rule	Chile	1970	only	-	Mar	29	3:00u	0	-
-Rule	Chile	1971	only	-	Mar	14	3:00u	0	-
-Rule	Chile	1970	1972	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	Chile	1972	1986	-	Mar	Sun>=9	3:00u	0	-
-Rule	Chile	1973	only	-	Sep	30	4:00u	1:00	S
-Rule	Chile	1974	1987	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	Chile	1987	only	-	Apr	12	3:00u	0	-
-Rule	Chile	1988	1989	-	Mar	Sun>=9	3:00u	0	-
-Rule	Chile	1988	only	-	Oct	Sun>=1	4:00u	1:00	S
-Rule	Chile	1989	only	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	Chile	1990	only	-	Mar	18	3:00u	0	-
-Rule	Chile	1990	only	-	Sep	16	4:00u	1:00	S
-Rule	Chile	1991	1996	-	Mar	Sun>=9	3:00u	0	-
-Rule	Chile	1991	1997	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	Chile	1997	only	-	Mar	30	3:00u	0	-
-Rule	Chile	1998	only	-	Mar	Sun>=9	3:00u	0	-
-Rule	Chile	1998	only	-	Sep	27	4:00u	1:00	S
-Rule	Chile	1999	only	-	Apr	 4	3:00u	0	-
-Rule	Chile	1999	max	-	Oct	Sun>=9	4:00u	1:00	S
-Rule	Chile	2000	2007	-	Mar	Sun>=9	3:00u	0	-
-# N.B.: the end of March 29 in Chile is March 30 in Universal time,
-# which is used below in specifying the transition.
-Rule	Chile	2008	only	-	Mar	30	3:00u	0	-
-Rule	Chile	2009	max	-	Mar	Sun>=9	3:00u	0	-
-# IATA SSIM anomalies: (1992-02) says 1992-03-14;
-# (1996-09) says 1998-03-08.  Ignore these.
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Santiago	-4:42:46 -	LMT	1890
-			-4:42:46 -	SMT	1910 	    # Santiago Mean Time
-			-5:00	-	CLT	1916 Jul  1 # Chile Time
-			-4:42:46 -	SMT	1918 Sep  1 # Santiago Mean Time
-			-4:00	-	CLT	1919 Jul  1 # Chile Time
-			-4:42:46 -	SMT	1927 Sep  1 # Santiago Mean Time
-			-5:00	Chile	CL%sT	1947 May 22 # Chile Time
-			-4:00	Chile	CL%sT
-Zone Pacific/Easter	-7:17:44 -	LMT	1890
-			-7:17:28 -	EMT	1932 Sep    # Easter Mean Time
-			-7:00	Chile	EAS%sT	1982 Mar 13 21:00 # Easter I Time
-			-6:00	Chile	EAS%sT
-#
-# Sala y Gomez Island is like Pacific/Easter.
-# Other Chilean locations, including Juan Fernandez Is, San Ambrosio,
-# San Felix, and Antarctic bases, are like America/Santiago.
-
-# Colombia
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	CO	1992	only	-	May	 3	0:00	1:00	S
-Rule	CO	1993	only	-	Apr	 4	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Bogota	-4:56:20 -	LMT	1884 Mar 13
-			-4:56:20 -	BMT	1914 Nov 23 # Bogota Mean Time
-			-5:00	CO	CO%sT	# Colombia Time
-# Malpelo, Providencia, San Andres
-# no information; probably like America/Bogota
-
-# Curacao
-#
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that The Bottom and Philipsburg have been at
-# -4:00 since standard time was introduced on 1912-03-02; and that
-# Kralendijk and Rincon used Kralendijk Mean Time (-4:33:08) from
-# 1912-02-02 to 1965-01-01.  The former is dubious, since S&P also say
-# Saba Island has been like Curacao.
-# This all predates our 1970 cutoff, though.
-#
-# By July 2007 Curacao and St Maarten are planned to become
-# associated states within the Netherlands, much like Aruba;
-# Bonaire, Saba and St Eustatius would become directly part of the
-# Netherlands as Kingdom Islands.  This won't affect their time zones
-# though, as far as we know.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Curacao	-4:35:44 -	LMT	1912 Feb 12	# Willemstad
-			-4:30	-	ANT	1965 # Netherlands Antilles Time
-			-4:00	-	AST
-
-# Ecuador
-#
-# From Paul Eggert (2007-03-04):
-# Apparently Ecuador had a failed experiment with DST in 1992.
-# <http://midena.gov.ec/content/view/1261/208/> (2007-02-27) and
-# <http://www.hoy.com.ec/NoticiaNue.asp?row_id=249856> (2006-11-06) both
-# talk about "hora Sixto".  Leave this alone for now, as we have no data.
-#
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Guayaquil	-5:19:20 -	LMT	1890
-			-5:14:00 -	QMT	1931 # Quito Mean Time
-			-5:00	-	ECT	     # Ecuador Time
-Zone Pacific/Galapagos	-5:58:24 -	LMT	1931 # Puerto Baquerizo Moreno
-			-5:00	-	ECT	1986
-			-6:00	-	GALT	     # Galapagos Time
-
-# Falklands
-
-# From Paul Eggert (2006-03-22):
-# Between 1990 and 2000 inclusive, Shanks & Pottenger and the IATA agree except
-# the IATA gives 1996-09-08.  Go with Shanks & Pottenger.
-
-# From Falkland Islands Government Office, London (2001-01-22)
-# via Jesper Norgaard:
-# ... the clocks revert back to Local Mean Time at 2 am on Sunday 15
-# April 2001 and advance one hour to summer time at 2 am on Sunday 2
-# September.  It is anticipated that the clocks will revert back at 2
-# am on Sunday 21 April 2002 and advance to summer time at 2 am on
-# Sunday 1 September.
-
-# From Rives McDow (2001-02-13):
-#
-# I have communicated several times with people there, and the last
-# time I had communications that was helpful was in 1998.  Here is
-# what was said then:
-#
-# "The general rule was that Stanley used daylight saving and the Camp
-# did not. However for various reasons many people in the Camp have
-# started to use daylight saving (known locally as 'Stanley Time')
-# There is no rule as to who uses daylight saving - it is a matter of
-# personal choice and so it is impossible to draw a map showing who
-# uses it and who does not. Any list would be out of date as soon as
-# it was produced. This year daylight saving ended on April 18/19th
-# and started again on September 12/13th.  I do not know what the rule
-# is, but can find out if you like.  We do not change at the same time
-# as UK or Chile."
-#
-# I did have in my notes that the rule was "Second Saturday in Sep at
-# 0:00 until third Saturday in Apr at 0:00".  I think that this does
-# not agree in some cases with Shanks; is this true?
-#
-# Also, there is no mention in the list that some areas in the
-# Falklands do not use DST.  I have found in my communications there
-# that these areas are on the western half of East Falkland and all of
-# West Falkland.  Stanley is the only place that consistently observes
-# DST.  Again, as in other places in the world, the farmers don't like
-# it.  West Falkland is almost entirely sheep farmers.
-#
-# I know one lady there that keeps a list of which farm keeps DST and
-# which doesn't each year.  She runs a shop in Stanley, and says that
-# the list changes each year.  She uses it to communicate to her
-# customers, catching them when they are home for lunch or dinner.
-
-# From Paul Eggert (2001-03-05):
-# For now, we'll just record the time in Stanley, since we have no
-# better info.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Falk	1937	1938	-	Sep	lastSun	0:00	1:00	S
-Rule	Falk	1938	1942	-	Mar	Sun>=19	0:00	0	-
-Rule	Falk	1939	only	-	Oct	1	0:00	1:00	S
-Rule	Falk	1940	1942	-	Sep	lastSun	0:00	1:00	S
-Rule	Falk	1943	only	-	Jan	1	0:00	0	-
-Rule	Falk	1983	only	-	Sep	lastSun	0:00	1:00	S
-Rule	Falk	1984	1985	-	Apr	lastSun	0:00	0	-
-Rule	Falk	1984	only	-	Sep	16	0:00	1:00	S
-Rule	Falk	1985	2000	-	Sep	Sun>=9	0:00	1:00	S
-Rule	Falk	1986	2000	-	Apr	Sun>=16	0:00	0	-
-Rule	Falk	2001	max	-	Apr	Sun>=15	2:00	0	-
-Rule	Falk	2001	max	-	Sep	Sun>=1	2:00	1:00	S
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Atlantic/Stanley	-3:51:24 -	LMT	1890
-			-3:51:24 -	SMT	1912 Mar 12  # Stanley Mean Time
-			-4:00	Falk	FK%sT	1983 May     # Falkland Is Time
-			-3:00	Falk	FK%sT	1985 Sep 15
-			-4:00	Falk	FK%sT
-
-# French Guiana
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Cayenne	-3:29:20 -	LMT	1911 Jul
-			-4:00	-	GFT	1967 Oct # French Guiana Time
-			-3:00	-	GFT
-
-# Guyana
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Guyana	-3:52:40 -	LMT	1915 Mar	# Georgetown
-			-3:45	-	GBGT	1966 May 26 # Br Guiana Time
-			-3:45	-	GYT	1975 Jul 31 # Guyana Time
-			-3:00	-	GYT	1991
-# IATA SSIM (1996-06) says -4:00.  Assume a 1991 switch.
-			-4:00	-	GYT
-
-# Paraguay
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger say that spring transitions are from 01:00 -> 02:00,
-# and autumn transitions are from 00:00 -> 23:00.  Go with pre-1999
-# editions of Shanks, and with the IATA, who say transitions occur at 00:00.
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Para	1975	1988	-	Oct	 1	0:00	1:00	S
-Rule	Para	1975	1978	-	Mar	 1	0:00	0	-
-Rule	Para	1979	1991	-	Apr	 1	0:00	0	-
-Rule	Para	1989	only	-	Oct	22	0:00	1:00	S
-Rule	Para	1990	only	-	Oct	 1	0:00	1:00	S
-Rule	Para	1991	only	-	Oct	 6	0:00	1:00	S
-Rule	Para	1992	only	-	Mar	 1	0:00	0	-
-Rule	Para	1992	only	-	Oct	 5	0:00	1:00	S
-Rule	Para	1993	only	-	Mar	31	0:00	0	-
-Rule	Para	1993	1995	-	Oct	 1	0:00	1:00	S
-Rule	Para	1994	1995	-	Feb	lastSun	0:00	0	-
-Rule	Para	1996	only	-	Mar	 1	0:00	0	-
-# IATA SSIM (2000-02) says 1999-10-10; ignore this for now.
-# From Steffen Thorsen (2000-10-02):
-# I have three independent reports that Paraguay changed to DST this Sunday
-# (10-01).
-#
-# Translated by Gwillim Law (2001-02-27) from
-# <a href="http://www.diarionoticias.com.py/011000/nacional/naciona1.htm">
-# Noticias, a daily paper in Asuncion, Paraguay (2000-10-01)
-# </a>:
-# Starting at 0:00 today, the clock will be set forward 60 minutes, in
-# fulfillment of Decree No. 7,273 of the Executive Power....  The time change
-# system has been operating for several years.  Formerly there was a separate
-# decree each year; the new law has the same effect, but permanently.  Every
-# year, the time will change on the first Sunday of October; likewise, the
-# clock will be set back on the first Sunday of March.
-#
-Rule	Para	1996	2001	-	Oct	Sun>=1	0:00	1:00	S
-# IATA SSIM (1997-09) says Mar 1; go with Shanks & Pottenger.
-Rule	Para	1997	only	-	Feb	lastSun	0:00	0	-
-# Shanks & Pottenger say 1999-02-28; IATA SSIM (1999-02) says 1999-02-27, but
-# (1999-09) reports no date; go with above sources and Gerd Knops (2001-02-27).
-Rule	Para	1998	2001	-	Mar	Sun>=1	0:00	0	-
-# From Rives McDow (2002-02-28):
-# A decree was issued in Paraguay (no. 16350) on 2002-02-26 that changed the
-# dst method to be from the first Sunday in September to the first Sunday in
-# April.
-Rule	Para	2002	2004	-	Apr	Sun>=1	0:00	0	-
-Rule	Para	2002	2003	-	Sep	Sun>=1	0:00	1:00	S
-#
-# From Jesper Norgaard Welen (2005-01-02):
-# There are several sources that claim that Paraguay made
-# a timezone rule change in autumn 2004.
-# From Steffen Thorsen (2005-01-05):
-# Decree 1,867 (2004-03-05)
-# From Carlos Raul Perasso via Jesper Norgaard Welen (2006-10-13)
-# <http://www.presidencia.gov.py/decretos/D1867.pdf>
-Rule	Para	2004	max	-	Oct	Sun>=15	0:00	1:00	S
-Rule	Para	2005	max	-	Mar	Sun>=8	0:00	0	-
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Asuncion	-3:50:40 -	LMT	1890
-			-3:50:40 -	AMT	1931 Oct 10 # Asuncion Mean Time
-			-4:00	-	PYT	1972 Oct # Paraguay Time
-			-3:00	-	PYT	1974 Apr
-			-4:00	Para	PY%sT
-
-# Peru
-#
-# <a href="news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net">
-# From Evelyn C. Leeper via Mark Brader (2003-10-26):</a>
-# When we were in Peru in 1985-1986, they apparently switched over
-# sometime between December 29 and January 3 while we were on the Amazon.
-#
-# From Paul Eggert (2006-03-22):
-# Shanks & Pottenger don't have this transition.  Assume 1986 was like 1987.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	Peru	1938	only	-	Jan	 1	0:00	1:00	S
-Rule	Peru	1938	only	-	Apr	 1	0:00	0	-
-Rule	Peru	1938	1939	-	Sep	lastSun	0:00	1:00	S
-Rule	Peru	1939	1940	-	Mar	Sun>=24	0:00	0	-
-Rule	Peru	1986	1987	-	Jan	 1	0:00	1:00	S
-Rule	Peru	1986	1987	-	Apr	 1	0:00	0	-
-Rule	Peru	1990	only	-	Jan	 1	0:00	1:00	S
-Rule	Peru	1990	only	-	Apr	 1	0:00	0	-
-# IATA is ambiguous for 1993/1995; go with Shanks & Pottenger.
-Rule	Peru	1994	only	-	Jan	 1	0:00	1:00	S
-Rule	Peru	1994	only	-	Apr	 1	0:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Lima	-5:08:12 -	LMT	1890
-			-5:08:36 -	LMT	1908 Jul 28 # Lima Mean Time?
-			-5:00	Peru	PE%sT	# Peru Time
-
-# South Georgia
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone Atlantic/South_Georgia -2:26:08 -	LMT	1890		# Grytviken
-			-2:00	-	GST	# South Georgia Time
-
-# South Sandwich Is
-# uninhabited; scientific personnel have wintered
-
-# Suriname
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Paramaribo	-3:40:40 -	LMT	1911
-			-3:40:52 -	PMT	1935     # Paramaribo Mean Time
-			-3:40:36 -	PMT	1945 Oct # The capital moved?
-			-3:30	-	NEGT	1975 Nov 20 # Dutch Guiana Time
-			-3:30	-	SRT	1984 Oct # Suriname Time
-			-3:00	-	SRT
-
-# Trinidad and Tobago
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Port_of_Spain -4:06:04 -	LMT	1912 Mar 2
-			-4:00	-	AST
-
-# Uruguay
-# From Paul Eggert (1993-11-18):
-# Uruguay wins the prize for the strangest peacetime manipulation of the rules.
-# From Shanks & Pottenger:
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-# Whitman gives 1923 Oct 1; go with Shanks & Pottenger.
-Rule	Uruguay	1923	only	-	Oct	 2	 0:00	0:30	HS
-Rule	Uruguay	1924	1926	-	Apr	 1	 0:00	0	-
-Rule	Uruguay	1924	1925	-	Oct	 1	 0:00	0:30	HS
-Rule	Uruguay	1933	1935	-	Oct	lastSun	 0:00	0:30	HS
-# Shanks & Pottenger give 1935 Apr 1 0:00 & 1936 Mar 30 0:00; go with Whitman.
-Rule	Uruguay	1934	1936	-	Mar	Sat>=25	23:30s	0	-
-Rule	Uruguay	1936	only	-	Nov	 1	 0:00	0:30	HS
-Rule	Uruguay	1937	1941	-	Mar	lastSun	 0:00	0	-
-# Whitman gives 1937 Oct 3; go with Shanks & Pottenger.
-Rule	Uruguay	1937	1940	-	Oct	lastSun	 0:00	0:30	HS
-# Whitman gives 1941 Oct 24 - 1942 Mar 27, 1942 Dec 14 - 1943 Apr 13,
-# and 1943 Apr 13 ``to present time''; go with Shanks & Pottenger.
-Rule	Uruguay	1941	only	-	Aug	 1	 0:00	0:30	HS
-Rule	Uruguay	1942	only	-	Jan	 1	 0:00	0	-
-Rule	Uruguay	1942	only	-	Dec	14	 0:00	1:00	S
-Rule	Uruguay	1943	only	-	Mar	14	 0:00	0	-
-Rule	Uruguay	1959	only	-	May	24	 0:00	1:00	S
-Rule	Uruguay	1959	only	-	Nov	15	 0:00	0	-
-Rule	Uruguay	1960	only	-	Jan	17	 0:00	1:00	S
-Rule	Uruguay	1960	only	-	Mar	 6	 0:00	0	-
-Rule	Uruguay	1965	1967	-	Apr	Sun>=1	 0:00	1:00	S
-Rule	Uruguay	1965	only	-	Sep	26	 0:00	0	-
-Rule	Uruguay	1966	1967	-	Oct	31	 0:00	0	-
-Rule	Uruguay	1968	1970	-	May	27	 0:00	0:30	HS
-Rule	Uruguay	1968	1970	-	Dec	 2	 0:00	0	-
-Rule	Uruguay	1972	only	-	Apr	24	 0:00	1:00	S
-Rule	Uruguay	1972	only	-	Aug	15	 0:00	0	-
-Rule	Uruguay	1974	only	-	Mar	10	 0:00	0:30	HS
-Rule	Uruguay	1974	only	-	Dec	22	 0:00	1:00	S
-Rule	Uruguay	1976	only	-	Oct	 1	 0:00	0	-
-Rule	Uruguay	1977	only	-	Dec	 4	 0:00	1:00	S
-Rule	Uruguay	1978	only	-	Apr	 1	 0:00	0	-
-Rule	Uruguay	1979	only	-	Oct	 1	 0:00	1:00	S
-Rule	Uruguay	1980	only	-	May	 1	 0:00	0	-
-Rule	Uruguay	1987	only	-	Dec	14	 0:00	1:00	S
-Rule	Uruguay	1988	only	-	Mar	14	 0:00	0	-
-Rule	Uruguay	1988	only	-	Dec	11	 0:00	1:00	S
-Rule	Uruguay	1989	only	-	Mar	12	 0:00	0	-
-Rule	Uruguay	1989	only	-	Oct	29	 0:00	1:00	S
-# Shanks & Pottenger say no DST was observed in 1990/1 and 1991/2,
-# and that 1992/3's DST was from 10-25 to 03-01.  Go with IATA.
-Rule	Uruguay	1990	1992	-	Mar	Sun>=1	 0:00	0	-
-Rule	Uruguay	1990	1991	-	Oct	Sun>=21	 0:00	1:00	S
-Rule	Uruguay	1992	only	-	Oct	18	 0:00	1:00	S
-Rule	Uruguay	1993	only	-	Feb	28	 0:00	0	-
-# From Eduardo Cota (2004-09-20):
-# The uruguayan government has decreed a change in the local time....
-# http://www.presidencia.gub.uy/decretos/2004091502.htm
-Rule	Uruguay	2004	only	-	Sep	19	 0:00	1:00	S
-# From Steffen Thorsen (2005-03-11):
-# Uruguay's DST was scheduled to end on Sunday, 2005-03-13, but in order to
-# save energy ... it was postponed two weeks....
-# http://www.presidencia.gub.uy/_Web/noticias/2005/03/2005031005.htm
-Rule	Uruguay	2005	only	-	Mar	27	 2:00	0	-
-# From Eduardo Cota (2005-09-27):
-# http://www.presidencia.gub.uy/_Web/decretos/2005/09/CM%20119_09%2009%202005_00001.PDF
-# This means that from 2005-10-09 at 02:00 local time, until 2006-03-12 at
-# 02:00 local time, official time in Uruguay will be at GMT -2.
-Rule	Uruguay	2005	only	-	Oct	 9	 2:00	1:00	S
-Rule	Uruguay	2006	only	-	Mar	12	 2:00	0	-
-# From Jesper Norgaard Welen (2006-09-06):
-# http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
-Rule	Uruguay	2006	max	-	Oct	Sun>=1	 2:00	1:00	S
-Rule	Uruguay	2007	max	-	Mar	Sun>=8	 2:00	0	-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone America/Montevideo	-3:44:44 -	LMT	1898 Jun 28
-			-3:44:44 -	MMT	1920 May  1	# Montevideo MT
-			-3:30	Uruguay	UY%sT	1942 Dec 14	# Uruguay Time
-			-3:00	Uruguay	UY%sT
-
-# Venezuela
-#
-# From John Stainforth (2007-11-28):
-# ... the change for Venezuela originally expected for 2007-12-31 has
-# been brought forward to 2007-12-09.  The official announcement was
-# published today in the "Gaceta Oficial de la Republica Bolivariana
-# de Venezuela, numero 38.819" (official document for all laws or
-# resolution publication)
-# http://www.globovision.com/news.php?nid=72208
-
-# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
-Zone	America/Caracas	-4:27:44 -	LMT	1890
-			-4:27:40 -	CMT	1912 Feb 12 # Caracas Mean Time?
-			-4:30	-	VET	1965	     # Venezuela Time
-			-4:00	-	VET	2007 Dec  9 03:00
-			-4:30	-	VET
diff --git a/tools/zoneinfo/tzdata2008h/systemv b/tools/zoneinfo/tzdata2008h/systemv
deleted file mode 100644
index 6cf9645..0000000
--- a/tools/zoneinfo/tzdata2008h/systemv
+++ /dev/null
@@ -1,36 +0,0 @@
-# @(#)systemv	8.1
-
-# Old rules, should the need arise.
-# No attempt is made to handle Newfoundland, since it cannot be expressed
-# using the System V "TZ" scheme (half-hour offset), or anything outside
-# North America (no support for non-standard DST start/end dates), nor
-# the changes in the DST rules in the US after 1976 (which occurred after
-# the old rules were written).
-#
-# If you need the old rules, uncomment ## lines.
-# Compile this *without* leap second correction for true conformance.
-
-# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
-Rule	SystemV	min	1973	-	Apr	lastSun	2:00	1:00	D
-Rule	SystemV	min	1973	-	Oct	lastSun	2:00	0	S
-Rule	SystemV	1974	only	-	Jan	6	2:00	1:00	D
-Rule	SystemV	1974	only	-	Nov	lastSun	2:00	0	S
-Rule	SystemV	1975	only	-	Feb	23	2:00	1:00	D
-Rule	SystemV	1975	only	-	Oct	lastSun	2:00	0	S
-Rule	SystemV	1976	max	-	Apr	lastSun	2:00	1:00	D
-Rule	SystemV	1976	max	-	Oct	lastSun	2:00	0	S
-
-# Zone	NAME		GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
-## Zone	SystemV/AST4ADT	-4:00	SystemV		A%sT
-## Zone	SystemV/EST5EDT	-5:00	SystemV		E%sT
-## Zone	SystemV/CST6CDT	-6:00	SystemV		C%sT
-## Zone	SystemV/MST7MDT	-7:00	SystemV		M%sT
-## Zone	SystemV/PST8PDT	-8:00	SystemV		P%sT
-## Zone	SystemV/YST9YDT	-9:00	SystemV		Y%sT
-## Zone	SystemV/AST4	-4:00	-		AST
-## Zone	SystemV/EST5	-5:00	-		EST
-## Zone	SystemV/CST6	-6:00	-		CST
-## Zone	SystemV/MST7	-7:00	-		MST
-## Zone	SystemV/PST8	-8:00	-		PST
-## Zone	SystemV/YST9	-9:00	-		YST
-## Zone	SystemV/HST10	-10:00	-		HST
diff --git a/tools/zoneinfo/tzdata2008h/zone.tab b/tools/zoneinfo/tzdata2008h/zone.tab
deleted file mode 100644
index ca9c76b..0000000
--- a/tools/zoneinfo/tzdata2008h/zone.tab
+++ /dev/null
@@ -1,424 +0,0 @@
-# @(#)zone.tab	8.19
-#
-# TZ zone descriptions
-#
-# From Paul Eggert (1996-08-05):
-#
-# This file contains a table with the following columns:
-# 1.  ISO 3166 2-character country code.  See the file `iso3166.tab'.
-# 2.  Latitude and longitude of the zone's principal location
-#     in ISO 6709 sign-degrees-minutes-seconds format,
-#     either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
-#     first latitude (+ is north), then longitude (+ is east).
-# 3.  Zone name used in value of TZ environment variable.
-# 4.  Comments; present if and only if the country has multiple rows.
-#
-# Columns are separated by a single tab.
-# The table is sorted first by country, then an order within the country that
-# (1) makes some geographical sense, and
-# (2) puts the most populous zones first, where that does not contradict (1).
-#
-# Lines beginning with `#' are comments.
-#
-#country-
-#code	coordinates	TZ			comments
-AD	+4230+00131	Europe/Andorra
-AE	+2518+05518	Asia/Dubai
-AF	+3431+06912	Asia/Kabul
-AG	+1703-06148	America/Antigua
-AI	+1812-06304	America/Anguilla
-AL	+4120+01950	Europe/Tirane
-AM	+4011+04430	Asia/Yerevan
-AN	+1211-06900	America/Curacao
-AO	-0848+01314	Africa/Luanda
-AQ	-7750+16636	Antarctica/McMurdo	McMurdo Station, Ross Island
-AQ	-9000+00000	Antarctica/South_Pole	Amundsen-Scott Station, South Pole
-AQ	-6734-06808	Antarctica/Rothera	Rothera Station, Adelaide Island
-AQ	-6448-06406	Antarctica/Palmer	Palmer Station, Anvers Island
-AQ	-6736+06253	Antarctica/Mawson	Mawson Station, Holme Bay
-AQ	-6835+07758	Antarctica/Davis	Davis Station, Vestfold Hills
-AQ	-6617+11031	Antarctica/Casey	Casey Station, Bailey Peninsula
-AQ	-7824+10654	Antarctica/Vostok	Vostok Station, S Magnetic Pole
-AQ	-6640+14001	Antarctica/DumontDUrville	Dumont-d'Urville Station, Terre Adelie
-AQ	-690022+0393524	Antarctica/Syowa	Syowa Station, E Ongul I
-AR	-3436-05827	America/Argentina/Buenos_Aires	Buenos Aires (BA, CF)
-AR	-3124-06411	America/Argentina/Cordoba	most locations (CB, CC, CN, ER, FM, LP, MN, NQ, RN, SA, SE, SF)
-AR	-3319-06621	America/Argentina/San_Luis	San Luis (SL)
-AR	-2411-06518	America/Argentina/Jujuy	Jujuy (JY)
-AR	-2649-06513	America/Argentina/Tucuman	Tucuman (TM)
-AR	-2828-06547	America/Argentina/Catamarca	Catamarca (CT), Chubut (CH)
-AR	-2926-06651	America/Argentina/La_Rioja	La Rioja (LR)
-AR	-3132-06831	America/Argentina/San_Juan	San Juan (SJ)
-AR	-3253-06849	America/Argentina/Mendoza	Mendoza (MZ)
-AR	-5138-06913	America/Argentina/Rio_Gallegos	Santa Cruz (SC)
-AR	-5448-06818	America/Argentina/Ushuaia	Tierra del Fuego (TF)
-AS	-1416-17042	Pacific/Pago_Pago
-AT	+4813+01620	Europe/Vienna
-AU	-3133+15905	Australia/Lord_Howe	Lord Howe Island
-AU	-4253+14719	Australia/Hobart	Tasmania - most locations
-AU	-3956+14352	Australia/Currie	Tasmania - King Island
-AU	-3749+14458	Australia/Melbourne	Victoria
-AU	-3352+15113	Australia/Sydney	New South Wales - most locations
-AU	-3157+14127	Australia/Broken_Hill	New South Wales - Yancowinna
-AU	-2728+15302	Australia/Brisbane	Queensland - most locations
-AU	-2016+14900	Australia/Lindeman	Queensland - Holiday Islands
-AU	-3455+13835	Australia/Adelaide	South Australia
-AU	-1228+13050	Australia/Darwin	Northern Territory
-AU	-3157+11551	Australia/Perth	Western Australia - most locations
-AU	-3143+12852	Australia/Eucla	Western Australia - Eucla area
-AW	+1230-06958	America/Aruba
-AX	+6006+01957	Europe/Mariehamn
-AZ	+4023+04951	Asia/Baku
-BA	+4352+01825	Europe/Sarajevo
-BB	+1306-05937	America/Barbados
-BD	+2343+09025	Asia/Dhaka
-BE	+5050+00420	Europe/Brussels
-BF	+1222-00131	Africa/Ouagadougou
-BG	+4241+02319	Europe/Sofia
-BH	+2623+05035	Asia/Bahrain
-BI	-0323+02922	Africa/Bujumbura
-BJ	+0629+00237	Africa/Porto-Novo
-BL	+1753-06251	America/St_Barthelemy
-BM	+3217-06446	Atlantic/Bermuda
-BN	+0456+11455	Asia/Brunei
-BO	-1630-06809	America/La_Paz
-BR	-0351-03225	America/Noronha	Atlantic islands
-BR	-0127-04829	America/Belem	Amapa, E Para
-BR	-0343-03830	America/Fortaleza	NE Brazil (MA, PI, CE, RN, PB)
-BR	-0803-03454	America/Recife	Pernambuco
-BR	-0712-04812	America/Araguaina	Tocantins
-BR	-0940-03543	America/Maceio	Alagoas, Sergipe
-BR	-1259-03831	America/Bahia	Bahia
-BR	-2332-04637	America/Sao_Paulo	S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
-BR	-2027-05437	America/Campo_Grande	Mato Grosso do Sul
-BR	-1535-05605	America/Cuiaba	Mato Grosso
-BR	-0226-05452	America/Santarem	W Para
-BR	-0846-06354	America/Porto_Velho	Rondonia
-BR	+0249-06040	America/Boa_Vista	Roraima
-BR	-0308-06001	America/Manaus	E Amazonas
-BR	-0640-06952	America/Eirunepe	W Amazonas
-BR	-0958-06748	America/Rio_Branco	Acre
-BS	+2505-07721	America/Nassau
-BT	+2728+08939	Asia/Thimphu
-BW	-2545+02555	Africa/Gaborone
-BY	+5354+02734	Europe/Minsk
-BZ	+1730-08812	America/Belize
-CA	+4734-05243	America/St_Johns	Newfoundland Time, including SE Labrador
-CA	+4439-06336	America/Halifax	Atlantic Time - Nova Scotia (most places), PEI
-CA	+4612-05957	America/Glace_Bay	Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
-CA	+4606-06447	America/Moncton	Atlantic Time - New Brunswick
-CA	+5320-06025	America/Goose_Bay	Atlantic Time - Labrador - most locations
-CA	+5125-05707	America/Blanc-Sablon	Atlantic Standard Time - Quebec - Lower North Shore
-CA	+4531-07334	America/Montreal	Eastern Time - Quebec - most locations
-CA	+4339-07923	America/Toronto	Eastern Time - Ontario - most locations
-CA	+4901-08816	America/Nipigon	Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
-CA	+4823-08915	America/Thunder_Bay	Eastern Time - Thunder Bay, Ontario
-CA	+6344-06828	America/Iqaluit	Eastern Time - east Nunavut - most locations
-CA	+6608-06544	America/Pangnirtung	Eastern Time - Pangnirtung, Nunavut
-CA	+744144-0944945	America/Resolute	Eastern Time - Resolute, Nunavut
-CA	+484531-0913718	America/Atikokan	Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
-CA	+624900-0920459	America/Rankin_Inlet	Central Time - central Nunavut
-CA	+4953-09709	America/Winnipeg	Central Time - Manitoba & west Ontario
-CA	+4843-09434	America/Rainy_River	Central Time - Rainy River & Fort Frances, Ontario
-CA	+5024-10439	America/Regina	Central Standard Time - Saskatchewan - most locations
-CA	+5017-10750	America/Swift_Current	Central Standard Time - Saskatchewan - midwest
-CA	+5333-11328	America/Edmonton	Mountain Time - Alberta, east British Columbia & west Saskatchewan
-CA	+690650-1050310	America/Cambridge_Bay	Mountain Time - west Nunavut
-CA	+6227-11421	America/Yellowknife	Mountain Time - central Northwest Territories
-CA	+682059-1334300	America/Inuvik	Mountain Time - west Northwest Territories
-CA	+5946-12014	America/Dawson_Creek	Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
-CA	+4916-12307	America/Vancouver	Pacific Time - west British Columbia
-CA	+6043-13503	America/Whitehorse	Pacific Time - south Yukon
-CA	+6404-13925	America/Dawson	Pacific Time - north Yukon
-CC	-1210+09655	Indian/Cocos
-CD	-0418+01518	Africa/Kinshasa	west Dem. Rep. of Congo
-CD	-1140+02728	Africa/Lubumbashi	east Dem. Rep. of Congo
-CF	+0422+01835	Africa/Bangui
-CG	-0416+01517	Africa/Brazzaville
-CH	+4723+00832	Europe/Zurich
-CI	+0519-00402	Africa/Abidjan
-CK	-2114-15946	Pacific/Rarotonga
-CL	-3327-07040	America/Santiago	most locations
-CL	-2709-10926	Pacific/Easter	Easter Island & Sala y Gomez
-CM	+0403+00942	Africa/Douala
-CN	+3114+12128	Asia/Shanghai	east China - Beijing, Guangdong, Shanghai, etc.
-CN	+4545+12641	Asia/Harbin	Heilongjiang (except Mohe), Jilin
-CN	+2934+10635	Asia/Chongqing	central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc.
-CN	+4348+08735	Asia/Urumqi	most of Tibet & Xinjiang
-CN	+3929+07559	Asia/Kashgar	west Tibet & Xinjiang
-CO	+0436-07405	America/Bogota
-CR	+0956-08405	America/Costa_Rica
-CU	+2308-08222	America/Havana
-CV	+1455-02331	Atlantic/Cape_Verde
-CX	-1025+10543	Indian/Christmas
-CY	+3510+03322	Asia/Nicosia
-CZ	+5005+01426	Europe/Prague
-DE	+5230+01322	Europe/Berlin
-DJ	+1136+04309	Africa/Djibouti
-DK	+5540+01235	Europe/Copenhagen
-DM	+1518-06124	America/Dominica
-DO	+1828-06954	America/Santo_Domingo
-DZ	+3647+00303	Africa/Algiers
-EC	-0210-07950	America/Guayaquil	mainland
-EC	-0054-08936	Pacific/Galapagos	Galapagos Islands
-EE	+5925+02445	Europe/Tallinn
-EG	+3003+03115	Africa/Cairo
-EH	+2709-01312	Africa/El_Aaiun
-ER	+1520+03853	Africa/Asmara
-ES	+4024-00341	Europe/Madrid	mainland
-ES	+3553-00519	Africa/Ceuta	Ceuta & Melilla
-ES	+2806-01524	Atlantic/Canary	Canary Islands
-ET	+0902+03842	Africa/Addis_Ababa
-FI	+6010+02458	Europe/Helsinki
-FJ	-1808+17825	Pacific/Fiji
-FK	-5142-05751	Atlantic/Stanley
-FM	+0725+15147	Pacific/Truk	Truk (Chuuk) and Yap
-FM	+0658+15813	Pacific/Ponape	Ponape (Pohnpei)
-FM	+0519+16259	Pacific/Kosrae	Kosrae
-FO	+6201-00646	Atlantic/Faroe
-FR	+4852+00220	Europe/Paris
-GA	+0023+00927	Africa/Libreville
-GB	+513030-0000731	Europe/London
-GD	+1203-06145	America/Grenada
-GE	+4143+04449	Asia/Tbilisi
-GF	+0456-05220	America/Cayenne
-GG	+4927-00232	Europe/Guernsey
-GH	+0533-00013	Africa/Accra
-GI	+3608-00521	Europe/Gibraltar
-GL	+6411-05144	America/Godthab	most locations
-GL	+7646-01840	America/Danmarkshavn	east coast, north of Scoresbysund
-GL	+7029-02158	America/Scoresbysund	Scoresbysund / Ittoqqortoormiit
-GL	+7634-06847	America/Thule	Thule / Pituffik
-GM	+1328-01639	Africa/Banjul
-GN	+0931-01343	Africa/Conakry
-GP	+1614-06132	America/Guadeloupe
-GQ	+0345+00847	Africa/Malabo
-GR	+3758+02343	Europe/Athens
-GS	-5416-03632	Atlantic/South_Georgia
-GT	+1438-09031	America/Guatemala
-GU	+1328+14445	Pacific/Guam
-GW	+1151-01535	Africa/Bissau
-GY	+0648-05810	America/Guyana
-HK	+2217+11409	Asia/Hong_Kong
-HN	+1406-08713	America/Tegucigalpa
-HR	+4548+01558	Europe/Zagreb
-HT	+1832-07220	America/Port-au-Prince
-HU	+4730+01905	Europe/Budapest
-ID	-0610+10648	Asia/Jakarta	Java & Sumatra
-ID	-0002+10920	Asia/Pontianak	west & central Borneo
-ID	-0507+11924	Asia/Makassar	east & south Borneo, Celebes, Bali, Nusa Tengarra, west Timor
-ID	-0232+14042	Asia/Jayapura	Irian Jaya & the Moluccas
-IE	+5320-00615	Europe/Dublin
-IL	+3146+03514	Asia/Jerusalem
-IM	+5409-00428	Europe/Isle_of_Man
-IN	+2232+08822	Asia/Kolkata
-IO	-0720+07225	Indian/Chagos
-IQ	+3321+04425	Asia/Baghdad
-IR	+3540+05126	Asia/Tehran
-IS	+6409-02151	Atlantic/Reykjavik
-IT	+4154+01229	Europe/Rome
-JE	+4912-00207	Europe/Jersey
-JM	+1800-07648	America/Jamaica
-JO	+3157+03556	Asia/Amman
-JP	+353916+1394441	Asia/Tokyo
-KE	-0117+03649	Africa/Nairobi
-KG	+4254+07436	Asia/Bishkek
-KH	+1133+10455	Asia/Phnom_Penh
-KI	+0125+17300	Pacific/Tarawa	Gilbert Islands
-KI	-0308-17105	Pacific/Enderbury	Phoenix Islands
-KI	+0152-15720	Pacific/Kiritimati	Line Islands
-KM	-1141+04316	Indian/Comoro
-KN	+1718-06243	America/St_Kitts
-KP	+3901+12545	Asia/Pyongyang
-KR	+3733+12658	Asia/Seoul
-KW	+2920+04759	Asia/Kuwait
-KY	+1918-08123	America/Cayman
-KZ	+4315+07657	Asia/Almaty	most locations
-KZ	+4448+06528	Asia/Qyzylorda	Qyzylorda (Kyzylorda, Kzyl-Orda)
-KZ	+5017+05710	Asia/Aqtobe	Aqtobe (Aktobe)
-KZ	+4431+05016	Asia/Aqtau	Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
-KZ	+5113+05121	Asia/Oral	West Kazakhstan
-LA	+1758+10236	Asia/Vientiane
-LB	+3353+03530	Asia/Beirut
-LC	+1401-06100	America/St_Lucia
-LI	+4709+00931	Europe/Vaduz
-LK	+0656+07951	Asia/Colombo
-LR	+0618-01047	Africa/Monrovia
-LS	-2928+02730	Africa/Maseru
-LT	+5441+02519	Europe/Vilnius
-LU	+4936+00609	Europe/Luxembourg
-LV	+5657+02406	Europe/Riga
-LY	+3254+01311	Africa/Tripoli
-MA	+3339-00735	Africa/Casablanca
-MC	+4342+00723	Europe/Monaco
-MD	+4700+02850	Europe/Chisinau
-ME	+4226+01916	Europe/Podgorica
-MF	+1804-06305	America/Marigot
-MG	-1855+04731	Indian/Antananarivo
-MH	+0709+17112	Pacific/Majuro	most locations
-MH	+0905+16720	Pacific/Kwajalein	Kwajalein
-MK	+4159+02126	Europe/Skopje
-ML	+1239-00800	Africa/Bamako
-MM	+1647+09610	Asia/Rangoon
-MN	+4755+10653	Asia/Ulaanbaatar	most locations
-MN	+4801+09139	Asia/Hovd	Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
-MN	+4804+11430	Asia/Choibalsan	Dornod, Sukhbaatar
-MO	+2214+11335	Asia/Macau
-MP	+1512+14545	Pacific/Saipan
-MQ	+1436-06105	America/Martinique
-MR	+1806-01557	Africa/Nouakchott
-MS	+1643-06213	America/Montserrat
-MT	+3554+01431	Europe/Malta
-MU	-2010+05730	Indian/Mauritius
-MV	+0410+07330	Indian/Maldives
-MW	-1547+03500	Africa/Blantyre
-MX	+1924-09909	America/Mexico_City	Central Time - most locations
-MX	+2105-08646	America/Cancun	Central Time - Quintana Roo
-MX	+2058-08937	America/Merida	Central Time - Campeche, Yucatan
-MX	+2540-10019	America/Monterrey	Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas
-MX	+2313-10625	America/Mazatlan	Mountain Time - S Baja, Nayarit, Sinaloa
-MX	+2838-10605	America/Chihuahua	Mountain Time - Chihuahua
-MX	+2904-11058	America/Hermosillo	Mountain Standard Time - Sonora
-MX	+3232-11701	America/Tijuana	Pacific Time
-MY	+0310+10142	Asia/Kuala_Lumpur	peninsular Malaysia
-MY	+0133+11020	Asia/Kuching	Sabah & Sarawak
-MZ	-2558+03235	Africa/Maputo
-NA	-2234+01706	Africa/Windhoek
-NC	-2216+16530	Pacific/Noumea
-NE	+1331+00207	Africa/Niamey
-NF	-2903+16758	Pacific/Norfolk
-NG	+0627+00324	Africa/Lagos
-NI	+1209-08617	America/Managua
-NL	+5222+00454	Europe/Amsterdam
-NO	+5955+01045	Europe/Oslo
-NP	+2743+08519	Asia/Katmandu
-NR	-0031+16655	Pacific/Nauru
-NU	-1901-16955	Pacific/Niue
-NZ	-3652+17446	Pacific/Auckland	most locations
-NZ	-4357-17633	Pacific/Chatham	Chatham Islands
-OM	+2336+05835	Asia/Muscat
-PA	+0858-07932	America/Panama
-PE	-1203-07703	America/Lima
-PF	-1732-14934	Pacific/Tahiti	Society Islands
-PF	-0900-13930	Pacific/Marquesas	Marquesas Islands
-PF	-2308-13457	Pacific/Gambier	Gambier Islands
-PG	-0930+14710	Pacific/Port_Moresby
-PH	+1435+12100	Asia/Manila
-PK	+2452+06703	Asia/Karachi
-PL	+5215+02100	Europe/Warsaw
-PM	+4703-05620	America/Miquelon
-PN	-2504-13005	Pacific/Pitcairn
-PR	+182806-0660622	America/Puerto_Rico
-PS	+3130+03428	Asia/Gaza
-PT	+3843-00908	Europe/Lisbon	mainland
-PT	+3238-01654	Atlantic/Madeira	Madeira Islands
-PT	+3744-02540	Atlantic/Azores	Azores
-PW	+0720+13429	Pacific/Palau
-PY	-2516-05740	America/Asuncion
-QA	+2517+05132	Asia/Qatar
-RE	-2052+05528	Indian/Reunion
-RO	+4426+02606	Europe/Bucharest
-RS	+4450+02030	Europe/Belgrade
-RU	+5443+02030	Europe/Kaliningrad	Moscow-01 - Kaliningrad
-RU	+5545+03735	Europe/Moscow	Moscow+00 - west Russia
-RU	+4844+04425	Europe/Volgograd	Moscow+00 - Caspian Sea
-RU	+5312+05009	Europe/Samara	Moscow+01 - Samara, Udmurtia
-RU	+5651+06036	Asia/Yekaterinburg	Moscow+02 - Urals
-RU	+5500+07324	Asia/Omsk	Moscow+03 - west Siberia
-RU	+5502+08255	Asia/Novosibirsk	Moscow+03 - Novosibirsk
-RU	+5601+09250	Asia/Krasnoyarsk	Moscow+04 - Yenisei River
-RU	+5216+10420	Asia/Irkutsk	Moscow+05 - Lake Baikal
-RU	+6200+12940	Asia/Yakutsk	Moscow+06 - Lena River
-RU	+4310+13156	Asia/Vladivostok	Moscow+07 - Amur River
-RU	+4658+14242	Asia/Sakhalin	Moscow+07 - Sakhalin Island
-RU	+5934+15048	Asia/Magadan	Moscow+08 - Magadan
-RU	+5301+15839	Asia/Kamchatka	Moscow+09 - Kamchatka
-RU	+6445+17729	Asia/Anadyr	Moscow+10 - Bering Sea
-RW	-0157+03004	Africa/Kigali
-SA	+2438+04643	Asia/Riyadh
-SB	-0932+16012	Pacific/Guadalcanal
-SC	-0440+05528	Indian/Mahe
-SD	+1536+03232	Africa/Khartoum
-SE	+5920+01803	Europe/Stockholm
-SG	+0117+10351	Asia/Singapore
-SH	-1555-00542	Atlantic/St_Helena
-SI	+4603+01431	Europe/Ljubljana
-SJ	+7800+01600	Arctic/Longyearbyen
-SK	+4809+01707	Europe/Bratislava
-SL	+0830-01315	Africa/Freetown
-SM	+4355+01228	Europe/San_Marino
-SN	+1440-01726	Africa/Dakar
-SO	+0204+04522	Africa/Mogadishu
-SR	+0550-05510	America/Paramaribo
-ST	+0020+00644	Africa/Sao_Tome
-SV	+1342-08912	America/El_Salvador
-SY	+3330+03618	Asia/Damascus
-SZ	-2618+03106	Africa/Mbabane
-TC	+2128-07108	America/Grand_Turk
-TD	+1207+01503	Africa/Ndjamena
-TF	-492110+0701303	Indian/Kerguelen
-TG	+0608+00113	Africa/Lome
-TH	+1345+10031	Asia/Bangkok
-TJ	+3835+06848	Asia/Dushanbe
-TK	-0922-17114	Pacific/Fakaofo
-TL	-0833+12535	Asia/Dili
-TM	+3757+05823	Asia/Ashgabat
-TN	+3648+01011	Africa/Tunis
-TO	-2110+17510	Pacific/Tongatapu
-TR	+4101+02858	Europe/Istanbul
-TT	+1039-06131	America/Port_of_Spain
-TV	-0831+17913	Pacific/Funafuti
-TW	+2503+12130	Asia/Taipei
-TZ	-0648+03917	Africa/Dar_es_Salaam
-UA	+5026+03031	Europe/Kiev	most locations
-UA	+4837+02218	Europe/Uzhgorod	Ruthenia
-UA	+4750+03510	Europe/Zaporozhye	Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
-UA	+4457+03406	Europe/Simferopol	central Crimea
-UG	+0019+03225	Africa/Kampala
-UM	+1645-16931	Pacific/Johnston	Johnston Atoll
-UM	+2813-17722	Pacific/Midway	Midway Islands
-UM	+1917+16637	Pacific/Wake	Wake Island
-US	+404251-0740023	America/New_York	Eastern Time
-US	+421953-0830245	America/Detroit	Eastern Time - Michigan - most locations
-US	+381515-0854534	America/Kentucky/Louisville	Eastern Time - Kentucky - Louisville area
-US	+364947-0845057	America/Kentucky/Monticello	Eastern Time - Kentucky - Wayne County
-US	+394606-0860929	America/Indiana/Indianapolis	Eastern Time - Indiana - most locations
-US	+384038-0873143	America/Indiana/Vincennes	Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
-US	+411745-0863730	America/Indiana/Knox	Eastern Time - Indiana - Starke County
-US	+410305-0863611	America/Indiana/Winamac	Eastern Time - Indiana - Pulaski County
-US	+382232-0862041	America/Indiana/Marengo	Eastern Time - Indiana - Crawford County
-US	+384452-0850402	America/Indiana/Vevay	Eastern Time - Indiana - Switzerland County
-US	+415100-0873900	America/Chicago	Central Time
-US	+375711-0864541	America/Indiana/Tell_City	Central Time - Indiana - Perry County
-US	+382931-0871643	America/Indiana/Petersburg	Central Time - Indiana - Pike County
-US	+450628-0873651	America/Menominee	Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
-US	+470659-1011757	America/North_Dakota/Center	Central Time - North Dakota - Oliver County
-US	+465042-1012439	America/North_Dakota/New_Salem	Central Time - North Dakota - Morton County (except Mandan area)
-US	+394421-1045903	America/Denver	Mountain Time
-US	+433649-1161209	America/Boise	Mountain Time - south Idaho & east Oregon
-US	+364708-1084111	America/Shiprock	Mountain Time - Navajo
-US	+332654-1120424	America/Phoenix	Mountain Standard Time - Arizona
-US	+340308-1181434	America/Los_Angeles	Pacific Time
-US	+611305-1495401	America/Anchorage	Alaska Time
-US	+581807-1342511	America/Juneau	Alaska Time - Alaska panhandle
-US	+593249-1394338	America/Yakutat	Alaska Time - Alaska panhandle neck
-US	+643004-1652423	America/Nome	Alaska Time - west Alaska
-US	+515248-1763929	America/Adak	Aleutian Islands
-US	+211825-1575130	Pacific/Honolulu	Hawaii
-UY	-3453-05611	America/Montevideo
-UZ	+3940+06648	Asia/Samarkand	west Uzbekistan
-UZ	+4120+06918	Asia/Tashkent	east Uzbekistan
-VA	+4154+01227	Europe/Vatican
-VC	+1309-06114	America/St_Vincent
-VE	+1030-06656	America/Caracas
-VG	+1827-06437	America/Tortola
-VI	+1821-06456	America/St_Thomas
-VN	+1045+10640	Asia/Ho_Chi_Minh
-VU	-1740+16825	Pacific/Efate
-WF	-1318-17610	Pacific/Wallis
-WS	-1350-17144	Pacific/Apia
-YE	+1245+04512	Asia/Aden
-YT	-1247+04514	Indian/Mayotte
-ZA	-2615+02800	Africa/Johannesburg
-ZM	-1525+02817	Africa/Lusaka
-ZW	-1750+03103	Africa/Harare
diff --git a/tools/zoneinfo/tzdata2008h/MODULE_LICENSE_PUBLIC_DOMAIN b/tools/zoneinfo/tzdata2009s/MODULE_LICENSE_PUBLIC_DOMAIN
similarity index 100%
rename from tools/zoneinfo/tzdata2008h/MODULE_LICENSE_PUBLIC_DOMAIN
rename to tools/zoneinfo/tzdata2009s/MODULE_LICENSE_PUBLIC_DOMAIN
diff --git a/tools/zoneinfo/tzdata2009s/africa b/tools/zoneinfo/tzdata2009s/africa
new file mode 100644
index 0000000..ad89bb7
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/africa
@@ -0,0 +1,997 @@
+# <pre>
+# @(#)africa	8.23
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+#
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually.  Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Another source occasionally used is Edward W. Whitman, World Time Differences,
+# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+# I found in the UCLA library.
+#
+# A reliable and entertaining source about time zones is
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+#
+# Previous editions of this database used WAT, CAT, SAT, and EAT
+# for +0:00 through +3:00, respectively,
+# but Mark R V Murray reports that
+# `SAST' is the official abbreviation for +2:00 in the country of South Africa,
+# `CAT' is commonly used for +2:00 in countries north of South Africa, and
+# `WAT' is probably the best name for +1:00, as the common phrase for
+# the area that includes Nigeria is ``West Africa''.
+# He has heard of ``Western Sahara Time'' for +0:00 but can find no reference.
+#
+# To make things confusing, `WAT' seems to have been used for -1:00 long ago;
+# I'd guess that this was because people needed _some_ name for -1:00,
+# and at the time, far west Africa was the only major land area in -1:00.
+# This usage is now obsolete, as the last use of -1:00 on the African
+# mainland seems to have been 1976 in Western Sahara.
+#
+# To summarize, the following abbreviations seem to have some currency:
+#	-1:00	WAT	West Africa Time (no longer used)
+#	 0:00	GMT	Greenwich Mean Time
+#	 2:00	CAT	Central Africa Time
+#	 2:00	SAST	South Africa Standard Time
+# and Murray suggests the following abbreviation:
+#	 1:00	WAT	West Africa Time
+# I realize that this leads to `WAT' being used for both -1:00 and 1:00
+# for times before 1976, but this is the best I can think of
+# until we get more information.
+#
+# I invented the following abbreviations; corrections are welcome!
+#	 2:00	WAST	West Africa Summer Time
+#	 2:30	BEAT	British East Africa Time (no longer used)
+#	 2:44:45 BEAUT	British East Africa Unified Time (no longer used)
+#	 3:00	CAST	Central Africa Summer Time (no longer used)
+#	 3:00	SAST	South Africa Summer Time (no longer used)
+#	 3:00	EAT	East Africa Time
+#	 4:00	EAST	East Africa Summer Time (no longer used)
+
+# Algeria
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Algeria	1916	only	-	Jun	14	23:00s	1:00	S
+Rule	Algeria	1916	1919	-	Oct	Sun>=1	23:00s	0	-
+Rule	Algeria	1917	only	-	Mar	24	23:00s	1:00	S
+Rule	Algeria	1918	only	-	Mar	 9	23:00s	1:00	S
+Rule	Algeria	1919	only	-	Mar	 1	23:00s	1:00	S
+Rule	Algeria	1920	only	-	Feb	14	23:00s	1:00	S
+Rule	Algeria	1920	only	-	Oct	23	23:00s	0	-
+Rule	Algeria	1921	only	-	Mar	14	23:00s	1:00	S
+Rule	Algeria	1921	only	-	Jun	21	23:00s	0	-
+Rule	Algeria	1939	only	-	Sep	11	23:00s	1:00	S
+Rule	Algeria	1939	only	-	Nov	19	 1:00	0	-
+Rule	Algeria	1944	1945	-	Apr	Mon>=1	 2:00	1:00	S
+Rule	Algeria	1944	only	-	Oct	 8	 2:00	0	-
+Rule	Algeria	1945	only	-	Sep	16	 1:00	0	-
+Rule	Algeria	1971	only	-	Apr	25	23:00s	1:00	S
+Rule	Algeria	1971	only	-	Sep	26	23:00s	0	-
+Rule	Algeria	1977	only	-	May	 6	 0:00	1:00	S
+Rule	Algeria	1977	only	-	Oct	21	 0:00	0	-
+Rule	Algeria	1978	only	-	Mar	24	 1:00	1:00	S
+Rule	Algeria	1978	only	-	Sep	22	 3:00	0	-
+Rule	Algeria	1980	only	-	Apr	25	 0:00	1:00	S
+Rule	Algeria	1980	only	-	Oct	31	 2:00	0	-
+# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+# more precise 0:09:21.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Algiers	0:12:12 -	LMT	1891 Mar 15 0:01
+			0:09:21	-	PMT	1911 Mar 11    # Paris Mean Time
+			0:00	Algeria	WE%sT	1940 Feb 25 2:00
+			1:00	Algeria	CE%sT	1946 Oct  7
+			0:00	-	WET	1956 Jan 29
+			1:00	-	CET	1963 Apr 14
+			0:00	Algeria	WE%sT	1977 Oct 21
+			1:00	Algeria	CE%sT	1979 Oct 26
+			0:00	Algeria	WE%sT	1981 May
+			1:00	-	CET
+
+# Angola
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Luanda	0:52:56	-	LMT	1892
+			0:52:04	-	AOT	1911 May 26 # Angola Time
+			1:00	-	WAT
+
+# Benin
+# Whitman says they switched to 1:00 in 1946, not 1934;
+# go with Shanks & Pottenger.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Porto-Novo	0:10:28	-	LMT	1912
+			0:00	-	GMT	1934 Feb 26
+			1:00	-	WAT
+
+# Botswana
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Gaborone	1:43:40 -	LMT	1885
+			2:00	-	CAT	1943 Sep 19 2:00
+			2:00	1:00	CAST	1944 Mar 19 2:00
+			2:00	-	CAT
+
+# Burkina Faso
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Ouagadougou	-0:06:04 -	LMT	1912
+			 0:00	-	GMT
+
+# Burundi
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Bujumbura	1:57:28	-	LMT	1890
+			2:00	-	CAT
+
+# Cameroon
+# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Douala	0:38:48	-	LMT	1912
+			1:00	-	WAT
+
+# Cape Verde
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Atlantic/Cape_Verde -1:34:04 -	LMT	1907			# Praia
+			-2:00	-	CVT	1942 Sep
+			-2:00	1:00	CVST	1945 Oct 15
+			-2:00	-	CVT	1975 Nov 25 2:00
+			-1:00	-	CVT
+
+# Central African Republic
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Bangui	1:14:20	-	LMT	1912
+			1:00	-	WAT
+
+# Chad
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Ndjamena	1:00:12 -	LMT	1912
+			1:00	-	WAT	1979 Oct 14
+			1:00	1:00	WAST	1980 Mar  8
+			1:00	-	WAT
+
+# Comoros
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Indian/Comoro	2:53:04 -	LMT	1911 Jul   # Moroni, Gran Comoro
+			3:00	-	EAT
+
+# Democratic Republic of Congo
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Kinshasa	1:01:12 -	LMT	1897 Nov 9
+			1:00	-	WAT
+Zone Africa/Lubumbashi	1:49:52 -	LMT	1897 Nov 9
+			2:00	-	CAT
+
+# Republic of the Congo
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Brazzaville	1:01:08 -	LMT	1912
+			1:00	-	WAT
+
+# Cote D'Ivoire
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Abidjan	-0:16:08 -	LMT	1912
+			 0:00	-	GMT
+
+# Djibouti
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Djibouti	2:52:36 -	LMT	1911 Jul
+			3:00	-	EAT
+
+###############################################################################
+
+# Egypt
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Egypt	1940	only	-	Jul	15	0:00	1:00	S
+Rule	Egypt	1940	only	-	Oct	 1	0:00	0	-
+Rule	Egypt	1941	only	-	Apr	15	0:00	1:00	S
+Rule	Egypt	1941	only	-	Sep	16	0:00	0	-
+Rule	Egypt	1942	1944	-	Apr	 1	0:00	1:00	S
+Rule	Egypt	1942	only	-	Oct	27	0:00	0	-
+Rule	Egypt	1943	1945	-	Nov	 1	0:00	0	-
+Rule	Egypt	1945	only	-	Apr	16	0:00	1:00	S
+Rule	Egypt	1957	only	-	May	10	0:00	1:00	S
+Rule	Egypt	1957	1958	-	Oct	 1	0:00	0	-
+Rule	Egypt	1958	only	-	May	 1	0:00	1:00	S
+Rule	Egypt	1959	1981	-	May	 1	1:00	1:00	S
+Rule	Egypt	1959	1965	-	Sep	30	3:00	0	-
+Rule	Egypt	1966	1994	-	Oct	 1	3:00	0	-
+Rule	Egypt	1982	only	-	Jul	25	1:00	1:00	S
+Rule	Egypt	1983	only	-	Jul	12	1:00	1:00	S
+Rule	Egypt	1984	1988	-	May	 1	1:00	1:00	S
+Rule	Egypt	1989	only	-	May	 6	1:00	1:00	S
+Rule	Egypt	1990	1994	-	May	 1	1:00	1:00	S
+# IATA (after 1990) says transitions are at 0:00.
+# Go with IATA starting in 1995, except correct 1995 entry from 09-30 to 09-29.
+Rule	Egypt	1995	max	-	Apr	lastFri	 0:00s	1:00	S
+Rule	Egypt	1995	2005	-	Sep	lastThu	23:00s	0	-
+# From Steffen Thorsen (2006-09-19):
+# The Egyptian Gazette, issue 41,090 (2006-09-18), page 1, reports:
+# Egypt will turn back clocks by one hour at the midnight of Thursday
+# after observing the daylight saving time since May.
+# http://news.gom.com.eg/gazette/pdf/2006/09/18/01.pdf
+Rule	Egypt	2006	only	-	Sep	21	23:00s	0	-
+# From Dirk Losch (2007-08-14):
+# I received a mail from an airline which says that the daylight
+# saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
+# From Jesper Norgaard Welen (2007-08-15): [The following agree:]
+# http://www.nentjes.info/Bill/bill5.htm 
+# http://www.timeanddate.com/worldclock/city.html?n=53
+# From Steffen Thorsen (2007-09-04): The official information...:
+# http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm
+Rule	Egypt	2007	only	-	Sep	Thu>=1	23:00s	0	-
+# From Abdelrahman Hassan (2007-09-06):
+# Due to the Hijri (lunar Islamic calendar) year being 11 days shorter
+# than the year of the Gregorian calendar, Ramadan shifts earlier each
+# year. This year it will be observed September 13 (September is quite
+# hot in Egypt), and the idea is to make fasting easier for workers by
+# shifting business hours one hour out of daytime heat. Consequently,
+# unless discontinued, next DST may end Thursday 28 August 2008.
+# From Paul Eggert (2007-08-17):
+# For lack of better info, assume the new rule is last Thursday in August.
+
+# From Petr Machata (2009-04-06):
+# The following appeared in Red Hat bugzilla[1] (edited):
+#
+# > $ zdump -v /usr/share/zoneinfo/Africa/Cairo | grep 2009
+# > /usr/share/zoneinfo/Africa/Cairo  Thu Apr 23 21:59:59 2009 UTC = Thu =
+# Apr 23
+# > 23:59:59 2009 EET isdst=0 gmtoff=7200
+# > /usr/share/zoneinfo/Africa/Cairo  Thu Apr 23 22:00:00 2009 UTC = Fri =
+# Apr 24
+# > 01:00:00 2009 EEST isdst=1 gmtoff=10800
+# > /usr/share/zoneinfo/Africa/Cairo  Thu Aug 27 20:59:59 2009 UTC = Thu =
+# Aug 27
+# > 23:59:59 2009 EEST isdst=1 gmtoff=10800
+# > /usr/share/zoneinfo/Africa/Cairo  Thu Aug 27 21:00:00 2009 UTC = Thu =
+# Aug 27
+# > 23:00:00 2009 EET isdst=0 gmtoff=7200
+#
+# > end date should be Thu Sep 24 2009 (Last Thursday in September at 23:59=
+# :59)
+# > http://support.microsoft.com/kb/958729/
+#
+# timeanddate[2] and another site I've found[3] also support that.
+#
+# [1] <a href="https://bugzilla.redhat.com/show_bug.cgi?id=492263">
+# https://bugzilla.redhat.com/show_bug.cgi?id=492263
+# </a>
+# [2] <a href="http://www.timeanddate.com/worldclock/clockchange.html?n=53">
+# http://www.timeanddate.com/worldclock/clockchange.html?n=53
+# </a>
+# [3] <a href="http://wwp.greenwichmeantime.com/time-zone/africa/egypt/">
+# http://wwp.greenwichmeantime.com/time-zone/africa/egypt/
+# </a>
+
+# From Arthur David Olson (2009-04-20):
+# In 2009 (and for the next several years), Ramadan ends before the fourth
+# Thursday in September; Egypt is expected to revert to the last Thursday
+# in September.
+
+# From Steffen Thorsen (2009-08-11):
+# We have been able to confirm the August change with the Egyptian Cabinet 
+# Information and Decision Support Center:
+# <a href="http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html">
+# http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
+# </a>
+# 
+# The Middle East News Agency
+# <a href="http://www.mena.org.eg/index.aspx">
+# http://www.mena.org.eg/index.aspx
+# </a>
+# also reports "Egypt starts winter time on August 21"
+# today in article numbered "71, 11/08/2009 12:25 GMT." 
+# Only the title above is available without a subscription to their service,
+# and can be found by searching for "winter" in their search engine
+# (at least today).
+
+Rule	Egypt	2008	only	-	Aug	lastThu	23:00s	0	-
+Rule	Egypt	2009	only	-	Aug	20	23:00s	0	-
+Rule	Egypt	2010	max	-	Sep	lastThu	23:00s	0	-
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Cairo	2:05:00 -	LMT	1900 Oct
+			2:00	Egypt	EE%sT
+
+# Equatorial Guinea
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Malabo	0:35:08 -	LMT	1912
+			0:00	-	GMT	1963 Dec 15
+			1:00	-	WAT
+
+# Eritrea
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Asmara	2:35:32 -	LMT	1870
+			2:35:32	-	AMT	1890	      # Asmara Mean Time
+			2:35:20	-	ADMT	1936 May 5    # Adis Dera MT
+			3:00	-	EAT
+
+# Ethiopia
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time zones
+# between 1870 and 1890, and that they merged to 38E50 (2:35:20) in 1890.
+# We'll guess that 38E50 is for Adis Dera.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Addis_Ababa	2:34:48 -	LMT	1870
+			2:35:20	-	ADMT	1936 May 5    # Adis Dera MT
+			3:00	-	EAT
+
+# Gabon
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Libreville	0:37:48 -	LMT	1912
+			1:00	-	WAT
+
+# Gambia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Banjul	-1:06:36 -	LMT	1912
+			-1:06:36 -	BMT	1935	# Banjul Mean Time
+			-1:00	-	WAT	1964
+			 0:00	-	GMT
+
+# Ghana
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# Whitman says DST was observed from 1931 to ``the present'';
+# go with Shanks & Pottenger.
+Rule	Ghana	1936	1942	-	Sep	 1	0:00	0:20	GHST
+Rule	Ghana	1936	1942	-	Dec	31	0:00	0	GMT
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Accra	-0:00:52 -	LMT	1918
+			 0:00	Ghana	%s
+
+# Guinea
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Conakry	-0:54:52 -	LMT	1912
+			 0:00	-	GMT	1934 Feb 26
+			-1:00	-	WAT	1960
+			 0:00	-	GMT
+
+# Guinea-Bissau
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Bissau	-1:02:20 -	LMT	1911 May 26
+			-1:00	-	WAT	1975
+			 0:00	-	GMT
+
+# Kenya
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Nairobi	2:27:16	-	LMT	1928 Jul
+			3:00	-	EAT	1930
+			2:30	-	BEAT	1940
+			2:44:45	-	BEAUT	1960
+			3:00	-	EAT
+
+# Lesotho
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Maseru	1:50:00 -	LMT	1903 Mar
+			2:00	-	SAST	1943 Sep 19 2:00
+			2:00	1:00	SAST	1944 Mar 19 2:00
+			2:00	-	SAST
+
+# Liberia
+# From Paul Eggert (2006-03-22):
+# In 1972 Liberia was the last country to switch
+# from a UTC offset that was not a multiple of 15 or 20 minutes.
+# Howse reports that it was in honor of their president's birthday.
+# Shank & Pottenger report the date as May 1, whereas Howse reports Jan;
+# go with Shanks & Pottenger.
+# For Liberia before 1972, Shanks & Pottenger report -0:44, whereas Howse and
+# Whitman each report -0:44:30; go with the more precise figure.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Monrovia	-0:43:08 -	LMT	1882
+			-0:43:08 -	MMT	1919 Mar # Monrovia Mean Time
+			-0:44:30 -	LRT	1972 May # Liberia Time
+			 0:00	-	GMT
+
+###############################################################################
+
+# Libya
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Libya	1951	only	-	Oct	14	2:00	1:00	S
+Rule	Libya	1952	only	-	Jan	 1	0:00	0	-
+Rule	Libya	1953	only	-	Oct	 9	2:00	1:00	S
+Rule	Libya	1954	only	-	Jan	 1	0:00	0	-
+Rule	Libya	1955	only	-	Sep	30	0:00	1:00	S
+Rule	Libya	1956	only	-	Jan	 1	0:00	0	-
+Rule	Libya	1982	1984	-	Apr	 1	0:00	1:00	S
+Rule	Libya	1982	1985	-	Oct	 1	0:00	0	-
+Rule	Libya	1985	only	-	Apr	 6	0:00	1:00	S
+Rule	Libya	1986	only	-	Apr	 4	0:00	1:00	S
+Rule	Libya	1986	only	-	Oct	 3	0:00	0	-
+Rule	Libya	1987	1989	-	Apr	 1	0:00	1:00	S
+Rule	Libya	1987	1989	-	Oct	 1	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Tripoli	0:52:44 -	LMT	1920
+			1:00	Libya	CE%sT	1959
+			2:00	-	EET	1982
+			1:00	Libya	CE%sT	1990 May  4
+# The following entries are from Shanks & Pottenger;
+# the IATA SSIM data contain some obvious errors.
+			2:00	-	EET	1996 Sep 30
+			1:00	-	CET	1997 Apr  4
+			1:00	1:00	CEST	1997 Oct  4
+			2:00	-	EET
+
+# Madagascar
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Indian/Antananarivo 3:10:04 -	LMT	1911 Jul
+			3:00	-	EAT	1954 Feb 27 23:00s
+			3:00	1:00	EAST	1954 May 29 23:00s
+			3:00	-	EAT
+
+# Malawi
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Blantyre	2:20:00 -	LMT	1903 Mar
+			2:00	-	CAT
+
+# Mali
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Bamako	-0:32:00 -	LMT	1912
+			 0:00	-	GMT	1934 Feb 26
+			-1:00	-	WAT	1960 Jun 20
+			 0:00	-	GMT
+
+# Mauritania
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Nouakchott	-1:03:48 -	LMT	1912
+			 0:00	-	GMT	1934 Feb 26
+			-1:00	-	WAT	1960 Nov 28
+			 0:00	-	GMT
+
+# Mauritius
+
+# From Steffen Thorsen (2008-06-25):
+# Mauritius plans to observe DST from 2008-11-01 to 2009-03-31 on a trial
+# basis....
+# It seems that Mauritius observed daylight saving time from 1982-10-10 to 
+# 1983-03-20 as well, but that was not successful....
+# http://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
+
+# From Alex Krivenyshev (2008-06-25):
+# http://economicdevelopment.gov.mu/portal/site/Mainhomepage/menuitem.a42b24128104d9845dabddd154508a0c/?content_id=0a7cee8b5d69a110VgnVCM1000000a04a8c0RCRD
+
+# From Arthur David Olson (2008-06-30):
+# The www.timeanddate.com article cited by Steffen Thorsen notes that "A
+# final decision has yet to be made on the times that daylight saving
+# would begin and end on these dates." As a place holder, use midnight.
+
+# From Paul Eggert (2008-06-30):
+# Follow Thorsen on DST in 1982/1983, instead of Shanks & Pottenger.
+
+# From Steffen Thorsen (2008-07-10):
+# According to
+# <a href="http://www.lexpress.mu/display_article.php?news_id=111216">
+# http://www.lexpress.mu/display_article.php?news_id=111216
+# </a>
+# (in French), Mauritius will start and end their DST a few days earlier
+# than previously announced (2008-11-01 to 2009-03-31).  The new start
+# date is 2008-10-26 at 02:00 and the new end date is 2009-03-27 (no time
+# given, but it is probably at either 2 or 3 wall clock time).
+# 
+# A little strange though, since the article says that they moved the date 
+# to align itself with Europe and USA which also change time on that date, 
+# but that means they have not paid attention to what happened in 
+# USA/Canada last year (DST ends first Sunday in November). I also wonder 
+# why that they end on a Friday, instead of aligning with Europe which 
+# changes two days later.
+
+# From Alex Krivenyshev (2008-07-11):
+# Seems that English language article "The revival of daylight saving
+# time:  Energy conservation?"-# No. 16578 (07/11/2008) was originally
+# published on Monday, June 30, 2008...
+#
+# I guess that article in French "Le gouvernement avance l'introduction
+# de l'heure d'ete" stating that DST in Mauritius starting on October 26
+# and ending on March 27, 2009 is the most recent one.
+# ...
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html">
+# http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html
+# </a>
+
+# From Riad M. Hossen Ally (2008-08-03):
+# The Government of Mauritius weblink
+# <a href="http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD">
+# http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD
+# </a>
+# Cabinet Decision of July 18th, 2008 states as follows:
+#
+# 4. ...Cabinet has agreed to the introduction into the National Assembly
+# of the Time Bill which provides for the introduction of summer time in
+# Mauritius. The summer time period which will be of one hour ahead of
+# the standard time, will be aligned with that in Europe and the United
+# States of America. It will start at two o'clock in the morning on the
+# last Sunday of October and will end at two o'clock in the morning on
+# the last Sunday of March the following year. The summer time for the
+# year 2008 - 2009 will, therefore, be effective as from 26 October 2008
+# and end on 29 March 2009.
+
+# From Ed Maste (2008-10-07):
+# THE TIME BILL (No. XXVII of 2008) Explanatory Memorandum states the
+# beginning / ending of summer time is 2 o'clock standard time in the
+# morning of the last Sunday of October / last Sunday of March.
+# <a href="http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf">
+# http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf
+# </a>
+
+# From Steffen Thorsen (2009-06-05):
+# According to several sources, Mauritius will not continue to observe
+# DST the coming summer...
+#
+# Some sources, in French:
+# <a href="http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB">
+# http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB
+# </a>
+# <a href="http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-">
+# http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-
+# </a>
+#
+# Our wrap-up:
+# <a href="http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html">
+# http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
+# </a>
+
+# From Arthur David Olson (2009-07-11):
+# The "mauritius-dst-will-not-repeat" wrapup includes this: 
+# "The trial ended on March 29, 2009, when the clocks moved back by one hour
+# at 2am (or 02:00) local time..."
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule Mauritius	1982	only	-	Oct	10	0:00	1:00	S
+Rule Mauritius	1983	only	-	Mar	21	0:00	0	-
+Rule Mauritius	2008	only	-	Oct	lastSun	2:00	1:00	S
+Rule Mauritius	2009	only	-	Mar	lastSun	2:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Indian/Mauritius	3:50:00 -	LMT	1907		# Port Louis
+			4:00 Mauritius	MU%sT	# Mauritius Time
+# Agalega Is, Rodriguez
+# no information; probably like Indian/Mauritius
+
+# Mayotte
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Indian/Mayotte	3:00:56 -	LMT	1911 Jul	# Mamoutzou
+			3:00	-	EAT
+
+# Morocco
+# See the `europe' file for Spanish Morocco (Africa/Ceuta).
+
+# From Alex Krivenyshev (2008-05-09):
+# Here is an article that Morocco plan to introduce Daylight Saving Time between
+# 1 June, 2008 and 27 September, 2008.
+#
+# "... Morocco is to save energy by adjusting its clock during summer so it will
+# be one hour ahead of GMT between 1 June and 27 September, according to
+# Communication Minister and Gov ernment Spokesman, Khalid Naciri...."
+#
+# <a href="http://www.worldtimezone.net/dst_news/dst_news_morocco01.html">
+# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
+# </a>
+# OR
+# <a href="http://en.afrik.com/news11892.html">
+# http://en.afrik.com/news11892.html
+# </a>
+
+# From Alex Krivenyshev (2008-05-09):
+# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse:
+# <a href="http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view">
+# http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view
+# </a>
+#
+# Morocco shifts to daylight time on June 1st through September 27, Govt.
+# spokesman.
+
+# From Patrice Scattolin (2008-05-09):
+# According to this article:
+# <a href="http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html">
+# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
+# </a>
+# (and republished here:
+# <a href="http://www.actu.ma/heure-dete-comment_i127896_0.html">
+# http://www.actu.ma/heure-dete-comment_i127896_0.html
+# </a>
+# )
+# the changes occurs at midnight:
+#
+# saturday night may 31st at midnight (which in french is to be
+# intrepreted as the night between saturday and sunday)
+# sunday night the 28th  at midnight
+#
+# Seeing that the 28th is monday, I am guessing that she intends to say
+# the midnight of the 28th which is the midnight between sunday and
+# monday, which jives with other sources that say that it's inclusive
+# june1st to sept 27th.
+#
+# The decision was taken by decree *2-08-224 *but I can't find the decree
+# published on the web.
+#
+# It's also confirmed here:
+# <a href="http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm">
+# http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm
+# </a>
+# on a government portal as being  between june 1st and sept 27th (not yet
+# posted in english).
+#
+# The following google query will generate many relevant hits:
+# <a href="http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search">
+# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
+# </a>
+
+# From Alex Krivenyshev (2008-05-09):
+# Is Western Sahara (part which administrated by Morocco) going to follow
+# Morocco DST changes?  Any information?  What about other part of
+# Western Sahara - under administration of POLISARIO Front (also named
+# SADR Saharawi Arab Democratic Republic)?
+
+# From Arthur David Olson (2008-05-09):
+# XXX--guess that it is only Morocco for now; guess only 2008 for now.
+
+# From Steffen Thorsen (2008-08-27):
+# Morocco will change the clocks back on the midnight between August 31 
+# and September 1. They originally planned to observe DST to near the end 
+# of September:
+#
+# One article about it (in French):
+# <a href="http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default">
+# http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
+# </a>
+#
+# We have some further details posted here:
+# <a href="http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html">
+# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
+# </a>
+
+# From Steffen Thorsen (2009-03-17):
+# Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according
+# to many sources, such as
+# <a href="http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html">
+# http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html
+# </a>
+# <a href="http://www.medi1sat.ma/fr/depeche.aspx?idp=2312">
+# http://www.medi1sat.ma/fr/depeche.aspx?idp=2312
+# </a>
+# (French)
+#
+# Our summary:
+# <a href="http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html">
+# http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
+# </a>
+
+# From Alexander Krivenyshev (2009-03-17):
+# Here is a link to official document from Royaume du Maroc Premier Ministre,
+# Ministere de la Modernisation des Secteurs Publics
+#
+# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 june 1967)
+# concerning the amendment of the legal time, the Ministry of Modernization of
+# Public Sectors announced that the official time in the Kingdom will be
+# advanced 60 minutes from Sunday 31 May 2009 at midnight.
+#
+# <a href="http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf">
+# http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf
+# </a>
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco03.html">
+# http://www.worldtimezone.com/dst_news/dst_news_morocco03.html
+# </a>
+
+# RULE	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+
+Rule	Morocco	1939	only	-	Sep	12	 0:00	1:00	S
+Rule	Morocco	1939	only	-	Nov	19	 0:00	0	-
+Rule	Morocco	1940	only	-	Feb	25	 0:00	1:00	S
+Rule	Morocco	1945	only	-	Nov	18	 0:00	0	-
+Rule	Morocco	1950	only	-	Jun	11	 0:00	1:00	S
+Rule	Morocco	1950	only	-	Oct	29	 0:00	0	-
+Rule	Morocco	1967	only	-	Jun	 3	12:00	1:00	S
+Rule	Morocco	1967	only	-	Oct	 1	 0:00	0	-
+Rule	Morocco	1974	only	-	Jun	24	 0:00	1:00	S
+Rule	Morocco	1974	only	-	Sep	 1	 0:00	0	-
+Rule	Morocco	1976	1977	-	May	 1	 0:00	1:00	S
+Rule	Morocco	1976	only	-	Aug	 1	 0:00	0	-
+Rule	Morocco	1977	only	-	Sep	28	 0:00	0	-
+Rule	Morocco	1978	only	-	Jun	 1	 0:00	1:00	S
+Rule	Morocco	1978	only	-	Aug	 4	 0:00	0	-
+Rule	Morocco	2008	only	-	Jun	 1	 0:00	1:00	S
+Rule	Morocco	2008	only	-	Sep	 1	 0:00	0	-
+Rule	Morocco	2009	only	-	Jun	 1	 0:00	1:00	S
+Rule	Morocco	2009	only	-	Aug	 21	 0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Casablanca	-0:30:20 -	LMT	1913 Oct 26
+			 0:00	Morocco	WE%sT	1984 Mar 16
+			 1:00	-	CET	1986
+			 0:00	Morocco	WE%sT
+# Western Sahara
+Zone Africa/El_Aaiun	-0:52:48 -	LMT	1934 Jan
+			-1:00	-	WAT	1976 Apr 14
+			 0:00	-	WET
+
+# Mozambique
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Maputo	2:10:20 -	LMT	1903 Mar
+			2:00	-	CAT
+
+# Namibia
+# The 1994-04-03 transition is from Shanks & Pottenger.
+# Shanks & Pottenger report no DST after 1998-04; go with IATA.
+
+# From Petronella Sibeene (2007-03-30) in
+# <http://allafrica.com/stories/200703300178.html>:
+# While the entire country changes its time, Katima Mulilo and other
+# settlements in Caprivi unofficially will not because the sun there
+# rises and sets earlier compared to other regions.  Chief of
+# Forecasting Riaan van Zyl explained that the far eastern parts of
+# the country are close to 40 minutes earlier in sunrise than the rest
+# of the country.
+# 
+# From Paul Eggert (2007-03-31):
+# Apparently the Caprivi Strip informally observes Botswana time, but
+# we have no details.  In the meantime people there can use Africa/Gaborone.
+
+# RULE	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Namibia	1994	max	-	Sep	Sun>=1	2:00	1:00	S
+Rule	Namibia	1995	max	-	Apr	Sun>=1	2:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Windhoek	1:08:24 -	LMT	1892 Feb 8
+			1:30	-	SWAT	1903 Mar	# SW Africa Time
+			2:00	-	SAST	1942 Sep 20 2:00
+			2:00	1:00	SAST	1943 Mar 21 2:00
+			2:00	-	SAST	1990 Mar 21 # independence
+			2:00	-	CAT	1994 Apr  3
+			1:00	Namibia	WA%sT
+
+# Niger
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Niamey	 0:08:28 -	LMT	1912
+			-1:00	-	WAT	1934 Feb 26
+			 0:00	-	GMT	1960
+			 1:00	-	WAT
+
+# Nigeria
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Lagos	0:13:36 -	LMT	1919 Sep
+			1:00	-	WAT
+
+# Reunion
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Indian/Reunion	3:41:52 -	LMT	1911 Jun	# Saint-Denis
+			4:00	-	RET	# Reunion Time
+#
+# Scattered Islands (Iles Eparses) administered from Reunion are as follows.
+# The following information about them is taken from
+# Iles Eparses (www.outre-mer.gouv.fr/domtom/ile.htm, 1997-07-22, in French;
+# no longer available as of 1999-08-17).
+# We have no info about their time zone histories.
+#
+# Bassas da India - uninhabited
+# Europa Island - inhabited from 1905 to 1910 by two families
+# Glorioso Is - inhabited until at least 1958
+# Juan de Nova - uninhabited
+# Tromelin - inhabited until at least 1958
+
+# Rwanda
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Kigali	2:00:16 -	LMT	1935 Jun
+			2:00	-	CAT
+
+# St Helena
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Atlantic/St_Helena	-0:22:48 -	LMT	1890		# Jamestown
+			-0:22:48 -	JMT	1951	# Jamestown Mean Time
+			 0:00	-	GMT
+# The other parts of the St Helena territory are similar:
+#	Tristan da Cunha: on GMT, say Whitman and the CIA
+#	Ascension: on GMT, says usno1995 and the CIA
+#	Gough (scientific station since 1955; sealers wintered previously):
+#		on GMT, says the CIA
+#	Inaccessible, Nightingale: no information, but probably GMT
+
+# Sao Tome and Principe
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Sao_Tome	 0:26:56 -	LMT	1884
+			-0:36:32 -	LMT	1912	# Lisbon Mean Time
+			 0:00	-	GMT
+
+# Senegal
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Dakar	-1:09:44 -	LMT	1912
+			-1:00	-	WAT	1941 Jun
+			 0:00	-	GMT
+
+# Seychelles
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Indian/Mahe	3:41:48 -	LMT	1906 Jun	# Victoria
+			4:00	-	SCT	# Seychelles Time
+# From Paul Eggert (2001-05-30):
+# Aldabra, Farquhar, and Desroches, originally dependencies of the
+# Seychelles, were transferred to the British Indian Ocean Territory
+# in 1965 and returned to Seychelles control in 1976.  We don't know
+# whether this affected their time zone, so omit this for now.
+# Possibly the islands were uninhabited.
+
+# Sierra Leone
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# Whitman gives Mar 31 - Aug 31 for 1931 on; go with Shanks & Pottenger.
+Rule	SL	1935	1942	-	Jun	 1	0:00	0:40	SLST
+Rule	SL	1935	1942	-	Oct	 1	0:00	0	WAT
+Rule	SL	1957	1962	-	Jun	 1	0:00	1:00	SLST
+Rule	SL	1957	1962	-	Sep	 1	0:00	0	GMT
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Freetown	-0:53:00 -	LMT	1882
+			-0:53:00 -	FMT	1913 Jun # Freetown Mean Time
+			-1:00	SL	%s	1957
+			 0:00	SL	%s
+
+# Somalia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Mogadishu	3:01:28 -	LMT	1893 Nov
+			3:00	-	EAT	1931
+			2:30	-	BEAT	1957
+			3:00	-	EAT
+
+# South Africa
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	SA	1942	1943	-	Sep	Sun>=15	2:00	1:00	-
+Rule	SA	1943	1944	-	Mar	Sun>=15	2:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Johannesburg 1:52:00 -	LMT	1892 Feb 8
+			1:30	-	SAST	1903 Mar
+			2:00	SA	SAST
+# Marion and Prince Edward Is
+# scientific station since 1947
+# no information
+
+# Sudan
+#
+# From <a href="http://www.sunanews.net/sn13jane.html">
+# Sudan News Agency (2000-01-13)
+# </a>, also reported by Michael De Beukelaer-Dossche via Steffen Thorsen:
+# Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
+# Saturday....  This was announced Thursday by Caretaker State Minister for
+# Manpower Abdul-Rahman Nur-Eddin.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Sudan	1970	only	-	May	 1	0:00	1:00	S
+Rule	Sudan	1970	1985	-	Oct	15	0:00	0	-
+Rule	Sudan	1971	only	-	Apr	30	0:00	1:00	S
+Rule	Sudan	1972	1985	-	Apr	lastSun	0:00	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Khartoum	2:10:08 -	LMT	1931
+			2:00	Sudan	CA%sT	2000 Jan 15 12:00
+			3:00	-	EAT
+
+# Swaziland
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Mbabane	2:04:24 -	LMT	1903 Mar
+			2:00	-	SAST
+
+# Tanzania
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Africa/Dar_es_Salaam 2:37:08 -	LMT	1931
+			3:00	-	EAT	1948
+			2:44:45	-	BEAUT	1961
+			3:00	-	EAT
+
+# Togo
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Lome	0:04:52 -	LMT	1893
+			0:00	-	GMT
+
+# Tunisia
+
+# From Gwillim Law (2005-04-30):
+# My correspondent, Risto Nykanen, has alerted me to another adoption of DST,
+# this time in Tunisia.  According to Yahoo France News
+# <http://fr.news.yahoo.com/050426/5/4dumk.html>, in a story attributed to AP
+# and dated 2005-04-26, "Tunisia has decided to advance its official time by
+# one hour, starting on Sunday, May 1.  Henceforth, Tunisian time will be
+# UTC+2 instead of UTC+1.  The change will take place at 23:00 UTC next
+# Saturday."  (My translation)
+#
+# From Oscar van Vlijmen (2005-05-02):
+# LaPresse, the first national daily newspaper ...
+# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html>
+# ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30,
+# 1h standard time.
+#
+# From Atef Loukil (2006-03-28):
+# The daylight saving time will be the same each year:
+# Beginning      : the last Sunday of March at 02:00
+# Ending         : the last Sunday of October at 03:00 ...
+# http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=1188&Itemid=50
+
+# From Steffen Thorsen (2009-03-16):
+# According to several news sources, Tunisia will not observe DST this year.
+# (Arabic)
+# <a href="http://www.elbashayer.com/?page=viewn&nid=42546">
+# http://www.elbashayer.com/?page=viewn&nid=42546
+# </a>
+# <a href="http://www.babnet.net/kiwidetail-15295.asp">
+# http://www.babnet.net/kiwidetail-15295.asp
+# </a>
+#
+# We have also confirmed this with the US embassy in Tunisia.
+# We have a wrap-up about this on the following page:
+# <a href="http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html">
+# http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
+# </a>
+
+# From Alexander Krivenyshev (2009-03-17):
+# Here is a link to Tunis Afrique Presse News Agency
+#
+# Standard time to be kept the whole year long (tap.info.tn):
+#
+# (in English)
+# <a href="http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157">
+# http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157
+# </a>
+#
+# (in Arabic)
+# <a href="http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1">
+# http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1
+# </a>
+
+# From Arthur David Olson (2009--3-18):
+# The Tunis Afrique Presse News Agency notice contains this: "This measure is due to the fact
+# that the fasting month of ramadan coincides with the period concerned by summer time.
+# Therefore, the standard time will be kept unchanged the whole year long."
+# So foregoing DST seems to be an exception (albeit one that may be repeated in the  future).
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Tunisia	1939	only	-	Apr	15	23:00s	1:00	S
+Rule	Tunisia	1939	only	-	Nov	18	23:00s	0	-
+Rule	Tunisia	1940	only	-	Feb	25	23:00s	1:00	S
+Rule	Tunisia	1941	only	-	Oct	 6	 0:00	0	-
+Rule	Tunisia	1942	only	-	Mar	 9	 0:00	1:00	S
+Rule	Tunisia	1942	only	-	Nov	 2	 3:00	0	-
+Rule	Tunisia	1943	only	-	Mar	29	 2:00	1:00	S
+Rule	Tunisia	1943	only	-	Apr	17	 2:00	0	-
+Rule	Tunisia	1943	only	-	Apr	25	 2:00	1:00	S
+Rule	Tunisia	1943	only	-	Oct	 4	 2:00	0	-
+Rule	Tunisia	1944	1945	-	Apr	Mon>=1	 2:00	1:00	S
+Rule	Tunisia	1944	only	-	Oct	 8	 0:00	0	-
+Rule	Tunisia	1945	only	-	Sep	16	 0:00	0	-
+Rule	Tunisia	1977	only	-	Apr	30	 0:00s	1:00	S
+Rule	Tunisia	1977	only	-	Sep	24	 0:00s	0	-
+Rule	Tunisia	1978	only	-	May	 1	 0:00s	1:00	S
+Rule	Tunisia	1978	only	-	Oct	 1	 0:00s	0	-
+Rule	Tunisia	1988	only	-	Jun	 1	 0:00s	1:00	S
+Rule	Tunisia	1988	1990	-	Sep	lastSun	 0:00s	0	-
+Rule	Tunisia	1989	only	-	Mar	26	 0:00s	1:00	S
+Rule	Tunisia	1990	only	-	May	 1	 0:00s	1:00	S
+Rule	Tunisia	2005	only	-	May	 1	 0:00s	1:00	S
+Rule	Tunisia	2005	only	-	Sep	30	 1:00s	0	-
+Rule	Tunisia	2006	2008	-	Mar	lastSun	 2:00s	1:00	S
+Rule	Tunisia	2006	2008	-	Oct	lastSun	 2:00s	0	-
+Rule	Tunisia	2010	max	-	Mar	lastSun	 2:00s	1:00	S
+Rule	Tunisia	2010	max	-	Oct	lastSun	 2:00s	0	-
+# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+# more precise 0:09:21.
+# Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Tunis	0:40:44 -	LMT	1881 May 12
+			0:09:21	-	PMT	1911 Mar 11    # Paris Mean Time
+			1:00	Tunisia	CE%sT
+
+# Uganda
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Kampala	2:09:40 -	LMT	1928 Jul
+			3:00	-	EAT	1930
+			2:30	-	BEAT	1948
+			2:44:45	-	BEAUT	1957
+			3:00	-	EAT
+
+# Zambia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Lusaka	1:53:08 -	LMT	1903 Mar
+			2:00	-	CAT
+
+# Zimbabwe
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Africa/Harare	2:04:12 -	LMT	1903 Mar
+			2:00	-	CAT
diff --git a/tools/zoneinfo/tzdata2009s/antarctica b/tools/zoneinfo/tzdata2009s/antarctica
new file mode 100644
index 0000000..f18ae95
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/antarctica
@@ -0,0 +1,352 @@
+# <pre>
+# @(#)antarctica	8.7
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# From Paul Eggert (1999-11-15):
+# To keep things manageable, we list only locations occupied year-round; see
+# <a href="http://www.comnap.aq/comnap/comnap.nsf/P/Stations/">
+# COMNAP - Stations and Bases
+# </a>
+# and
+# <a href="http://www.spri.cam.ac.uk/bob/periant.htm">
+# Summary of the Peri-Antarctic Islands (1998-07-23)
+# </a>
+# for information.
+# Unless otherwise specified, we have no time zone information.
+#
+# Except for the French entries,
+# I made up all time zone abbreviations mentioned here; corrections welcome!
+# FORMAT is `zzz' and GMTOFF is 0 for locations while uninhabited.
+
+# These rules are stolen from the `europe' file.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	RussAQ	1981	1984	-	Apr	 1	 0:00	1:00	S
+Rule	RussAQ	1981	1983	-	Oct	 1	 0:00	0	-
+Rule	RussAQ	1984	1991	-	Sep	lastSun	 2:00s	0	-
+Rule	RussAQ	1985	1991	-	Mar	lastSun	 2:00s	1:00	S
+Rule	RussAQ	1992	only	-	Mar	lastSat	 23:00	1:00	S
+Rule	RussAQ	1992	only	-	Sep	lastSat	 23:00	0	-
+Rule	RussAQ	1993	max	-	Mar	lastSun	 2:00s	1:00	S
+Rule	RussAQ	1993	1995	-	Sep	lastSun	 2:00s	0	-
+Rule	RussAQ	1996	max	-	Oct	lastSun	 2:00s	0	-
+
+# These rules are stolen from the `southamerica' file.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	ArgAQ	1964	1966	-	Mar	 1	0:00	0	-
+Rule	ArgAQ	1964	1966	-	Oct	15	0:00	1:00	S
+Rule	ArgAQ	1967	only	-	Apr	 2	0:00	0	-
+Rule	ArgAQ	1967	1968	-	Oct	Sun>=1	0:00	1:00	S
+Rule	ArgAQ	1968	1969	-	Apr	Sun>=1	0:00	0	-
+Rule	ArgAQ	1974	only	-	Jan	23	0:00	1:00	S
+Rule	ArgAQ	1974	only	-	May	 1	0:00	0	-
+Rule	ChileAQ	1972	1986	-	Mar	Sun>=9	3:00u	0	-
+Rule	ChileAQ	1974	1987	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	ChileAQ	1987	only	-	Apr	12	3:00u	0	-
+Rule	ChileAQ	1988	1989	-	Mar	Sun>=9	3:00u	0	-
+Rule	ChileAQ	1988	only	-	Oct	Sun>=1	4:00u	1:00	S
+Rule	ChileAQ	1989	only	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	ChileAQ	1990	only	-	Mar	18	3:00u	0	-
+Rule	ChileAQ	1990	only	-	Sep	16	4:00u	1:00	S
+Rule	ChileAQ	1991	1996	-	Mar	Sun>=9	3:00u	0	-
+Rule	ChileAQ	1991	1997	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	ChileAQ	1997	only	-	Mar	30	3:00u	0	-
+Rule	ChileAQ	1998	only	-	Mar	Sun>=9	3:00u	0	-
+Rule	ChileAQ	1998	only	-	Sep	27	4:00u	1:00	S
+Rule	ChileAQ	1999	only	-	Apr	 4	3:00u	0	-
+Rule	ChileAQ	1999	max	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	ChileAQ	2000	max	-	Mar	Sun>=9	3:00u	0	-
+
+
+# Argentina - year-round bases
+# Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
+# Esperanza, San Martin Land, -6323-05659, since 1952-12-17
+# Jubany, Potter Peninsula, King George Island, -6414-0602320, since 1982-01
+# Marambio, Seymour I, -6414-05637, since 1969-10-29
+# Orcadas, Laurie I, -6016-04444, since 1904-02-22
+# San Martin, Debenham I, -6807-06708, since 1951-03-21
+#	(except 1960-03 / 1976-03-21)
+
+# Australia - territories
+# Heard Island, McDonald Islands (uninhabited)
+#	previously sealers and scientific personnel wintered
+#	<a href="http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html">
+#	Margaret Turner reports
+#	</a> (1999-09-30) that they're UTC+5, with no DST;
+#	presumably this is when they have visitors.
+#
+# year-round bases
+# Casey, Bailey Peninsula, -6617+11032, since 1969
+# Davis, Vestfold Hills, -6835+07759, since 1957-01-13
+#	(except 1964-11 - 1969-02)
+# Mawson, Holme Bay, -6736+06253, since 1954-02-13
+
+# From Steffen Thorsen (2009-03-11):
+# Three Australian stations in Antarctica have changed their time zone:
+# Casey moved from UTC+8 to UTC+11
+# Davis moved from UTC+7 to UTC+5
+# Mawson moved from UTC+6 to UTC+5
+# The changes occurred on 2009-10-18 at 02:00 (local times).
+#
+# Government source: (Australian Antarctic Division)
+# <a href="http://www.aad.gov.au/default.asp?casid=37079">
+# http://www.aad.gov.au/default.asp?casid=37079
+# </a>
+#
+# We have more background information here:
+# <a href="http://www.timeanddate.com/news/time/antarctica-new-times.html">
+# http://www.timeanddate.com/news/time/antarctica-new-times.html
+# </a>
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Antarctica/Casey	0	-	zzz	1969
+			8:00	-	WST	2009 Oct 18 2:00
+						# Western (Aus) Standard Time
+			11:00	-	CAST	# Casey Time
+Zone Antarctica/Davis	0	-	zzz	1957 Jan 13
+			7:00	-	DAVT	1964 Nov # Davis Time
+			0	-	zzz	1969 Feb
+			7:00	-	DAVT	2009 Oct 18 2:00
+			5:00	-	DAVT
+Zone Antarctica/Mawson	0	-	zzz	1954 Feb 13
+			6:00	-	MAWT	2009 Oct 18 2:00
+						# Mawson Time
+			5:00	-	MAWT
+# References:
+# <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html">
+# Casey Weather (1998-02-26)
+# </a>
+# <a href="http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html">
+# Davis Station, Antarctica (1998-02-26)
+# </a>
+# <a href="http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html">
+# Mawson Station, Antarctica (1998-02-25)
+# </a>
+
+# Brazil - year-round base
+# Comandante Ferraz, King George Island, -6205+05824, since 1983/4
+
+# Chile - year-round bases and towns
+# Escudero, South Shetland Is, -621157-0585735, since 1994
+# Presidente Eduadro Frei, King George Island, -6214-05848, since 1969-03-07
+# General Bernardo O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
+# Capitan Arturo Prat, -6230-05941
+# Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
+# These locations have always used Santiago time; use TZ='America/Santiago'.
+
+# China - year-round bases
+# Great Wall, King George Island, -6213-05858, since 1985-02-20
+# Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26
+
+# France - year-round bases
+#
+# From Antoine Leca (1997-01-20):
+# Time data are from Nicole Pailleau at the IFRTP
+# (French Institute for Polar Research and Technology).
+# She confirms that French Southern Territories and Terre Adelie bases
+# don't observe daylight saving time, even if Terre Adelie supplies came
+# from Tasmania.
+#
+# French Southern Territories with year-round inhabitants
+#
+# Martin-de-Vivies Base, Amsterdam Island, -374105+0773155, since 1950
+# Alfred-Faure Base, Crozet Islands, -462551+0515152, since 1964
+# Port-aux-Francais, Kerguelen Islands, -492110+0701303, since 1951;
+#	whaling & sealing station operated 1908/1914, 1920/1929, and 1951/1956
+#
+# St Paul Island - near Amsterdam, uninhabited
+#	fishing stations operated variously 1819/1931
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Indian/Kerguelen	0	-	zzz	1950	# Port-aux-Francais
+			5:00	-	TFT	# ISO code TF Time
+#
+# year-round base in the main continent
+# Dumont-d'Urville, Ile des Petrels, -6640+14001, since 1956-11
+#
+# Another base at Port-Martin, 50km east, began operation in 1947.
+# It was destroyed by fire on 1952-01-14.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Antarctica/DumontDUrville 0 -	zzz	1947
+			10:00	-	PMT	1952 Jan 14 # Port-Martin Time
+			0	-	zzz	1956 Nov
+			10:00	-	DDUT	# Dumont-d'Urville Time
+# Reference:
+# <a href="http://en.wikipedia.org/wiki/Dumont_d'Urville_Station">
+# Dumont d'Urville Station (2005-12-05)
+# </a>
+
+# Germany - year-round base
+# Georg von Neumayer, -7039-00815
+
+# India - year-round base
+# Dakshin Gangotri, -7005+01200
+
+# Japan - year-round bases
+# Dome Fuji, -7719+03942
+# Syowa, -690022+0393524
+#
+# From Hideyuki Suzuki (1999-02-06):
+# In all Japanese stations, +0300 is used as the standard time.
+#
+# Syowa station, which is the first antarctic station of Japan,
+# was established on 1957-01-29.  Since Syowa station is still the main
+# station of Japan, it's appropriate for the principal location.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Antarctica/Syowa	0	-	zzz	1957 Jan 29
+			3:00	-	SYOT	# Syowa Time
+# See:
+# <a href="http://www.nipr.ac.jp/english/ara01.html">
+# NIPR Antarctic Research Activities (1999-08-17)
+# </a>
+
+# S Korea - year-round base
+# King Sejong, King George Island, -6213-05847, since 1988
+
+# New Zealand - claims
+# Balleny Islands (never inhabited)
+# Scott Island (never inhabited)
+#
+# year-round base
+# Scott, Ross Island, since 1957-01, is like Antarctica/McMurdo.
+#
+# These rules for New Zealand are stolen from the `australasia' file.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	NZAQ	1974	only	-	Nov	 3	2:00s	1:00	D
+Rule	NZAQ	1975	1988	-	Oct	lastSun	2:00s	1:00	D
+Rule	NZAQ	1989	only	-	Oct	 8	2:00s	1:00	D
+Rule	NZAQ	1990	2006	-	Oct	Sun>=1	2:00s	1:00	D
+Rule	NZAQ	1975	only	-	Feb	23	2:00s	0	S
+Rule	NZAQ	1976	1989	-	Mar	Sun>=1	2:00s	0	S
+Rule	NZAQ	1990	2007	-	Mar	Sun>=15	2:00s	0	S
+Rule	NZAQ	2007	max	-	Sep	lastSun	2:00s	1:00	D
+Rule	NZAQ	2008	max	-	Apr	Sun>=1	2:00s	0	S
+
+# Norway - territories
+# Bouvet (never inhabited)
+#
+# claims
+# Peter I Island (never inhabited)
+
+# Poland - year-round base
+# Arctowski, King George Island, -620945-0582745, since 1977
+
+# Russia - year-round bases
+# Bellingshausen, King George Island, -621159-0585337, since 1968-02-22
+# Mirny, Davis coast, -6633+09301, since 1956-02
+# Molodezhnaya, Alasheyev Bay, -6740+04551,
+#	year-round from 1962-02 to 1999-07-01
+# Novolazarevskaya, Queen Maud Land, -7046+01150,
+#	year-round from 1960/61 to 1992
+
+# Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11
+# <a href="http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP">
+# From Craig Mundell (1994-12-15)</a>:
+# Vostok, which is one of the Russian stations, is set on the same
+# time as Moscow, Russia.
+#
+# From Lee Hotz (2001-03-08):
+# I queried the folks at Columbia who spent the summer at Vostok and this is
+# what they had to say about time there:
+# ``in the US Camp (East Camp) we have been on New Zealand (McMurdo)
+# time, which is 12 hours ahead of GMT. The Russian Station Vostok was
+# 6 hours behind that (although only 2 miles away, i.e. 6 hours ahead
+# of GMT). This is a time zone I think two hours east of Moscow. The
+# natural time zone is in between the two: 8 hours ahead of GMT.''
+#
+# From Paul Eggert (2001-05-04):
+# This seems to be hopelessly confusing, so I asked Lee Hotz about it
+# in person.  He said that some Antartic locations set their local
+# time so that noon is the warmest part of the day, and that this
+# changes during the year and does not necessarily correspond to mean
+# solar noon.  So the Vostok time might have been whatever the clocks
+# happened to be during their visit.  So we still don't really know what time
+# it is at Vostok.  But we'll guess UTC+6.
+#
+Zone Antarctica/Vostok	0	-	zzz	1957 Dec 16
+			6:00	-	VOST	# Vostok time
+
+# S Africa - year-round bases
+# Marion Island, -4653+03752
+# Sanae, -7141-00250
+
+# UK
+#
+# British Antarctic Territories (BAT) claims
+# South Orkney Islands
+#	scientific station from 1903
+#	whaling station at Signy I 1920/1926
+# South Shetland Islands
+#
+# year-round bases
+# Bird Island, South Georgia, -5400-03803, since 1983
+# Deception Island, -6259-06034, whaling station 1912/1931,
+#	scientific station 1943/1967,
+#	previously sealers and a scientific expedition wintered by accident,
+#	and a garrison was deployed briefly
+# Halley, Coates Land, -7535-02604, since 1956-01-06
+#	Halley is on a moving ice shelf and is periodically relocated
+#	so that it is never more than 10km from its nominal location.
+# Rothera, Adelaide Island, -6734-6808, since 1976-12-01
+#
+# From Paul Eggert (2002-10-22)
+# <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Antarctica/Rothera	0	-	zzz	1976 Dec  1
+			-3:00	-	ROTT	# Rothera time
+
+# Uruguay - year round base
+# Artigas, King George Island, -621104-0585107
+
+# USA - year-round bases
+#
+# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
+#
+# From Ethan Dicks (1996-10-06):
+# It keeps the same time as Punta Arenas, Chile, because, just like us
+# and the South Pole, that's the other end of their supply line....
+# I verified with someone who was there that since 1980,
+# Palmer has followed Chile.  Prior to that, before the Falklands War,
+# Palmer used to be supplied from Argentina.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Antarctica/Palmer	0	-	zzz	1965
+			-4:00	ArgAQ	AR%sT	1969 Oct 5
+			-3:00	ArgAQ	AR%sT	1982 May
+			-4:00	ChileAQ	CL%sT
+#
+#
+# McMurdo, Ross Island, since 1955-12
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Antarctica/McMurdo	0	-	zzz	1956
+			12:00	NZAQ	NZ%sT
+#
+# Amundsen-Scott, South Pole, continuously occupied since 1956-11-20
+#
+# From Paul Eggert (1996-09-03):
+# Normally it wouldn't have a separate entry, since it's like the
+# larger Antarctica/McMurdo since 1970, but it's too famous to omit.
+#
+# From Chris Carrier (1996-06-27):
+# Siple, the first commander of the South Pole station,
+# stated that he would have liked to have kept GMT at the station,
+# but that he found it more convenient to keep GMT+12
+# as supplies for the station were coming from McMurdo Sound,
+# which was on GMT+12 because New Zealand was on GMT+12 all year
+# at that time (1957).  (Source: Siple's book 90 degrees SOUTH.)
+#
+# From Susan Smith
+# http://www.cybertours.com/whs/pole10.html
+# (1995-11-13 16:24:56 +1300, no longer available):
+# We use the same time as McMurdo does.
+# And they use the same time as Christchurch, NZ does....
+# One last quirk about South Pole time.
+# All the electric clocks are usually wrong.
+# Something about the generators running at 60.1hertz or something
+# makes all of the clocks run fast.  So every couple of days,
+# we have to go around and set them back 5 minutes or so.
+# Maybe if we let them run fast all of the time, we'd get to leave here sooner!!
+#
+Link	Antarctica/McMurdo	Antarctica/South_Pole
diff --git a/tools/zoneinfo/tzdata2009s/asia b/tools/zoneinfo/tzdata2009s/asia
new file mode 100644
index 0000000..1987fc8
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/asia
@@ -0,0 +1,2396 @@
+# @(#)asia	8.44
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+#
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually.  Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Another source occasionally used is Edward W. Whitman, World Time Differences,
+# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+# I found in the UCLA library.
+#
+# A reliable and entertaining source about time zones is
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+#
+# I invented the abbreviations marked `*' in the following table;
+# the rest are from earlier versions of this file, or from other sources.
+# Corrections are welcome!
+#	     std  dst
+#	     LMT	Local Mean Time
+#	2:00 EET  EEST	Eastern European Time
+#	2:00 IST  IDT	Israel
+#	3:00 AST  ADT	Arabia*
+#	3:30 IRST IRDT	Iran
+#	4:00 GST	Gulf*
+#	5:30 IST	India
+#	7:00 ICT	Indochina*
+#	7:00 WIT	west Indonesia
+#	8:00 CIT	central Indonesia
+#	8:00 CST	China
+#	9:00 CJT	Central Japanese Time (1896/1937)*
+#	9:00 EIT	east Indonesia
+#	9:00 JST  JDT	Japan
+#	9:00 KST  KDT	Korea
+#	9:30 CST	(Australian) Central Standard Time
+#
+# See the `europe' file for Russia and Turkey in Asia.
+
+# From Guy Harris:
+# Incorporates data for Singapore from Robert Elz' asia 1.1, as well as
+# additional information from Tom Yap, Sun Microsystems Intercontinental
+# Technical Support (including a page from the Official Airline Guide -
+# Worldwide Edition).  The names for time zones are guesses.
+
+###############################################################################
+
+# These rules are stolen from the `europe' file.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	EUAsia	1981	max	-	Mar	lastSun	 1:00u	1:00	S
+Rule	EUAsia	1979	1995	-	Sep	lastSun	 1:00u	0	-
+Rule	EUAsia	1996	max	-	Oct	lastSun	 1:00u	0	-
+Rule E-EurAsia	1981	max	-	Mar	lastSun	 0:00	1:00	S
+Rule E-EurAsia	1979	1995	-	Sep	lastSun	 0:00	0	-
+Rule E-EurAsia	1996	max	-	Oct	lastSun	 0:00	0	-
+Rule RussiaAsia	1981	1984	-	Apr	1	 0:00	1:00	S
+Rule RussiaAsia	1981	1983	-	Oct	1	 0:00	0	-
+Rule RussiaAsia	1984	1991	-	Sep	lastSun	 2:00s	0	-
+Rule RussiaAsia	1985	1991	-	Mar	lastSun	 2:00s	1:00	S
+Rule RussiaAsia	1992	only	-	Mar	lastSat	23:00	1:00	S
+Rule RussiaAsia	1992	only	-	Sep	lastSat	23:00	0	-
+Rule RussiaAsia	1993	max	-	Mar	lastSun	 2:00s	1:00	S
+Rule RussiaAsia	1993	1995	-	Sep	lastSun	 2:00s	0	-
+Rule RussiaAsia	1996	max	-	Oct	lastSun	 2:00s	0	-
+
+# Afghanistan
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Kabul	4:36:48 -	LMT	1890
+			4:00	-	AFT	1945
+			4:30	-	AFT
+
+# Armenia
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger have Yerevan switching to 3:00 (with Russian DST)
+# in spring 1991, then to 4:00 with no DST in fall 1995, then
+# readopting Russian DST in 1997.  Go with Shanks & Pottenger, even
+# when they disagree with others.  Edgar Der-Danieliantz
+# reported (1996-05-04) that Yerevan probably wouldn't use DST
+# in 1996, though it did use DST in 1995.  IATA SSIM (1991/1998) reports that
+# Armenia switched from 3:00 to 4:00 in 1998 and observed DST after 1991,
+# but started switching at 3:00s in 1998.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Yerevan	2:58:00 -	LMT	1924 May  2
+			3:00	-	YERT	1957 Mar    # Yerevan Time
+			4:00 RussiaAsia YER%sT	1991 Mar 31 2:00s
+			3:00	1:00	YERST	1991 Sep 23 # independence
+			3:00 RussiaAsia	AM%sT	1995 Sep 24 2:00s
+			4:00	-	AMT	1997
+			4:00 RussiaAsia	AM%sT
+
+# Azerbaijan
+# From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
+# According to the resolution of Cabinet of Ministers, 1997
+# Resolution available at: http://aif.az/docs/daylight_res.pdf
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Azer	1997	max	-	Mar	lastSun	 4:00	1:00	S
+Rule	Azer	1997	max	-	Oct	lastSun	 5:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Baku	3:19:24 -	LMT	1924 May  2
+			3:00	-	BAKT	1957 Mar    # Baku Time
+			4:00 RussiaAsia BAK%sT	1991 Mar 31 2:00s
+			3:00	1:00	BAKST	1991 Aug 30 # independence
+			3:00 RussiaAsia	AZ%sT	1992 Sep lastSat 23:00
+			4:00	-	AZT	1996 # Azerbaijan time
+			4:00	EUAsia	AZ%sT	1997
+			4:00	Azer	AZ%sT
+
+# Bahrain
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Bahrain	3:22:20 -	LMT	1920		# Al Manamah
+			4:00	-	GST	1972 Jun
+			3:00	-	AST
+
+# Bangladesh
+# From Alexander Krivenyshev (2009-05-13):
+# According to newspaper Asian Tribune (May 6, 2009) Bangladesh may introduce
+# Daylight Saving Time from June 16 to Sept 30
+#
+# Bangladesh to introduce daylight saving time likely from June 16
+# <a href="http://www.asiantribune.com/?q=node/17288">
+# http://www.asiantribune.com/?q=node/17288
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh02.html">
+# http://www.worldtimezone.com/dst_news/dst_news_bangladesh02.html
+# </a>
+#
+# "... Bangladesh government has decided to switch daylight saving time from
+# June
+# 16 till September 30 in a bid to ensure maximum use of daylight to cope with
+# crippling power crisis. "
+#
+# The switch will remain in effect from June 16 to Sept 30 (2009) but if
+# implemented the next year, it will come in force from April 1, 2010
+
+# From Steffen Thorsen (2009-06-02):
+# They have finally decided now, but changed the start date to midnight between
+# the 19th and 20th, and they have not set the end date yet.
+#
+# Some sources:
+# <a href="http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601">
+# http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
+# </a>
+# <a href="http://bdnews24.com/details.php?id=85889&cid=2">
+# http://bdnews24.com/details.php?id=85889&cid=2
+# </a>
+#
+# Our wrap-up:
+# <a href="http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html">
+# http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
+# </a>
+
+# From A. N. M. Kamrus Saadat (2009-06-15):
+# Finally we've got the official mail regarding DST start time where DST start 
+# time is mentioned as Jun 19 2009, 23:00 from BTRC (Bangladesh 
+# Telecommunication Regulatory Commission). 
+#
+# No DST end date has been announced yet.
+
+# From Alexander Krivenyshev (2009-09-25):
+# Bangladesh won't go back to Standard Time from October 1, 2009, 
+# instead it will continue DST measure till the cabinet makes a fresh decision. 
+#
+# Following report by same newspaper-"The Daily Star Friday":
+# "DST change awaits cabinet decision-Clock won't go back by 1-hr from Oct 1"
+# <a href="http://www.thedailystar.net/newDesign/news-details.php?nid=107021">
+# http://www.thedailystar.net/newDesign/news-details.php?nid=107021
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_bangladesh04.html">
+# http://www.worldtimezone.com/dst_news/dst_news_bangladesh04.html
+# </a>
+
+# From Steffen Thorsen (2009-10-13):
+# IANS (Indo-Asian News Service) now reports:
+# Bangladesh has decided that the clock advanced by an hour to make 
+# maximum use of daylight hours as an energy saving measure would 
+# "continue for an indefinite period."
+#
+# One of many places where it is published:
+# <a href="http://www.thaindian.com/newsportal/business/bangladesh-to-continue-indefinitely-with-advanced-time_100259987.html">
+# http://www.thaindian.com/newsportal/business/bangladesh-to-continue-indefinitely-with-advanced-time_100259987.html
+# </a>
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Dhaka	6:01:40 -	LMT	1890
+			5:53:20	-	HMT	1941 Oct    # Howrah Mean Time?
+			6:30	-	BURT	1942 May 15 # Burma Time
+			5:30	-	IST	1942 Sep
+			6:30	-	BURT	1951 Sep 30
+			6:00	-	DACT	1971 Mar 26 # Dacca Time
+			6:00	-	BDT	2009 Jun 19 23:00 # Bangladesh Time
+			6:00	1:00	BDST
+
+# Bhutan
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Thimphu	5:58:36 -	LMT	1947 Aug 15 # or Thimbu
+			5:30	-	IST	1987 Oct
+			6:00	-	BTT	# Bhutan Time
+
+# British Indian Ocean Territory
+# Whitman and the 1995 CIA time zone map say 5:00, but the
+# 1997 and later maps say 6:00.  Assume the switch occurred in 1996.
+# We have no information as to when standard time was introduced;
+# assume it occurred in 1907, the same year as Mauritius (which
+# then contained the Chagos Archipelago).
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Indian/Chagos	4:49:40	-	LMT	1907
+			5:00	-	IOT	1996 # BIOT Time
+			6:00	-	IOT
+
+# Brunei
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Brunei	7:39:40 -	LMT	1926 Mar   # Bandar Seri Begawan
+			7:30	-	BNT	1933
+			8:00	-	BNT
+
+# Burma / Myanmar
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Rangoon	6:24:40 -	LMT	1880		# or Yangon
+			6:24:36	-	RMT	1920	   # Rangoon Mean Time?
+			6:30	-	BURT	1942 May   # Burma Time
+			9:00	-	JST	1945 May 3
+			6:30	-	MMT		   # Myanmar Time
+
+# Cambodia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Phnom_Penh	6:59:40 -	LMT	1906 Jun  9
+			7:06:20	-	SMT	1911 Mar 11 0:01 # Saigon MT?
+			7:00	-	ICT	1912 May
+			8:00	-	ICT	1931 May
+			7:00	-	ICT
+
+# China
+
+# From Guy Harris:
+# People's Republic of China.  Yes, they really have only one time zone.
+
+# From Bob Devine (1988-01-28):
+# No they don't.  See TIME mag, 1986-02-17 p.52.  Even though
+# China is across 4 physical time zones, before Feb 1, 1986 only the
+# Peking (Bejing) time zone was recognized.  Since that date, China
+# has two of 'em -- Peking's and Urumqi (named after the capital of
+# the Xinjiang Uyghur Autonomous Region).  I don't know about DST for it.
+#
+# . . .I just deleted the DST table and this editor makes it too
+# painful to suck in another copy..  So, here is what I have for
+# DST start/end dates for Peking's time zone (info from AP):
+#
+#     1986 May 4 - Sept 14
+#     1987 mid-April - ??
+
+# From U. S. Naval Observatory (1989-01-19):
+# CHINA               8 H  AHEAD OF UTC  ALL OF CHINA, INCL TAIWAN
+# CHINA               9 H  AHEAD OF UTC  APR 17 - SEP 10
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that China (except for Hong Kong and Macau)
+# has had a single time zone since 1980 May 1, observing summer DST
+# from 1986 through 1991; this contradicts Devine's
+# note about Time magazine, though apparently _something_ happened in 1986.
+# Go with Shanks & Pottenger for now.  I made up names for the other
+# pre-1980 time zones.
+
+# From Shanks & Pottenger:
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Shang	1940	only	-	Jun	 3	0:00	1:00	D
+Rule	Shang	1940	1941	-	Oct	 1	0:00	0	S
+Rule	Shang	1941	only	-	Mar	16	0:00	1:00	D
+Rule	PRC	1986	only	-	May	 4	0:00	1:00	D
+Rule	PRC	1986	1991	-	Sep	Sun>=11	0:00	0	S
+Rule	PRC	1987	1991	-	Apr	Sun>=10	0:00	1:00	D
+
+# From Anthony Fok (2001-12-20):
+# BTW, I did some research on-line and found some info regarding these five
+# historic timezones from some Taiwan websites.  And yes, there are official
+# Chinese names for these locales (before 1949).
+#
+# From Jesper Norgaard Welen (2006-07-14):
+# I have investigated the timezones around 1970 on the
+# http://www.astro.com/atlas site [with provinces and county
+# boundaries summarized below]....  A few other exceptions were two
+# counties on the Sichuan side of the Xizang-Sichuan border,
+# counties Dege and Baiyu which lies on the Sichuan side and are
+# therefore supposed to be GMT+7, Xizang region being GMT+6, but Dege
+# county is GMT+8 according to astro.com while Baiyu county is GMT+6
+# (could be true), for the moment I am assuming that those two
+# counties are mistakes in the astro.com data.
+
+# From Paul Eggert (2008-02-11):
+# I just now checked Google News for western news sources that talk
+# about China's single time zone, and couldn't find anything before 1986
+# talking about China being in one time zone.  (That article was: Jim
+# Mann, "A clumsy embrace for another western custom: China on daylight
+# time--sort of", Los Angeles Times, 1986-05-05.  By the way, this
+# article confirms the tz database's data claiming that China began
+# observing daylight saving time in 1986.
+#
+# From Thomas S. Mullaney (2008-02-11):
+# I think you're combining two subjects that need to treated 
+# separately: daylight savings (which, you're correct, wasn't 
+# implemented until the 1980s) and the unified time zone centered near 
+# Beijing (which was implemented in 1949). Briefly, there was also a 
+# "Lhasa Time" in Tibet and "Urumqi Time" in Xinjiang. The first was 
+# ceased, and the second eventually recognized (again, in the 1980s).
+#
+# From Paul Eggert (2008-06-30):
+# There seems to be a good chance China switched to a single time zone in 1949
+# rather than in 1980 as Shanks & Pottenger have it, but we don't have a
+# reliable documentary source saying so yet, so for now we still go with
+# Shanks & Pottenger.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
+# Heilongjiang (except Mohe county), Jilin
+Zone	Asia/Harbin	8:26:44	-	LMT	1928 # or Haerbin
+			8:30	-	CHAT	1932 Mar # Changbai Time
+			8:00	-	CST	1940
+			9:00	-	CHAT	1966 May
+			8:30	-	CHAT	1980 May
+			8:00	PRC	C%sT
+# Zhongyuan Time ("Central plain Time")
+# most of China
+Zone	Asia/Shanghai	8:05:52	-	LMT	1928
+			8:00	Shang	C%sT	1949
+			8:00	PRC	C%sT
+# Long-shu Time (probably due to Long and Shu being two names of that area)
+# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
+# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+# Yangchun, Yangjiang, Yu'nan, and Yunfu.
+Zone	Asia/Chongqing	7:06:20	-	LMT	1928 # or Chungking
+			7:00	-	LONT	1980 May # Long-shu Time
+			8:00	PRC	C%sT
+# Xin-zang Time ("Xinjiang-Tibet Time")
+# The Gansu counties Aksay, Anxi, Dunhuang, Subei; west Qinghai;
+# the Guangdong counties  Xuwen, Haikang, Suixi, Lianjiang,
+# Zhanjiang, Wuchuan, Huazhou, Gaozhou, Maoming, Dianbai, and Xinyi;
+# east Tibet, including Lhasa, Chamdo, Shigaise, Jimsar, Shawan and Hutubi;
+# east Xinjiang, including Urumqi, Turpan, Karamay, Korla, Minfeng, Jinghe,
+# Wusu, Qiemo, Xinyan, Wulanwusu, Jinghe, Yumin, Tacheng, Tuoli, Emin,
+# Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
+# Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+Zone	Asia/Urumqi	5:50:20	-	LMT	1928 # or Urumchi
+			6:00	-	URUT	1980 May # Urumqi Time
+			8:00	PRC	C%sT
+# Kunlun Time
+# West Tibet, including Pulan, Aheqi, Shufu, Shule;
+# West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+# Zhaosu, Tekesi, Gongliu, Chabuchaer, Huocheng, Bole, Pishan, Suiding,
+# and Yarkand.
+Zone	Asia/Kashgar	5:03:56	-	LMT	1928 # or Kashi or Kaxgar
+			5:30	-	KAST	1940	 # Kashgar Time
+			5:00	-	KAST	1980 May
+			8:00	PRC	C%sT
+
+
+# From Lee Yiu Chung (2009-10-24):
+# I found there are some mistakes for the historial DST rule for Hong
+# Kong. Accoring to the DST record from Hong Kong Observatory (actually,
+# it is not [an] observatory, but the official meteorological agency of HK,
+# and also serves as the official timing agency), there are some missing
+# and incorrect rules. Although the exact switch over time is missing, I
+# think 3:30 is correct. The official DST record for Hong Kong can be
+# obtained from
+# <a href="http://www.hko.gov.hk/gts/time/Summertime.htm">
+# http://www.hko.gov.hk/gts/time/Summertime.htm
+# </a>.
+
+# From Arthur David Olson (2009-10-28):
+# Here are the dates given at
+# <a href="http://www.hko.gov.hk/gts/time/Summertime.htm">
+# http://www.hko.gov.hk/gts/time/Summertime.htm
+# </a>
+# as of 2009-10-28:
+# Year        Period
+# 1941        1 Apr to 30 Sep
+# 1942        Whole year 
+# 1943        Whole year
+# 1944        Whole year
+# 1945        Whole year
+# 1946        20 Apr to 1 Dec
+# 1947        13 Apr to 30 Dec
+# 1948        2 May to 31 Oct
+# 1949        3 Apr to 30 Oct
+# 1950        2 Apr to 29 Oct
+# 1951        1 Apr to 28 Oct
+# 1952        6 Apr to 25 Oct
+# 1953        5 Apr to 1 Nov
+# 1954        21 Mar to 31 Oct
+# 1955        20 Mar to 6 Nov
+# 1956        18 Mar to 4 Nov
+# 1957        24 Mar to 3 Nov
+# 1958        23 Mar to 2 Nov
+# 1959        22 Mar to 1 Nov
+# 1960        20 Mar to 6 Nov
+# 1961        19 Mar to 5 Nov
+# 1962        18 Mar to 4 Nov
+# 1963        24 Mar to 3 Nov
+# 1964        22 Mar to 1 Nov
+# 1965        18 Apr to 17 Oct
+# 1966        17 Apr to 16 Oct
+# 1967        16 Apr to 22 Oct
+# 1968        21 Apr to 20 Oct
+# 1969        20 Apr to 19 Oct
+# 1970        19 Apr to 18 Oct
+# 1971        18 Apr to 17 Oct
+# 1972        16 Apr to 22 Oct
+# 1973        22 Apr to 21 Oct
+# 1973/74     30 Dec 73 to 20 Oct 74
+# 1975        20 Apr to 19 Oct
+# 1976        18 Apr to 17 Oct
+# 1977        Nil
+# 1978        Nil
+# 1979        13 May to 21 Oct
+# 1980 to Now Nil
+# The page does not give start or end times of day.
+# The page does not give a start date for 1942.
+# The page does not givw an end date for 1945.
+# The Japanese occupation of Hong Kong began on 1941-12-25.
+# The Japanese surrender of Hong Kong was signed 1945-09-15.
+# For lack of anything better, use start of those days as the transition times.
+
+# Hong Kong (Xianggang)
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	HK	1941	only	-	Apr	1	3:30	1:00	S
+Rule	HK	1941	only	-	Sep	30	3:30	0	-
+Rule	HK	1946	only	-	Apr	20	3:30	1:00	S
+Rule	HK	1946	only	-	Dec	1	3:30	0	-
+Rule	HK	1947	only	-	Apr	13	3:30	1:00	S
+Rule	HK	1947	only	-	Dec	30	3:30	0	-
+Rule	HK	1948	only	-	May	2	3:30	1:00	S
+Rule	HK	1948	1951	-	Oct	lastSun	3:30	0	-
+Rule	HK	1952	only	-	Oct	25	3:30	0	-
+Rule	HK	1949	1953	-	Apr	Sun>=1	3:30	1:00	S
+Rule	HK	1953	only	-	Nov	1	3:30	0	-
+Rule	HK	1954	1964	-	Mar	Sun>=18	3:30	1:00	S
+Rule	HK	1954	only	-	Oct	31	3:30	0	-
+Rule	HK	1955	1964	-	Nov	Sun>=1	3:30	0	-
+Rule	HK	1965	1977	-	Apr	Sun>=16	3:30	1:00	S
+Rule	HK	1965	1977	-	Oct	Sun>=16	3:30	0	-
+Rule	HK	1973	only	-	Dec	30	3:30	1:00	S
+Rule	HK	1979	only	-	May	Sun>=8	3:30	1:00	S
+Rule	HK	1979	only	-	Oct	Sun>=16	3:30	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Hong_Kong	7:36:36 -	LMT	1904 Oct 30
+			8:00	HK	HK%sT	1941 Dec 25
+			9:00	-	JST	1945 Sep 15
+			8:00	HK	HK%sT
+
+###############################################################################
+
+# Taiwan
+
+# Shanks & Pottenger write that Taiwan observed DST during 1945, when it
+# was still controlled by Japan.  This is hard to believe, but we don't
+# have any other information.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Taiwan	1945	1951	-	May	1	0:00	1:00	D
+Rule	Taiwan	1945	1951	-	Oct	1	0:00	0	S
+Rule	Taiwan	1952	only	-	Mar	1	0:00	1:00	D
+Rule	Taiwan	1952	1954	-	Nov	1	0:00	0	S
+Rule	Taiwan	1953	1959	-	Apr	1	0:00	1:00	D
+Rule	Taiwan	1955	1961	-	Oct	1	0:00	0	S
+Rule	Taiwan	1960	1961	-	Jun	1	0:00	1:00	D
+Rule	Taiwan	1974	1975	-	Apr	1	0:00	1:00	D
+Rule	Taiwan	1974	1975	-	Oct	1	0:00	0	S
+Rule	Taiwan	1980	only	-	Jun	30	0:00	1:00	D
+Rule	Taiwan	1980	only	-	Sep	30	0:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Taipei	8:06:00 -	LMT	1896 # or Taibei or T'ai-pei
+			8:00	Taiwan	C%sT
+
+# Macau (Macao, Aomen)
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Macau	1961	1962	-	Mar	Sun>=16	3:30	1:00	S
+Rule	Macau	1961	1964	-	Nov	Sun>=1	3:30	0	-
+Rule	Macau	1963	only	-	Mar	Sun>=16	0:00	1:00	S
+Rule	Macau	1964	only	-	Mar	Sun>=16	3:30	1:00	S
+Rule	Macau	1965	only	-	Mar	Sun>=16	0:00	1:00	S
+Rule	Macau	1965	only	-	Oct	31	0:00	0	-
+Rule	Macau	1966	1971	-	Apr	Sun>=16	3:30	1:00	S
+Rule	Macau	1966	1971	-	Oct	Sun>=16	3:30	0	-
+Rule	Macau	1972	1974	-	Apr	Sun>=15	0:00	1:00	S
+Rule	Macau	1972	1973	-	Oct	Sun>=15	0:00	0	-
+Rule	Macau	1974	1977	-	Oct	Sun>=15	3:30	0	-
+Rule	Macau	1975	1977	-	Apr	Sun>=15	3:30	1:00	S
+Rule	Macau	1978	1980	-	Apr	Sun>=15	0:00	1:00	S
+Rule	Macau	1978	1980	-	Oct	Sun>=15	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Macau	7:34:20 -	LMT	1912
+			8:00	Macau	MO%sT	1999 Dec 20 # return to China
+			8:00	PRC	C%sT
+
+
+###############################################################################
+
+# Cyprus
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Cyprus	1975	only	-	Apr	13	0:00	1:00	S
+Rule	Cyprus	1975	only	-	Oct	12	0:00	0	-
+Rule	Cyprus	1976	only	-	May	15	0:00	1:00	S
+Rule	Cyprus	1976	only	-	Oct	11	0:00	0	-
+Rule	Cyprus	1977	1980	-	Apr	Sun>=1	0:00	1:00	S
+Rule	Cyprus	1977	only	-	Sep	25	0:00	0	-
+Rule	Cyprus	1978	only	-	Oct	2	0:00	0	-
+Rule	Cyprus	1979	1997	-	Sep	lastSun	0:00	0	-
+Rule	Cyprus	1981	1998	-	Mar	lastSun	0:00	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Nicosia	2:13:28 -	LMT	1921 Nov 14
+			2:00	Cyprus	EE%sT	1998 Sep
+			2:00	EUAsia	EE%sT
+# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
+
+# Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+# However, for various reasons many users expect to find it under Europe.
+Link	Asia/Nicosia	Europe/Nicosia
+
+# Georgia
+# From Paul Eggert (1994-11-19):
+# Today's _Economist_ (p 60) reports that Georgia moved its clocks forward
+# an hour recently, due to a law proposed by Zurab Murvanidze,
+# an MP who went on a hunger strike for 11 days to force discussion about it!
+# We have no details, but we'll guess they didn't move the clocks back in fall.
+#
+# From Mathew Englander, quoting AP (1996-10-23 13:05-04):
+# Instead of putting back clocks at the end of October, Georgia
+# will stay on daylight savings time this winter to save energy,
+# President Eduard Shevardnadze decreed Wednesday.
+#
+# From the BBC via Joseph S. Myers (2004-06-27):
+#
+# Georgia moved closer to Western Europe on Sunday...  The former Soviet
+# republic has changed its time zone back to that of Moscow.  As a result it
+# is now just four hours ahead of Greenwich Mean Time, rather than five hours
+# ahead.  The switch was decreed by the pro-Western president of Georgia,
+# Mikhail Saakashvili, who said the change was partly prompted by the process
+# of integration into Europe.
+
+# From Teimuraz Abashidze (2005-11-07):
+# Government of Georgia ... decided to NOT CHANGE daylight savings time on
+# [Oct.] 30, as it was done before during last more than 10 years.
+# Currently, we are in fact GMT +4:00, as before 30 October it was GMT
+# +3:00.... The problem is, there is NO FORMAL LAW or governmental document
+# about it.  As far as I can find, I was told, that there is no document,
+# because we just DIDN'T ISSUE document about switching to winter time....
+# I don't know what can be done, especially knowing that some years ago our
+# DST rules where changed THREE TIMES during one month.
+
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Tbilisi	2:59:16 -	LMT	1880
+			2:59:16	-	TBMT	1924 May  2 # Tbilisi Mean Time
+			3:00	-	TBIT	1957 Mar    # Tbilisi Time
+			4:00 RussiaAsia TBI%sT	1991 Mar 31 2:00s
+			3:00	1:00	TBIST	1991 Apr  9 # independence
+			3:00 RussiaAsia GE%sT	1992 # Georgia Time
+			3:00 E-EurAsia	GE%sT	1994 Sep lastSun
+			4:00 E-EurAsia	GE%sT	1996 Oct lastSun
+			4:00	1:00	GEST	1997 Mar lastSun
+			4:00 E-EurAsia	GE%sT	2004 Jun 27
+			3:00 RussiaAsia	GE%sT	2005 Mar lastSun 2:00
+			4:00	-	GET
+
+# East Timor
+
+# See Indonesia for the 1945 transition.
+
+# From Joao Carrascalao, brother of the former governor of East Timor, in
+# <a href="http://etan.org/et99c/december/26-31/30ETMAY.htm">
+# East Timor may be late for its millennium
+# </a> (1999-12-26/31):
+# Portugal tried to change the time forward in 1974 because the sun
+# rises too early but the suggestion raised a lot of problems with the
+# Timorese and I still don't think it would work today because it
+# conflicts with their way of life.
+
+# From Paul Eggert (2000-12-04):
+# We don't have any record of the above attempt.
+# Most likely our records are incomplete, but we have no better data.
+
+# <a href="http://www.hri.org/news/world/undh/last/00-08-16.undh.html">
+# From Manoel de Almeida e Silva, Deputy Spokesman for the UN Secretary-General
+# (2000-08-16)</a>:
+# The Cabinet of the East Timor Transition Administration decided
+# today to advance East Timor's time by one hour.  The time change,
+# which will be permanent, with no seasonal adjustment, will happen at
+# midnight on Saturday, September 16.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Dili	8:22:20 -	LMT	1912
+			8:00	-	TLT	1942 Feb 21 23:00 # E Timor Time
+			9:00	-	JST	1945 Sep 23
+			9:00	-	TLT	1976 May  3
+			8:00	-	CIT	2000 Sep 17 00:00
+			9:00	-	TLT
+
+# India
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Kolkata	5:53:28 -	LMT	1880	# Kolkata
+			5:53:20	-	HMT	1941 Oct    # Howrah Mean Time?
+			6:30	-	BURT	1942 May 15 # Burma Time
+			5:30	-	IST	1942 Sep
+			5:30	1:00	IST	1945 Oct 15
+			5:30	-	IST
+# The following are like Asia/Kolkata:
+#	Andaman Is
+#	Lakshadweep (Laccadive, Minicoy and Amindivi Is)
+#	Nicobar Is
+
+# Indonesia
+#
+# From Gwillim Law (2001-05-28), overriding Shanks & Pottenger:
+# <http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime>
+# says that Indonesia's time zones changed on 1988-01-01.  Looking at some
+# time zone maps, I think that must refer to Western Borneo (Kalimantan Barat
+# and Kalimantan Tengah) switching from UTC+8 to UTC+7.
+#
+# From Paul Eggert (2007-03-10):
+# Here is another correction to Shanks & Pottenger.
+# JohnTWB writes that Japanese forces did not surrender control in
+# Indonesia until 1945-09-01 00:00 at the earliest (in Jakarta) and
+# other formal surrender ceremonies were September 9, 11, and 13, plus
+# September 12 for the regional surrender to Mountbatten in Singapore.
+# These would be the earliest possible times for a change.
+# Regimes horaires pour le monde entier, by Henri Le Corre, (Editions
+# Traditionnelles, 1987, Paris) says that Java and Madura switched
+# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
+# (Hollandia).  For now, assume all Indonesian locations other than Jayapura
+# switched on 1945-09-23.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Asia/Jakarta	7:07:12 -	LMT	1867 Aug 10
+# Shanks & Pottenger say the next transition was at 1924 Jan 1 0:13,
+# but this must be a typo.
+			7:07:12	-	JMT	1923 Dec 31 23:47:12 # Jakarta
+			7:20	-	JAVT	1932 Nov	 # Java Time
+			7:30	-	WIT	1942 Mar 23
+			9:00	-	JST	1945 Sep 23
+			7:30	-	WIT	1948 May
+			8:00	-	WIT	1950 May
+			7:30	-	WIT	1964
+			7:00	-	WIT
+Zone Asia/Pontianak	7:17:20	-	LMT	1908 May
+			7:17:20	-	PMT	1932 Nov    # Pontianak MT
+			7:30	-	WIT	1942 Jan 29
+			9:00	-	JST	1945 Sep 23
+			7:30	-	WIT	1948 May
+			8:00	-	WIT	1950 May
+			7:30	-	WIT	1964
+			8:00	-	CIT	1988 Jan  1
+			7:00	-	WIT
+Zone Asia/Makassar	7:57:36 -	LMT	1920
+			7:57:36	-	MMT	1932 Nov    # Macassar MT
+			8:00	-	CIT	1942 Feb  9
+			9:00	-	JST	1945 Sep 23
+			8:00	-	CIT
+Zone Asia/Jayapura	9:22:48 -	LMT	1932 Nov
+			9:00	-	EIT	1944 Sep  1
+			9:30	-	CST	1964
+			9:00	-	EIT
+
+# Iran
+
+# From Roozbeh Pournader (2003-03-15):
+# This is an English translation of what I just found (originally in Persian).
+# The Gregorian dates in brackets are mine:
+#
+#	Official Newspaper No. 13548-1370/6/25 [1991-09-16]
+#	No. 16760/T233 H				1370/6/10 [1991-09-01]
+#
+#	The Rule About Change of the Official Time of the Country
+#
+#	The Board of Ministers, in the meeting dated 1370/5/23 [1991-08-14],
+#	based on the suggestion number 2221/D dated 1370/4/22 [1991-07-13]
+#	of the Country's Organization for Official and Employment Affairs,
+#	and referring to the law for equating the working hours of workers
+#	and officers in the whole country dated 1359/4/23 [1980-07-14], and
+#	for synchronizing the official times of the country, agreed that:
+#
+#	The official time of the country will should move forward one hour
+#	at the 24[:00] hours of the first day of Farvardin and should return
+#	to its previous state at the 24[:00] hours of the 30th day of
+#	Shahrivar.
+#
+#	First Deputy to the President - Hassan Habibi
+#
+# From personal experience, that agrees with what has been followed
+# for at least the last 5 years.  Before that, for a few years, the
+# date used was the first Thursday night of Farvardin and the last
+# Thursday night of Shahrivar, but I can't give exact dates....
+# I have also changed the abbreviations to what is considered correct
+# here in Iran, IRST for regular time and IRDT for daylight saving time.
+#
+# From Roozbeh Pournader (2005-04-05):
+# The text of the Iranian law, in effect since 1925, clearly mentions
+# that the true solar year is the measure, and there is no arithmetic
+# leap year calculation involved.  There has never been any serious
+# plan to change that law....
+#
+# From Paul Eggert (2006-03-22):
+# Go with Shanks & Pottenger before Sept. 1991, and with Pournader thereafter.
+# I used Ed Reingold's cal-persia in GNU Emacs 21.2 to check Persian dates,
+# stopping after 2037 when 32-bit time_t's overflow.
+# That cal-persia used Birashk's approximation, which disagrees with the solar
+# calendar predictions for the year 2025, so I corrected those dates by hand.
+#
+# From Oscar van Vlijmen (2005-03-30), writing about future
+# discrepancies between cal-persia and the Iranian calendar:
+# For 2091 solar-longitude-after yields 2091-03-20 08:40:07.7 UT for
+# the vernal equinox and that gets so close to 12:00 some local
+# Iranian time that the definition of the correct location needs to be
+# known exactly, amongst other factors.  2157 is even closer:
+# 2157-03-20 08:37:15.5 UT.  But the Gregorian year 2025 should give
+# no interpretation problem whatsoever.  By the way, another instant
+# in the near future where there will be a discrepancy between
+# arithmetical and astronomical Iranian calendars will be in 2058:
+# vernal equinox on 2058-03-20 09:03:05.9 UT.  The Java version of
+# Reingold's/Dershowitz' calculator gives correctly the Gregorian date
+# 2058-03-21 for 1 Farvardin 1437 (astronomical).
+#
+# From Steffen Thorsen (2006-03-22):
+# Several of my users have reported that Iran will not observe DST anymore:
+# http://www.irna.ir/en/news/view/line-17/0603193812164948.htm
+#
+# From Reuters (2007-09-16), with a heads-up from Jesper Norgaard Welen:
+# ... the Guardian Council ... approved a law on Sunday to re-introduce
+# daylight saving time ...
+# http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
+#
+# From Roozbeh Pournader (2007-11-05):
+# This is quoted from Official Gazette of the Islamic Republic of
+# Iran, Volume 63, Number 18242, dated Tuesday 1386/6/24
+# [2007-10-16]. I am doing the best translation I can:...
+# The official time of the country will be moved forward for one hour
+# on the 24 hours of the first day of the month of Farvardin and will
+# be changed back to its previous state on the 24 hours of the
+# thirtieth day of Shahrivar.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Iran	1978	1980	-	Mar	21	0:00	1:00	D
+Rule	Iran	1978	only	-	Oct	21	0:00	0	S
+Rule	Iran	1979	only	-	Sep	19	0:00	0	S
+Rule	Iran	1980	only	-	Sep	23	0:00	0	S
+Rule	Iran	1991	only	-	May	 3	0:00	1:00	D
+Rule	Iran	1992	1995	-	Mar	22	0:00	1:00	D
+Rule	Iran	1991	1995	-	Sep	22	0:00	0	S
+Rule	Iran	1996	only	-	Mar	21	0:00	1:00	D
+Rule	Iran	1996	only	-	Sep	21	0:00	0	S
+Rule	Iran	1997	1999	-	Mar	22	0:00	1:00	D
+Rule	Iran	1997	1999	-	Sep	22	0:00	0	S
+Rule	Iran	2000	only	-	Mar	21	0:00	1:00	D
+Rule	Iran	2000	only	-	Sep	21	0:00	0	S
+Rule	Iran	2001	2003	-	Mar	22	0:00	1:00	D
+Rule	Iran	2001	2003	-	Sep	22	0:00	0	S
+Rule	Iran	2004	only	-	Mar	21	0:00	1:00	D
+Rule	Iran	2004	only	-	Sep	21	0:00	0	S
+Rule	Iran	2005	only	-	Mar	22	0:00	1:00	D
+Rule	Iran	2005	only	-	Sep	22	0:00	0	S
+Rule	Iran	2008	only	-	Mar	21	0:00	1:00	D
+Rule	Iran	2008	only	-	Sep	21	0:00	0	S
+Rule	Iran	2009	2011	-	Mar	22	0:00	1:00	D
+Rule	Iran	2009	2011	-	Sep	22	0:00	0	S
+Rule	Iran	2012	only	-	Mar	21	0:00	1:00	D
+Rule	Iran	2012	only	-	Sep	21	0:00	0	S
+Rule	Iran	2013	2015	-	Mar	22	0:00	1:00	D
+Rule	Iran	2013	2015	-	Sep	22	0:00	0	S
+Rule	Iran	2016	only	-	Mar	21	0:00	1:00	D
+Rule	Iran	2016	only	-	Sep	21	0:00	0	S
+Rule	Iran	2017	2019	-	Mar	22	0:00	1:00	D
+Rule	Iran	2017	2019	-	Sep	22	0:00	0	S
+Rule	Iran	2020	only	-	Mar	21	0:00	1:00	D
+Rule	Iran	2020	only	-	Sep	21	0:00	0	S
+Rule	Iran	2021	2023	-	Mar	22	0:00	1:00	D
+Rule	Iran	2021	2023	-	Sep	22	0:00	0	S
+Rule	Iran	2024	only	-	Mar	21	0:00	1:00	D
+Rule	Iran	2024	only	-	Sep	21	0:00	0	S
+Rule	Iran	2025	2027	-	Mar	22	0:00	1:00	D
+Rule	Iran	2025	2027	-	Sep	22	0:00	0	S
+Rule	Iran	2028	2029	-	Mar	21	0:00	1:00	D
+Rule	Iran	2028	2029	-	Sep	21	0:00	0	S
+Rule	Iran	2030	2031	-	Mar	22	0:00	1:00	D
+Rule	Iran	2030	2031	-	Sep	22	0:00	0	S
+Rule	Iran	2032	2033	-	Mar	21	0:00	1:00	D
+Rule	Iran	2032	2033	-	Sep	21	0:00	0	S
+Rule	Iran	2034	2035	-	Mar	22	0:00	1:00	D
+Rule	Iran	2034	2035	-	Sep	22	0:00	0	S
+Rule	Iran	2036	2037	-	Mar	21	0:00	1:00	D
+Rule	Iran	2036	2037	-	Sep	21	0:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Tehran	3:25:44	-	LMT	1916
+			3:25:44	-	TMT	1946	# Tehran Mean Time
+			3:30	-	IRST	1977 Nov
+			4:00	Iran	IR%sT	1979
+			3:30	Iran	IR%sT
+
+
+# Iraq
+#
+# From Jonathan Lennox (2000-06-12):
+# An article in this week's Economist ("Inside the Saddam-free zone", p. 50 in
+# the U.S. edition) on the Iraqi Kurds contains a paragraph:
+# "The three northern provinces ... switched their clocks this spring and
+# are an hour ahead of Baghdad."
+#
+# But Rives McDow (2000-06-18) quotes a contact in Iraqi-Kurdistan as follows:
+# In the past, some Kurdish nationalists, as a protest to the Iraqi
+# Government, did not adhere to daylight saving time.  They referred
+# to daylight saving as Saddam time.  But, as of today, the time zone
+# in Iraqi-Kurdistan is on standard time with Baghdad, Iraq.
+#
+# So we'll ignore the Economist's claim.
+
+# From Steffen Thorsen (2008-03-10):
+# The cabinet in Iraq abolished DST last week, according to the following
+# news sources (in Arabic):
+# <a href="http://www.aljeeran.net/wesima_articles/news-20080305-98602.html">
+# http://www.aljeeran.net/wesima_articles/news-20080305-98602.html
+# </a>
+# <a href="http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10">
+# http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10
+# </a>
+#
+# We have published a short article in English about the change:
+# <a href="http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html">
+# http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
+# </a>
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Iraq	1982	only	-	May	1	0:00	1:00	D
+Rule	Iraq	1982	1984	-	Oct	1	0:00	0	S
+Rule	Iraq	1983	only	-	Mar	31	0:00	1:00	D
+Rule	Iraq	1984	1985	-	Apr	1	0:00	1:00	D
+Rule	Iraq	1985	1990	-	Sep	lastSun	1:00s	0	S
+Rule	Iraq	1986	1990	-	Mar	lastSun	1:00s	1:00	D
+# IATA SSIM (1991/1996) says Apr 1 12:01am UTC; guess the `:01' is a typo.
+# Shanks & Pottenger say Iraq did not observe DST 1992/1997; ignore this.
+#
+Rule	Iraq	1991	2007	-	Apr	 1	3:00s	1:00	D
+Rule	Iraq	1991	2007	-	Oct	 1	3:00s	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Baghdad	2:57:40	-	LMT	1890
+			2:57:36	-	BMT	1918	    # Baghdad Mean Time?
+			3:00	-	AST	1982 May
+			3:00	Iraq	A%sT
+
+
+###############################################################################
+
+# Israel
+
+# From Ephraim Silverberg (2001-01-11):
+#
+# I coined "IST/IDT" circa 1988.  Until then there were three
+# different abbreviations in use:
+#
+# JST  Jerusalem Standard Time [Danny Braniss, Hebrew University]
+# IZT  Israel Zonal (sic) Time [Prof. Haim Papo, Technion]
+# EEST Eastern Europe Standard Time [used by almost everyone else]
+#
+# Since timezones should be called by country and not capital cities,
+# I ruled out JST.  As Israel is in Asia Minor and not Eastern Europe,
+# EEST was equally unacceptable.  Since "zonal" was not compatible with
+# any other timezone abbreviation, I felt that 'IST' was the way to go
+# and, indeed, it has received almost universal acceptance in timezone
+# settings in Israeli computers.
+#
+# In any case, I am happy to share timezone abbreviations with India,
+# high on my favorite-country list (and not only because my wife's
+# family is from India).
+
+# From Shanks & Pottenger:
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Zion	1940	only	-	Jun	 1	0:00	1:00	D
+Rule	Zion	1942	1944	-	Nov	 1	0:00	0	S
+Rule	Zion	1943	only	-	Apr	 1	2:00	1:00	D
+Rule	Zion	1944	only	-	Apr	 1	0:00	1:00	D
+Rule	Zion	1945	only	-	Apr	16	0:00	1:00	D
+Rule	Zion	1945	only	-	Nov	 1	2:00	0	S
+Rule	Zion	1946	only	-	Apr	16	2:00	1:00	D
+Rule	Zion	1946	only	-	Nov	 1	0:00	0	S
+Rule	Zion	1948	only	-	May	23	0:00	2:00	DD
+Rule	Zion	1948	only	-	Sep	 1	0:00	1:00	D
+Rule	Zion	1948	1949	-	Nov	 1	2:00	0	S
+Rule	Zion	1949	only	-	May	 1	0:00	1:00	D
+Rule	Zion	1950	only	-	Apr	16	0:00	1:00	D
+Rule	Zion	1950	only	-	Sep	15	3:00	0	S
+Rule	Zion	1951	only	-	Apr	 1	0:00	1:00	D
+Rule	Zion	1951	only	-	Nov	11	3:00	0	S
+Rule	Zion	1952	only	-	Apr	20	2:00	1:00	D
+Rule	Zion	1952	only	-	Oct	19	3:00	0	S
+Rule	Zion	1953	only	-	Apr	12	2:00	1:00	D
+Rule	Zion	1953	only	-	Sep	13	3:00	0	S
+Rule	Zion	1954	only	-	Jun	13	0:00	1:00	D
+Rule	Zion	1954	only	-	Sep	12	0:00	0	S
+Rule	Zion	1955	only	-	Jun	11	2:00	1:00	D
+Rule	Zion	1955	only	-	Sep	11	0:00	0	S
+Rule	Zion	1956	only	-	Jun	 3	0:00	1:00	D
+Rule	Zion	1956	only	-	Sep	30	3:00	0	S
+Rule	Zion	1957	only	-	Apr	29	2:00	1:00	D
+Rule	Zion	1957	only	-	Sep	22	0:00	0	S
+Rule	Zion	1974	only	-	Jul	 7	0:00	1:00	D
+Rule	Zion	1974	only	-	Oct	13	0:00	0	S
+Rule	Zion	1975	only	-	Apr	20	0:00	1:00	D
+Rule	Zion	1975	only	-	Aug	31	0:00	0	S
+Rule	Zion	1985	only	-	Apr	14	0:00	1:00	D
+Rule	Zion	1985	only	-	Sep	15	0:00	0	S
+Rule	Zion	1986	only	-	May	18	0:00	1:00	D
+Rule	Zion	1986	only	-	Sep	 7	0:00	0	S
+Rule	Zion	1987	only	-	Apr	15	0:00	1:00	D
+Rule	Zion	1987	only	-	Sep	13	0:00	0	S
+Rule	Zion	1988	only	-	Apr	 9	0:00	1:00	D
+Rule	Zion	1988	only	-	Sep	 3	0:00	0	S
+
+# From Ephraim Silverberg
+# (1997-03-04, 1998-03-16, 1998-12-28, 2000-01-17, 2000-07-25, 2004-12-22,
+# and 2005-02-17):
+
+# According to the Office of the Secretary General of the Ministry of
+# Interior, there is NO set rule for Daylight-Savings/Standard time changes.
+# One thing is entrenched in law, however: that there must be at least 150
+# days of daylight savings time annually.  From 1993-1998, the change to
+# daylight savings time was on a Friday morning from midnight IST to
+# 1 a.m IDT; up until 1998, the change back to standard time was on a
+# Saturday night from midnight daylight savings time to 11 p.m. standard
+# time.  1996 is an exception to this rule where the change back to standard
+# time took place on Sunday night instead of Saturday night to avoid
+# conflicts with the Jewish New Year.  In 1999, the change to
+# daylight savings time was still on a Friday morning but from
+# 2 a.m. IST to 3 a.m. IDT; furthermore, the change back to standard time
+# was also on a Friday morning from 2 a.m. IDT to 1 a.m. IST for
+# 1999 only.  In the year 2000, the change to daylight savings time was
+# similar to 1999, but although the change back will be on a Friday, it
+# will take place from 1 a.m. IDT to midnight IST.  Starting in 2001, all
+# changes to/from will take place at 1 a.m. old time, but now there is no
+# rule as to what day of the week it will take place in as the start date
+# (except in 2003) is the night after the Passover Seder (i.e. the eve
+# of the 16th of Nisan in the lunar Hebrew calendar) and the end date
+# (except in 2002) is three nights before Yom Kippur [Day of Atonement]
+# (the eve of the 7th of Tishrei in the lunar Hebrew calendar).
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Zion	1989	only	-	Apr	30	0:00	1:00	D
+Rule	Zion	1989	only	-	Sep	 3	0:00	0	S
+Rule	Zion	1990	only	-	Mar	25	0:00	1:00	D
+Rule	Zion	1990	only	-	Aug	26	0:00	0	S
+Rule	Zion	1991	only	-	Mar	24	0:00	1:00	D
+Rule	Zion	1991	only	-	Sep	 1	0:00	0	S
+Rule	Zion	1992	only	-	Mar	29	0:00	1:00	D
+Rule	Zion	1992	only	-	Sep	 6	0:00	0	S
+Rule	Zion	1993	only	-	Apr	 2	0:00	1:00	D
+Rule	Zion	1993	only	-	Sep	 5	0:00	0	S
+
+# The dates for 1994-1995 were obtained from Office of the Spokeswoman for the
+# Ministry of Interior, Jerusalem, Israel.  The spokeswoman can be reached by
+# calling the office directly at 972-2-6701447 or 972-2-6701448.
+
+# Rule	NAME    FROM    TO      TYPE    IN      ON      AT      SAVE    LETTER/S
+Rule	Zion	1994	only	-	Apr	 1	0:00	1:00	D
+Rule	Zion	1994	only	-	Aug	28	0:00	0	S
+Rule	Zion	1995	only	-	Mar	31	0:00	1:00	D
+Rule	Zion	1995	only	-	Sep	 3	0:00	0	S
+
+# The dates for 1996 were determined by the Minister of Interior of the
+# time, Haim Ramon.  The official announcement regarding 1996-1998
+# (with the dates for 1997-1998 no longer being relevant) can be viewed at:
+#
+#   ftp://ftp.cs.huji.ac.il/pub/tz/announcements/1996-1998.ramon.ps.gz
+#
+# The dates for 1997-1998 were altered by his successor, Rabbi Eli Suissa.
+#
+# The official announcements for the years 1997-1999 can be viewed at:
+#
+#   ftp://ftp.cs.huji.ac.il/pub/tz/announcements/YYYY.ps.gz
+#
+#       where YYYY is the relevant year.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Zion	1996	only	-	Mar	15	0:00	1:00	D
+Rule	Zion	1996	only	-	Sep	16	0:00	0	S
+Rule	Zion	1997	only	-	Mar	21	0:00	1:00	D
+Rule	Zion	1997	only	-	Sep	14	0:00	0	S
+Rule	Zion	1998	only	-	Mar	20	0:00	1:00	D
+Rule	Zion	1998	only	-	Sep	 6	0:00	0	S
+Rule	Zion	1999	only	-	Apr	 2	2:00	1:00	D
+Rule	Zion	1999	only	-	Sep	 3	2:00	0	S
+
+# The Knesset Interior Committee has changed the dates for 2000 for
+# the third time in just over a year and have set new dates for the
+# years 2001-2004 as well.
+#
+# The official announcement for the start date of 2000 can be viewed at:
+#
+#	ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2000-start.ps.gz
+#
+# The official announcement for the end date of 2000 and the dates
+# for the years 2001-2004 can be viewed at:
+#
+#	ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2000-2004.ps.gz
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Zion	2000	only	-	Apr	14	2:00	1:00	D
+Rule	Zion	2000	only	-	Oct	 6	1:00	0	S
+Rule	Zion	2001	only	-	Apr	 9	1:00	1:00	D
+Rule	Zion	2001	only	-	Sep	24	1:00	0	S
+Rule	Zion	2002	only	-	Mar	29	1:00	1:00	D
+Rule	Zion	2002	only	-	Oct	 7	1:00	0	S
+Rule	Zion	2003	only	-	Mar	28	1:00	1:00	D
+Rule	Zion	2003	only	-	Oct	 3	1:00	0	S
+Rule	Zion	2004	only	-	Apr	 7	1:00	1:00	D
+Rule	Zion	2004	only	-	Sep	22	1:00	0	S
+
+# The proposed law agreed upon by the Knesset Interior Committee on
+# 2005-02-14 is that, for 2005 and beyond, DST starts at 02:00 the
+# last Friday before April 2nd (i.e. the last Friday in March or April
+# 1st itself if it falls on a Friday) and ends at 02:00 on the Saturday
+# night _before_ the fast of Yom Kippur.
+#
+# Those who can read Hebrew can view the announcement at:
+#
+#	ftp://ftp.cs.huji.ac.il/pub/tz/announcements/2005+beyond.ps
+
+# From Paul Eggert (2005-02-22):
+# I used Ephraim Silverberg's dst-israel.el program
+# <ftp://ftp.cs.huji.ac.il/pub/tz/software/dst-israel.el> (2005-02-20)
+# along with Ed Reingold's cal-hebrew in GNU Emacs 21.4,
+# to generate the transitions in this list.
+# (I replaced "lastFri" with "Fri>=26" by hand.)
+# The spring transitions below all correspond to the following Rule:
+#
+# Rule	Zion	2005	max	-	Mar	Fri>=26	2:00	1:00	D
+#
+# but older zic implementations (e.g., Solaris 8) do not support
+# "Fri>=26" to mean April 1 in years like 2005, so for now we list the
+# springtime transitions explicitly.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Zion	2005	only	-	Apr	 1	2:00	1:00	D
+Rule	Zion	2005	only	-	Oct	 9	2:00	0	S
+Rule	Zion	2006	2010	-	Mar	Fri>=26	2:00	1:00	D
+Rule	Zion	2006	only	-	Oct	 1	2:00	0	S
+Rule	Zion	2007	only	-	Sep	16	2:00	0	S
+Rule	Zion	2008	only	-	Oct	 5	2:00	0	S
+Rule	Zion	2009	only	-	Sep	27	2:00	0	S
+Rule	Zion	2010	only	-	Sep	12	2:00	0	S
+Rule	Zion	2011	only	-	Apr	 1	2:00	1:00	D
+Rule	Zion	2011	only	-	Oct	 2	2:00	0	S
+Rule	Zion	2012	2015	-	Mar	Fri>=26	2:00	1:00	D
+Rule	Zion	2012	only	-	Sep	23	2:00	0	S
+Rule	Zion	2013	only	-	Sep	 8	2:00	0	S
+Rule	Zion	2014	only	-	Sep	28	2:00	0	S
+Rule	Zion	2015	only	-	Sep	20	2:00	0	S
+Rule	Zion	2016	only	-	Apr	 1	2:00	1:00	D
+Rule	Zion	2016	only	-	Oct	 9	2:00	0	S
+Rule	Zion	2017	2021	-	Mar	Fri>=26	2:00	1:00	D
+Rule	Zion	2017	only	-	Sep	24	2:00	0	S
+Rule	Zion	2018	only	-	Sep	16	2:00	0	S
+Rule	Zion	2019	only	-	Oct	 6	2:00	0	S
+Rule	Zion	2020	only	-	Sep	27	2:00	0	S
+Rule	Zion	2021	only	-	Sep	12	2:00	0	S
+Rule	Zion	2022	only	-	Apr	 1	2:00	1:00	D
+Rule	Zion	2022	only	-	Oct	 2	2:00	0	S
+Rule	Zion	2023	2032	-	Mar	Fri>=26	2:00	1:00	D
+Rule	Zion	2023	only	-	Sep	24	2:00	0	S
+Rule	Zion	2024	only	-	Oct	 6	2:00	0	S
+Rule	Zion	2025	only	-	Sep	28	2:00	0	S
+Rule	Zion	2026	only	-	Sep	20	2:00	0	S
+Rule	Zion	2027	only	-	Oct	10	2:00	0	S
+Rule	Zion	2028	only	-	Sep	24	2:00	0	S
+Rule	Zion	2029	only	-	Sep	16	2:00	0	S
+Rule	Zion	2030	only	-	Oct	 6	2:00	0	S
+Rule	Zion	2031	only	-	Sep	21	2:00	0	S
+Rule	Zion	2032	only	-	Sep	12	2:00	0	S
+Rule	Zion	2033	only	-	Apr	 1	2:00	1:00	D
+Rule	Zion	2033	only	-	Oct	 2	2:00	0	S
+Rule	Zion	2034	2037	-	Mar	Fri>=26	2:00	1:00	D
+Rule	Zion	2034	only	-	Sep	17	2:00	0	S
+Rule	Zion	2035	only	-	Oct	 7	2:00	0	S
+Rule	Zion	2036	only	-	Sep	28	2:00	0	S
+Rule	Zion	2037	only	-	Sep	13	2:00	0	S
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Jerusalem	2:20:56 -	LMT	1880
+			2:20:40	-	JMT	1918	# Jerusalem Mean Time?
+			2:00	Zion	I%sT
+
+
+
+###############################################################################
+
+# Japan
+
+# `9:00' and `JST' is from Guy Harris.
+
+# From Paul Eggert (1995-03-06):
+# Today's _Asahi Evening News_ (page 4) reports that Japan had
+# daylight saving between 1948 and 1951, but ``the system was discontinued
+# because the public believed it would lead to longer working hours.''
+
+# From Mayumi Negishi in the 2005-08-10 Japan Times
+# <http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm>:
+# Occupation authorities imposed daylight-saving time on Japan on
+# [1948-05-01]....  But lack of prior debate and the execution of
+# daylight-saving time just three days after the bill was passed generated
+# deep hatred of the concept....  The Diet unceremoniously passed a bill to
+# dump the unpopular system in October 1951, less than a month after the San
+# Francisco Peace Treaty was signed.  (A government poll in 1951 showed 53%
+# of the Japanese wanted to scrap daylight-saving time, as opposed to 30% who
+# wanted to keep it.)
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that DST in Japan during those years was as follows:
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Japan	1948	only	-	May	Sun>=1	2:00	1:00	D
+Rule	Japan	1948	1951	-	Sep	Sat>=8	2:00	0	S
+Rule	Japan	1949	only	-	Apr	Sun>=1	2:00	1:00	D
+Rule	Japan	1950	1951	-	May	Sun>=1	2:00	1:00	D
+# but the only locations using it (for birth certificates, presumably, since
+# their audience is astrologers) were US military bases.  For now, assume
+# that for most purposes daylight-saving time was observed; otherwise, what
+# would have been the point of the 1951 poll?
+
+# From Hideyuki Suzuki (1998-11-09):
+# 'Tokyo' usually stands for the former location of Tokyo Astronomical
+# Observatory: E 139 44' 40".90 (9h 18m 58s.727), N 35 39' 16".0.
+# This data is from 'Rika Nenpyou (Chronological Scientific Tables) 1996'
+# edited by National Astronomical Observatory of Japan....
+# JST (Japan Standard Time) has been used since 1888-01-01 00:00 (JST).
+# The law is enacted on 1886-07-07.
+
+# From Hideyuki Suzuki (1998-11-16):
+# The ordinance No. 51 (1886) established "standard time" in Japan,
+# which stands for the time on E 135 degree.
+# In the ordinance No. 167 (1895), "standard time" was renamed to "central
+# standard time".  And the same ordinance also established "western standard
+# time", which stands for the time on E 120 degree....  But "western standard
+# time" was abolished in the ordinance No. 529 (1937).  In the ordinance No.
+# 167, there is no mention regarding for what place western standard time is
+# standard....
+#
+# I wrote "ordinance" above, but I don't know how to translate.
+# In Japanese it's "chokurei", which means ordinance from emperor.
+
+# Shanks & Pottenger claim JST in use since 1896, and that a few
+# places (e.g. Ishigaki) use +0800; go with Suzuki.  Guess that all
+# ordinances took effect on Jan 1.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Tokyo	9:18:59	-	LMT	1887 Dec 31 15:00u
+			9:00	-	JST	1896
+			9:00	-	CJT	1938
+			9:00	Japan	J%sT
+# Since 1938, all Japanese possessions have been like Asia/Tokyo.
+
+# Jordan
+#
+# From <a href="http://star.arabia.com/990701/JO9.html">
+# Jordan Week (1999-07-01) </a> via Steffen Thorsen (1999-09-09):
+# Clocks in Jordan were forwarded one hour on Wednesday at midnight,
+# in accordance with the government's decision to implement summer time
+# all year round.
+#
+# From <a href="http://star.arabia.com/990930/JO9.html">
+# Jordan Week (1999-09-30) </a> via Steffen Thorsen (1999-11-09):
+# Winter time starts today Thursday, 30 September. Clocks will be turned back
+# by one hour.  This is the latest government decision and it's final!
+# The decision was taken because of the increase in working hours in
+# government's departments from six to seven hours.
+#
+# From Paul Eggert (2005-11-22):
+# Starting 2003 transitions are from Steffen Thorsen's web site timeanddate.com.
+#
+# From Steffen Thorsen (2005-11-23):
+# For Jordan I have received multiple independent user reports every year
+# about DST end dates, as the end-rule is different every year.
+#
+# From Steffen Thorsen (2006-10-01), after a heads-up from Hilal Malawi:
+# http://www.petranews.gov.jo/nepras/2006/Sep/05/4000.htm
+# "Jordan will switch to winter time on Friday, October 27".
+#
+
+# From Phil Pizzey (2009-04-02):
+# ...I think I may have spotted an error in the timezone data for
+# Jordan.
+# The current (2009d) asia file shows Jordan going to daylight
+# saving
+# time on the last Thursday in March.
+#
+# Rule  Jordan      2000  max	-  Mar   lastThu     0:00s 1:00  S
+#
+# However timeanddate.com, which I usually find reliable, shows Jordan
+# going to daylight saving time on the last Friday in March since 2002.
+# Please see
+# <a href="http://www.timeanddate.com/worldclock/timezone.html?n=11">
+# http://www.timeanddate.com/worldclock/timezone.html?n=11
+# </a>
+
+# From Steffen Thorsen (2009-04-02):
+# This single one might be good enough, (2009-03-24, Arabic):
+# <a href="http://petra.gov.jo/Artical.aspx?Lng=2&Section=8&Artical=95279">
+# http://petra.gov.jo/Artical.aspx?Lng=2&Section=8&Artical=95279
+# </a>
+#
+# Google's translation:
+#
+# > The Council of Ministers decided in 2002 to adopt the principle of timely
+# > submission of the summer at 60 minutes as of midnight on the last Thursday
+# > of the month of March of each year.
+#
+# So - this means the midnight between Thursday and Friday since 2002.
+
+# From Arthur David Olson (2009-04-06):
+# We still have Jordan switching to DST on Thursdays in 2000 and 2001.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Jordan	1973	only	-	Jun	6	0:00	1:00	S
+Rule	Jordan	1973	1975	-	Oct	1	0:00	0	-
+Rule	Jordan	1974	1977	-	May	1	0:00	1:00	S
+Rule	Jordan	1976	only	-	Nov	1	0:00	0	-
+Rule	Jordan	1977	only	-	Oct	1	0:00	0	-
+Rule	Jordan	1978	only	-	Apr	30	0:00	1:00	S
+Rule	Jordan	1978	only	-	Sep	30	0:00	0	-
+Rule	Jordan	1985	only	-	Apr	1	0:00	1:00	S
+Rule	Jordan	1985	only	-	Oct	1	0:00	0	-
+Rule	Jordan	1986	1988	-	Apr	Fri>=1	0:00	1:00	S
+Rule	Jordan	1986	1990	-	Oct	Fri>=1	0:00	0	-
+Rule	Jordan	1989	only	-	May	8	0:00	1:00	S
+Rule	Jordan	1990	only	-	Apr	27	0:00	1:00	S
+Rule	Jordan	1991	only	-	Apr	17	0:00	1:00	S
+Rule	Jordan	1991	only	-	Sep	27	0:00	0	-
+Rule	Jordan	1992	only	-	Apr	10	0:00	1:00	S
+Rule	Jordan	1992	1993	-	Oct	Fri>=1	0:00	0	-
+Rule	Jordan	1993	1998	-	Apr	Fri>=1	0:00	1:00	S
+Rule	Jordan	1994	only	-	Sep	Fri>=15	0:00	0	-
+Rule	Jordan	1995	1998	-	Sep	Fri>=15	0:00s	0	-
+Rule	Jordan	1999	only	-	Jul	 1	0:00s	1:00	S
+Rule	Jordan	1999	2002	-	Sep	lastFri	0:00s	0	-
+Rule	Jordan	2000	2001	-	Mar	lastThu	0:00s	1:00	S
+Rule	Jordan	2002	max	-	Mar	lastThu	24:00	1:00	S
+Rule	Jordan	2003	only	-	Oct	24	0:00s	0	-
+Rule	Jordan	2004	only	-	Oct	15	0:00s	0	-
+Rule	Jordan	2005	only	-	Sep	lastFri	0:00s	0	-
+Rule	Jordan	2006	max	-	Oct	lastFri	0:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Amman	2:23:44 -	LMT	1931
+			2:00	Jordan	EE%sT
+
+
+# Kazakhstan
+
+# From Paul Eggert (1996-11-22):
+# Andrew Evtichov (1996-04-13) writes that Kazakhstan
+# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
+# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
+# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
+# IATA SSIM mentions a third time zone in Kazakhstan.
+
+# From Paul Eggert (2006-03-22):
+# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
+# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
+# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
+# Also go with the following claims of Shanks & Pottenger:
+#
+# - Kazakhstan did not observe DST in 1991.
+# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
+# - Oral switched from +5:00 to +4:00 in spring 1989.
+
+# <a href="http://www.kazsociety.org.uk/news/2005/03/30.htm">
+# From Kazakhstan Embassy's News Bulletin #11 (2005-03-21):
+# </a>
+# The Government of Kazakhstan passed a resolution March 15 abolishing
+# daylight saving time citing lack of economic benefits and health
+# complications coupled with a decrease in productivity.
+#
+# From Branislav Kojic (in Astana) via Gwillim Law (2005-06-28):
+# ... what happened was that the former Kazakhstan Eastern time zone
+# was "blended" with the Central zone.  Therefore, Kazakhstan now has
+# two time zones, and difference between them is one hour.  The zone
+# closer to UTC is the former Western zone (probably still called the
+# same), encompassing four provinces in the west: Aqtobe, Atyrau,
+# Mangghystau, and West Kazakhstan.  The other zone encompasses
+# everything else....  I guess that would make Kazakhstan time zones
+# de jure UTC+5 and UTC+6 respectively.
+
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+#
+# Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
+Zone	Asia/Almaty	5:07:48 -	LMT	1924 May  2 # or Alma-Ata
+			5:00	-	ALMT	1930 Jun 21 # Alma-Ata Time
+			6:00 RussiaAsia ALM%sT	1991
+			6:00	-	ALMT	1992
+			6:00 RussiaAsia	ALM%sT	2005 Mar 15
+			6:00	-	ALMT
+# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
+Zone	Asia/Qyzylorda	4:21:52 -	LMT	1924 May  2
+			4:00	-	KIZT	1930 Jun 21 # Kizilorda Time
+			5:00	-	KIZT	1981 Apr  1
+			5:00	1:00	KIZST	1981 Oct  1
+			6:00	-	KIZT	1982 Apr  1
+			5:00 RussiaAsia	KIZ%sT	1991
+			5:00	-	KIZT	1991 Dec 16 # independence
+			5:00	-	QYZT	1992 Jan 19 2:00
+			6:00 RussiaAsia	QYZ%sT	2005 Mar 15
+			6:00	-	QYZT
+# Aqtobe (aka Aktobe, formerly Akt'ubinsk)
+Zone	Asia/Aqtobe	3:48:40	-	LMT	1924 May  2
+			4:00	-	AKTT	1930 Jun 21 # Aktyubinsk Time
+			5:00	-	AKTT	1981 Apr  1
+			5:00	1:00	AKTST	1981 Oct  1
+			6:00	-	AKTT	1982 Apr  1
+			5:00 RussiaAsia	AKT%sT	1991
+			5:00	-	AKTT	1991 Dec 16 # independence
+			5:00 RussiaAsia	AQT%sT	2005 Mar 15 # Aqtobe Time
+			5:00	-	AQTT
+# Mangghystau
+# Aqtau was not founded until 1963, but it represents an inhabited region,
+# so include time stamps before 1963.
+Zone	Asia/Aqtau	3:21:04	-	LMT	1924 May  2
+			4:00	-	FORT	1930 Jun 21 # Fort Shevchenko T
+			5:00	-	FORT	1963
+			5:00	-	SHET	1981 Oct  1 # Shevchenko Time
+			6:00	-	SHET	1982 Apr  1
+			5:00 RussiaAsia	SHE%sT	1991
+			5:00	-	SHET	1991 Dec 16 # independence
+			5:00 RussiaAsia	AQT%sT	1995 Mar lastSun 2:00 # Aqtau Time
+			4:00 RussiaAsia	AQT%sT	2005 Mar 15
+			5:00	-	AQTT
+# West Kazakhstan
+Zone	Asia/Oral	3:25:24	-	LMT	1924 May  2 # or Ural'sk
+			4:00	-	URAT	1930 Jun 21 # Ural'sk time
+			5:00	-	URAT	1981 Apr  1
+			5:00	1:00	URAST	1981 Oct  1
+			6:00	-	URAT	1982 Apr  1
+			5:00 RussiaAsia	URA%sT	1989 Mar 26 2:00
+			4:00 RussiaAsia	URA%sT	1991
+			4:00	-	URAT	1991 Dec 16 # independence
+			4:00 RussiaAsia	ORA%sT	2005 Mar 15 # Oral Time
+			5:00	-	ORAT
+
+# Kyrgyzstan (Kirgizstan)
+# Transitions through 1991 are from Shanks & Pottenger.
+
+# From Paul Eggert (2005-08-15):
+# According to an article dated today in the Kyrgyzstan Development Gateway
+# <http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml>
+# Kyrgyzstan is canceling the daylight saving time system.  I take the article
+# to mean that they will leave their clocks at 6 hours ahead of UTC.
+# From Malik Abdugaliev (2005-09-21):
+# Our government cancels daylight saving time 6th of August 2005.
+# From 2005-08-12 our GMT-offset is +6, w/o any daylight saving.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Kyrgyz	1992	1996	-	Apr	Sun>=7	0:00s	1:00	S
+Rule	Kyrgyz	1992	1996	-	Sep	lastSun	0:00	0	-
+Rule	Kyrgyz	1997	2005	-	Mar	lastSun	2:30	1:00	S
+Rule	Kyrgyz	1997	2004	-	Oct	lastSun	2:30	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Bishkek	4:58:24 -	LMT	1924 May  2
+			5:00	-	FRUT	1930 Jun 21 # Frunze Time
+			6:00 RussiaAsia FRU%sT	1991 Mar 31 2:00s
+			5:00	1:00	FRUST	1991 Aug 31 2:00 # independence
+			5:00	Kyrgyz	KG%sT	2005 Aug 12    # Kyrgyzstan Time
+			6:00	-	KGT
+
+###############################################################################
+
+# Korea (North and South)
+
+# From Annie I. Bang (2006-07-10) in
+# <http://www.koreaherald.co.kr/SITE/data/html_dir/2006/07/10/200607100012.asp>:
+# The Ministry of Commerce, Industry and Energy has already
+# commissioned a research project [to reintroduce DST] and has said
+# the system may begin as early as 2008....  Korea ran a daylight
+# saving program from 1949-61 but stopped it during the 1950-53 Korean War.
+
+# From Shanks & Pottenger:
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	ROK	1960	only	-	May	15	0:00	1:00	D
+Rule	ROK	1960	only	-	Sep	13	0:00	0	S
+Rule	ROK	1987	1988	-	May	Sun>=8	0:00	1:00	D
+Rule	ROK	1987	1988	-	Oct	Sun>=8	0:00	0	S
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Seoul	8:27:52	-	LMT	1890
+			8:30	-	KST	1904 Dec
+			9:00	-	KST	1928
+			8:30	-	KST	1932
+			9:00	-	KST	1954 Mar 21
+			8:00	ROK	K%sT	1961 Aug 10
+			8:30	-	KST	1968 Oct
+			9:00	ROK	K%sT
+Zone	Asia/Pyongyang	8:23:00 -	LMT	1890
+			8:30	-	KST	1904 Dec
+			9:00	-	KST	1928
+			8:30	-	KST	1932
+			9:00	-	KST	1954 Mar 21
+			8:00	-	KST	1961 Aug 10
+			9:00	-	KST
+
+###############################################################################
+
+# Kuwait
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+# From the Arab Times (2007-03-14):
+# The Civil Service Commission (CSC) has approved a proposal forwarded
+# by MP Ahmad Baqer on implementing the daylight saving time (DST) in
+# Kuwait starting from April until the end of Sept this year, reports Al-Anba.
+# <http://www.arabtimesonline.com/arabtimes/kuwait/Viewdet.asp?ID=9950>.
+# From Paul Eggert (2007-03-29):
+# We don't know the details, or whether the approval means it'll happen,
+# so for now we assume no DST.
+Zone	Asia/Kuwait	3:11:56 -	LMT	1950
+			3:00	-	AST
+
+# Laos
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Vientiane	6:50:24 -	LMT	1906 Jun  9 # or Viangchan
+			7:06:20	-	SMT	1911 Mar 11 0:01 # Saigon MT?
+			7:00	-	ICT	1912 May
+			8:00	-	ICT	1931 May
+			7:00	-	ICT
+
+# Lebanon
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Lebanon	1920	only	-	Mar	28	0:00	1:00	S
+Rule	Lebanon	1920	only	-	Oct	25	0:00	0	-
+Rule	Lebanon	1921	only	-	Apr	3	0:00	1:00	S
+Rule	Lebanon	1921	only	-	Oct	3	0:00	0	-
+Rule	Lebanon	1922	only	-	Mar	26	0:00	1:00	S
+Rule	Lebanon	1922	only	-	Oct	8	0:00	0	-
+Rule	Lebanon	1923	only	-	Apr	22	0:00	1:00	S
+Rule	Lebanon	1923	only	-	Sep	16	0:00	0	-
+Rule	Lebanon	1957	1961	-	May	1	0:00	1:00	S
+Rule	Lebanon	1957	1961	-	Oct	1	0:00	0	-
+Rule	Lebanon	1972	only	-	Jun	22	0:00	1:00	S
+Rule	Lebanon	1972	1977	-	Oct	1	0:00	0	-
+Rule	Lebanon	1973	1977	-	May	1	0:00	1:00	S
+Rule	Lebanon	1978	only	-	Apr	30	0:00	1:00	S
+Rule	Lebanon	1978	only	-	Sep	30	0:00	0	-
+Rule	Lebanon	1984	1987	-	May	1	0:00	1:00	S
+Rule	Lebanon	1984	1991	-	Oct	16	0:00	0	-
+Rule	Lebanon	1988	only	-	Jun	1	0:00	1:00	S
+Rule	Lebanon	1989	only	-	May	10	0:00	1:00	S
+Rule	Lebanon	1990	1992	-	May	1	0:00	1:00	S
+Rule	Lebanon	1992	only	-	Oct	4	0:00	0	-
+Rule	Lebanon	1993	max	-	Mar	lastSun	0:00	1:00	S
+Rule	Lebanon	1993	1998	-	Sep	lastSun	0:00	0	-
+Rule	Lebanon	1999	max	-	Oct	lastSun	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Beirut	2:22:00 -	LMT	1880
+			2:00	Lebanon	EE%sT
+
+# Malaysia
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	NBorneo	1935	1941	-	Sep	14	0:00	0:20	TS # one-Third Summer
+Rule	NBorneo	1935	1941	-	Dec	14	0:00	0	-
+#
+# peninsular Malaysia
+# The data here are taken from Mok Ly Yng (2003-10-30)
+# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Asia/Kuala_Lumpur	6:46:46 -	LMT	1901 Jan  1
+			6:55:25	-	SMT	1905 Jun  1 # Singapore M.T.
+			7:00	-	MALT	1933 Jan  1 # Malaya Time
+			7:00	0:20	MALST	1936 Jan  1
+			7:20	-	MALT	1941 Sep  1
+			7:30	-	MALT	1942 Feb 16
+			9:00	-	JST	1945 Sep 12
+			7:30	-	MALT	1982 Jan  1
+			8:00	-	MYT	# Malaysia Time
+# Sabah & Sarawak
+# From Paul Eggert (2006-03-22):
+# The data here are mostly from Shanks & Pottenger, but the 1942, 1945 and 1982
+# transition dates are from Mok Ly Yng.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Asia/Kuching	7:21:20	-	LMT	1926 Mar
+			7:30	-	BORT	1933	# Borneo Time
+			8:00	NBorneo	BOR%sT	1942 Feb 16
+			9:00	-	JST	1945 Sep 12
+			8:00	-	BORT	1982 Jan  1
+			8:00	-	MYT
+
+# Maldives
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Indian/Maldives	4:54:00 -	LMT	1880	# Male
+			4:54:00	-	MMT	1960	# Male Mean Time
+			5:00	-	MVT		# Maldives Time
+
+# Mongolia
+
+# Shanks & Pottenger say that Mongolia has three time zones, but
+# usno1995 and the CIA map Standard Time Zones of the World (2005-03)
+# both say that it has just one.
+
+# From Oscar van Vlijmen (1999-12-11):
+# <a href="http://www.mongoliatourism.gov.mn/general.htm">
+# General Information Mongolia
+# </a> (1999-09)
+# "Time: Mongolia has two time zones. Three westernmost provinces of
+# Bayan-Ulgii, Uvs, and Hovd are one hour earlier than the capital city, and
+# the rest of the country follows the Ulaanbaatar time, which is UTC/GMT plus
+# eight hours."
+
+# From Rives McDow (1999-12-13):
+# Mongolia discontinued the use of daylight savings time in 1999; 1998
+# being the last year it was implemented.  The dates of implementation I am
+# unsure of, but most probably it was similar to Russia, except for the time
+# of implementation may have been different....
+# Some maps in the past have indicated that there was an additional time
+# zone in the eastern part of Mongolia, including the provinces of Dornod,
+# Suhbaatar, and possibly Khentij.
+
+# From Paul Eggert (1999-12-15):
+# Naming and spelling is tricky in Mongolia.
+# We'll use Hovd (also spelled Chovd and Khovd) to represent the west zone;
+# the capital of the Hovd province is sometimes called Hovd, sometimes Dund-Us,
+# and sometimes Jirgalanta (with variant spellings), but the name Hovd
+# is good enough for our purposes.
+
+# From Rives McDow (2001-05-13):
+# In addition to Mongolia starting daylight savings as reported earlier
+# (adopted DST on 2001-04-27 02:00 local time, ending 2001-09-28),
+# there are three time zones.
+#
+# Provinces [at 7:00]: Bayan-ulgii, Uvs, Khovd, Zavkhan, Govi-Altai
+# Provinces [at 8:00]: Khovsgol, Bulgan, Arkhangai, Khentii, Tov,
+#	Bayankhongor, Ovorkhangai, Dundgovi, Dornogovi, Omnogovi
+# Provinces [at 9:00]: Dornod, Sukhbaatar
+#
+# [The province of Selenge is omitted from the above lists.]
+
+# From Ganbold Ts., Ulaanbaatar (2004-04-17):
+# Daylight saving occurs at 02:00 local time last Saturday of March.
+# It will change back to normal at 02:00 local time last Saturday of
+# September.... As I remember this rule was changed in 2001.
+#
+# From Paul Eggert (2004-04-17):
+# For now, assume Rives McDow's informant got confused about Friday vs
+# Saturday, and that his 2001 dates should have 1 added to them.
+
+# From Paul Eggert (2005-07-26):
+# We have wildly conflicting information about Mongolia's time zones.
+# Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
+# there is only one time zone and that DST is observed, citing Microsoft
+# Windows XP as the source.  Risto Nykanen (2005-05-16) reports that
+# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
+# Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
+# Washington, DC says there are two time zones, with DST observed.
+# He also found
+# <http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&>
+# which also says that there is DST, and which has a comment by "Toddius"
+# (2005-03-31 06:05 +0700) saying "Mongolia actually has 3.5 time zones.
+# The West (OLGII) is +7 GMT, most of the country is ULAT is +8 GMT
+# and some Eastern provinces are +9 GMT but Sukhbaatar Aimag is SUHK +8.5 GMT.
+# The SUKH timezone is new this year, it is one of the few things the
+# parliament passed during the tumultuous winter session."
+# For now, let's ignore this information, until we have more confirmation.
+
+# From Ganbold Ts. (2007-02-26):
+# Parliament of Mongolia has just changed the daylight-saving rule in February.
+# They decided not to adopt daylight-saving time....
+# http://www.mongolnews.mn/index.php?module=unuudur&sec=view&id=15742
+
+# From Deborah Goldsmith (2008-03-30):
+# We received a bug report claiming that the tz database UTC offset for
+# Asia/Choibalsan (GMT+09:00) is incorrect, and that it should be GMT
+# +08:00 instead. Different sources appear to disagree with the tz
+# database on this, e.g.:
+#
+# <a href="http://www.timeanddate.com/worldclock/city.html?n=1026">
+# http://www.timeanddate.com/worldclock/city.html?n=1026
+# </a>
+# <a href="http://www.worldtimeserver.com/current_time_in_MN.aspx">
+# http://www.worldtimeserver.com/current_time_in_MN.aspx
+# </a>
+#
+# both say GMT+08:00.
+
+# From Steffen Thorsen (2008-03-31):
+# eznis airways, which operates several domestic flights, has a flight
+# schedule here:
+# <a href="http://www.eznis.com/Container.jsp?id=112">
+# http://www.eznis.com/Container.jsp?id=112
+# </a>
+# (click the English flag for English)
+#
+# There it appears that flights between Choibalsan and Ulaanbatar arrive
+# about 1:35 - 1:50 hours later in local clock time, no matter the
+# direction, while Ulaanbaatar-Khvod takes 2 hours in the Eastern
+# direction and 3:35 back, which indicates that Ulaanbatar and Khvod are
+# in different time zones (like we know about), while Choibalsan and
+# Ulaanbatar are in the same time zone (correction needed).
+
+# From Arthur David Olson (2008-05-19):
+# Assume that Choibalsan is indeed offset by 8:00.
+# XXX--in the absence of better information, assume that transition
+# was at the start of 2008-03-31 (the day of Steffen Thorsen's report);
+# this is almost surely wrong.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Mongol	1983	1984	-	Apr	1	0:00	1:00	S
+Rule	Mongol	1983	only	-	Oct	1	0:00	0	-
+# Shanks & Pottenger and IATA SSIM say 1990s switches occurred at 00:00,
+# but McDow says the 2001 switches occurred at 02:00.  Also, IATA SSIM
+# (1996-09) says 1996-10-25.  Go with Shanks & Pottenger through 1998.
+#
+# Shanks & Pottenger say that the Sept. 1984 through Sept. 1990 switches
+# in Choibalsan (more precisely, in Dornod and Sukhbaatar) took place
+# at 02:00 standard time, not at 00:00 local time as in the rest of
+# the country.  That would be odd, and possibly is a result of their
+# correction of 02:00 (in the previous edition) not being done correctly
+# in the latest edition; so ignore it for now.
+
+Rule	Mongol	1985	1998	-	Mar	lastSun	0:00	1:00	S
+Rule	Mongol	1984	1998	-	Sep	lastSun	0:00	0	-
+# IATA SSIM (1999-09) says Mongolia no longer observes DST.
+Rule	Mongol	2001	only	-	Apr	lastSat	2:00	1:00	S
+Rule	Mongol	2001	2006	-	Sep	lastSat	2:00	0	-
+Rule	Mongol	2002	2006	-	Mar	lastSat	2:00	1:00	S
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+# Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta
+Zone	Asia/Hovd	6:06:36 -	LMT	1905 Aug
+			6:00	-	HOVT	1978	# Hovd Time
+			7:00	Mongol	HOV%sT
+# Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga
+Zone	Asia/Ulaanbaatar 7:07:32 -	LMT	1905 Aug
+			7:00	-	ULAT	1978	# Ulaanbaatar Time
+			8:00	Mongol	ULA%sT
+# Choibalsan, a.k.a. Bajan Tuemen, Bajan Tumen, Chojbalsan,
+# Choybalsan, Sanbejse, Tchoibalsan
+Zone	Asia/Choibalsan	7:38:00 -	LMT	1905 Aug
+			7:00	-	ULAT	1978
+			8:00	-	ULAT	1983 Apr
+			9:00	Mongol	CHO%sT	2008 Mar 31 # Choibalsan Time
+			8:00	Mongol	CHO%sT
+
+# Nepal
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Kathmandu	5:41:16 -	LMT	1920
+			5:30	-	IST	1986
+			5:45	-	NPT	# Nepal Time
+
+# Oman
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Muscat	3:54:20 -	LMT	1920
+			4:00	-	GST
+
+# Pakistan
+
+# From Rives McDow (2002-03-13):
+# I have been advised that Pakistan has decided to adopt dst on a
+# TRIAL basis for one year, starting 00:01 local time on April 7, 2002
+# and ending at 00:01 local time October 6, 2002.  This is what I was
+# told, but I believe that the actual time of change may be 00:00; the
+# 00:01 was to make it clear which day it was on.
+
+# From Paul Eggert (2002-03-15):
+# Jesper Norgaard found this URL:
+# http://www.pak.gov.pk/public/news/app/app06_dec.htm
+# (dated 2001-12-06) which says that the Cabinet adopted a scheme "to
+# advance the clocks by one hour on the night between the first
+# Saturday and Sunday of April and revert to the original position on
+# 15th October each year".  This agrees with McDow's 04-07 at 00:00,
+# but disagrees about the October transition, and makes it sound like
+# it's not on a trial basis.  Also, the "between the first Saturday
+# and Sunday of April" phrase, if taken literally, means that the
+# transition takes place at 00:00 on the first Sunday on or after 04-02.
+
+# From Paul Eggert (2003-02-09):
+# DAWN <http://www.dawn.com/2002/10/06/top13.htm> reported on 2002-10-05
+# that 2002 DST ended that day at midnight.  Go with McDow for now.
+
+# From Steffen Thorsen (2003-03-14):
+# According to http://www.dawn.com/2003/03/07/top15.htm
+# there will be no DST in Pakistan this year:
+#
+# ISLAMABAD, March 6: Information and Media Development Minister Sheikh
+# Rashid Ahmed on Thursday said the cabinet had reversed a previous
+# decision to advance clocks by one hour in summer and put them back by
+# one hour in winter with the aim of saving light hours and energy.
+#
+# The minister told a news conference that the experiment had rather
+# shown 8 per cent higher consumption of electricity.
+
+# From Alex Krivenyshev (2008-05-15):
+# 
+# Here is an article that Pakistan plan to introduce Daylight Saving Time 
+# on June 1, 2008 for 3 months.
+# 
+# "... The federal cabinet on Wednesday announced a new conservation plan to help 
+# reduce load shedding by approving the closure of commercial centres at 9pm and 
+# moving clocks forward by one hour for the next three months. 
+# ...."
+# 
+# <a href="http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html">
+# http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html
+# </a>
+# OR
+# <a href="http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4">
+# http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
+# </a>
+
+# From Arthur David Olson (2008-05-19):
+# XXX--midnight transitions is a guess; 2008 only is a guess.
+
+# From Alexander Krivenyshev (2008-08-28):
+# Pakistan government has decided to keep the watches one-hour advanced
+# for another 2 months--plan to return to Standard Time on October 31
+# instead of August 31.
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html">
+# http://www.worldtimezone.com/dst_news/dst_news_pakistan02.html
+# </a>
+# OR
+# <a href="http://dailymailnews.com/200808/28/news/dmbrn03.html">
+# http://dailymailnews.com/200808/28/news/dmbrn03.html
+# </a>
+
+# From Alexander Krivenyshev (2009-04-08):
+# Based on previous media reports that "... proposed plan to
+# advance clocks by one hour from May 1 will cause disturbance
+# to the working schedules rather than bringing discipline in
+# official working."
+# <a href="http://www.thenews.com.pk/daily_detail.asp?id=171280">
+# http://www.thenews.com.pk/daily_detail.asp?id=171280
+# </a>
+#
+# recent news that instead of May 2009 - Pakistan plan to
+# introduce DST from April 15, 2009
+#
+# FYI: Associated Press Of Pakistan
+# April 08, 2009
+# Cabinet okays proposal to advance clocks by one hour from April 15
+# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=73043&Itemid=1">
+# http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=73043&Itemid=1
+# </a>
+#
+# or
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan05.html">
+# http://www.worldtimezone.com/dst_news/dst_news_pakistan05.html
+# </a>
+#
+# ....
+# The Federal Cabinet on Wednesday approved the proposal to
+# advance clocks in the country by one hour from April 15 to
+# conserve energy"
+
+# From Steffen Thorsen (2009-09-17):
+# "The News International," Pakistan reports that: "The Federal
+# Government has decided to restore the previous time by moving the
+# clocks backward by one hour from October 1. A formal announcement to
+# this effect will be made after the Prime Minister grants approval in
+# this regard." 
+# <a href="http://www.thenews.com.pk/updates.asp?id=87168">
+# http://www.thenews.com.pk/updates.asp?id=87168
+# </a>
+
+# From Alexander Krivenyshev (2009-09-28):
+# According to Associated Press Of Pakistan, it is confirmed that
+# Pakistan clocks across the country would be turned back by an hour from October
+# 1, 2009.
+#
+# "Clocks to go back one hour from 1 Oct"
+# <a href="http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2">
+# http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm">
+# http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm
+# </a>
+
+# From Steffen Thorsen (2009-09-29):
+# Alexander Krivenyshev wrote:
+# > According to Associated Press Of Pakistan, it is confirmed that
+# > Pakistan clocks across the country would be turned back by an hour from October
+# > 1, 2009.
+#
+# Now they seem to have changed their mind, November 1 is the new date:
+# <a href="http://www.thenews.com.pk/top_story_detail.asp?Id=24742">
+# http://www.thenews.com.pk/top_story_detail.asp?Id=24742
+# </a>
+# "The country's clocks will be reversed by one hour on November 1.
+# Officials of Federal Ministry for Interior told this to Geo News on
+# Monday."
+#
+# And more importantly, it seems that these dates will be kept every year:
+# "It has now been decided that clocks will be wound forward by one hour
+# on April 15 and reversed by an hour on November 1 every year without
+# obtaining prior approval, the officials added."
+#
+# We have confirmed this year's end date with both with the Ministry of
+# Water and Power and the Pakistan Electric Power Company:
+# <a href="http://www.timeanddate.com/news/time/pakistan-ends-dst09.html">
+# http://www.timeanddate.com/news/time/pakistan-ends-dst09.html
+# </a>
+
+# From Christoph Goehre (2009-10-01):
+# [T]he German Consulate General in Karachi reported me today that Pakistan
+# will go back to standard time on 1st of November.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule Pakistan	2002	only	-	Apr	Sun>=2	0:01	1:00	S
+Rule Pakistan	2002	only	-	Oct	Sun>=2	0:01	0	-
+Rule Pakistan	2008	only	-	Jun	1	0:00	1:00	S
+Rule Pakistan	2008	only	-	Nov	1	0:00	0	-
+Rule Pakistan	2009	max	-	Apr	15	0:00	1:00	S
+Rule Pakistan	2009	max	-	Nov	1	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Karachi	4:28:12 -	LMT	1907
+			5:30	-	IST	1942 Sep
+			5:30	1:00	IST	1945 Oct 15
+			5:30	-	IST	1951 Sep 30
+			5:00	-	KART	1971 Mar 26 # Karachi Time
+			5:00 Pakistan	PK%sT	# Pakistan Time
+
+# Palestine
+
+# From Amos Shapir (1998-02-15):
+#
+# From 1917 until 1948-05-15, all of Palestine, including the parts now
+# known as the Gaza Strip and the West Bank, was under British rule.
+# Therefore the rules given for Israel for that period, apply there too...
+#
+# The Gaza Strip was under Egyptian rule between 1948-05-15 until 1967-06-05
+# (except a short occupation by Israel from 1956-11 till 1957-03, but no
+# time zone was affected then).  It was never formally annexed to Egypt,
+# though.
+#
+# The rest of Palestine was under Jordanian rule at that time, formally
+# annexed in 1950 as the West Bank (and the word "Trans" was dropped from
+# the country's previous name of "the Hashemite Kingdom of the
+# Trans-Jordan").  So the rules for Jordan for that time apply.  Major
+# towns in that area are Nablus (Shchem), El-Halil (Hebron), Ramallah, and
+# East Jerusalem.
+#
+# Both areas were occupied by Israel in June 1967, but not annexed (except
+# for East Jerusalem).  They were on Israel time since then; there might
+# have been a Military Governor's order about time zones, but I'm not aware
+# of any (such orders may have been issued semi-annually whenever summer
+# time was in effect, but maybe the legal aspect of time was just neglected).
+#
+# The Palestinian Authority was established in 1993, and got hold of most
+# towns in the West Bank and Gaza by 1995.  I know that in order to
+# demonstrate...independence, they have been switching to
+# summer time and back on a different schedule than Israel's, but I don't
+# know when this was started, or what algorithm is used (most likely the
+# Jordanian one).
+#
+# To summarize, the table should probably look something like that:
+#
+# Area \ when | 1918-1947 | 1948-1967 | 1967-1995 | 1996-
+# ------------+-----------+-----------+-----------+-----------
+# Israel      | Zion      | Zion      | Zion      | Zion
+# West bank   | Zion      | Jordan    | Zion      | Jordan
+# Gaza        | Zion      | Egypt     | Zion      | Jordan
+#
+# I guess more info may be available from the PA's web page (if/when they
+# have one).
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that Gaza did not observe DST until 1957, but go
+# with Shapir and assume that it observed DST from 1940 through 1947,
+# and that it used Jordanian rules starting in 1996.
+# We don't yet need a separate entry for the West Bank, since
+# the only differences between it and Gaza that we know about
+# occurred before our cutoff date of 1970.
+# However, as we get more information, we may need to add entries
+# for parts of the West Bank as they transitioned from Israel's rules
+# to Palestine's rules.  If you have more info about this, please
+# send it to tz@elsie.nci.nih.gov for incorporation into future editions.
+
+# From IINS News Service - Israel - 1998-03-23 10:38:07 Israel time,
+# forwarded by Ephraim Silverberg:
+#
+# Despite the fact that Israel changed over to daylight savings time
+# last week, the PLO Authority (PA) has decided not to turn its clocks
+# one-hour forward at this time.  As a sign of independence from Israeli rule,
+# the PA has decided to implement DST in April.
+
+# From Paul Eggert (1999-09-20):
+# Daoud Kuttab writes in
+# <a href="http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html">
+# Holiday havoc
+# </a> (Jerusalem Post, 1999-04-22) that
+# the Palestinian National Authority changed to DST on 1999-04-15.
+# I vaguely recall that they switch back in October (sorry, forgot the source).
+# For now, let's assume that the spring switch was at 24:00,
+# and that they switch at 0:00 on the 3rd Fridays of April and October.
+
+# From Paul Eggert (2005-11-22):
+# Starting 2004 transitions are from Steffen Thorsen's web site timeanddate.com.
+
+# From Steffen Thorsen (2005-11-23):
+# A user from Gaza reported that Gaza made the change early because of
+# the Ramadan.  Next year Ramadan will be even earlier, so I think
+# there is a good chance next year's end date will be around two weeks
+# earlier--the same goes for Jordan.
+
+# From Steffen Thorsen (2006-08-17):
+# I was informed by a user in Bethlehem that in Bethlehem it started the
+# same day as Israel, and after checking with other users in the area, I
+# was informed that they started DST one day after Israel.  I was not
+# able to find any authoritative sources at the time, nor details if
+# Gaza changed as well, but presumed Gaza to follow the same rules as
+# the West Bank.
+
+# From Steffen Thorsen (2006-09-26):
+# according to the Palestine News Network (2006-09-19):
+# http://english.pnn.ps/index.php?option=com_content&task=view&id=596&Itemid=5
+# > The Council of Ministers announced that this year its winter schedule
+# > will begin early, as of midnight Thursday.  It is also time to turn
+# > back the clocks for winter.  Friday will begin an hour late this week.
+# I guess it is likely that next year's date will be moved as well,
+# because of the Ramadan.
+
+# From Jesper Norgaard Welen (2007-09-18):
+# According to Steffen Thorsen's web site the Gaza Strip and the rest of the
+# Palestinian territories left DST early on 13.th. of September at 2:00.
+
+# From Paul Eggert (2007-09-20):
+# My understanding is that Gaza and the West Bank disagree even over when
+# the weekend is (Thursday+Friday versus Friday+Saturday), so I'd be a bit
+# surprised if they agreed about DST.  But for now, assume they agree.
+# For lack of better information, predict that future changes will be
+# the 2nd Thursday of September at 02:00.
+
+# From Alexander Krivenyshev (2008-08-28):
+# Here is an article, that Mideast running on different clocks at Ramadan.
+#
+# Gaza Strip (as Egypt) ended DST at midnight Thursday (Aug 28, 2008), while
+# the West Bank will end Daylight Saving Time at midnight Sunday (Aug 31, 2008).
+#
+# <a href="http://www.guardian.co.uk/world/feedarticle/7759001">
+# http://www.guardian.co.uk/world/feedarticle/7759001
+# </a>
+# <a href="http://www.abcnews.go.com/International/wireStory?id=5676087">
+# http://www.abcnews.go.com/International/wireStory?id=5676087
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html">
+# http://www.worldtimezone.com/dst_news/dst_news_gazastrip01.html
+# </a>
+
+# From Alexander Krivenyshev (2009-03-26):
+# According to the Palestine News Network (arabic.pnn.ps), Palestinian
+# government decided to start Daylight Time on Thursday night March
+# 26 and continue until the night of 27 September 2009.
+#
+# (in Arabic)
+# <a href="http://arabic.pnn.ps/index.php?option=com_content&task=view&id=50850">
+# http://arabic.pnn.ps/index.php?option=com_content&task=view&id=50850
+# </a>
+#
+# or
+# (English translation)
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_westbank01.html">
+# http://www.worldtimezone.com/dst_news/dst_news_westbank01.html
+# </a>
+
+# From Steffen Thorsen (2009-08-31):
+# Palestine's Council of Ministers announced that they will revert back to
+# winter time on Friday, 2009-09-04.
+#
+# One news source:
+# <a href="http://www.safa.ps/ara/?action=showdetail&seid=4158">
+# http://www.safa.ps/ara/?action=showdetail&seid=4158
+# </a>
+# (Palestinian press agency, Arabic),
+# Google translate: "Decided that the Palestinian government in Ramallah
+# headed by Salam Fayyad, the start of work in time for the winter of
+# 2009, starting on Friday approved the fourth delay Sept. clock sixty
+# minutes per hour as of Friday morning."
+#
+# We are not sure if Gaza will do the same, last year they had a different
+# end date, we will keep this page updated:
+# <a href="http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html">
+# http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
+# </a>
+
+# From Alexander Krivenyshev (2009-09-02):
+# Seems that Gaza Strip will go back to Winter Time same date as West Bank.
+#
+# According to Palestinian Ministry Of Interior, West Bank and Gaza Strip plan
+# to change time back to Standard time on September 4, 2009.
+#
+# "Winter time unite the West Bank and Gaza"
+# (from Palestinian National Authority):
+# <a href="http://www.moi.gov.ps/en/?page=633167343250594025&nid=11505
+# http://www.moi.gov.ps/en/?page=633167343250594025&nid=11505
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_gazastrip02.html>
+# http://www.worldtimezone.com/dst_news/dst_news_gazastrip02.html
+# </a>
+
+# The rules for Egypt are stolen from the `africa' file.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule EgyptAsia	1957	only	-	May	10	0:00	1:00	S
+Rule EgyptAsia	1957	1958	-	Oct	 1	0:00	0	-
+Rule EgyptAsia	1958	only	-	May	 1	0:00	1:00	S
+Rule EgyptAsia	1959	1967	-	May	 1	1:00	1:00	S
+Rule EgyptAsia	1959	1965	-	Sep	30	3:00	0	-
+Rule EgyptAsia	1966	only	-	Oct	 1	3:00	0	-
+
+Rule Palestine	1999	2005	-	Apr	Fri>=15	0:00	1:00	S
+Rule Palestine	1999	2003	-	Oct	Fri>=15	0:00	0	-
+Rule Palestine	2004	only	-	Oct	 1	1:00	0	-
+Rule Palestine	2005	only	-	Oct	 4	2:00	0	-
+Rule Palestine	2006	2008	-	Apr	 1	0:00	1:00	S
+Rule Palestine	2006	only	-	Sep	22	0:00	0	-
+Rule Palestine	2007	only	-	Sep	Thu>=8	2:00	0	-
+Rule Palestine	2008	only	-	Aug	lastFri	2:00	0	-
+Rule Palestine	2009	max	-	Mar	lastFri	0:00	1:00	S
+Rule Palestine	2009	max	-	Sep	Fri>=1	2:00	0	-
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Gaza	2:17:52	-	LMT	1900 Oct
+			2:00	Zion	EET	1948 May 15
+			2:00 EgyptAsia	EE%sT	1967 Jun  5
+			2:00	Zion	I%sT	1996
+			2:00	Jordan	EE%sT	1999
+			2:00 Palestine	EE%sT
+
+# Paracel Is
+# no information
+
+# Philippines
+# On 1844-08-16, Narciso Claveria, governor-general of the
+# Philippines, issued a proclamation announcing that 1844-12-30 was to
+# be immediately followed by 1845-01-01.  Robert H. van Gent has a
+# transcript of the decree in <http://www.phys.uu.nl/~vgent/idl/idl.htm>.
+# The rest of the data are from Shanks & Pottenger.
+
+# From Paul Eggert (2006-04-25):
+# Tomorrow's Manila Standard reports that the Philippines Department of
+# Trade and Industry is considering adopting DST this June when the
+# rainy season begins.  See
+# <http://www.manilastandardtoday.com/?page=politics02_april26_2006>.
+# For now, we'll ignore this, since it's not definite and we lack details.
+#
+# From Jesper Norgaard Welen (2006-04-26):
+# ... claims that Philippines had DST last time in 1990:
+# http://story.philippinetimes.com/p.x/ct/9/id/145be20cc6b121c0/cid/3e5bbccc730d258c/
+# [a story dated 2006-04-25 by Cris Larano of Dow Jones Newswires,
+# but no details]
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Phil	1936	only	-	Nov	1	0:00	1:00	S
+Rule	Phil	1937	only	-	Feb	1	0:00	0	-
+Rule	Phil	1954	only	-	Apr	12	0:00	1:00	S
+Rule	Phil	1954	only	-	Jul	1	0:00	0	-
+Rule	Phil	1978	only	-	Mar	22	0:00	1:00	S
+Rule	Phil	1978	only	-	Sep	21	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Manila	-15:56:00 -	LMT	1844 Dec 31
+			8:04:00 -	LMT	1899 May 11
+			8:00	Phil	PH%sT	1942 May
+			9:00	-	JST	1944 Nov
+			8:00	Phil	PH%sT
+
+# Qatar
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Qatar	3:26:08 -	LMT	1920	# Al Dawhah / Doha
+			4:00	-	GST	1972 Jun
+			3:00	-	AST
+
+# Saudi Arabia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Riyadh	3:06:52 -	LMT	1950
+			3:00	-	AST
+
+# Singapore
+# The data here are taken from Mok Ly Yng (2003-10-30)
+# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Singapore	6:55:25 -	LMT	1901 Jan  1
+			6:55:25	-	SMT	1905 Jun  1 # Singapore M.T.
+			7:00	-	MALT	1933 Jan  1 # Malaya Time
+			7:00	0:20	MALST	1936 Jan  1
+			7:20	-	MALT	1941 Sep  1
+			7:30	-	MALT	1942 Feb 16
+			9:00	-	JST	1945 Sep 12
+			7:30	-	MALT	1965 Aug  9 # independence
+			7:30	-	SGT	1982 Jan  1 # Singapore Time
+			8:00	-	SGT
+
+# Spratly Is
+# no information
+
+# Sri Lanka
+# From Paul Eggert (1996-09-03):
+# "Sri Lanka advances clock by an hour to avoid blackout"
+# (www.virtual-pc.com/lankaweb/news/items/240596-2.html, 1996-05-24,
+# no longer available as of 1999-08-17)
+# reported ``the country's standard time will be put forward by one hour at
+# midnight Friday (1830 GMT) `in the light of the present power crisis'.''
+#
+# From Dharmasiri Senanayake, Sri Lanka Media Minister (1996-10-24), as quoted
+# by Shamindra in
+# <a href="news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net">
+# Daily News - Hot News Section (1996-10-26)
+# </a>:
+# With effect from 12.30 a.m. on 26th October 1996
+# Sri Lanka will be six (06) hours ahead of GMT.
+
+# From Jesper Norgaard Welen (2006-04-14), quoting Sri Lanka News Online
+# <http://news.sinhalaya.com/wmview.php?ArtID=11002> (2006-04-13):
+# 0030 hrs on April 15, 2006 (midnight of April 14, 2006 +30 minutes)
+# at present, become 2400 hours of April 14, 2006 (midnight of April 14, 2006).
+
+# From Peter Apps and Ranga Sirila of Reuters (2006-04-12) in:
+# <http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML>
+# [The Tamil Tigers] never accepted the original 1996 time change and simply
+# kept their clocks set five and a half hours ahead of Greenwich Mean
+# Time (GMT), in line with neighbor India.
+# From Paul Eggert (2006-04-18):
+# People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
+# as that zone has agreed with the Tamil areas since our cutoff date of 1970.
+
+# From K Sethu (2006-04-25):
+# I think the abbreviation LKT originated from the world of computers at
+# the time of or subsequent to the time zone changes by SL Government
+# twice in 1996 and probably SL Government or its standardization
+# agencies never declared an abbreviation as a national standard.
+#
+# I recollect before the recent change the government annoucemments
+# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
+# Time and no mention was made about the abbreviation.
+#
+# If we look at Sri Lanka Department of Government's "Official News
+# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
+# use SLT as abbreviation in time stamp at the beginning of each news
+# item....
+#
+# Within Sri Lanka I think LKT is well known among computer users and
+# adminsitrators.  In my opinion SLT may not be a good choice because the
+# nation's largest telcom / internet operator Sri Lanka Telcom is well
+# known by that abbreviation - simply as SLT (there IP domains are
+# slt.lk and sltnet.lk).
+#
+# But if indeed our government has adopted SLT as standard abbreviation
+# (that we have not known so far) then  it is better that it be used for
+# all computers.
+
+# From Paul Eggert (2006-04-25):
+# One possibility is that we wait for a bit for the dust to settle down
+# and then see what people actually say in practice.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Colombo	5:19:24 -	LMT	1880
+			5:19:32	-	MMT	1906	# Moratuwa Mean Time
+			5:30	-	IST	1942 Jan  5
+			5:30	0:30	IHST	1942 Sep
+			5:30	1:00	IST	1945 Oct 16 2:00
+			5:30	-	IST	1996 May 25 0:00
+			6:30	-	LKT	1996 Oct 26 0:30
+			6:00	-	LKT	2006 Apr 15 0:30
+			5:30	-	IST
+
+# Syria
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Syria	1920	1923	-	Apr	Sun>=15	2:00	1:00	S
+Rule	Syria	1920	1923	-	Oct	Sun>=1	2:00	0	-
+Rule	Syria	1962	only	-	Apr	29	2:00	1:00	S
+Rule	Syria	1962	only	-	Oct	1	2:00	0	-
+Rule	Syria	1963	1965	-	May	1	2:00	1:00	S
+Rule	Syria	1963	only	-	Sep	30	2:00	0	-
+Rule	Syria	1964	only	-	Oct	1	2:00	0	-
+Rule	Syria	1965	only	-	Sep	30	2:00	0	-
+Rule	Syria	1966	only	-	Apr	24	2:00	1:00	S
+Rule	Syria	1966	1976	-	Oct	1	2:00	0	-
+Rule	Syria	1967	1978	-	May	1	2:00	1:00	S
+Rule	Syria	1977	1978	-	Sep	1	2:00	0	-
+Rule	Syria	1983	1984	-	Apr	9	2:00	1:00	S
+Rule	Syria	1983	1984	-	Oct	1	2:00	0	-
+Rule	Syria	1986	only	-	Feb	16	2:00	1:00	S
+Rule	Syria	1986	only	-	Oct	9	2:00	0	-
+Rule	Syria	1987	only	-	Mar	1	2:00	1:00	S
+Rule	Syria	1987	1988	-	Oct	31	2:00	0	-
+Rule	Syria	1988	only	-	Mar	15	2:00	1:00	S
+Rule	Syria	1989	only	-	Mar	31	2:00	1:00	S
+Rule	Syria	1989	only	-	Oct	1	2:00	0	-
+Rule	Syria	1990	only	-	Apr	1	2:00	1:00	S
+Rule	Syria	1990	only	-	Sep	30	2:00	0	-
+Rule	Syria	1991	only	-	Apr	 1	0:00	1:00	S
+Rule	Syria	1991	1992	-	Oct	 1	0:00	0	-
+Rule	Syria	1992	only	-	Apr	 8	0:00	1:00	S
+Rule	Syria	1993	only	-	Mar	26	0:00	1:00	S
+Rule	Syria	1993	only	-	Sep	25	0:00	0	-
+# IATA SSIM (1998-02) says 1998-04-02;
+# (1998-09) says 1999-03-29 and 1999-09-29; (1999-02) says 1999-04-02,
+# 2000-04-02, and 2001-04-02; (1999-09) says 2000-03-31 and 2001-03-31;
+# (2006) says 2006-03-31 and 2006-09-22;
+# for now ignore all these claims and go with Shanks & Pottenger,
+# except for the 2006-09-22 claim (which seems right for Ramadan).
+Rule	Syria	1994	1996	-	Apr	 1	0:00	1:00	S
+Rule	Syria	1994	2005	-	Oct	 1	0:00	0	-
+Rule	Syria	1997	1998	-	Mar	lastMon	0:00	1:00	S
+Rule	Syria	1999	2006	-	Apr	 1	0:00	1:00	S
+# From Stephen Colebourne (2006-09-18):
+# According to IATA data, Syria will change DST on 21st September [21:00 UTC]
+# this year [only]....  This is probably related to Ramadan, like Egypt.
+Rule	Syria	2006	only	-	Sep	22	0:00	0	-
+# From Paul Eggert (2007-03-29):
+# Today the AP reported "Syria will switch to summertime at midnight Thursday."
+# http://www.iht.com/articles/ap/2007/03/29/africa/ME-GEN-Syria-Time-Change.php
+Rule	Syria	2007	only	-	Mar	lastFri	0:00	1:00	S
+# From Jesper Norgard (2007-10-27):
+# The sister center ICARDA of my work CIMMYT is confirming that Syria DST will
+# not take place 1.st November at 0:00 o'clock but 1.st November at 24:00 or
+# rather Midnight between Thursday and Friday. This does make more sence than
+# having it between Wednesday and Thursday (two workdays in Syria) since the
+# weekend in Syria is not Saturday and Sunday, but Friday and Saturday. So now
+# it is implemented at midnight of the last workday before weekend...
+# 
+# From Steffen Thorsen (2007-10-27):
+# Jesper Norgaard Welen wrote:
+# 
+# > "Winter local time in Syria will be observed at midnight of Thursday 1
+# > November 2007, and the clock will be put back 1 hour."
+# 
+# I found confirmation on this in this gov.sy-article (Arabic):
+# http://wehda.alwehda.gov.sy/_print_veiw.asp?FileName=12521710520070926111247
+# 
+# which using Google's translate tools says:
+# Council of Ministers also approved the commencement of work on 
+# identifying the winter time as of Friday, 2/11/2007 where the 60th 
+# minute delay at midnight Thursday 1/11/2007.
+Rule	Syria	2007	only	-	Nov	 Fri>=1	0:00	0	-
+
+# From Stephen Colebourne (2008-03-17):
+# For everyone's info, I saw an IATA time zone change for [Syria] for
+# this month (March 2008) in the last day or so...This is the data IATA
+# are now using:
+# Country     Time Standard   --- DST Start ---   --- DST End ---  DST
+# Name        Zone Variation   Time    Date        Time    Date
+# Variation
+# Syrian Arab
+# Republic    SY    +0200      2200  03APR08       2100  30SEP08   +0300
+#                              2200  02APR09       2100  30SEP09   +0300
+#                              2200  01APR10       2100  30SEP10   +0300
+
+# From Arthur David Olson (2008-03-17):
+# Here's a link to English-language coverage by the Syrian Arab News
+# Agency (SANA)...
+# <a href="http://www.sana.sy/eng/21/2008/03/11/165173.htm">
+# http://www.sana.sy/eng/21/2008/03/11/165173.htm
+# </a>...which reads (in part) "The Cabinet approved the suggestion of the
+# Ministry of Electricity to begin daylight savings time on Friday April
+# 4th, advancing clocks one hour ahead on midnight of Thursday April 3rd."
+# Since Syria is two hours east of UTC, the 2200 and 2100 transition times
+# shown above match up with midnight in Syria.
+
+# From Arthur David Olson (2008-03-18):
+# My buest guess at a Syrian rule is "the Friday nearest April 1";
+# coding that involves either using a "Mar Fri>=29" construct that old time zone
+# compilers can't handle  or having multiple Rules (a la Israel).
+# For now, use "Apr Fri>=1", and go with IATA on a uniform Sep 30 end.
+
+# From Steffen Thorsen (2008-10-07):
+# Syria has now officially decided to end DST on 2008-11-01 this year,
+# according to the following article in the Syrian Arab News Agency (SANA).
+#
+# The article is in Arabic, and seems to tell that they will go back to
+# winter time on 2008-11-01 at 00:00 local daylight time (delaying/setting
+# clocks back 60 minutes).
+#
+# <a href="http://sana.sy/ara/2/2008/10/07/195459.htm">
+# http://sana.sy/ara/2/2008/10/07/195459.htm
+# </a>
+
+# From Steffen Thorsen (2009-03-19):
+# Syria will start DST on 2009-03-27 00:00 this year according to many sources,
+# two examples:
+#
+# <a href="http://www.sana.sy/eng/21/2009/03/17/217563.htm">
+# http://www.sana.sy/eng/21/2009/03/17/217563.htm
+# </a>
+# (English, Syrian Arab News # Agency)
+# <a href="http://thawra.alwehda.gov.sy/_View_news2.asp?FileName=94459258720090318012209">
+# http://thawra.alwehda.gov.sy/_View_news2.asp?FileName=94459258720090318012209
+# </a>
+# (Arabic, gov-site)
+#
+# We have not found any sources saying anything about when DST ends this year.
+#
+# Our summary
+# <a href="http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html">
+# http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
+# </a>
+
+# From Steffen Thorsen (2009-10-27):
+# The Syrian Arab News Network on 2009-09-29 reported that Syria will 
+# revert back to winter (standard) time on midnight between Thursday 
+# 2009-10-29 and Friday 2009-10-30:
+# <a href="http://www.sana.sy/ara/2/2009/09/29/247012.htm">
+# http://www.sana.sy/ara/2/2009/09/29/247012.htm (Arabic)
+# </a>
+
+# From Arthur David Olson (2009-10-28):
+# We'll see if future DST switching times turn out to be end of the last
+# Thursday of the month or the start of the last Friday of the month or
+# something else. For now, use the start of the last Friday.
+
+Rule	Syria	2008	only	-	Apr	Fri>=1	0:00	1:00	S
+Rule	Syria	2008	only	-	Nov	1	0:00	0	-
+Rule	Syria	2009	max	-	Mar	lastFri	0:00	1:00	S
+Rule	Syria	2009	max	-	Oct	lastFri	0:00	0	-
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Damascus	2:25:12 -	LMT	1920	# Dimashq
+			2:00	Syria	EE%sT
+
+# Tajikistan
+# From Shanks & Pottenger.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Dushanbe	4:35:12 -	LMT	1924 May  2
+			5:00	-	DUST	1930 Jun 21 # Dushanbe Time
+			6:00 RussiaAsia DUS%sT	1991 Mar 31 2:00s
+			5:00	1:00	DUSST	1991 Sep  9 2:00s
+			5:00	-	TJT		    # Tajikistan Time
+
+# Thailand
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Bangkok	6:42:04	-	LMT	1880
+			6:42:04	-	BMT	1920 Apr # Bangkok Mean Time
+			7:00	-	ICT
+
+# Turkmenistan
+# From Shanks & Pottenger.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Ashgabat	3:53:32 -	LMT	1924 May  2 # or Ashkhabad
+			4:00	-	ASHT	1930 Jun 21 # Ashkhabad Time
+			5:00 RussiaAsia	ASH%sT	1991 Mar 31 2:00
+			4:00 RussiaAsia	ASH%sT	1991 Oct 27 # independence
+			4:00 RussiaAsia	TM%sT	1992 Jan 19 2:00
+			5:00	-	TMT
+
+# United Arab Emirates
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Dubai	3:41:12 -	LMT	1920
+			4:00	-	GST
+
+# Uzbekistan
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Samarkand	4:27:12 -	LMT	1924 May  2
+			4:00	-	SAMT	1930 Jun 21 # Samarkand Time
+			5:00	-	SAMT	1981 Apr  1
+			5:00	1:00	SAMST	1981 Oct  1
+			6:00	-	TAST	1982 Apr  1 # Tashkent Time
+			5:00 RussiaAsia	SAM%sT	1991 Sep  1 # independence
+			5:00 RussiaAsia	UZ%sT	1992
+			5:00	-	UZT
+Zone	Asia/Tashkent	4:37:12 -	LMT	1924 May  2
+			5:00	-	TAST	1930 Jun 21 # Tashkent Time
+			6:00 RussiaAsia	TAS%sT	1991 Mar 31 2:00
+			5:00 RussiaAsia	TAS%sT	1991 Sep  1 # independence
+			5:00 RussiaAsia	UZ%sT	1992
+			5:00	-	UZT
+
+# Vietnam
+
+# From Arthur David Olson (2008-03-18):
+# The English-language name of Vietnam's most populous city is "Ho Chi Min City";
+# we use Ho_Chi_Minh below to avoid a name of more than 14 characters.
+
+# From Shanks & Pottenger:
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Ho_Chi_Minh	7:06:40 -	LMT	1906 Jun  9
+			7:06:20	-	SMT	1911 Mar 11 0:01 # Saigon MT?
+			7:00	-	ICT	1912 May
+			8:00	-	ICT	1931 May
+			7:00	-	ICT
+
+# Yemen
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Asia/Aden	3:00:48	-	LMT	1950
+			3:00	-	AST
diff --git a/tools/zoneinfo/tzdata2009s/australasia b/tools/zoneinfo/tzdata2009s/australasia
new file mode 100644
index 0000000..3812390
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/australasia
@@ -0,0 +1,1560 @@
+# <pre>
+# @(#)australasia	8.15
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This file also includes Pacific islands.
+
+# Notes are at the end of this file
+
+###############################################################################
+
+# Australia
+
+# Please see the notes below for the controversy about "EST" versus "AEST" etc.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Aus	1917	only	-	Jan	 1	0:01	1:00	-
+Rule	Aus	1917	only	-	Mar	25	2:00	0	-
+Rule	Aus	1942	only	-	Jan	 1	2:00	1:00	-
+Rule	Aus	1942	only	-	Mar	29	2:00	0	-
+Rule	Aus	1942	only	-	Sep	27	2:00	1:00	-
+Rule	Aus	1943	1944	-	Mar	lastSun	2:00	0	-
+Rule	Aus	1943	only	-	Oct	 3	2:00	1:00	-
+# Go with Whitman and the Australian National Standards Commission, which
+# says W Australia didn't use DST in 1943/1944.  Ignore Whitman's claim that
+# 1944/1945 was just like 1943/1944.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+# Northern Territory
+Zone Australia/Darwin	 8:43:20 -	LMT	1895 Feb
+			 9:00	-	CST	1899 May
+			 9:30	Aus	CST
+# Western Australia
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	AW	1974	only	-	Oct	lastSun	2:00s	1:00	-
+Rule	AW	1975	only	-	Mar	Sun>=1	2:00s	0	-
+Rule	AW	1983	only	-	Oct	lastSun	2:00s	1:00	-
+Rule	AW	1984	only	-	Mar	Sun>=1	2:00s	0	-
+Rule	AW	1991	only	-	Nov	17	2:00s	1:00	-
+Rule	AW	1992	only	-	Mar	Sun>=1	2:00s	0	-
+Rule	AW	2006	only	-	Dec	 3	2:00s	1:00	-
+Rule	AW	2007	2009	-	Mar	lastSun	2:00s	0	-
+Rule	AW	2007	2008	-	Oct	lastSun	2:00s	1:00	-
+Zone Australia/Perth	 7:43:24 -	LMT	1895 Dec
+			 8:00	Aus	WST	1943 Jul
+			 8:00	AW	WST
+Zone Australia/Eucla	 8:35:28 -	LMT	1895 Dec
+			 8:45	Aus	CWST	1943 Jul
+			 8:45	AW	CWST
+
+# Queensland
+#
+# From Alex Livingston (1996-11-01):
+# I have heard or read more than once that some resort islands off the coast
+# of Queensland chose to keep observing daylight-saving time even after
+# Queensland ceased to.
+#
+# From Paul Eggert (1996-11-22):
+# IATA SSIM (1993-02/1994-09) say that the Holiday Islands (Hayman, Lindeman,
+# Hamilton) observed DST for two years after the rest of Queensland stopped.
+# Hamilton is the largest, but there is also a Hamilton in Victoria,
+# so use Lindeman.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	AQ	1971	only	-	Oct	lastSun	2:00s	1:00	-
+Rule	AQ	1972	only	-	Feb	lastSun	2:00s	0	-
+Rule	AQ	1989	1991	-	Oct	lastSun	2:00s	1:00	-
+Rule	AQ	1990	1992	-	Mar	Sun>=1	2:00s	0	-
+Rule	Holiday	1992	1993	-	Oct	lastSun	2:00s	1:00	-
+Rule	Holiday	1993	1994	-	Mar	Sun>=1	2:00s	0	-
+Zone Australia/Brisbane	10:12:08 -	LMT	1895
+			10:00	Aus	EST	1971
+			10:00	AQ	EST
+Zone Australia/Lindeman  9:55:56 -	LMT	1895
+			10:00	Aus	EST	1971
+			10:00	AQ	EST	1992 Jul
+			10:00	Holiday	EST
+
+# South Australia
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	AS	1971	1985	-	Oct	lastSun	2:00s	1:00	-
+Rule	AS	1986	only	-	Oct	19	2:00s	1:00	-
+Rule	AS	1987	2007	-	Oct	lastSun	2:00s	1:00	-
+Rule	AS	1972	only	-	Feb	27	2:00s	0	-
+Rule	AS	1973	1985	-	Mar	Sun>=1	2:00s	0	-
+Rule	AS	1986	1989	-	Mar	Sun>=15	2:00s	0	-
+Rule	AS	1990	only	-	Mar	Sun>=18	2:00s	0	-
+Rule	AS	1991	only	-	Mar	Sun>=1	2:00s	0	-
+Rule	AS	1992	only	-	Mar	Sun>=18	2:00s	0	-
+Rule	AS	1993	only	-	Mar	Sun>=1	2:00s	0	-
+Rule	AS	1994	only	-	Mar	Sun>=18	2:00s	0	-
+Rule	AS	1995	2005	-	Mar	lastSun	2:00s	0	-
+Rule	AS	2006	only	-	Apr	Sun>=1	2:00s	0	-
+Rule	AS	2007	only	-	Mar	lastSun	2:00s	0	-
+Rule	AS	2008	max	-	Apr	Sun>=1	2:00s	0	-
+Rule	AS	2008	max	-	Oct	Sun>=1	2:00s	1:00	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Australia/Adelaide	9:14:20 -	LMT	1895 Feb
+			9:00	-	CST	1899 May
+			9:30	Aus	CST	1971
+			9:30	AS	CST
+
+# Tasmania
+#
+# From Paul Eggert (2005-08-16):
+# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml>
+# says King Island didn't observe DST from WWII until late 1971.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	AT	1967	only	-	Oct	Sun>=1	2:00s	1:00	-
+Rule	AT	1968	only	-	Mar	lastSun	2:00s	0	-
+Rule	AT	1968	1985	-	Oct	lastSun	2:00s	1:00	-
+Rule	AT	1969	1971	-	Mar	Sun>=8	2:00s	0	-
+Rule	AT	1972	only	-	Feb	lastSun	2:00s	0	-
+Rule	AT	1973	1981	-	Mar	Sun>=1	2:00s	0	-
+Rule	AT	1982	1983	-	Mar	lastSun	2:00s	0	-
+Rule	AT	1984	1986	-	Mar	Sun>=1	2:00s	0	-
+Rule	AT	1986	only	-	Oct	Sun>=15	2:00s	1:00	-
+Rule	AT	1987	1990	-	Mar	Sun>=15	2:00s	0	-
+Rule	AT	1987	only	-	Oct	Sun>=22	2:00s	1:00	-
+Rule	AT	1988	1990	-	Oct	lastSun	2:00s	1:00	-
+Rule	AT	1991	1999	-	Oct	Sun>=1	2:00s	1:00	-
+Rule	AT	1991	2005	-	Mar	lastSun	2:00s	0	-
+Rule	AT	2000	only	-	Aug	lastSun	2:00s	1:00	-
+Rule	AT	2001	max	-	Oct	Sun>=1	2:00s	1:00	-
+Rule	AT	2006	only	-	Apr	Sun>=1	2:00s	0	-
+Rule	AT	2007	only	-	Mar	lastSun	2:00s	0	-
+Rule	AT	2008	max	-	Apr	Sun>=1	2:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Australia/Hobart	9:49:16	-	LMT	1895 Sep
+			10:00	-	EST	1916 Oct 1 2:00
+			10:00	1:00	EST	1917 Feb
+			10:00	Aus	EST	1967
+			10:00	AT	EST
+Zone Australia/Currie	9:35:28	-	LMT	1895 Sep
+			10:00	-	EST	1916 Oct 1 2:00
+			10:00	1:00	EST	1917 Feb
+			10:00	Aus	EST	1971 Jul
+			10:00	AT	EST
+
+# Victoria
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	AV	1971	1985	-	Oct	lastSun	2:00s	1:00	-
+Rule	AV	1972	only	-	Feb	lastSun	2:00s	0	-
+Rule	AV	1973	1985	-	Mar	Sun>=1	2:00s	0	-
+Rule	AV	1986	1990	-	Mar	Sun>=15	2:00s	0	-
+Rule	AV	1986	1987	-	Oct	Sun>=15	2:00s	1:00	-
+Rule	AV	1988	1999	-	Oct	lastSun	2:00s	1:00	-
+Rule	AV	1991	1994	-	Mar	Sun>=1	2:00s	0	-
+Rule	AV	1995	2005	-	Mar	lastSun	2:00s	0	-
+Rule	AV	2000	only	-	Aug	lastSun	2:00s	1:00	-
+Rule	AV	2001	2007	-	Oct	lastSun	2:00s	1:00	-
+Rule	AV	2006	only	-	Apr	Sun>=1	2:00s	0	-
+Rule	AV	2007	only	-	Mar	lastSun	2:00s	0	-
+Rule	AV	2008	max	-	Apr	Sun>=1	2:00s	0	-
+Rule	AV	2008	max	-	Oct	Sun>=1	2:00s	1:00	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Australia/Melbourne 9:39:52 -	LMT	1895 Feb
+			10:00	Aus	EST	1971
+			10:00	AV	EST
+
+# New South Wales
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	AN	1971	1985	-	Oct	lastSun	2:00s	1:00	-
+Rule	AN	1972	only	-	Feb	27	2:00s	0	-
+Rule	AN	1973	1981	-	Mar	Sun>=1	2:00s	0	-
+Rule	AN	1982	only	-	Apr	Sun>=1	2:00s	0	-
+Rule	AN	1983	1985	-	Mar	Sun>=1	2:00s	0	-
+Rule	AN	1986	1989	-	Mar	Sun>=15	2:00s	0	-
+Rule	AN	1986	only	-	Oct	19	2:00s	1:00	-
+Rule	AN	1987	1999	-	Oct	lastSun	2:00s	1:00	-
+Rule	AN	1990	1995	-	Mar	Sun>=1	2:00s	0	-
+Rule	AN	1996	2005	-	Mar	lastSun	2:00s	0	-
+Rule	AN	2000	only	-	Aug	lastSun	2:00s	1:00	-
+Rule	AN	2001	2007	-	Oct	lastSun	2:00s	1:00	-
+Rule	AN	2006	only	-	Apr	Sun>=1	2:00s	0	-
+Rule	AN	2007	only	-	Mar	lastSun	2:00s	0	-
+Rule	AN	2008	max	-	Apr	Sun>=1	2:00s	0	-
+Rule	AN	2008	max	-	Oct	Sun>=1	2:00s	1:00	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Australia/Sydney	10:04:52 -	LMT	1895 Feb
+			10:00	Aus	EST	1971
+			10:00	AN	EST
+Zone Australia/Broken_Hill 9:25:48 -	LMT	1895 Feb
+			10:00	-	EST	1896 Aug 23
+			9:00	-	CST	1899 May
+			9:30	Aus	CST	1971
+			9:30	AN	CST	2000
+			9:30	AS	CST
+
+# Lord Howe Island
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	LH	1981	1984	-	Oct	lastSun	2:00	1:00	-
+Rule	LH	1982	1985	-	Mar	Sun>=1	2:00	0	-
+Rule	LH	1985	only	-	Oct	lastSun	2:00	0:30	-
+Rule	LH	1986	1989	-	Mar	Sun>=15	2:00	0	-
+Rule	LH	1986	only	-	Oct	19	2:00	0:30	-
+Rule	LH	1987	1999	-	Oct	lastSun	2:00	0:30	-
+Rule	LH	1990	1995	-	Mar	Sun>=1	2:00	0	-
+Rule	LH	1996	2005	-	Mar	lastSun	2:00	0	-
+Rule	LH	2000	only	-	Aug	lastSun	2:00	0:30	-
+Rule	LH	2001	2007	-	Oct	lastSun	2:00	0:30	-
+Rule	LH	2006	only	-	Apr	Sun>=1	2:00	0	-
+Rule	LH	2007	only	-	Mar	lastSun	2:00	0	-
+Rule	LH	2008	max	-	Apr	Sun>=1	2:00	0	-
+Rule	LH	2008	max	-	Oct	Sun>=1	2:00	0:30	-
+Zone Australia/Lord_Howe 10:36:20 -	LMT	1895 Feb
+			10:00	-	EST	1981 Mar
+			10:30	LH	LHST
+
+# Australian miscellany
+#
+# Ashmore Is, Cartier
+# no indigenous inhabitants; only seasonal caretakers
+# no times are set
+#
+# Coral Sea Is
+# no indigenous inhabitants; only meteorologists
+# no times are set
+#
+# Macquarie
+# permanent occupation (scientific station) since 1948;
+# sealing and penguin oil station operated 1888/1917
+# like Australia/Hobart
+
+# Christmas
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Indian/Christmas	7:02:52 -	LMT	1895 Feb
+			7:00	-	CXT	# Christmas Island Time
+
+# Cook Is
+# From Shanks & Pottenger:
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Cook	1978	only	-	Nov	12	0:00	0:30	HS
+Rule	Cook	1979	1991	-	Mar	Sun>=1	0:00	0	-
+Rule	Cook	1979	1990	-	Oct	lastSun	0:00	0:30	HS
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Rarotonga	-10:39:04 -	LMT	1901		# Avarua
+			-10:30	-	CKT	1978 Nov 12	# Cook Is Time
+			-10:00	Cook	CK%sT
+
+# Cocos
+# These islands were ruled by the Ross family from about 1830 to 1978.
+# We don't know when standard time was introduced; for now, we guess 1900.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Indian/Cocos	6:27:40	-	LMT	1900
+			6:30	-	CCT	# Cocos Islands Time
+
+# Fiji
+# From Alexander Krivenyshev (2009-11-10):
+# According to Fiji Broadcasting Corporation,  Fiji plans to re-introduce DST
+# from November 29th 2009  to April 25th 2010.
+#
+# "Daylight savings to commence this month"
+# <a href="http://www.radiofiji.com.fj/fullstory.php?id=23719">
+# http://www.radiofiji.com.fj/fullstory.php?id=23719
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_fiji01.html">
+# http://www.worldtimezone.com/dst_news/dst_news_fiji01.html
+# </a>
+
+# From Steffen Thorsen (2009-11-10):
+# The Fiji Government has posted some more details about the approved
+# amendments:
+# <a href="http://www.fiji.gov.fj/publish/page_16198.shtml">
+# http://www.fiji.gov.fj/publish/page_16198.shtml
+# </a>
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Fiji	1998	1999	-	Nov	Sun>=1	2:00	1:00	S
+Rule	Fiji	1999	2000	-	Feb	lastSun	3:00	0	-
+Rule	Fiji	2009	only	-	Nov	29	2:00	1:00	S
+Rule	Fiji	2010	only	-	Apr	25	3:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Fiji	11:53:40 -	LMT	1915 Oct 26	# Suva
+			12:00	Fiji	FJ%sT	# Fiji Time
+
+# French Polynesia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Gambier	 -8:59:48 -	LMT	1912 Oct	# Rikitea
+			 -9:00	-	GAMT	# Gambier Time
+Zone	Pacific/Marquesas -9:18:00 -	LMT	1912 Oct
+			 -9:30	-	MART	# Marquesas Time
+Zone	Pacific/Tahiti	 -9:58:16 -	LMT	1912 Oct	# Papeete
+			-10:00	-	TAHT	# Tahiti Time
+# Clipperton (near North America) is administered from French Polynesia;
+# it is uninhabited.
+
+# Guam
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Guam	-14:21:00 -	LMT	1844 Dec 31
+			 9:39:00 -	LMT	1901		# Agana
+			10:00	-	GST	2000 Dec 23	# Guam
+			10:00	-	ChST	# Chamorro Standard Time
+
+# Kiribati
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Tarawa	 11:32:04 -	LMT	1901		# Bairiki
+			 12:00	-	GILT		 # Gilbert Is Time
+Zone Pacific/Enderbury	-11:24:20 -	LMT	1901
+			-12:00	-	PHOT	1979 Oct # Phoenix Is Time
+			-11:00	-	PHOT	1995
+			 13:00	-	PHOT
+Zone Pacific/Kiritimati	-10:29:20 -	LMT	1901
+			-10:40	-	LINT	1979 Oct # Line Is Time
+			-10:00	-	LINT	1995
+			 14:00	-	LINT
+
+# N Mariana Is
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Saipan	-14:17:00 -	LMT	1844 Dec 31
+			 9:43:00 -	LMT	1901
+			 9:00	-	MPT	1969 Oct # N Mariana Is Time
+			10:00	-	MPT	2000 Dec 23
+			10:00	-	ChST	# Chamorro Standard Time
+
+# Marshall Is
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Majuro	11:24:48 -	LMT	1901
+			11:00	-	MHT	1969 Oct # Marshall Islands Time
+			12:00	-	MHT
+Zone Pacific/Kwajalein	11:09:20 -	LMT	1901
+			11:00	-	MHT	1969 Oct
+			-12:00	-	KWAT	1993 Aug 20	# Kwajalein Time
+			12:00	-	MHT
+
+# Micronesia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Truk	10:07:08 -	LMT	1901
+			10:00	-	TRUT			# Truk Time
+Zone Pacific/Ponape	10:32:52 -	LMT	1901		# Kolonia
+			11:00	-	PONT			# Ponape Time
+Zone Pacific/Kosrae	10:51:56 -	LMT	1901
+			11:00	-	KOST	1969 Oct	# Kosrae Time
+			12:00	-	KOST	1999
+			11:00	-	KOST
+
+# Nauru
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Nauru	11:07:40 -	LMT	1921 Jan 15	# Uaobe
+			11:30	-	NRT	1942 Mar 15	# Nauru Time
+			9:00	-	JST	1944 Aug 15
+			11:30	-	NRT	1979 May
+			12:00	-	NRT
+
+# New Caledonia
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	NC	1977	1978	-	Dec	Sun>=1	0:00	1:00	S
+Rule	NC	1978	1979	-	Feb	27	0:00	0	-
+Rule	NC	1996	only	-	Dec	 1	2:00s	1:00	S
+# Shanks & Pottenger say the following was at 2:00; go with IATA.
+Rule	NC	1997	only	-	Mar	 2	2:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Noumea	11:05:48 -	LMT	1912 Jan 13
+			11:00	NC	NC%sT
+
+
+###############################################################################
+
+# New Zealand
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	NZ	1927	only	-	Nov	 6	2:00	1:00	S
+Rule	NZ	1928	only	-	Mar	 4	2:00	0	M
+Rule	NZ	1928	1933	-	Oct	Sun>=8	2:00	0:30	S
+Rule	NZ	1929	1933	-	Mar	Sun>=15	2:00	0	M
+Rule	NZ	1934	1940	-	Apr	lastSun	2:00	0	M
+Rule	NZ	1934	1940	-	Sep	lastSun	2:00	0:30	S
+Rule	NZ	1946	only	-	Jan	 1	0:00	0	S
+# Since 1957 Chatham has been 45 minutes ahead of NZ, but there's no
+# convenient notation for this so we must duplicate the Rule lines.
+Rule	NZ	1974	only	-	Nov	Sun>=1	2:00s	1:00	D
+Rule	Chatham	1974	only	-	Nov	Sun>=1	2:45s	1:00	D
+Rule	NZ	1975	only	-	Feb	lastSun	2:00s	0	S
+Rule	Chatham	1975	only	-	Feb	lastSun	2:45s	0	S
+Rule	NZ	1975	1988	-	Oct	lastSun	2:00s	1:00	D
+Rule	Chatham	1975	1988	-	Oct	lastSun	2:45s	1:00	D
+Rule	NZ	1976	1989	-	Mar	Sun>=1	2:00s	0	S
+Rule	Chatham	1976	1989	-	Mar	Sun>=1	2:45s	0	S
+Rule	NZ	1989	only	-	Oct	Sun>=8	2:00s	1:00	D
+Rule	Chatham	1989	only	-	Oct	Sun>=8	2:45s	1:00	D
+Rule	NZ	1990	2006	-	Oct	Sun>=1	2:00s	1:00	D
+Rule	Chatham	1990	2006	-	Oct	Sun>=1	2:45s	1:00	D
+Rule	NZ	1990	2007	-	Mar	Sun>=15	2:00s	0	S
+Rule	Chatham	1990	2007	-	Mar	Sun>=15	2:45s	0	S
+Rule	NZ	2007	max	-	Sep	lastSun	2:00s	1:00	D
+Rule	Chatham	2007	max	-	Sep	lastSun	2:45s	1:00	D
+Rule	NZ	2008	max	-	Apr	Sun>=1	2:00s	0	S
+Rule	Chatham	2008	max	-	Apr	Sun>=1	2:45s	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Auckland	11:39:04 -	LMT	1868 Nov  2
+			11:30	NZ	NZ%sT	1946 Jan  1
+			12:00	NZ	NZ%sT
+Zone Pacific/Chatham	12:13:48 -	LMT	1957 Jan  1
+			12:45	Chatham	CHA%sT
+
+
+# Auckland Is
+# uninhabited; Maori and Moriori, colonial settlers, pastoralists, sealers,
+# and scientific personnel have wintered
+
+# Campbell I
+# minor whaling stations operated 1909/1914
+# scientific station operated 1941/1995;
+# previously whalers, sealers, pastoralists, and scientific personnel wintered
+# was probably like Pacific/Auckland
+
+###############################################################################
+
+
+# Niue
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Niue	-11:19:40 -	LMT	1901		# Alofi
+			-11:20	-	NUT	1951	# Niue Time
+			-11:30	-	NUT	1978 Oct 1
+			-11:00	-	NUT
+
+# Norfolk
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Norfolk	11:11:52 -	LMT	1901		# Kingston
+			11:12	-	NMT	1951	# Norfolk Mean Time
+			11:30	-	NFT		# Norfolk Time
+
+# Palau (Belau)
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Palau	8:57:56 -	LMT	1901		# Koror
+			9:00	-	PWT	# Palau Time
+
+# Papua New Guinea
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Port_Moresby 9:48:40 -	LMT	1880
+			9:48:32	-	PMMT	1895	# Port Moresby Mean Time
+			10:00	-	PGT		# Papua New Guinea Time
+
+# Pitcairn
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Pitcairn	-8:40:20 -	LMT	1901		# Adamstown
+			-8:30	-	PNT	1998 Apr 27 00:00
+			-8:00	-	PST	# Pitcairn Standard Time
+
+# American Samoa
+Zone Pacific/Pago_Pago	 12:37:12 -	LMT	1879 Jul  5
+			-11:22:48 -	LMT	1911
+			-11:30	-	SAMT	1950		# Samoa Time
+			-11:00	-	NST	1967 Apr	# N=Nome
+			-11:00	-	BST	1983 Nov 30	# B=Bering
+			-11:00	-	SST			# S=Samoa
+
+# Samoa
+
+# From Alexander Krivenyshev (2008-12-06):
+# The Samoa government (Western Samoa) may implement DST on the first Sunday of 
+# October 2009 (October 4, 2009) until the last Sunday of March 2010 (March 28, 
+# 2010). 
+# 
+# "Selected Committee reports to Cabinet on Daylight Saving Time",
+# Government of Samoa:
+# <a href="http://www.govt.ws/pr_article.cfm?pr_id=560">
+# http://www.govt.ws/pr_article.cfm?pr_id=560
+# </a>
+# or
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_samoa01.html">
+# http://www.worldtimezone.com/dst_news/dst_news_samoa01.html
+# </a>
+
+# From Steffen Thorsen (2009-08-27):
+# Samoa's parliament passed the Daylight Saving Bill 2009, and will start 
+# daylight saving time on the first Sunday of October 2009 and end on the 
+# last Sunday of March 2010. We hope that the full text will be published 
+# soon, but we believe that the bill is only valid for 2009-2010. Samoa's 
+# Daylight Saving Act 2009 will be enforced as soon as the Head of State 
+# executes a proclamation publicizing this Act.
+#
+# Some background information here, which will be updated once we have 
+# more details:
+# <a href="http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html">
+# http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
+# </a>
+
+# From Alexander Krivenyshev (2009-10-03):
+# First, my deepest condolences to people of Samoa islands and all families and
+# loved ones around the world who lost their lives in the earthquake and tsunami.
+#
+# Considering the recent devastation on Samoa by earthquake and tsunami and that
+# many government offices/ ministers are closed- not sure if "Daylight Saving
+# Bill 2009" will be implemented in next few days- on October 4, 2009.
+#
+# Here is reply from Consulate-General of Samoa in New Zealand
+# ---------------------------
+# Consul General
+# consulgeneral@samoaconsulate.org.nz
+#
+# Talofa Alexander,
+#
+# Thank you for your sympathy for our country but at this time we have not
+# been informed about the Daylight Savings Time Change.  Most Ministries in
+# Apia are closed or relocating due to weather concerns.
+#
+# When we do find out if they are still proceeding with the time change we
+# will advise you soonest.
+#
+# Kind Regards,
+# Lana
+# for: Consul General
+
+# From Steffen Thorsen (2009-10-05):
+# We have called a hotel in Samoa and asked about local time there - they 
+# are still on standard time.
+
+Zone Pacific/Apia	 12:33:04 -	LMT	1879 Jul  5
+			-11:26:56 -	LMT	1911
+			-11:30	-	SAMT	1950		# Samoa Time
+			-11:00	-	WST	2009 Oct 4
+			-11:00	1:00	WSDT	2010 Mar 28
+			-11:00	-	WST
+
+# Solomon Is
+# excludes Bougainville, for which see Papua New Guinea
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Guadalcanal 10:39:48 -	LMT	1912 Oct	# Honiara
+			11:00	-	SBT	# Solomon Is Time
+
+# Tokelau Is
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Fakaofo	-11:24:56 -	LMT	1901
+			-10:00	-	TKT	# Tokelau Time
+
+# Tonga
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Tonga	1999	only	-	Oct	 7	2:00s	1:00	S
+Rule	Tonga	2000	only	-	Mar	19	2:00s	0	-
+Rule	Tonga	2000	2001	-	Nov	Sun>=1	2:00	1:00	S
+Rule	Tonga	2001	2002	-	Jan	lastSun	2:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Tongatapu	12:19:20 -	LMT	1901
+			12:20	-	TOT	1941 # Tonga Time
+			13:00	-	TOT	1999
+			13:00	Tonga	TO%sT
+
+# Tuvalu
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Funafuti	11:56:52 -	LMT	1901
+			12:00	-	TVT	# Tuvalu Time
+
+
+# US minor outlying islands
+
+# Howland, Baker
+# Howland was mined for guano by American companies 1857-1878 and British
+# 1886-1891; Baker was similar but exact dates are not known.
+# Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
+# uninhabited thereafter.
+# Howland observed Hawaii Standard Time (UTC-10:30) in 1937;
+# see page 206 of Elgen M. Long and Marie K. Long,
+# Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
+# So most likely Howland and Baker observed Hawaii Time from 1935
+# until they were abandoned after the war.
+
+# Jarvis
+# Mined for guano by American companies 1857-1879 and British 1883?-1891?.
+# Inhabited by civilians 1935-1942; IGY scientific base 1957-1958;
+# uninhabited thereafter.
+# no information; was probably like Pacific/Kiritimati
+
+# Johnston
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Pacific/Johnston	-10:00	-	HST
+
+# Kingman
+# uninhabited
+
+# Midway
+#
+# From Mark Brader (2005-01-23):
+# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
+# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
+# reproduced a Pan American Airways timeables from 1936, for their weekly
+# "Orient Express" flights between San Francisco and Manila, and connecting
+# flights to Chicago and the US East Coast.  As it uses some time zone
+# designations that I've never seen before:....
+# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I.   H.L.T. Ar. 5:30P Sun.
+#  "   3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A  "
+#
+Zone Pacific/Midway	-11:49:28 -	LMT	1901
+			-11:00	-	NST	1956 Jun  3
+			-11:00	1:00	NDT	1956 Sep  2
+			-11:00	-	NST	1967 Apr	# N=Nome
+			-11:00	-	BST	1983 Nov 30	# B=Bering
+			-11:00	-	SST			# S=Samoa
+
+# Palmyra
+# uninhabited since World War II; was probably like Pacific/Kiritimati
+
+# Wake
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Wake	11:06:28 -	LMT	1901
+			12:00	-	WAKT	# Wake Time
+
+
+# Vanuatu
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Vanuatu	1983	only	-	Sep	25	0:00	1:00	S
+Rule	Vanuatu	1984	1991	-	Mar	Sun>=23	0:00	0	-
+Rule	Vanuatu	1984	only	-	Oct	23	0:00	1:00	S
+Rule	Vanuatu	1985	1991	-	Sep	Sun>=23	0:00	1:00	S
+Rule	Vanuatu	1992	1993	-	Jan	Sun>=23	0:00	0	-
+Rule	Vanuatu	1992	only	-	Oct	Sun>=23	0:00	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Efate	11:13:16 -	LMT	1912 Jan 13		# Vila
+			11:00	Vanuatu	VU%sT	# Vanuatu Time
+
+# Wallis and Futuna
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Pacific/Wallis	12:15:20 -	LMT	1901
+			12:00	-	WFT	# Wallis & Futuna Time
+
+###############################################################################
+
+# NOTES
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually.  Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Another source occasionally used is Edward W. Whitman, World Time Differences,
+# Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+# I found in the UCLA library.
+#
+# A reliable and entertaining source about time zones is
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+#
+# I invented the abbreviations marked `*' in the following table;
+# the rest are from earlier versions of this file, or from other sources.
+# Corrections are welcome!
+#		std dst
+#		LMT	Local Mean Time
+#	  8:00	WST WST	Western Australia
+#	  8:45	CWST CWST Central Western Australia*
+#	  9:00	JST	Japan
+#	  9:30	CST CST	Central Australia
+#	 10:00	EST EST	Eastern Australia
+#	 10:00	ChST	Chamorro
+#	 10:30	LHST LHST Lord Howe*
+#	 11:30	NZMT NZST New Zealand through 1945
+#	 12:00	NZST NZDT New Zealand 1946-present
+#	 12:45	CHAST CHADT Chatham*
+#	-11:00	SST	Samoa
+#	-10:00	HST	Hawaii
+#	- 8:00	PST	Pitcairn*
+#
+# See the `northamerica' file for Hawaii.
+# See the `southamerica' file for Easter I and the Galapagos Is.
+
+###############################################################################
+
+# Australia
+
+# From Paul Eggert (2005-12-08):
+# <a href="http://www.bom.gov.au/climate/averages/tables/dst_times.shtml">
+# Implementation Dates of Daylight Saving Time within Australia
+# </a> summarizes daylight saving issues in Australia.
+
+# From Arthur David Olson (2005-12-12):
+# <a href="http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving">
+# Lawlink NSW:Daylight Saving in New South Wales
+# </a> covers New South Wales in particular.
+
+# From John Mackin (1991-03-06):
+# We in Australia have _never_ referred to DST as `daylight' time.
+# It is called `summer' time.  Now by a happy coincidence, `summer'
+# and `standard' happen to start with the same letter; hence, the
+# abbreviation does _not_ change...
+# The legislation does not actually define abbreviations, at least
+# in this State, but the abbreviation is just commonly taken to be the
+# initials of the phrase, and the legislation here uniformly uses
+# the phrase `summer time' and does not use the phrase `daylight
+# time'.
+# Announcers on the Commonwealth radio network, the ABC (for Australian
+# Broadcasting Commission), use the phrases `Eastern Standard Time'
+# or `Eastern Summer Time'.  (Note, though, that as I say in the
+# current australasia file, there is really no such thing.)  Announcers
+# on its overseas service, Radio Australia, use the same phrases
+# prefixed by the word `Australian' when referring to local times;
+# time announcements on that service, naturally enough, are made in UTC.
+
+# From Arthur David Olson (1992-03-08):
+# Given the above, what's chosen for year-round use is:
+#	CST	for any place operating at a GMTOFF of 9:30
+#	WST	for any place operating at a GMTOFF of 8:00
+#	EST	for any place operating at a GMTOFF of 10:00
+
+# From Chuck Soper (2006-06-01):
+# I recently found this Australian government web page on time zones:
+# <http://www.australia.gov.au/about-australia-13time>
+# And this government web page lists time zone names and abbreviations:
+# <http://www.bom.gov.au/climate/averages/tables/daysavtm.shtml>
+
+# From Paul Eggert (2001-04-05), summarizing a long discussion about "EST"
+# versus "AEST" etc.:
+#
+# I see the following points of dispute:
+#
+# * How important are unique time zone abbreviations?
+#
+#   Here I tend to agree with the point (most recently made by Chris
+#   Newman) that unique abbreviations should not be essential for proper
+#   operation of software.  We have other instances of ambiguity
+#   (e.g. "IST" denoting both "Israel Standard Time" and "Indian
+#   Standard Time"), and they are not likely to go away any time soon.
+#   In the old days, some software mistakenly relied on unique
+#   abbreviations, but this is becoming less true with time, and I don't
+#   think it's that important to cater to such software these days.
+#
+#   On the other hand, there is another motivation for unambiguous
+#   abbreviations: it cuts down on human confusion.  This is
+#   particularly true for Australia, where "EST" can mean one thing for
+#   time T and a different thing for time T plus 1 second.
+#
+# * Does the relevant legislation indicate which abbreviations should be used?
+#
+#   Here I tend to think that things are a mess, just as they are in
+#   many other countries.  We Americans are currently disagreeing about
+#   which abbreviation to use for the newly legislated Chamorro Standard
+#   Time, for example.
+#
+#   Personally, I would prefer to use common practice; I would like to
+#   refer to legislation only for examples of common practice, or as a
+#   tiebreaker.
+#
+# * Do Australians more often use "Eastern Daylight Time" or "Eastern
+#   Summer Time"?  Do they typically prefix the time zone names with
+#   the word "Australian"?
+#
+#   My own impression is that both "Daylight Time" and "Summer Time" are
+#   common and are widely understood, but that "Summer Time" is more
+#   popular; and that the leading "A" is also common but is omitted more
+#   often than not.  I just used AltaVista advanced search and got the
+#   following count of page hits:
+#
+#     1,103 "Eastern Summer Time" AND domain:au
+#       971 "Australian Eastern Summer Time" AND domain:au
+#       613 "Eastern Daylight Time" AND domain:au
+#       127 "Australian Eastern Daylight Time" AND domain:au
+#
+#   Here "Summer" seems quite a bit more popular than "Daylight",
+#   particularly when we know the time zone is Australian and not US,
+#   say.  The "Australian" prefix seems to be popular for Eastern Summer
+#   Time, but unpopular for Eastern Daylight Time.
+#
+#   For abbreviations, tools like AltaVista are less useful because of
+#   ambiguity.  Many hits are not really time zones, unfortunately, and
+#   many hits denote US time zones and not Australian ones.  But here
+#   are the hit counts anyway:
+#
+#     161,304 "EST" and domain:au
+#      25,156 "EDT" and domain:au
+#      18,263 "AEST" and domain:au
+#      10,416 "AEDT" and domain:au
+#
+#      14,538 "CST" and domain:au
+#       5,728 "CDT" and domain:au
+#         176 "ACST" and domain:au
+#          29 "ACDT" and domain:au
+#
+#       7,539 "WST" and domain:au
+#          68 "AWST" and domain:au
+#
+#   This data suggest that Australians tend to omit the "A" prefix in
+#   practice.  The situation for "ST" versus "DT" is less clear, given
+#   the ambiguities involved.
+#
+# * How do Australians feel about the abbreviations in the tz database?
+#
+#   If you just count Australians on this list, I count 2 in favor and 3
+#   against.  One of the "against" votes (David Keegel) counseled delay,
+#   saying that both AEST/AEDT and EST/EST are widely used and
+#   understood in Australia.
+
+# From Paul Eggert (1995-12-19):
+# Shanks & Pottenger report 2:00 for all autumn changes in Australia and NZ.
+# Mark Prior writes that his newspaper
+# reports that NSW's fall 1995 change will occur at 2:00,
+# but Robert Elz says it's been 3:00 in Victoria since 1970
+# and perhaps the newspaper's `2:00' is referring to standard time.
+# For now we'll continue to assume 2:00s for changes since 1960.
+
+# From Eric Ulevik (1998-01-05):
+#
+# Here are some URLs to Australian time legislation. These URLs are stable,
+# and should probably be included in the data file. There are probably more
+# relevant entries in this database.
+#
+# NSW (including LHI and Broken Hill):
+# <a href="http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html">
+# Standard Time Act 1987 (updated 1995-04-04)
+# </a>
+# ACT
+# <a href="http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html">
+# Standard Time and Summer Time Act 1972
+# </a>
+# SA
+# <a href="http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html">
+# Standard Time Act, 1898
+# </a>
+
+# From David Grosz (2005-06-13):
+# It was announced last week that Daylight Saving would be extended by
+# one week next year to allow for the 2006 Commonwealth Games.
+# Daylight Saving is now to end for next year only on the first Sunday
+# in April instead of the last Sunday in March.
+#
+# From Gwillim Law (2005-06-14):
+# I did some Googling and found that all of those states (and territory) plan
+# to extend DST together in 2006.
+# ACT: http://www.cmd.act.gov.au/mediareleases/fileread.cfm?file=86.txt
+# New South Wales: http://www.thecouriermail.news.com.au/common/story_page/0,5936,15538869%255E1702,00.html
+# South Australia: http://www.news.com.au/story/0,10117,15555031-1246,00.html
+# Tasmania: http://www.media.tas.gov.au/release.php?id=14772
+# Victoria: I wasn't able to find anything separate, but the other articles
+# allude to it.
+# But not Queensland
+# http://www.news.com.au/story/0,10117,15564030-1248,00.html.
+
+# Northern Territory
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # The NORTHERN TERRITORY..  [ Courtesy N.T. Dept of the Chief Minister ]
+# #					[ Nov 1990 ]
+# #	N.T. have never utilised any DST due to sub-tropical/tropical location.
+# ...
+# Zone        Australia/North         9:30    -       CST
+
+# From Bradley White (1991-03-04):
+# A recent excerpt from an Australian newspaper...
+# the Northern Territory do[es] not have daylight saving.
+
+# Western Australia
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# #  The state of WESTERN AUSTRALIA..  [ Courtesy W.A. dept Premier+Cabinet ]
+# #						[ Nov 1990 ]
+# #	W.A. suffers from a great deal of public and political opposition to
+# #	DST in principle. A bill is brought before parliament in most years, but
+# #	usually defeated either in the upper house, or in party caucus
+# #	before reaching parliament.
+# ...
+# Zone	Australia/West		8:00	AW	%sST
+# ...
+# Rule	AW	1974	only	-	Oct	lastSun	2:00	1:00	D
+# Rule	AW	1975	only	-	Mar	Sun>=1	3:00	0	W
+# Rule	AW	1983	only	-	Oct	lastSun	2:00	1:00	D
+# Rule	AW	1984	only	-	Mar	Sun>=1	3:00	0	W
+
+# From Bradley White (1991-03-04):
+# A recent excerpt from an Australian newspaper...
+# Western Australia...do[es] not have daylight saving.
+
+# From John D. Newman via Bradley White (1991-11-02):
+# Western Australia is still on "winter time". Some DH in Sydney
+# rang me at home a few days ago at 6.00am. (He had just arrived at
+# work at 9.00am.)
+# W.A. is switching to Summer Time on Nov 17th just to confuse
+# everybody again.
+
+# From Arthur David Olson (1992-03-08):
+# The 1992 ending date used in the rules is a best guess;
+# it matches what was used in the past.
+
+# <a href="http://www.bom.gov.au/faq/faqgen.htm">
+# The Australian Bureau of Meteorology FAQ
+# </a> (1999-09-27) writes that Giles Meteorological Station uses
+# South Australian time even though it's located in Western Australia.
+
+# Queensland
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# #   The state of QUEENSLAND.. [ Courtesy Qld. Dept Premier Econ&Trade Devel ]
+# #						[ Dec 1990 ]
+# ...
+# Zone	Australia/Queensland	10:00	AQ	%sST
+# ...
+# Rule	AQ	1971	only	-	Oct	lastSun	2:00	1:00	D
+# Rule	AQ	1972	only	-	Feb	lastSun	3:00	0	E
+# Rule	AQ	1989	max	-	Oct	lastSun	2:00	1:00	D
+# Rule	AQ	1990	max	-	Mar	Sun>=1	3:00	0	E
+
+# From Bradley White (1989-12-24):
+# "Australia/Queensland" now observes daylight time (i.e. from
+# October 1989).
+
+# From Bradley White (1991-03-04):
+# A recent excerpt from an Australian newspaper...
+# ...Queensland...[has] agreed to end daylight saving
+# at 3am tomorrow (March 3)...
+
+# From John Mackin (1991-03-06):
+# I can certainly confirm for my part that Daylight Saving in NSW did in fact
+# end on Sunday, 3 March.  I don't know at what hour, though.  (It surprised
+# me.)
+
+# From Bradley White (1992-03-08):
+# ...there was recently a referendum in Queensland which resulted
+# in the experimental daylight saving system being abandoned. So, ...
+# ...
+# Rule	QLD	1989	1991	-	Oct	lastSun	2:00	1:00	D
+# Rule	QLD	1990	1992	-	Mar	Sun>=1	3:00	0	S
+# ...
+
+# From Arthur David Olson (1992-03-08):
+# The chosen rules the union of the 1971/1972 change and the 1989-1992 changes.
+
+# From Christopher Hunt (2006-11-21), after an advance warning
+# from Jesper Norgaard Welen (2006-11-01):
+# WA are trialing DST for three years.
+# <http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf>
+
+# From Rives McDow (2002-04-09):
+# The most interesting region I have found consists of three towns on the
+# southern coast....  South Australia observes daylight saving time; Western
+# Australia does not.  The two states are one and a half hours apart.  The
+# residents decided to forget about this nonsense of changing the clock so
+# much and set the local time 20 hours and 45 minutes from the
+# international date line, or right in the middle of the time of South
+# Australia and Western Australia....
+#
+# From Paul Eggert (2002-04-09):
+# This is confirmed by the section entitled
+# "What's the deal with time zones???" in
+# <http://www.earthsci.unimelb.edu.au/~awatkins/null.html>.
+#
+# From Alex Livingston (2006-12-07):
+# ... it was just on four years ago that I drove along the Eyre Highway,
+# which passes through eastern Western Australia close to the southern
+# coast of the continent.
+#
+# I paid particular attention to the time kept there. There can be no
+# dispute that UTC+08:45 was considered "the time" from the border
+# village just inside the border with South Australia to as far west
+# as just east of Caiguna. There can also be no dispute that Eucla is
+# the largest population centre in this zone....
+#
+# Now that Western Australia is observing daylight saving, the
+# question arose whether this part of the state would follow suit. I
+# just called the border village and confirmed that indeed they have,
+# meaning that they are now observing UTC+09:45.
+#
+# (2006-12-09):
+# I personally doubt that either experimentation with daylight saving
+# in WA or its introduction in SA had anything to do with the genesis
+# of this time zone.  My hunch is that it's been around since well
+# before 1975.  I remember seeing it noted on road maps decades ago.
+
+# From Paul Eggert (2006-12-15):
+# For lack of better info, assume the tradition dates back to the
+# introduction of standard time in 1895.
+
+
+# southeast Australia
+#
+# From Paul Eggert (2007-07-23):
+# Starting autumn 2008 Victoria, NSW, South Australia, Tasmania and the ACT
+# end DST the first Sunday in April and start DST the first Sunday in October.
+# http://www.theage.com.au/news/national/daylight-savings-to-span-six-months/2007/06/27/1182623966703.html
+
+
+# South Australia
+
+# From Bradley White (1991-03-04):
+# A recent excerpt from an Australian newspaper...
+# ...South Australia...[has] agreed to end daylight saving
+# at 3am tomorrow (March 3)...
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# #   The state of SOUTH AUSTRALIA....[ Courtesy of S.A. Dept of Labour ]
+# #						[ Nov 1990 ]
+# ...
+# Zone	Australia/South		9:30	AS	%sST
+# ...
+# Rule	 AS	1971	max	-	Oct	lastSun	2:00	1:00	D
+# Rule	 AS	1972	1985	-	Mar	Sun>=1	3:00	0	C
+# Rule	 AS	1986	1990	-	Mar	Sun>=15	3:00	0	C
+# Rule	 AS	1991	max	-	Mar	Sun>=1	3:00	0	C
+
+# From Bradley White (1992-03-11):
+# Recent correspondence with a friend in Adelaide
+# contained the following exchange:  "Due to the Adelaide Festival,
+# South Australia delays setting back our clocks for a few weeks."
+
+# From Robert Elz (1992-03-13):
+# I heard that apparently (or at least, it appears that)
+# South Aus will have an extra 3 weeks daylight saving every even
+# numbered year (from 1990).  That's when the Adelaide Festival
+# is on...
+
+# From Robert Elz (1992-03-16, 00:57:07 +1000):
+# DST didn't end in Adelaide today (yesterday)....
+# But whether it's "4th Sunday" or "2nd last Sunday" I have no idea whatever...
+# (it's just as likely to be "the Sunday we pick for this year"...).
+
+# From Bradley White (1994-04-11):
+# If Sun, 15 March, 1992 was at +1030 as kre asserts, but yet Sun, 20 March,
+# 1994 was at +0930 as John Connolly's customer seems to assert, then I can
+# only conclude that the actual rule is more complicated....
+
+# From John Warburton (1994-10-07):
+# The new Daylight Savings dates for South Australia ...
+# was gazetted in the Government Hansard on Sep 26 1994....
+# start on last Sunday in October and end in last sunday in March.
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# Tasmania
+
+# The rules for 1967 through 1991 were reported by George Shepherd
+# via Simon Woodhead via Robert Elz (1991-03-06):
+# #  The state of TASMANIA.. [Courtesy Tasmanian Dept of Premier + Cabinet ]
+# #					[ Nov 1990 ]
+
+# From Bill Hart via Guy Harris (1991-10-10):
+# Oh yes, the new daylight savings rules are uniquely tasmanian, we have
+# 6 weeks a year now when we are out of sync with the rest of Australia
+# (but nothing new about that).
+
+# From Alex Livingston (1999-10-04):
+# I heard on the ABC (Australian Broadcasting Corporation) radio news on the
+# (long) weekend that Tasmania, which usually goes its own way in this regard,
+# has decided to join with most of NSW, the ACT, and most of Victoria
+# (Australia) and start daylight saving on the last Sunday in August in 2000
+# instead of the first Sunday in October.
+
+# Sim Alam (2000-07-03) reported a legal citation for the 2000/2001 rules:
+# http://www.thelaw.tas.gov.au/fragview/42++1968+GS3A@EN+2000070300
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# Victoria
+
+# The rules for 1971 through 1991 were reported by George Shepherd
+# via Simon Woodhead via Robert Elz (1991-03-06):
+# #   The state of VICTORIA.. [ Courtesy of Vic. Dept of Premier + Cabinet ]
+# #						[ Nov 1990 ]
+
+# From Scott Harrington (2001-08-29):
+# On KQED's "City Arts and Lectures" program last night I heard an
+# interesting story about daylight savings time.  Dr. John Heilbron was
+# discussing his book "The Sun in the Church: Cathedrals as Solar
+# Observatories"[1], and in particular the Shrine of Remembrance[2] located
+# in Melbourne, Australia.
+#
+# Apparently the shrine's main purpose is a beam of sunlight which
+# illuminates a special spot on the floor at the 11th hour of the 11th day
+# of the 11th month (Remembrance Day) every year in memory of Australia's
+# fallen WWI soldiers.  And if you go there on Nov. 11, at 11am local time,
+# you will indeed see the sunbeam illuminate the special spot at the
+# expected time.
+#
+# However, that is only because of some special mirror contraption that had
+# to be employed, since due to daylight savings time, the true solar time of
+# the remembrance moment occurs one hour later (or earlier?).  Perhaps
+# someone with more information on this jury-rig can tell us more.
+#
+# [1] http://www.hup.harvard.edu/catalog/HEISUN.html
+# [2] http://www.shrine.org.au
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# New South Wales
+
+# From Arthur David Olson:
+# New South Wales and subjurisdictions have their own ideas of a fun time.
+# Based on law library research by John Mackin,
+# who notes:
+#	In Australia, time is not legislated federally, but rather by the
+#	individual states.  Thus, while such terms as ``Eastern Standard Time''
+#	[I mean, of course, Australian EST, not any other kind] are in common
+#	use, _they have NO REAL MEANING_, as they are not defined in the
+#	legislation.  This is very important to understand.
+#	I have researched New South Wales time only...
+
+# From Eric Ulevik (1999-05-26):
+# DST will start in NSW on the last Sunday of August, rather than the usual
+# October in 2000.  [See: Matthew Moore,
+# <a href="http://www.smh.com.au/news/9905/26/pageone/pageone4.html">
+# Two months more daylight saving
+# </a>
+# Sydney Morning Herald (1999-05-26).]
+
+# From Paul Eggert (1999-09-27):
+# See the following official NSW source:
+# <a href="http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ">
+# Daylight Saving in New South Wales.
+# </a>
+#
+# Narrabri Shire (NSW) council has announced it will ignore the extension of
+# daylight saving next year.  See:
+# <a href="http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm">
+# Narrabri Council to ignore daylight saving
+# </a> (1999-07-22).  For now, we'll wait to see if this really happens.
+#
+# Victoria will following NSW.  See:
+# <a href="http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm">
+# Vic to extend daylight saving
+# </a> (1999-07-28).
+#
+# However, South Australia rejected the DST request.  See:
+# <a href="http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm">
+# South Australia rejects Olympics daylight savings request
+# </a> (1999-07-19).
+#
+# Queensland also will not observe DST for the Olympics.  See:
+# <a href="http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm">
+# Qld says no to daylight savings for Olympics
+# </a> (1999-06-01), which quotes Queensland Premier Peter Beattie as saying
+# ``Look you've got to remember in my family when this came up last time
+# I voted for it, my wife voted against it and she said to me it's all very
+# well for you, you don't have to worry about getting the children out of
+# bed, getting them to school, getting them to sleep at night.
+# I've been through all this argument domestically...my wife rules.''
+#
+# Broken Hill will stick with South Australian time in 2000.  See:
+# <a href="http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm">
+# Broken Hill to be behind the times
+# </a> (1999-07-21).
+
+# IATA SSIM (1998-09) says that the spring 2000 change for Australian
+# Capital Territory, New South Wales except Lord Howe Island and Broken
+# Hill, and Victoria will be August 27, presumably due to the Sydney Olympics.
+
+# From Eric Ulevik, referring to Sydney's Sun Herald (2000-08-13), page 29:
+# The Queensland Premier Peter Beattie is encouraging northern NSW
+# towns to use Queensland time.
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# Yancowinna
+
+# From John Mackin (1989-01-04):
+# `Broken Hill' means the County of Yancowinna.
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # YANCOWINNA..  [ Confirmation courtesy of Broken Hill Postmaster ]
+# #					[ Dec 1990 ]
+# ...
+# # Yancowinna uses Central Standard Time, despite [its] location on the
+# # New South Wales side of the S.A. border. Most business and social dealings
+# # are with CST zones, therefore CST is legislated by local government
+# # although the switch to Summer Time occurs in line with N.S.W. There have
+# # been years when this did not apply, but the historical data is not
+# # presently available.
+# Zone	Australia/Yancowinna	9:30	 AY	%sST
+# ...
+# Rule	 AY	1971	1985	-	Oct	lastSun	2:00	1:00	D
+# Rule	 AY	1972	only	-	Feb	lastSun	3:00	0	C
+# [followed by other Rules]
+
+# Lord Howe Island
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# LHI...		[ Courtesy of Pauline Van Winsen ]
+#					[ Dec 1990 ]
+# Lord Howe Island is located off the New South Wales coast, and is half an
+# hour ahead of NSW time.
+
+# From James Lonergan, Secretary, Lord Howe Island Board (2000-01-27):
+# Lord Howe Island summer time in 2000/2001 will commence on the same
+# date as the rest of NSW (i.e. 2000-08-27).  For your information the
+# Lord Howe Island Board (controlling authority for the Island) is
+# seeking the community's views on various options for summer time
+# arrangements on the Island, e.g. advance clocks by 1 full hour
+# instead of only 30 minutes.  Dependant on the wishes of residents
+# the Board may approach the NSW government to change the existing
+# arrangements.  The starting date for summer time on the Island will
+# however always coincide with the rest of NSW.
+
+# From James Lonergan, Secretary, Lord Howe Island Board (2000-10-25):
+# Lord Howe Island advances clocks by 30 minutes during DST in NSW and retards
+# clocks by 30 minutes when DST finishes. Since DST was most recently
+# introduced in NSW, the "changeover" time on the Island has been 02:00 as
+# shown on clocks on LHI. I guess this means that for 30 minutes at the start
+# of DST, LHI is actually 1 hour ahead of the rest of NSW.
+
+# From Paul Eggert (2006-03-22):
+# For Lord Howe dates we use Shanks & Pottenger through 1989, and
+# Lonergan thereafter.  For times we use Lonergan.
+
+# From Paul Eggert (2007-07-23):
+# See "southeast Australia" above for 2008 and later.
+
+# From Steffen Thorsen (2009-04-28):
+# According to the official press release, South Australia's extended daylight 
+# saving period will continue with the same rules as used during the 2008-2009 
+# summer (southern hemisphere).
+# 
+# From
+# <a href="http://www.safework.sa.gov.au/uploaded_files/DaylightDatesSet.pdf">
+# http://www.safework.sa.gov.au/uploaded_files/DaylightDatesSet.pdf
+# </a>
+# The extended daylight saving period that South Australia has been trialling 
+# for over the last year is now set to be ongoing.
+# Daylight saving will continue to start on the first Sunday in October each 
+# year and finish on the first Sunday in April the following year.
+# Industrial Relations Minister, Paul Caica, says this provides South Australia 
+# with a consistent half hour time difference with NSW, Victoria, Tasmania and 
+# the ACT for all 52 weeks of the year...
+# 
+# We have a wrap-up here:
+# <a href="http://www.timeanddate.com/news/time/south-australia-extends-dst.html">
+# http://www.timeanddate.com/news/time/south-australia-extends-dst.html
+# </a>
+###############################################################################
+
+# New Zealand
+
+# From Mark Davies (1990-10-03):
+# the 1989/90 year was a trial of an extended "daylight saving" period.
+# This trial was deemed successful and the extended period adopted for
+# subsequent years (with the addition of a further week at the start).
+# source -- phone call to Ministry of Internal Affairs Head Office.
+
+# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
+# # The Country of New Zealand   (Australia's east island -) Gee they hate that!
+# #				   or is Australia the west island of N.Z.
+# #	[ courtesy of Geoff Tribble.. Auckland N.Z. ]
+# #				[ Nov 1990 ]
+# ...
+# Rule	NZ      1974    1988	-	Oct	lastSun	2:00	1:00	D
+# Rule	NZ	1989	max	-	Oct	Sun>=1	2:00	1:00	D
+# Rule	NZ      1975    1989	-	Mar	Sun>=1	3:00	0	S
+# Rule	NZ	1990	max	-	Mar	lastSun	3:00	0	S
+# ...
+# Zone	NZ			12:00	NZ		NZ%sT	# New Zealand
+# Zone	NZ-CHAT			12:45	-		NZ-CHAT # Chatham Island
+
+# From Arthur David Olson (1992-03-08):
+# The chosen rules use the Davies October 8 values for the start of DST in 1989
+# rather than the October 1 value.
+
+# From Paul Eggert (1995-12-19);
+# Shank & Pottenger report 2:00 for all autumn changes in Australia and NZ.
+# Robert Uzgalis writes that the New Zealand Daylight
+# Savings Time Order in Council dated 1990-06-18 specifies 2:00 standard
+# time on both the first Sunday in October and the third Sunday in March.
+# As with Australia, we'll assume the tradition is 2:00s, not 2:00.
+#
+# From Paul Eggert (2006-03-22):
+# The Department of Internal Affairs (DIA) maintains a brief history,
+# as does Carol Squires; see tz-link.htm for the full references.
+# Use these sources in preference to Shanks & Pottenger.
+#
+# For Chatham, IATA SSIM (1991/1999) gives the NZ rules but with
+# transitions at 2:45 local standard time; this confirms that Chatham
+# is always exactly 45 minutes ahead of Auckland.
+
+# From Colin Sharples (2007-04-30):
+# DST will now start on the last Sunday in September, and end on the
+# first Sunday in April.  The changes take effect this year, meaning
+# that DST will begin on 2007-09-30 2008-04-06.
+# http://www.dia.govt.nz/diawebsite.nsf/wpg_URL/Services-Daylight-Saving-Daylight-saving-to-be-extended
+
+###############################################################################
+
+
+# Fiji
+
+# Howse writes (p 153) that in 1879 the British governor of Fiji
+# enacted an ordinance standardizing the islands on Antipodean Time
+# instead of the American system (which was one day behind).
+
+# From Rives McDow (1998-10-08):
+# Fiji will introduce DST effective 0200 local time, 1998-11-01
+# until 0300 local time 1999-02-28.  Each year the DST period will
+# be from the first Sunday in November until the last Sunday in February.
+
+# From Paul Eggert (2000-01-08):
+# IATA SSIM (1999-09) says DST ends 0100 local time.  Go with McDow.
+
+# From the BBC World Service (1998-10-31 11:32 UTC):
+# The Fijiian government says the main reasons for the time change is to
+# improve productivity and reduce road accidents.  But correspondents say it
+# also hopes the move will boost Fiji's ability to compete with other pacific
+# islands in the effort to attract tourists to witness the dawning of the new
+# millenium.
+
+# http://www.fiji.gov.fj/press/2000_09/2000_09_13-05.shtml (2000-09-13)
+# reports that Fiji has discontinued DST.
+
+# Johnston
+
+# Johnston data is from usno1995.
+
+
+# Kiribati
+
+# From Paul Eggert (1996-01-22):
+# Today's _Wall Street Journal_ (page 1) reports that Kiribati
+# ``declared it the same day throught the country as of Jan. 1, 1995''
+# as part of the competition to be first into the 21st century.
+
+
+# Kwajalein
+
+# In comp.risks 14.87 (26 August 1993), Peter Neumann writes:
+# I wonder what happened in Kwajalein, where there was NO Friday,
+# 1993-08-20.  Thursday night at midnight Kwajalein switched sides with
+# respect to the International Date Line, to rejoin its fellow islands,
+# going from 11:59 p.m. Thursday to 12:00 m. Saturday in a blink.
+
+
+# N Mariana Is, Guam
+
+# Howse writes (p 153) ``The Spaniards, on the other hand, reached the
+# Philippines and the Ladrones from America,'' and implies that the Ladrones
+# (now called the Marianas) kept American date for quite some time.
+# For now, we assume the Ladrones switched at the same time as the Philippines;
+# see Asia/Manila.
+
+# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
+# under the name "Chamorro Standard Time".  There is no official abbreviation,
+# but Congressman Robert A. Underwood, author of the bill that became law,
+# wrote in a press release (2000-12-27) that he will seek the use of "ChST".
+
+
+# Micronesia
+
+# Alan Eugene Davis writes (1996-03-16),
+# ``I am certain, having lived there for the past decade, that "Truk"
+# (now properly known as Chuuk) ... is in the time zone GMT+10.''
+#
+# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
+# on 1978-10-01; ignore this for now.
+
+# From Paul Eggert (1999-10-29):
+# The Federated States of Micronesia Visitors Board writes in
+# <a href="http://www.fsmgov.org/info/clocks.html">
+# The Federated States of Micronesia - Visitor Information
+# </a> (1999-01-26)
+# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
+# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
+
+
+# Midway
+
+# From Charles T O'Connor, KMTH DJ (1956),
+# quoted in the KTMH section of the Radio Heritage Collection
+# <http://radiodx.com/spdxr/KMTH.htm> (2002-12-31):
+# For the past two months we've been on what is known as Daylight
+# Saving Time.  This time has put us on air at 5am in the morning,
+# your time down there in New Zealand.  Starting September 2, 1956
+# we'll again go back to Standard Time.  This'll mean that we'll go to
+# air at 6am your time.
+#
+# From Paul Eggert (2003-03-23):
+# We don't know the date of that quote, but we'll guess they
+# started DST on June 3.  Possibly DST was observed other years
+# in Midway, but we have no record of it.
+
+
+# Pitcairn
+
+# From Rives McDow (1999-11-08):
+# A Proclamation was signed by the Governor of Pitcairn on the 27th March 1998
+# with regard to Pitcairn Standard Time.  The Proclamation is as follows.
+#
+#	The local time for general purposes in the Islands shall be
+#	Co-ordinated Universal time minus 8 hours and shall be known
+#	as Pitcairn Standard Time.
+#
+# ... I have also seen Pitcairn listed as UTC minus 9 hours in several
+# references, and can only assume that this was an error in interpretation
+# somehow in light of this proclamation.
+
+# From Rives McDow (1999-11-09):
+# The Proclamation regarding Pitcairn time came into effect on 27 April 1998
+# ... at midnight.
+
+# From Howie Phelps (1999-11-10), who talked to a Pitcairner via shortwave:
+# Betty Christian told me yesterday that their local time is the same as
+# Pacific Standard Time. They used to be 1/2 hour different from us here in
+# Sacramento but it was changed a couple of years ago.
+
+
+# Samoa
+
+# Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald)
+# that in 1879 the King of Samoa decided to change
+# ``the date in his kingdom from the Antipodean to the American system,
+# ordaining -- by a masterpiece of diplomatic flattery -- that
+# the Fourth of July should be celebrated twice in that year.''
+
+
+# Tonga
+
+# From Paul Eggert (1996-01-22):
+# Today's _Wall Street Journal_ (p 1) reports that ``Tonga has been plotting
+# to sneak ahead of [New Zealanders] by introducing daylight-saving time.''
+# Since Kiribati has moved the Date Line it's not clear what Tonga will do.
+
+# Don Mundell writes in the 1997-02-20 Tonga Chronicle
+# <a href="http://www.tongatapu.net.to/tonga/homeland/timebegins.htm">
+# How Tonga became `The Land where Time Begins'
+# </a>:
+
+# Until 1941 Tonga maintained a standard time 50 minutes ahead of NZST
+# 12 hours and 20 minutes ahead of GMT.  When New Zealand adjusted its
+# standard time in 1940s, Tonga had the choice of subtracting from its
+# local time to come on the same standard time as New Zealand or of
+# advancing its time to maintain the differential of 13 degrees
+# (approximately 50 minutes ahead of New Zealand time).
+#
+# Because His Majesty King Taufa'ahau Tupou IV, then Crown Prince
+# Tungi, preferred to ensure Tonga's title as the land where time
+# begins, the Legislative Assembly approved the latter change.
+#
+# But some of the older, more conservative members from the outer
+# islands objected. "If at midnight on Dec. 31, we move ahead 40
+# minutes, as your Royal Highness wishes, what becomes of the 40
+# minutes we have lost?"
+#
+# The Crown Prince, presented an unanswerable argument: "Remember that
+# on the World Day of Prayer, you would be the first people on Earth
+# to say your prayers in the morning."
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say the transition was on 1968-10-01; go with Mundell.
+
+# From Eric Ulevik (1999-05-03):
+# Tonga's director of tourism, who is also secretary of the National Millenium
+# Committee, has a plan to get Tonga back in front.
+# He has proposed a one-off move to tropical daylight saving for Tonga from
+# October to March, which has won approval in principle from the Tongan
+# Government.
+
+# From Steffen Thorsen (1999-09-09):
+# * Tonga will introduce DST in November
+#
+# I was given this link by John Letts:
+# <a href="http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm">
+# http://news.bbc.co.uk/hi/english/world/asia-pacific/newsid_424000/424764.stm
+# </a>
+#
+# I have not been able to find exact dates for the transition in November
+# yet. By reading this article it seems like Fiji will be 14 hours ahead
+# of UTC as well, but as far as I know Fiji will only be 13 hours ahead
+# (12 + 1 hour DST).
+
+# From Arthur David Olson (1999-09-20):
+# According to <a href="http://www.tongaonline.com/news/sept1799.html">
+# http://www.tongaonline.com/news/sept1799.html
+# </a>:
+# "Daylight Savings Time will take effect on Oct. 2 through April 15, 2000
+# and annually thereafter from the first Saturday in October through the
+# third Saturday of April.  Under the system approved by Privy Council on
+# Sept. 10, clocks must be turned ahead one hour on the opening day and
+# set back an hour on the closing date."
+# Alas, no indication of the time of day.
+
+# From Rives McDow (1999-10-06):
+# Tonga started its Daylight Saving on Saturday morning October 2nd at 0200am.
+# Daylight Saving ends on April 16 at 0300am which is Sunday morning.
+
+# From Steffen Thorsen (2000-10-31):
+# Back in March I found a notice on the website http://www.tongaonline.com
+# that Tonga changed back to standard time one month early, on March 19
+# instead of the original reported date April 16. Unfortunately, the article
+# is no longer available on the site, and I did not make a copy of the
+# text, and I have forgotten to report it here.
+# (Original URL was: http://www.tongaonline.com/news/march162000.htm )
+
+# From Rives McDow (2000-12-01):
+# Tonga is observing DST as of 2000-11-04 and will stop on 2001-01-27.
+
+# From Sione Moala-Mafi (2001-09-20) via Rives McDow:
+# At 2:00am on the first Sunday of November, the standard time in the Kingdom
+# shall be moved forward by one hour to 3:00am.  At 2:00am on the last Sunday
+# of January the standard time in the Kingdom shall be moved backward by one
+# hour to 1:00am.
+
+# From Pulu 'Anau (2002-11-05):
+# The law was for 3 years, supposedly to get renewed.  It wasn't.
+
+
+# Wake
+
+# From Vernice Anderson, Personal Secretary to Philip Jessup,
+# US Ambassador At Large (oral history interview, 1971-02-02):
+#
+# Saturday, the 14th [of October, 1950] -- ...  The time was all the
+# more confusing at that point, because we had crossed the
+# International Date Line, thus getting two Sundays.  Furthermore, we
+# discovered that Wake Island had two hours of daylight saving time
+# making calculation of time in Washington difficult if not almost
+# impossible.
+#
+# http://www.trumanlibrary.org/wake/meeting.htm
+
+# From Paul Eggert (2003-03-23):
+# We have no other report of DST in Wake Island, so omit this info for now.
+
+###############################################################################
+
+# The International Date Line
+
+# From Gwillim Law (2000-01-03):
+#
+# The International Date Line is not defined by any international standard,
+# convention, or treaty.  Mapmakers are free to draw it as they please.
+# Reputable mapmakers will simply ensure that every point of land appears on
+# the correct side of the IDL, according to the date legally observed there.
+#
+# When Kiribati adopted a uniform date in 1995, thereby moving the Phoenix and
+# Line Islands to the west side of the IDL (or, if you prefer, moving the IDL
+# to the east side of the Phoenix and Line Islands), I suppose that most
+# mapmakers redrew the IDL following the boundary of Kiribati.  Even that line
+# has a rather arbitrary nature.  The straight-line boundaries between Pacific
+# island nations that are shown on many maps are based on an international
+# convention, but are not legally binding national borders.... The date is
+# governed by the IDL; therefore, even on the high seas, there may be some
+# places as late as fourteen hours later than UTC.  And, since the IDL is not
+# an international standard, there are some places on the high seas where the
+# correct date is ambiguous.
+
+# From Wikipedia <http://en.wikipedia.org/wiki/Time_zone> (2005-08-31):
+# Before 1920, all ships kept local apparent time on the high seas by setting
+# their clocks at night or at the morning sight so that, given the ship's
+# speed and direction, it would be 12 o'clock when the Sun crossed the ship's
+# meridian (12 o'clock = local apparent noon).  During 1917, at the
+# Anglo-French Conference on Time-keeping at Sea, it was recommended that all
+# ships, both military and civilian, should adopt hourly standard time zones
+# on the high seas.  Whenever a ship was within the territorial waters of any
+# nation it would use that nation's standard time.  The captain was permitted
+# to change his ship's clocks at a time of his choice following his ship's
+# entry into another zone time--he often chose midnight.  These zones were
+# adopted by all major fleets between 1920 and 1925 but not by many
+# independent merchant ships until World War II.
+
+# From Paul Eggert, using references suggested by Oscar van Vlijmen
+# (2005-03-20):
+#
+# The American Practical Navigator (2002)
+# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187>
+# talks only about the 180-degree meridian with respect to ships in
+# international waters; it ignores the international date line.
diff --git a/tools/zoneinfo/tzdata2009s/backward b/tools/zoneinfo/tzdata2009s/backward
new file mode 100644
index 0000000..c896968
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/backward
@@ -0,0 +1,116 @@
+# <pre>
+# @(#)backward	8.8
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This file provides links between current names for time zones
+# and their old names.  Many names changed in late 1993.
+
+Link	Africa/Asmara		Africa/Asmera
+Link	Africa/Bamako		Africa/Timbuktu
+Link	America/Argentina/Catamarca	America/Argentina/ComodRivadavia
+Link	America/Adak		America/Atka
+Link	America/Argentina/Buenos_Aires	America/Buenos_Aires
+Link	America/Argentina/Catamarca	America/Catamarca
+Link	America/Atikokan	America/Coral_Harbour
+Link	America/Argentina/Cordoba	America/Cordoba
+Link	America/Tijuana		America/Ensenada
+Link	America/Indiana/Indianapolis	America/Fort_Wayne
+Link	America/Indiana/Indianapolis	America/Indianapolis
+Link	America/Argentina/Jujuy	America/Jujuy
+Link	America/Indiana/Knox	America/Knox_IN
+Link	America/Kentucky/Louisville	America/Louisville
+Link	America/Argentina/Mendoza	America/Mendoza
+Link	America/Rio_Branco	America/Porto_Acre
+Link	America/Argentina/Cordoba	America/Rosario
+Link	America/St_Thomas	America/Virgin
+Link	Asia/Ashgabat		Asia/Ashkhabad
+Link	Asia/Chongqing		Asia/Chungking
+Link	Asia/Dhaka		Asia/Dacca
+Link	Asia/Kathmandu		Asia/Katmandu
+Link	Asia/Kolkata		Asia/Calcutta
+Link	Asia/Macau		Asia/Macao
+Link	Asia/Jerusalem		Asia/Tel_Aviv
+Link	Asia/Ho_Chi_Minh	Asia/Saigon
+Link	Asia/Thimphu		Asia/Thimbu
+Link	Asia/Makassar		Asia/Ujung_Pandang
+Link	Asia/Ulaanbaatar	Asia/Ulan_Bator
+Link	Atlantic/Faroe		Atlantic/Faeroe
+Link	Europe/Oslo		Atlantic/Jan_Mayen
+Link	Australia/Sydney	Australia/ACT
+Link	Australia/Sydney	Australia/Canberra
+Link	Australia/Lord_Howe	Australia/LHI
+Link	Australia/Sydney	Australia/NSW
+Link	Australia/Darwin	Australia/North
+Link	Australia/Brisbane	Australia/Queensland
+Link	Australia/Adelaide	Australia/South
+Link	Australia/Hobart	Australia/Tasmania
+Link	Australia/Melbourne	Australia/Victoria
+Link	Australia/Perth		Australia/West
+Link	Australia/Broken_Hill	Australia/Yancowinna
+Link	America/Rio_Branco	Brazil/Acre
+Link	America/Noronha		Brazil/DeNoronha
+Link	America/Sao_Paulo	Brazil/East
+Link	America/Manaus		Brazil/West
+Link	America/Halifax		Canada/Atlantic
+Link	America/Winnipeg	Canada/Central
+Link	America/Regina		Canada/East-Saskatchewan
+Link	America/Toronto		Canada/Eastern
+Link	America/Edmonton	Canada/Mountain
+Link	America/St_Johns	Canada/Newfoundland
+Link	America/Vancouver	Canada/Pacific
+Link	America/Regina		Canada/Saskatchewan
+Link	America/Whitehorse	Canada/Yukon
+Link	America/Santiago	Chile/Continental
+Link	Pacific/Easter		Chile/EasterIsland
+Link	America/Havana		Cuba
+Link	Africa/Cairo		Egypt
+Link	Europe/Dublin		Eire
+Link	Europe/London		Europe/Belfast
+Link	Europe/Chisinau		Europe/Tiraspol
+Link	Europe/London		GB
+Link	Europe/London		GB-Eire
+Link	Etc/GMT			GMT+0
+Link	Etc/GMT			GMT-0
+Link	Etc/GMT			GMT0
+Link	Etc/GMT			Greenwich
+Link	Asia/Hong_Kong		Hongkong
+Link	Atlantic/Reykjavik	Iceland
+Link	Asia/Tehran		Iran
+Link	Asia/Jerusalem		Israel
+Link	America/Jamaica		Jamaica
+Link	Asia/Tokyo		Japan
+Link	Pacific/Kwajalein	Kwajalein
+Link	Africa/Tripoli		Libya
+Link	America/Tijuana		Mexico/BajaNorte
+Link	America/Mazatlan	Mexico/BajaSur
+Link	America/Mexico_City	Mexico/General
+Link	Pacific/Auckland	NZ
+Link	Pacific/Chatham		NZ-CHAT
+Link	America/Denver		Navajo
+Link	Asia/Shanghai		PRC
+Link	Pacific/Pago_Pago	Pacific/Samoa
+Link	Pacific/Truk		Pacific/Yap
+Link	Europe/Warsaw		Poland
+Link	Europe/Lisbon		Portugal
+Link	Asia/Taipei		ROC
+Link	Asia/Seoul		ROK
+Link	Asia/Singapore		Singapore
+Link	Europe/Istanbul		Turkey
+Link	Etc/UCT			UCT
+Link	America/Anchorage	US/Alaska
+Link	America/Adak		US/Aleutian
+Link	America/Phoenix		US/Arizona
+Link	America/Chicago		US/Central
+Link	America/Indiana/Indianapolis	US/East-Indiana
+Link	America/New_York	US/Eastern
+Link	Pacific/Honolulu	US/Hawaii
+Link	America/Indiana/Knox	US/Indiana-Starke
+Link	America/Detroit		US/Michigan
+Link	America/Denver		US/Mountain
+Link	America/Los_Angeles	US/Pacific
+Link	Pacific/Pago_Pago	US/Samoa
+Link	Etc/UTC			UTC
+Link	Etc/UTC			Universal
+Link	Europe/Moscow		W-SU
+Link	Etc/UTC			Zulu
diff --git a/tools/zoneinfo/tzdata2009s/etcetera b/tools/zoneinfo/tzdata2009s/etcetera
new file mode 100644
index 0000000..5c93682
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/etcetera
@@ -0,0 +1,83 @@
+# <pre>
+# @(#)etcetera	8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# These entries are mostly present for historical reasons, so that
+# people in areas not otherwise covered by the tz files could "zic -l"
+# to a time zone that was right for their area.  These days, the
+# tz files cover almost all the inhabited world, and the only practical
+# need now for the entries that are not on UTC are for ships at sea
+# that cannot use POSIX TZ settings.
+
+Zone	Etc/GMT		0	-	GMT
+Zone	Etc/UTC		0	-	UTC
+Zone	Etc/UCT		0	-	UCT
+
+# The following link uses older naming conventions,
+# but it belongs here, not in the file `backward',
+# as functions like gmtime load the "GMT" file to handle leap seconds properly.
+# We want this to work even on installations that omit the other older names.
+Link	Etc/GMT				GMT
+
+Link	Etc/UTC				Etc/Universal
+Link	Etc/UTC				Etc/Zulu
+
+Link	Etc/GMT				Etc/Greenwich
+Link	Etc/GMT				Etc/GMT-0
+Link	Etc/GMT				Etc/GMT+0
+Link	Etc/GMT				Etc/GMT0
+
+# We use POSIX-style signs in the Zone names and the output abbreviations,
+# even though this is the opposite of what many people expect.
+# POSIX has positive signs west of Greenwich, but many people expect
+# positive signs east of Greenwich.  For example, TZ='Etc/GMT+4' uses
+# the abbreviation "GMT+4" and corresponds to 4 hours behind UTC
+# (i.e. west of Greenwich) even though many people would expect it to
+# mean 4 hours ahead of UTC (i.e. east of Greenwich).
+#
+# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation
+# (which is not yet supported by the tz code) allows for
+# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
+# ISO 8601 you can use TZ='<-0400>+4'.  Thus the commonly-expected
+# offset is kept within the angle bracket (and is used for display)
+# while the POSIX sign is kept outside the angle bracket (and is used
+# for calculation).
+#
+# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
+# GMT but uses the completely misleading abbreviation "GMT".
+
+# Earlier incarnations of this package were not POSIX-compliant,
+# and had lines such as
+#		Zone	GMT-12		-12	-	GMT-1200
+# We did not want things to change quietly if someone accustomed to the old
+# way does a
+#		zic -l GMT-12
+# so we moved the names into the Etc subdirectory.
+
+Zone	Etc/GMT-14	14	-	GMT-14	# 14 hours ahead of GMT
+Zone	Etc/GMT-13	13	-	GMT-13
+Zone	Etc/GMT-12	12	-	GMT-12
+Zone	Etc/GMT-11	11	-	GMT-11
+Zone	Etc/GMT-10	10	-	GMT-10
+Zone	Etc/GMT-9	9	-	GMT-9
+Zone	Etc/GMT-8	8	-	GMT-8
+Zone	Etc/GMT-7	7	-	GMT-7
+Zone	Etc/GMT-6	6	-	GMT-6
+Zone	Etc/GMT-5	5	-	GMT-5
+Zone	Etc/GMT-4	4	-	GMT-4
+Zone	Etc/GMT-3	3	-	GMT-3
+Zone	Etc/GMT-2	2	-	GMT-2
+Zone	Etc/GMT-1	1	-	GMT-1
+Zone	Etc/GMT+1	-1	-	GMT+1
+Zone	Etc/GMT+2	-2	-	GMT+2
+Zone	Etc/GMT+3	-3	-	GMT+3
+Zone	Etc/GMT+4	-4	-	GMT+4
+Zone	Etc/GMT+5	-5	-	GMT+5
+Zone	Etc/GMT+6	-6	-	GMT+6
+Zone	Etc/GMT+7	-7	-	GMT+7
+Zone	Etc/GMT+8	-8	-	GMT+8
+Zone	Etc/GMT+9	-9	-	GMT+9
+Zone	Etc/GMT+10	-10	-	GMT+10
+Zone	Etc/GMT+11	-11	-	GMT+11
+Zone	Etc/GMT+12	-12	-	GMT+12
diff --git a/tools/zoneinfo/tzdata2009s/europe b/tools/zoneinfo/tzdata2009s/europe
new file mode 100644
index 0000000..66ab880
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/europe
@@ -0,0 +1,2683 @@
+# <pre>
+# @(#)europe	8.24
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually.  Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1991, and IATA SSIM is the source for entries afterwards.
+#
+# Other sources occasionally used include:
+#
+#	Edward W. Whitman, World Time Differences,
+#	Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
+#	which I found in the UCLA library.
+#
+#	<a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf">
+#	William Willett, The Waste of Daylight, 19th edition
+#	</a> (1914-03)
+#
+#	Brazil's Departamento Servico da Hora (DSH),
+#	<a href="http://pcdsh01.on.br/HISTHV.htm">
+#	History of Summer Time
+#	</a> (1998-09-21, in Portuguese)
+
+#
+# I invented the abbreviations marked `*' in the following table;
+# the rest are from earlier versions of this file, or from other sources.
+# Corrections are welcome!
+#                   std dst  2dst
+#                   LMT           Local Mean Time
+#       -4:00       AST ADT       Atlantic
+#       -3:00       WGT WGST      Western Greenland*
+#       -1:00       EGT EGST      Eastern Greenland*
+#        0:00       GMT BST  BDST Greenwich, British Summer
+#        0:00       GMT IST       Greenwich, Irish Summer
+#        0:00       WET WEST WEMT Western Europe
+#        0:19:32.13 AMT NST       Amsterdam, Netherlands Summer (1835-1937)*
+#        0:20       NET NEST      Netherlands (1937-1940)*
+#        1:00       CET CEST CEMT Central Europe
+#        1:00:14    SET           Swedish (1879-1899)*
+#        2:00       EET EEST      Eastern Europe
+#        3:00       MSK MSD       Moscow
+#
+# A reliable and entertaining source about time zones, especially in Britain,
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+
+# From Peter Ilieve (1994-12-04),
+# The original six [EU members]: Belgium, France, (West) Germany, Italy,
+# Luxembourg, the Netherlands.
+# Plus, from 1 Jan 73: Denmark, Ireland, United Kingdom.
+# Plus, from 1 Jan 81: Greece.
+# Plus, from 1 Jan 86: Spain, Portugal.
+# Plus, from 1 Jan 95: Austria, Finland, Sweden. (Norway negotiated terms for
+# entry but in a referendum on 28 Nov 94 the people voted No by 52.2% to 47.8%
+# on a turnout of 88.6%. This was almost the same result as Norway's previous
+# referendum in 1972, they are the only country to have said No twice.
+# Referendums in the other three countries voted Yes.)
+# ...
+# Estonia ... uses EU dates but not at 01:00 GMT, they use midnight GMT.
+# I don't think they know yet what they will do from 1996 onwards.
+# ...
+# There shouldn't be any [current members who are not using EU rules].
+# A Directive has the force of law, member states are obliged to enact
+# national law to implement it. The only contentious issue was the
+# different end date for the UK and Ireland, and this was always allowed
+# in the Directive.
+
+
+###############################################################################
+
+# Britain (United Kingdom) and Ireland (Eire)
+
+# From Peter Ilieve (1994-07-06):
+#
+# On 17 Jan 1994 the Independent, a UK quality newspaper, had a piece about
+# historical vistas along the Thames in west London. There was a photo
+# and a sketch map showing some of the sightlines involved. One paragraph
+# of the text said:
+#
+# `An old stone obelisk marking a forgotten terrestrial meridian stands
+# beside the river at Kew. In the 18th century, before time and longitude
+# was standardised by the Royal Observatory in Greenwich, scholars observed
+# this stone and the movement of stars from Kew Observatory nearby. They
+# made their calculations and set the time for the Horse Guards and Parliament,
+# but now the stone is obscured by scrubwood and can only be seen by walking
+# along the towpath within a few yards of it.'
+#
+# I have a one inch to one mile map of London and my estimate of the stone's
+# position is 51 deg. 28' 30" N, 0 deg. 18' 45" W. The longitude should
+# be within about +-2". The Ordnance Survey grid reference is TQ172761.
+#
+# [This yields GMTOFF = -0:01:15 for London LMT in the 18th century.]
+
+# From Paul Eggert (1993-11-18):
+#
+# Howse writes that Britain was the first country to use standard time.
+# The railways cared most about the inconsistencies of local mean time,
+# and it was they who forced a uniform time on the country.
+# The original idea was credited to Dr. William Hyde Wollaston (1766-1828)
+# and was popularized by Abraham Follett Osler (1808-1903).
+# The first railway to adopt London time was the Great Western Railway
+# in November 1840; other railways followed suit, and by 1847 most
+# (though not all) railways used London time.  On 1847-09-22 the
+# Railway Clearing House, an industry standards body, recommended that GMT be
+# adopted at all stations as soon as the General Post Office permitted it.
+# The transition occurred on 12-01 for the L&NW, the Caledonian,
+# and presumably other railways; the January 1848 Bradshaw's lists many
+# railways as using GMT.  By 1855 the vast majority of public
+# clocks in Britain were set to GMT (though some, like the great clock
+# on Tom Tower at Christ Church, Oxford, were fitted with two minute hands,
+# one for local time and one for GMT).  The last major holdout was the legal
+# system, which stubbornly stuck to local time for many years, leading
+# to oddities like polls opening at 08:13 and closing at 16:13.
+# The legal system finally switched to GMT when the Statutes (Definition
+# of Time) Act took effect; it received the Royal Assent on 1880-08-02.
+#
+# In the tables below, we condense this complicated story into a single
+# transition date for London, namely 1847-12-01.  We don't know as much
+# about Dublin, so we use 1880-08-02, the legal transition time.
+
+# From Paul Eggert (2003-09-27):
+# Summer Time was first seriously proposed by William Willett (1857-1915),
+# a London builder and member of the Royal Astronomical Society
+# who circulated a pamphlet ``The Waste of Daylight'' (1907)
+# that proposed advancing clocks 20 minutes on each of four Sundays in April,
+# and retarding them by the same amount on four Sundays in September.
+# A bill was drafted in 1909 and introduced in Parliament several times,
+# but it met with ridicule and opposition, especially from farming interests.
+# Later editions of the pamphlet proposed one-hour summer time, and
+# it was eventually adopted as a wartime measure in 1916.
+# See: Summer Time Arrives Early, The Times (2000-05-18).
+# A monument to Willett was unveiled on 1927-05-21, in an open space in
+# a 45-acre wood near Chislehurst, Kent that was purchased by popular
+# subscription and open to the public.  On the south face of the monolith,
+# designed by G. W. Miller, is the the William Willett Memorial Sundial,
+# which is permanently set to Summer Time.
+
+# From Winston Churchill (1934-04-28):
+# It is one of the paradoxes of history that we should owe the boon of
+# summer time, which gives every year to the people of this country
+# between 160 and 170 hours more daylight leisure, to a war which
+# plunged Europe into darkness for four years, and shook the
+# foundations of civilization throughout the world.
+#	-- <a href="http://www.winstonchurchill.org/fh114willett.htm">
+#	"A Silent Toast to William Willett", Pictorial Weekly
+#	</a>
+
+# From Paul Eggert (1996-09-03):
+# The OED Supplement says that the English originally said ``Daylight Saving''
+# when they were debating the adoption of DST in 1908; but by 1916 this
+# term appears only in quotes taken from DST's opponents, whereas the
+# proponents (who eventually won the argument) are quoted as using ``Summer''.
+
+# From Arthur David Olson (1989-01-19):
+#
+# A source at the British Information Office in New York avers that it's
+# known as "British" Summer Time in all parts of the United Kingdom.
+
+# Date: 4 Jan 89 08:57:25 GMT (Wed)
+# From: Jonathan Leffler
+# [British Summer Time] is fixed annually by Act of Parliament.
+# If you can predict what Parliament will do, you should be in
+# politics making a fortune, not computing.
+
+# From Chris Carrier (1996-06-14):
+# I remember reading in various wartime issues of the London Times the
+# acronym BDST for British Double Summer Time.  Look for the published
+# time of sunrise and sunset in The Times, when BDST was in effect, and
+# if you find a zone reference it will say, "All times B.D.S.T."
+
+# From Joseph S. Myers (1999-09-02):
+# ... some military cables (WO 219/4100 - this is a copy from the
+# main SHAEF archives held in the US National Archives, SHAEF/5252/8/516)
+# agree that the usage is BDST (this appears in a message dated 17 Feb 1945).
+
+# From Joseph S. Myers (2000-10-03):
+# On 18th April 1941, Sir Stephen Tallents of the BBC wrote to Sir
+# Alexander Maxwell of the Home Office asking whether there was any
+# official designation; the reply of the 21st was that there wasn't
+# but he couldn't think of anything better than the "Double British
+# Summer Time" that the BBC had been using informally.
+# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png
+# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png
+
+# From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21):
+# [N]o official designation has as far as I know been adopted for the time
+# which is to be introduced in May....
+# I cannot think of anything better than "Double British Summer Time"
+# which could not be said to run counter to any official description.
+
+# From Paul Eggert (2000-10-02):
+# Howse writes (p 157) `DBST' too, but `BDST' seems to have been common
+# and follows the more usual convention of putting the location name first,
+# so we use `BDST'.
+
+# Peter Ilieve (1998-04-19) described at length
+# the history of summer time legislation in the United Kingdom.
+# Since 1998 Joseph S. Myers has been updating
+# and extending this list, which can be found in
+# <a href="http://student.cusu.cam.ac.uk/~jsm28/british-time/">
+# History of legal time in Britain
+# </a>
+
+# From Joseph S. Myers (1998-01-06):
+#
+# The legal time in the UK outside of summer time is definitely GMT, not UTC;
+# see Lord Tanlaw's speech
+# <a href="http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0">
+# (Lords Hansard 11 June 1997 columns 964 to 976)
+# </a>.
+
+# From Paul Eggert (2006-03-22):
+#
+# For lack of other data, follow Shanks & Pottenger for Eire in 1940-1948.
+#
+# Given Ilieve and Myers's data, the following claims by Shanks & Pottenger
+# are incorrect:
+#     * Wales did not switch from GMT to daylight saving time until
+#	1921 Apr 3, when they began to conform with the rest of Great Britain.
+# Actually, Wales was identical after 1880.
+#     * Eire had two transitions on 1916 Oct 1.
+# It actually just had one transition.
+#     * Northern Ireland used single daylight saving time throughout WW II.
+# Actually, it conformed to Britain.
+#     * GB-Eire changed standard time to 1 hour ahead of GMT on 1968-02-18.
+# Actually, that date saw the usual switch to summer time.
+# Standard time was not changed until 1968-10-27 (the clocks didn't change).
+#
+# Here is another incorrect claim by Shanks & Pottenger:
+#     * Jersey, Guernsey, and the Isle of Man did not switch from GMT
+#	to daylight saving time until 1921 Apr 3, when they began to
+#	conform with Great Britain.
+# S.R.&O. 1916, No. 382 and HO 45/10811/312364 (quoted above) say otherwise.
+#
+# The following claim by Shanks & Pottenger is possible though doubtful;
+# we'll ignore it for now.
+#     * Dublin's 1971-10-31 switch was at 02:00, even though London's was 03:00.
+#
+#
+# Whitman says Dublin Mean Time was -0:25:21, which is more precise than
+# Shanks & Pottenger.
+# Perhaps this was Dunsink Observatory Time, as Dunsink Observatory
+# (8 km NW of Dublin's center) seemingly was to Dublin as Greenwich was
+# to London.  For example:
+#
+#   "Timeball on the ballast office is down.  Dunsink time."
+#   -- James Joyce, Ulysses
+
+# From Joseph S. Myers (2005-01-26):
+# Irish laws are available online at www.irishstatutebook.ie.  These include
+# various relating to legal time, for example:
+#
+# ZZA13Y1923.html ZZA12Y1924.html ZZA8Y1925.html ZZSIV20PG1267.html
+#
+# ZZSI71Y1947.html ZZSI128Y1948.html ZZSI23Y1949.html ZZSI41Y1950.html
+# ZZSI27Y1951.html ZZSI73Y1952.html
+#
+# ZZSI11Y1961.html ZZSI232Y1961.html ZZSI182Y1962.html
+# ZZSI167Y1963.html ZZSI257Y1964.html ZZSI198Y1967.html
+# ZZA23Y1968.html ZZA17Y1971.html
+#
+# ZZSI67Y1981.html ZZSI212Y1982.html ZZSI45Y1986.html
+# ZZSI264Y1988.html ZZSI52Y1990.html ZZSI371Y1992.html
+# ZZSI395Y1994.html ZZSI484Y1997.html ZZSI506Y2001.html
+#
+# [These are all relative to the root, e.g., the first is
+# <http://www.irishstatutebook.ie/ZZA13Y1923.html>.]
+#
+# (These are those I found, but there could be more.  In any case these
+# should allow various updates to the comments in the europe file to cover
+# the laws applicable in Ireland.)
+#
+# (Note that the time in the Republic of Ireland since 1968 has been defined
+# in terms of standard time being GMT+1 with a period of winter time when it
+# is GMT, rather than standard time being GMT with a period of summer time
+# being GMT+1.)
+
+# From Paul Eggert (1999-03-28):
+# Clive Feather (<news:859845706.26043.0@office.demon.net>, 1997-03-31)
+# reports that Folkestone (Cheriton) Shuttle Terminal uses Concession Time
+# (CT), equivalent to French civil time.
+# Julian Hill (<news:36118128.5A14@virgin.net>, 1998-09-30) reports that
+# trains between Dollands Moor (the freight facility next door)
+# and Frethun run in CT.
+# My admittedly uninformed guess is that the terminal has two authorities,
+# the French concession operators and the British civil authorities,
+# and that the time depends on who you're talking to.
+# If, say, the British police were called to the station for some reason,
+# I would expect the official police report to use GMT/BST and not CET/CEST.
+# This is a borderline case, but for now let's stick to GMT/BST.
+
+# From an anonymous contributor (1996-06-02):
+# The law governing time in Ireland is under Statutory Instrument SI 395/94,
+# which gives force to European Union 7th Council Directive # 94/21/EC.
+# Under this directive, the Minister for Justice in Ireland makes appropriate
+# regulations. I spoke this morning with the Secretary of the Department of
+# Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+# "Irish Summer Time", abbreviated to "IST".
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# Summer Time Act, 1916
+Rule	GB-Eire	1916	only	-	May	21	2:00s	1:00	BST
+Rule	GB-Eire	1916	only	-	Oct	 1	2:00s	0	GMT
+# S.R.&O. 1917, No. 358
+Rule	GB-Eire	1917	only	-	Apr	 8	2:00s	1:00	BST
+Rule	GB-Eire	1917	only	-	Sep	17	2:00s	0	GMT
+# S.R.&O. 1918, No. 274
+Rule	GB-Eire	1918	only	-	Mar	24	2:00s	1:00	BST
+Rule	GB-Eire	1918	only	-	Sep	30	2:00s	0	GMT
+# S.R.&O. 1919, No. 297
+Rule	GB-Eire	1919	only	-	Mar	30	2:00s	1:00	BST
+Rule	GB-Eire	1919	only	-	Sep	29	2:00s	0	GMT
+# S.R.&O. 1920, No. 458
+Rule	GB-Eire	1920	only	-	Mar	28	2:00s	1:00	BST
+# S.R.&O. 1920, No. 1844
+Rule	GB-Eire	1920	only	-	Oct	25	2:00s	0	GMT
+# S.R.&O. 1921, No. 363
+Rule	GB-Eire	1921	only	-	Apr	 3	2:00s	1:00	BST
+Rule	GB-Eire	1921	only	-	Oct	 3	2:00s	0	GMT
+# S.R.&O. 1922, No. 264
+Rule	GB-Eire	1922	only	-	Mar	26	2:00s	1:00	BST
+Rule	GB-Eire	1922	only	-	Oct	 8	2:00s	0	GMT
+# The Summer Time Act, 1922
+Rule	GB-Eire	1923	only	-	Apr	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1923	1924	-	Sep	Sun>=16	2:00s	0	GMT
+Rule	GB-Eire	1924	only	-	Apr	Sun>=9	2:00s	1:00	BST
+Rule	GB-Eire	1925	1926	-	Apr	Sun>=16	2:00s	1:00	BST
+# The Summer Time Act, 1925
+Rule	GB-Eire	1925	1938	-	Oct	Sun>=2	2:00s	0	GMT
+Rule	GB-Eire	1927	only	-	Apr	Sun>=9	2:00s	1:00	BST
+Rule	GB-Eire	1928	1929	-	Apr	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1930	only	-	Apr	Sun>=9	2:00s	1:00	BST
+Rule	GB-Eire	1931	1932	-	Apr	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1933	only	-	Apr	Sun>=9	2:00s	1:00	BST
+Rule	GB-Eire	1934	only	-	Apr	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1935	only	-	Apr	Sun>=9	2:00s	1:00	BST
+Rule	GB-Eire	1936	1937	-	Apr	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1938	only	-	Apr	Sun>=9	2:00s	1:00	BST
+Rule	GB-Eire	1939	only	-	Apr	Sun>=16	2:00s	1:00	BST
+# S.R.&O. 1939, No. 1379
+Rule	GB-Eire	1939	only	-	Nov	Sun>=16	2:00s	0	GMT
+# S.R.&O. 1940, No. 172 and No. 1883
+Rule	GB-Eire	1940	only	-	Feb	Sun>=23	2:00s	1:00	BST
+# S.R.&O. 1941, No. 476
+Rule	GB-Eire	1941	only	-	May	Sun>=2	1:00s	2:00	BDST
+Rule	GB-Eire	1941	1943	-	Aug	Sun>=9	1:00s	1:00	BST
+# S.R.&O. 1942, No. 506
+Rule	GB-Eire	1942	1944	-	Apr	Sun>=2	1:00s	2:00	BDST
+# S.R.&O. 1944, No. 932
+Rule	GB-Eire	1944	only	-	Sep	Sun>=16	1:00s	1:00	BST
+# S.R.&O. 1945, No. 312
+Rule	GB-Eire	1945	only	-	Apr	Mon>=2	1:00s	2:00	BDST
+Rule	GB-Eire	1945	only	-	Jul	Sun>=9	1:00s	1:00	BST
+# S.R.&O. 1945, No. 1208
+Rule	GB-Eire	1945	1946	-	Oct	Sun>=2	2:00s	0	GMT
+Rule	GB-Eire	1946	only	-	Apr	Sun>=9	2:00s	1:00	BST
+# The Summer Time Act, 1947
+Rule	GB-Eire	1947	only	-	Mar	16	2:00s	1:00	BST
+Rule	GB-Eire	1947	only	-	Apr	13	1:00s	2:00	BDST
+Rule	GB-Eire	1947	only	-	Aug	10	1:00s	1:00	BST
+Rule	GB-Eire	1947	only	-	Nov	 2	2:00s	0	GMT
+# Summer Time Order, 1948 (S.I. 1948/495)
+Rule	GB-Eire	1948	only	-	Mar	14	2:00s	1:00	BST
+Rule	GB-Eire	1948	only	-	Oct	31	2:00s	0	GMT
+# Summer Time Order, 1949 (S.I. 1949/373)
+Rule	GB-Eire	1949	only	-	Apr	 3	2:00s	1:00	BST
+Rule	GB-Eire	1949	only	-	Oct	30	2:00s	0	GMT
+# Summer Time Order, 1950 (S.I. 1950/518)
+# Summer Time Order, 1951 (S.I. 1951/430)
+# Summer Time Order, 1952 (S.I. 1952/451)
+Rule	GB-Eire	1950	1952	-	Apr	Sun>=14	2:00s	1:00	BST
+Rule	GB-Eire	1950	1952	-	Oct	Sun>=21	2:00s	0	GMT
+# revert to the rules of the Summer Time Act, 1925
+Rule	GB-Eire	1953	only	-	Apr	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1953	1960	-	Oct	Sun>=2	2:00s	0	GMT
+Rule	GB-Eire	1954	only	-	Apr	Sun>=9	2:00s	1:00	BST
+Rule	GB-Eire	1955	1956	-	Apr	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1957	only	-	Apr	Sun>=9	2:00s	1:00	BST
+Rule	GB-Eire	1958	1959	-	Apr	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1960	only	-	Apr	Sun>=9	2:00s	1:00	BST
+# Summer Time Order, 1961 (S.I. 1961/71)
+# Summer Time (1962) Order, 1961 (S.I. 1961/2465)
+# Summer Time Order, 1963 (S.I. 1963/81)
+Rule	GB-Eire	1961	1963	-	Mar	lastSun	2:00s	1:00	BST
+Rule	GB-Eire	1961	1968	-	Oct	Sun>=23	2:00s	0	GMT
+# Summer Time (1964) Order, 1963 (S.I. 1963/2101)
+# Summer Time Order, 1964 (S.I. 1964/1201)
+# Summer Time Order, 1967 (S.I. 1967/1148)
+Rule	GB-Eire	1964	1967	-	Mar	Sun>=19	2:00s	1:00	BST
+# Summer Time Order, 1968 (S.I. 1968/117)
+Rule	GB-Eire	1968	only	-	Feb	18	2:00s	1:00	BST
+# The British Standard Time Act, 1968
+#	(no summer time)
+# The Summer Time Act, 1972
+Rule	GB-Eire	1972	1980	-	Mar	Sun>=16	2:00s	1:00	BST
+Rule	GB-Eire	1972	1980	-	Oct	Sun>=23	2:00s	0	GMT
+# Summer Time Order, 1980 (S.I. 1980/1089)
+# Summer Time Order, 1982 (S.I. 1982/1673)
+# Summer Time Order, 1986 (S.I. 1986/223)
+# Summer Time Order, 1988 (S.I. 1988/931)
+Rule	GB-Eire	1981	1995	-	Mar	lastSun	1:00u	1:00	BST
+Rule	GB-Eire 1981	1989	-	Oct	Sun>=23	1:00u	0	GMT
+# Summer Time Order, 1989 (S.I. 1989/985)
+# Summer Time Order, 1992 (S.I. 1992/1729)
+# Summer Time Order 1994 (S.I. 1994/2798)
+Rule	GB-Eire 1990	1995	-	Oct	Sun>=22	1:00u	0	GMT
+# Summer Time Order 1997 (S.I. 1997/2982)
+# See EU for rules starting in 1996.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/London	-0:01:15 -	LMT	1847 Dec  1 0:00s
+			 0:00	GB-Eire	%s	1968 Oct 27
+			 1:00	-	BST	1971 Oct 31 2:00u
+			 0:00	GB-Eire	%s	1996
+			 0:00	EU	GMT/BST
+Link	Europe/London	Europe/Jersey
+Link	Europe/London	Europe/Guernsey
+Link	Europe/London	Europe/Isle_of_Man
+Zone	Europe/Dublin	-0:25:00 -	LMT	1880 Aug  2
+			-0:25:21 -	DMT	1916 May 21 2:00
+			-0:25:21 1:00	IST	1916 Oct  1 2:00s
+			 0:00	GB-Eire	%s	1921 Dec  6 # independence
+			 0:00	GB-Eire	GMT/IST	1940 Feb 25 2:00
+			 0:00	1:00	IST	1946 Oct  6 2:00
+			 0:00	-	GMT	1947 Mar 16 2:00
+			 0:00	1:00	IST	1947 Nov  2 2:00
+			 0:00	-	GMT	1948 Apr 18 2:00
+			 0:00	GB-Eire	GMT/IST	1968 Oct 27
+			 1:00	-	IST	1971 Oct 31 2:00u
+			 0:00	GB-Eire	GMT/IST	1996
+			 0:00	EU	GMT/IST
+
+###############################################################################
+
+# Europe
+
+# EU rules are for the European Union, previously known as the EC, EEC,
+# Common Market, etc.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	EU	1977	1980	-	Apr	Sun>=1	 1:00u	1:00	S
+Rule	EU	1977	only	-	Sep	lastSun	 1:00u	0	-
+Rule	EU	1978	only	-	Oct	 1	 1:00u	0	-
+Rule	EU	1979	1995	-	Sep	lastSun	 1:00u	0	-
+Rule	EU	1981	max	-	Mar	lastSun	 1:00u	1:00	S
+Rule	EU	1996	max	-	Oct	lastSun	 1:00u	0	-
+# The most recent directive covers the years starting in 2002.  See:
+# <a="http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT">
+# Directive 2000/84/EC of the European Parliament and of the Council
+# of 19 January 2001 on summer-time arrangements.
+# </a>
+
+# W-Eur differs from EU only in that W-Eur uses standard time.
+Rule	W-Eur	1977	1980	-	Apr	Sun>=1	 1:00s	1:00	S
+Rule	W-Eur	1977	only	-	Sep	lastSun	 1:00s	0	-
+Rule	W-Eur	1978	only	-	Oct	 1	 1:00s	0	-
+Rule	W-Eur	1979	1995	-	Sep	lastSun	 1:00s	0	-
+Rule	W-Eur	1981	max	-	Mar	lastSun	 1:00s	1:00	S
+Rule	W-Eur	1996	max	-	Oct	lastSun	 1:00s	0	-
+
+# Older C-Eur rules are for convenience in the tables.
+# From 1977 on, C-Eur differs from EU only in that C-Eur uses standard time.
+Rule	C-Eur	1916	only	-	Apr	30	23:00	1:00	S
+Rule	C-Eur	1916	only	-	Oct	 1	 1:00	0	-
+Rule	C-Eur	1917	1918	-	Apr	Mon>=15	 2:00s	1:00	S
+Rule	C-Eur	1917	1918	-	Sep	Mon>=15	 2:00s	0	-
+Rule	C-Eur	1940	only	-	Apr	 1	 2:00s	1:00	S
+Rule	C-Eur	1942	only	-	Nov	 2	 2:00s	0	-
+Rule	C-Eur	1943	only	-	Mar	29	 2:00s	1:00	S
+Rule	C-Eur	1943	only	-	Oct	 4	 2:00s	0	-
+Rule	C-Eur	1944	1945	-	Apr	Mon>=1	 2:00s	1:00	S
+# Whitman gives 1944 Oct 7; go with Shanks & Pottenger.
+Rule	C-Eur	1944	only	-	Oct	 2	 2:00s	0	-
+# From Jesper Norgaard Welen (2008-07-13):
+#
+# I found what is probably a typo of 2:00 which should perhaps be 2:00s
+# in the C-Eur rule from tz database version 2008d (this part was
+# corrected in version 2008d). The circumstancial evidence is simply the
+# tz database itself, as seen below:
+#
+# Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15  0:01
+#    0:00 France WE%sT 1945 Sep 16  3:00
+#
+# Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+#    0:00 France WE%sT 1945 Sep 16 3:00
+#
+# Zone Europe/Belgrade 1:22:00 - LMT 1884
+#    1:00 1:00 CEST 1945 Sep 16  2:00s
+#
+# Rule France 1945 only - Sep 16  3:00 0 -
+# Rule Belgium 1945 only - Sep 16  2:00s 0 -
+# Rule Neth 1945 only - Sep 16 2:00s 0 -
+#
+# The rule line to be changed is:
+#
+# Rule C-Eur 1945 only - Sep 16  2:00 0 -
+#
+# It seems that Paris, Monaco, Rule France, Rule Belgium all agree on
+# 2:00 standard time, e.g. 3:00 local time.  However there are no
+# countries that use C-Eur rules in September 1945, so the only items
+# affected are apparently these ficticious zones that translates acronyms
+# CET and MET:
+#
+# Zone CET  1:00 C-Eur CE%sT
+# Zone MET  1:00 C-Eur ME%sT
+#
+# It this is right then the corrected version would look like:
+#
+# Rule C-Eur 1945 only - Sep 16  2:00s 0 -
+#
+# A small step for mankind though 8-)
+Rule	C-Eur	1945	only	-	Sep	16	 2:00s	0	-
+Rule	C-Eur	1977	1980	-	Apr	Sun>=1	 2:00s	1:00	S
+Rule	C-Eur	1977	only	-	Sep	lastSun	 2:00s	0	-
+Rule	C-Eur	1978	only	-	Oct	 1	 2:00s	0	-
+Rule	C-Eur	1979	1995	-	Sep	lastSun	 2:00s	0	-
+Rule	C-Eur	1981	max	-	Mar	lastSun	 2:00s	1:00	S
+Rule	C-Eur	1996	max	-	Oct	lastSun	 2:00s	0	-
+
+# E-Eur differs from EU only in that E-Eur switches at midnight local time.
+Rule	E-Eur	1977	1980	-	Apr	Sun>=1	 0:00	1:00	S
+Rule	E-Eur	1977	only	-	Sep	lastSun	 0:00	0	-
+Rule	E-Eur	1978	only	-	Oct	 1	 0:00	0	-
+Rule	E-Eur	1979	1995	-	Sep	lastSun	 0:00	0	-
+Rule	E-Eur	1981	max	-	Mar	lastSun	 0:00	1:00	S
+Rule	E-Eur	1996	max	-	Oct	lastSun	 0:00	0	-
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Russia	1917	only	-	Jul	 1	23:00	1:00	MST	# Moscow Summer Time
+Rule	Russia	1917	only	-	Dec	28	 0:00	0	MMT	# Moscow Mean Time
+Rule	Russia	1918	only	-	May	31	22:00	2:00	MDST	# Moscow Double Summer Time
+Rule	Russia	1918	only	-	Sep	16	 1:00	1:00	MST
+Rule	Russia	1919	only	-	May	31	23:00	2:00	MDST
+Rule	Russia	1919	only	-	Jul	 1	 2:00	1:00	S
+Rule	Russia	1919	only	-	Aug	16	 0:00	0	-
+Rule	Russia	1921	only	-	Feb	14	23:00	1:00	S
+Rule	Russia	1921	only	-	Mar	20	23:00	2:00	M # Midsummer
+Rule	Russia	1921	only	-	Sep	 1	 0:00	1:00	S
+Rule	Russia	1921	only	-	Oct	 1	 0:00	0	-
+# Act No.925 of the Council of Ministers of the USSR (1980-10-24):
+Rule	Russia	1981	1984	-	Apr	 1	 0:00	1:00	S
+Rule	Russia	1981	1983	-	Oct	 1	 0:00	0	-
+# Act No.967 of the Council of Ministers of the USSR (1984-09-13), repeated in
+# Act No.227 of the Council of Ministers of the USSR (1989-03-14):
+Rule	Russia	1984	1991	-	Sep	lastSun	 2:00s	0	-
+Rule	Russia	1985	1991	-	Mar	lastSun	 2:00s	1:00	S
+#
+Rule	Russia	1992	only	-	Mar	lastSat	 23:00	1:00	S
+Rule	Russia	1992	only	-	Sep	lastSat	 23:00	0	-
+Rule	Russia	1993	max	-	Mar	lastSun	 2:00s	1:00	S
+Rule	Russia	1993	1995	-	Sep	lastSun	 2:00s	0	-
+Rule	Russia	1996	max	-	Oct	lastSun	 2:00s	0	-
+
+# These are for backward compatibility with older versions.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	WET		0:00	EU	WE%sT
+Zone	CET		1:00	C-Eur	CE%sT
+Zone	MET		1:00	C-Eur	ME%sT
+Zone	EET		2:00	EU	EE%sT
+
+# Previous editions of this database used abbreviations like MET DST
+# for Central European Summer Time, but this didn't agree with common usage.
+
+# From Markus Kuhn (1996-07-12):
+# The official German names ... are
+#
+#	Mitteleuropaeische Zeit (MEZ)         = UTC+01:00
+#	Mitteleuropaeische Sommerzeit (MESZ)  = UTC+02:00
+#
+# as defined in the German Time Act (Gesetz ueber die Zeitbestimmung (ZeitG),
+# 1978-07-25, Bundesgesetzblatt, Jahrgang 1978, Teil I, S. 1110-1111)....
+# I wrote ... to the German Federal Physical-Technical Institution
+#
+#	Physikalisch-Technische Bundesanstalt (PTB)
+#	Laboratorium 4.41 "Zeiteinheit"
+#	Postfach 3345
+#	D-38023 Braunschweig
+#	phone: +49 531 592-0
+#
+# ... I received today an answer letter from Dr. Peter Hetzel, head of the PTB
+# department for time and frequency transmission.  He explained that the
+# PTB translates MEZ and MESZ into English as
+#
+#	Central European Time (CET)         = UTC+01:00
+#	Central European Summer Time (CEST) = UTC+02:00
+
+
+# Albania
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Albania	1940	only	-	Jun	16	0:00	1:00	S
+Rule	Albania	1942	only	-	Nov	 2	3:00	0	-
+Rule	Albania	1943	only	-	Mar	29	2:00	1:00	S
+Rule	Albania	1943	only	-	Apr	10	3:00	0	-
+Rule	Albania	1974	only	-	May	 4	0:00	1:00	S
+Rule	Albania	1974	only	-	Oct	 2	0:00	0	-
+Rule	Albania	1975	only	-	May	 1	0:00	1:00	S
+Rule	Albania	1975	only	-	Oct	 2	0:00	0	-
+Rule	Albania	1976	only	-	May	 2	0:00	1:00	S
+Rule	Albania	1976	only	-	Oct	 3	0:00	0	-
+Rule	Albania	1977	only	-	May	 8	0:00	1:00	S
+Rule	Albania	1977	only	-	Oct	 2	0:00	0	-
+Rule	Albania	1978	only	-	May	 6	0:00	1:00	S
+Rule	Albania	1978	only	-	Oct	 1	0:00	0	-
+Rule	Albania	1979	only	-	May	 5	0:00	1:00	S
+Rule	Albania	1979	only	-	Sep	30	0:00	0	-
+Rule	Albania	1980	only	-	May	 3	0:00	1:00	S
+Rule	Albania	1980	only	-	Oct	 4	0:00	0	-
+Rule	Albania	1981	only	-	Apr	26	0:00	1:00	S
+Rule	Albania	1981	only	-	Sep	27	0:00	0	-
+Rule	Albania	1982	only	-	May	 2	0:00	1:00	S
+Rule	Albania	1982	only	-	Oct	 3	0:00	0	-
+Rule	Albania	1983	only	-	Apr	18	0:00	1:00	S
+Rule	Albania	1983	only	-	Oct	 1	0:00	0	-
+Rule	Albania	1984	only	-	Apr	 1	0:00	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Tirane	1:19:20 -	LMT	1914
+			1:00	-	CET	1940 Jun 16
+			1:00	Albania	CE%sT	1984 Jul
+			1:00	EU	CE%sT
+
+# Andorra
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Andorra	0:06:04 -	LMT	1901
+			0:00	-	WET	1946 Sep 30
+			1:00	-	CET	1985 Mar 31 2:00
+			1:00	EU	CE%sT
+
+# Austria
+
+# From Paul Eggert (2006-03-22): Shanks & Pottenger give 1918-06-16 and
+# 1945-11-18, but the Austrian Federal Office of Metrology and
+# Surveying (BEV) gives 1918-09-16 and for Vienna gives the "alleged"
+# date of 1945-04-12 with no time.  For the 1980-04-06 transition
+# Shanks & Pottenger give 02:00, the BEV 00:00.  Go with the BEV,
+# and guess 02:00 for 1945-04-12.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Austria	1920	only	-	Apr	 5	2:00s	1:00	S
+Rule	Austria	1920	only	-	Sep	13	2:00s	0	-
+Rule	Austria	1946	only	-	Apr	14	2:00s	1:00	S
+Rule	Austria	1946	1948	-	Oct	Sun>=1	2:00s	0	-
+Rule	Austria	1947	only	-	Apr	 6	2:00s	1:00	S
+Rule	Austria	1948	only	-	Apr	18	2:00s	1:00	S
+Rule	Austria	1980	only	-	Apr	 6	0:00	1:00	S
+Rule	Austria	1980	only	-	Sep	28	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Vienna	1:05:20 -	LMT	1893 Apr
+			1:00	C-Eur	CE%sT	1920
+			1:00	Austria	CE%sT	1940 Apr  1 2:00s
+			1:00	C-Eur	CE%sT	1945 Apr  2 2:00s
+			1:00	1:00	CEST	1945 Apr 12 2:00s
+			1:00	-	CET	1946
+			1:00	Austria	CE%sT	1981
+			1:00	EU	CE%sT
+
+# Belarus
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Minsk	1:50:16 -	LMT	1880
+			1:50	-	MMT	1924 May 2 # Minsk Mean Time
+			2:00	-	EET	1930 Jun 21
+			3:00	-	MSK	1941 Jun 28
+			1:00	C-Eur	CE%sT	1944 Jul  3
+			3:00	Russia	MSK/MSD	1990
+			3:00	-	MSK	1991 Mar 31 2:00s
+			2:00	1:00	EEST	1991 Sep 29 2:00s
+			2:00	-	EET	1992 Mar 29 0:00s
+			2:00	1:00	EEST	1992 Sep 27 0:00s
+			2:00	Russia	EE%sT
+
+# Belgium
+#
+# From Paul Eggert (1997-07-02):
+# Entries from 1918 through 1991 are taken from:
+#	Annuaire de L'Observatoire Royal de Belgique,
+#	Avenue Circulaire, 3, B-1180 BRUXELLES, CLVIIe annee, 1991
+#	(Imprimerie HAYEZ, s.p.r.l., Rue Fin, 4, 1080 BRUXELLES, MCMXC),
+#	pp 8-9.
+# LMT before 1892 was 0:17:30, according to the official journal of Belgium:
+#	Moniteur Belge, Samedi 30 Avril 1892, N.121.
+# Thanks to Pascal Delmoitie for these references.
+# The 1918 rules are listed for completeness; they apply to unoccupied Belgium.
+# Assume Brussels switched to WET in 1918 when the armistice took effect.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Belgium	1918	only	-	Mar	 9	 0:00s	1:00	S
+Rule	Belgium	1918	1919	-	Oct	Sat>=1	23:00s	0	-
+Rule	Belgium	1919	only	-	Mar	 1	23:00s	1:00	S
+Rule	Belgium	1920	only	-	Feb	14	23:00s	1:00	S
+Rule	Belgium	1920	only	-	Oct	23	23:00s	0	-
+Rule	Belgium	1921	only	-	Mar	14	23:00s	1:00	S
+Rule	Belgium	1921	only	-	Oct	25	23:00s	0	-
+Rule	Belgium	1922	only	-	Mar	25	23:00s	1:00	S
+Rule	Belgium	1922	1927	-	Oct	Sat>=1	23:00s	0	-
+Rule	Belgium	1923	only	-	Apr	21	23:00s	1:00	S
+Rule	Belgium	1924	only	-	Mar	29	23:00s	1:00	S
+Rule	Belgium	1925	only	-	Apr	 4	23:00s	1:00	S
+# DSH writes that a royal decree of 1926-02-22 specified the Sun following 3rd
+# Sat in Apr (except if it's Easter, in which case it's one Sunday earlier),
+# to Sun following 1st Sat in Oct, and that a royal decree of 1928-09-15
+# changed the transition times to 02:00 GMT.
+Rule	Belgium	1926	only	-	Apr	17	23:00s	1:00	S
+Rule	Belgium	1927	only	-	Apr	 9	23:00s	1:00	S
+Rule	Belgium	1928	only	-	Apr	14	23:00s	1:00	S
+Rule	Belgium	1928	1938	-	Oct	Sun>=2	 2:00s	0	-
+Rule	Belgium	1929	only	-	Apr	21	 2:00s	1:00	S
+Rule	Belgium	1930	only	-	Apr	13	 2:00s	1:00	S
+Rule	Belgium	1931	only	-	Apr	19	 2:00s	1:00	S
+Rule	Belgium	1932	only	-	Apr	 3	 2:00s	1:00	S
+Rule	Belgium	1933	only	-	Mar	26	 2:00s	1:00	S
+Rule	Belgium	1934	only	-	Apr	 8	 2:00s	1:00	S
+Rule	Belgium	1935	only	-	Mar	31	 2:00s	1:00	S
+Rule	Belgium	1936	only	-	Apr	19	 2:00s	1:00	S
+Rule	Belgium	1937	only	-	Apr	 4	 2:00s	1:00	S
+Rule	Belgium	1938	only	-	Mar	27	 2:00s	1:00	S
+Rule	Belgium	1939	only	-	Apr	16	 2:00s	1:00	S
+Rule	Belgium	1939	only	-	Nov	19	 2:00s	0	-
+Rule	Belgium	1940	only	-	Feb	25	 2:00s	1:00	S
+Rule	Belgium	1944	only	-	Sep	17	 2:00s	0	-
+Rule	Belgium	1945	only	-	Apr	 2	 2:00s	1:00	S
+Rule	Belgium	1945	only	-	Sep	16	 2:00s	0	-
+Rule	Belgium	1946	only	-	May	19	 2:00s	1:00	S
+Rule	Belgium	1946	only	-	Oct	 7	 2:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Brussels	0:17:30 -	LMT	1880
+			0:17:30	-	BMT	1892 May  1 12:00 # Brussels MT
+			0:00	-	WET	1914 Nov  8
+			1:00	-	CET	1916 May  1  0:00
+			1:00	C-Eur	CE%sT	1918 Nov 11 11:00u
+			0:00	Belgium	WE%sT	1940 May 20  2:00s
+			1:00	C-Eur	CE%sT	1944 Sep  3
+			1:00	Belgium	CE%sT	1977
+			1:00	EU	CE%sT
+
+# Bosnia and Herzegovina
+# see Serbia
+
+# Bulgaria
+#
+# From Plamen Simenov via Steffen Thorsen (1999-09-09):
+# A document of Government of Bulgaria (No.94/1997) says:
+# EET --> EETDST is in 03:00 Local time in last Sunday of March ...
+# EETDST --> EET is in 04:00 Local time in last Sunday of October
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Bulg	1979	only	-	Mar	31	23:00	1:00	S
+Rule	Bulg	1979	only	-	Oct	 1	 1:00	0	-
+Rule	Bulg	1980	1982	-	Apr	Sat>=1	23:00	1:00	S
+Rule	Bulg	1980	only	-	Sep	29	 1:00	0	-
+Rule	Bulg	1981	only	-	Sep	27	 2:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Sofia	1:33:16 -	LMT	1880
+			1:56:56	-	IMT	1894 Nov 30 # Istanbul MT?
+			2:00	-	EET	1942 Nov  2  3:00
+			1:00	C-Eur	CE%sT	1945
+			1:00	-	CET	1945 Apr 2 3:00
+			2:00	-	EET	1979 Mar 31 23:00
+			2:00	Bulg	EE%sT	1982 Sep 26  2:00
+			2:00	C-Eur	EE%sT	1991
+			2:00	E-Eur	EE%sT	1997
+			2:00	EU	EE%sT
+
+# Croatia
+# see Serbia
+
+# Cyprus
+# Please see the `asia' file for Asia/Nicosia.
+
+# Czech Republic
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Czech	1945	only	-	Apr	 8	2:00s	1:00	S
+Rule	Czech	1945	only	-	Nov	18	2:00s	0	-
+Rule	Czech	1946	only	-	May	 6	2:00s	1:00	S
+Rule	Czech	1946	1949	-	Oct	Sun>=1	2:00s	0	-
+Rule	Czech	1947	only	-	Apr	20	2:00s	1:00	S
+Rule	Czech	1948	only	-	Apr	18	2:00s	1:00	S
+Rule	Czech	1949	only	-	Apr	 9	2:00s	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Prague	0:57:44 -	LMT	1850
+			0:57:44	-	PMT	1891 Oct     # Prague Mean Time
+			1:00	C-Eur	CE%sT	1944 Sep 17 2:00s
+			1:00	Czech	CE%sT	1979
+			1:00	EU	CE%sT
+
+# Denmark, Faroe Islands, and Greenland
+
+# From Jesper Norgaard Welen (2005-04-26):
+# http://www.hum.aau.dk/~poe/tid/tine/DanskTid.htm says that the law
+# [introducing standard time] was in effect from 1894-01-01....
+# The page http://www.retsinfo.dk/_GETDOCI_/ACCN/A18930008330-REGL
+# confirms this, and states that the law was put forth 1893-03-29.
+#
+# The EU treaty with effect from 1973:
+# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19722110030-REGL
+#
+# This provoked a new law from 1974 to make possible summer time changes
+# in subsequenet decrees with the law
+# http://www.retsinfo.dk/_GETDOCI_/ACCN/A19740022330-REGL
+#
+# It seems however that no decree was set forward until 1980.  I have
+# not found any decree, but in another related law, the effecting DST
+# changes are stated explicitly to be from 1980-04-06 at 02:00 to
+# 1980-09-28 at 02:00.  If this is true, this differs slightly from
+# the EU rule in that DST runs to 02:00, not 03:00.  We don't know
+# when Denmark began using the EU rule correctly, but we have only
+# confirmation of the 1980-time, so I presume it was correct in 1981:
+# The law is about the management of the extra hour, concerning
+# working hours reported and effect on obligatory-rest rules (which
+# was suspended on that night):
+# http://www.retsinfo.dk/_GETDOCI_/ACCN/C19801120554-REGL
+
+# From Jesper Norgaard Welen (2005-06-11):
+# The Herning Folkeblad (1980-09-26) reported that the night between
+# Saturday and Sunday the clock is set back from three to two.
+
+# From Paul Eggert (2005-06-11):
+# Hence the "02:00" of the 1980 law refers to standard time, not
+# wall-clock time, and so the EU rules were in effect in 1980.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Denmark	1916	only	-	May	14	23:00	1:00	S
+Rule	Denmark	1916	only	-	Sep	30	23:00	0	-
+Rule	Denmark	1940	only	-	May	15	 0:00	1:00	S
+Rule	Denmark	1945	only	-	Apr	 2	 2:00s	1:00	S
+Rule	Denmark	1945	only	-	Aug	15	 2:00s	0	-
+Rule	Denmark	1946	only	-	May	 1	 2:00s	1:00	S
+Rule	Denmark	1946	only	-	Sep	 1	 2:00s	0	-
+Rule	Denmark	1947	only	-	May	 4	 2:00s	1:00	S
+Rule	Denmark	1947	only	-	Aug	10	 2:00s	0	-
+Rule	Denmark	1948	only	-	May	 9	 2:00s	1:00	S
+Rule	Denmark	1948	only	-	Aug	 8	 2:00s	0	-
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Europe/Copenhagen	 0:50:20 -	LMT	1890
+			 0:50:20 -	CMT	1894 Jan  1 # Copenhagen MT
+			 1:00	Denmark	CE%sT	1942 Nov  2 2:00s
+			 1:00	C-Eur	CE%sT	1945 Apr  2 2:00
+			 1:00	Denmark	CE%sT	1980
+			 1:00	EU	CE%sT
+Zone Atlantic/Faroe	-0:27:04 -	LMT	1908 Jan 11	# Torshavn
+			 0:00	-	WET	1981
+			 0:00	EU	WE%sT
+#
+# From Paul Eggert (2004-10-31):
+# During World War II, Germany maintained secret manned weather stations in
+# East Greenland and Franz Josef Land, but we don't know their time zones.
+# My source for this is Wilhelm Dege's book mentioned under Svalbard.
+#
+# From Paul Eggert (2006-03-22):
+# Greenland joined the EU as part of Denmark, obtained home rule on 1979-05-01,
+# and left the EU on 1985-02-01.  It therefore should have been using EU
+# rules at least through 1984.  Shanks & Pottenger say Scoresbysund and Godthab
+# used C-Eur rules after 1980, but IATA SSIM (1991/1996) says they use EU
+# rules since at least 1991.  Assume EU rules since 1980.
+
+# From Gwillin Law (2001-06-06), citing
+# <http://www.statkart.no/efs/efshefter/2001/efs5-2001.pdf> (2001-03-15),
+# and with translations corrected by Steffen Thorsen:
+#
+# Greenland has four local times, and the relation to UTC
+# is according to the following time line:
+#
+# The military zone near Thule	UTC-4
+# Standard Greenland time	UTC-3
+# Scoresbysund			UTC-1
+# Danmarkshavn			UTC
+#
+# In the military area near Thule and in Danmarkshavn DST will not be
+# introduced.
+
+# From Rives McDow (2001-11-01):
+#
+# I correspond regularly with the Dansk Polarcenter, and wrote them at
+# the time to clarify the situation in Thule.  Unfortunately, I have
+# not heard back from them regarding my recent letter.  [But I have
+# info from earlier correspondence.]
+#
+# According to the center, a very small local time zone around Thule
+# Air Base keeps the time according to UTC-4, implementing daylight
+# savings using North America rules, changing the time at 02:00 local time....
+#
+# The east coast of Greenland north of the community of Scoresbysund
+# uses UTC in the same way as in Iceland, year round, with no dst.
+# There are just a few stations on this coast, including the
+# Danmarkshavn ICAO weather station mentioned in your September 29th
+# email.  The other stations are two sledge patrol stations in
+# Mestersvig and Daneborg, the air force base at Station Nord, and the
+# DPC research station at Zackenberg.
+#
+# Scoresbysund and two small villages nearby keep time UTC-1 and use
+# the same daylight savings time period as in West Greenland (Godthab).
+#
+# The rest of Greenland, including Godthab (this area, although it
+# includes central Greenland, is known as west Greenland), keeps time
+# UTC-3, with daylight savings methods according to European rules.
+#
+# It is common procedure to use UTC 0 in the wilderness of East and
+# North Greenland, because it is mainly Icelandic aircraft operators
+# maintaining traffic in these areas.  However, the official status of
+# this area is that it sticks with Godthab time.  This area might be
+# considered a dual time zone in some respects because of this.
+
+# From Rives McDow (2001-11-19):
+# I heard back from someone stationed at Thule; the time change took place
+# there at 2:00 AM.
+
+# From Paul Eggert (2006-03-22):
+# From 1997 on the CIA map shows Danmarkshavn on GMT;
+# the 1995 map as like Godthab.
+# For lack of better info, assume they were like Godthab before 1996.
+# startkart.no says Thule does not observe DST, but this is clearly an error,
+# so go with Shanks & Pottenger for Thule transitions until this year.
+# For 2007 on assume Thule will stay in sync with US DST rules.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Thule	1991	1992	-	Mar	lastSun	2:00	1:00	D
+Rule	Thule	1991	1992	-	Sep	lastSun	2:00	0	S
+Rule	Thule	1993	2006	-	Apr	Sun>=1	2:00	1:00	D
+Rule	Thule	1993	2006	-	Oct	lastSun	2:00	0	S
+Rule	Thule	2007	max	-	Mar	Sun>=8	2:00	1:00	D
+Rule	Thule	2007	max	-	Nov	Sun>=1	2:00	0	S
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Danmarkshavn -1:14:40 -	LMT	1916 Jul 28
+			-3:00	-	WGT	1980 Apr  6 2:00
+			-3:00	EU	WG%sT	1996
+			0:00	-	GMT
+Zone America/Scoresbysund -1:27:52 -	LMT	1916 Jul 28 # Ittoqqortoormiit
+			-2:00	-	CGT	1980 Apr  6 2:00
+			-2:00	C-Eur	CG%sT	1981 Mar 29
+			-1:00	EU	EG%sT
+Zone America/Godthab	-3:26:56 -	LMT	1916 Jul 28 # Nuuk
+			-3:00	-	WGT	1980 Apr  6 2:00
+			-3:00	EU	WG%sT
+Zone America/Thule	-4:35:08 -	LMT	1916 Jul 28 # Pituffik air base
+			-4:00	Thule	A%sT
+
+# Estonia
+# From Peter Ilieve (1994-10-15):
+# A relative in Tallinn confirms the accuracy of the data for 1989 onwards
+# [through 1994] and gives the legal authority for it,
+# a regulation of the Government of Estonia, No. 111 of 1989....
+#
+# From Peter Ilieve (1996-10-28):
+# [IATA SSIM (1992/1996) claims that the Baltic republics switch at 01:00s,
+# but a relative confirms that Estonia still switches at 02:00s, writing:]
+# ``I do not [know] exactly but there are some little different
+# (confusing) rules for International Air and Railway Transport Schedules
+# conversion in Sunday connected with end of summer time in Estonia....
+# A discussion is running about the summer time efficiency and effect on
+# human physiology.  It seems that Estonia maybe will not change to
+# summer time next spring.''
+
+# From Peter Ilieve (1998-11-04), heavily edited:
+# <a href="http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390">
+# The 1998-09-22 Estonian time law
+# </a>
+# refers to the Eighth Directive and cites the association agreement between
+# the EU and Estonia, ratified by the Estonian law (RT II 1995, 22--27, 120).
+#
+# I also asked [my relative] whether they use any standard abbreviation
+# for their standard and summer times. He says no, they use "suveaeg"
+# (summer time) and "talveaeg" (winter time).
+
+# From <a href="http://www.baltictimes.com/">The Baltic Times</a> (1999-09-09)
+# via Steffen Thorsen:
+# This year will mark the last time Estonia shifts to summer time,
+# a council of the ruling coalition announced Sept. 6....
+# But what this could mean for Estonia's chances of joining the European
+# Union are still unclear.  In 1994, the EU declared summer time compulsory
+# for all member states until 2001.  Brussels has yet to decide what to do
+# after that.
+
+# From Mart Oruaas (2000-01-29):
+# Regulation no. 301 (1999-10-12) obsoletes previous regulation
+# no. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
+# the year round.  The regulation is effective 1999-11-01.
+
+# From Toomas Soome (2002-02-21):
+# The Estonian government has changed once again timezone politics.
+# Now we are using again EU rules.
+#
+# From Urmet Jaanes (2002-03-28):
+# The legislative reference is Government decree No. 84 on 2002-02-21.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Tallinn	1:39:00	-	LMT	1880
+			1:39:00	-	TMT	1918 Feb # Tallinn Mean Time
+			1:00	C-Eur	CE%sT	1919 Jul
+			1:39:00	-	TMT	1921 May
+			2:00	-	EET	1940 Aug  6
+			3:00	-	MSK	1941 Sep 15
+			1:00	C-Eur	CE%sT	1944 Sep 22
+			3:00	Russia	MSK/MSD	1989 Mar 26 2:00s
+			2:00	1:00	EEST	1989 Sep 24 2:00s
+			2:00	C-Eur	EE%sT	1998 Sep 22
+			2:00	EU	EE%sT	1999 Nov  1
+			2:00	-	EET	2002 Feb 21
+			2:00	EU	EE%sT
+
+# Finland
+#
+# From Hannu Strang (1994-09-25 06:03:37 UTC):
+# Well, here in Helsinki we're just changing from summer time to regular one,
+# and it's supposed to change at 4am...
+#
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say Finland has switched at 02:00 standard time
+# since 1981.  Go with Strang instead.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Finland	1942	only	-	Apr	3	0:00	1:00	S
+Rule	Finland	1942	only	-	Oct	3	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Helsinki	1:39:52 -	LMT	1878 May 31
+			1:39:52	-	HMT	1921 May    # Helsinki Mean Time
+			2:00	Finland	EE%sT	1981 Mar 29 2:00
+			2:00	EU	EE%sT
+
+# Aaland Is
+Link	Europe/Helsinki	Europe/Mariehamn
+
+
+# France
+
+# From Ciro Discepolo (2000-12-20):
+#
+# Henri Le Corre, Regimes Horaires pour le monde entier, Editions
+# Traditionnelles - Paris 2 books, 1993
+#
+# Gabriel, Traite de l'heure dans le monde, Guy Tredaniel editeur,
+# Paris, 1991
+#
+# Francoise Gauquelin, Problemes de l'heure resolus en astrologie,
+# Guy tredaniel, Paris 1987
+
+
+#
+# Shank & Pottenger seem to use `24:00' ambiguously; resolve it with Whitman.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	France	1916	only	-	Jun	14	23:00s	1:00	S
+Rule	France	1916	1919	-	Oct	Sun>=1	23:00s	0	-
+Rule	France	1917	only	-	Mar	24	23:00s	1:00	S
+Rule	France	1918	only	-	Mar	 9	23:00s	1:00	S
+Rule	France	1919	only	-	Mar	 1	23:00s	1:00	S
+Rule	France	1920	only	-	Feb	14	23:00s	1:00	S
+Rule	France	1920	only	-	Oct	23	23:00s	0	-
+Rule	France	1921	only	-	Mar	14	23:00s	1:00	S
+Rule	France	1921	only	-	Oct	25	23:00s	0	-
+Rule	France	1922	only	-	Mar	25	23:00s	1:00	S
+# DSH writes that a law of 1923-05-24 specified 3rd Sat in Apr at 23:00 to 1st
+# Sat in Oct at 24:00; and that in 1930, because of Easter, the transitions
+# were Apr 12 and Oct 5.  Go with Shanks & Pottenger.
+Rule	France	1922	1938	-	Oct	Sat>=1	23:00s	0	-
+Rule	France	1923	only	-	May	26	23:00s	1:00	S
+Rule	France	1924	only	-	Mar	29	23:00s	1:00	S
+Rule	France	1925	only	-	Apr	 4	23:00s	1:00	S
+Rule	France	1926	only	-	Apr	17	23:00s	1:00	S
+Rule	France	1927	only	-	Apr	 9	23:00s	1:00	S
+Rule	France	1928	only	-	Apr	14	23:00s	1:00	S
+Rule	France	1929	only	-	Apr	20	23:00s	1:00	S
+Rule	France	1930	only	-	Apr	12	23:00s	1:00	S
+Rule	France	1931	only	-	Apr	18	23:00s	1:00	S
+Rule	France	1932	only	-	Apr	 2	23:00s	1:00	S
+Rule	France	1933	only	-	Mar	25	23:00s	1:00	S
+Rule	France	1934	only	-	Apr	 7	23:00s	1:00	S
+Rule	France	1935	only	-	Mar	30	23:00s	1:00	S
+Rule	France	1936	only	-	Apr	18	23:00s	1:00	S
+Rule	France	1937	only	-	Apr	 3	23:00s	1:00	S
+Rule	France	1938	only	-	Mar	26	23:00s	1:00	S
+Rule	France	1939	only	-	Apr	15	23:00s	1:00	S
+Rule	France	1939	only	-	Nov	18	23:00s	0	-
+Rule	France	1940	only	-	Feb	25	 2:00	1:00	S
+# The French rules for 1941-1944 were not used in Paris, but Shanks & Pottenger
+# write that they were used in Monaco and in many French locations.
+# Le Corre writes that the upper limit of the free zone was Arneguy, Orthez,
+# Mont-de-Marsan, Bazas, Langon, Lamotte-Montravel, Marouil, La
+# Rochefoucault, Champagne-Mouton, La Roche-Posay, La Haye-Decartes,
+# Loches, Montrichard, Vierzon, Bourges, Moulins, Digoin,
+# Paray-le-Monial, Montceau-les-Mines, Chalons-sur-Saone, Arbois,
+# Dole, Morez, St-Claude, and Collognes (Haute-Savioe).
+Rule	France	1941	only	-	May	 5	 0:00	2:00	M # Midsummer
+# Shanks & Pottenger say this transition occurred at Oct 6 1:00,
+# but go with Denis Excoffier (1997-12-12),
+# who quotes the Ephemerides Astronomiques for 1998 from Bureau des Longitudes
+# as saying 5/10/41 22hUT.
+Rule	France	1941	only	-	Oct	 6	 0:00	1:00	S
+Rule	France	1942	only	-	Mar	 9	 0:00	2:00	M
+Rule	France	1942	only	-	Nov	 2	 3:00	1:00	S
+Rule	France	1943	only	-	Mar	29	 2:00	2:00	M
+Rule	France	1943	only	-	Oct	 4	 3:00	1:00	S
+Rule	France	1944	only	-	Apr	 3	 2:00	2:00	M
+Rule	France	1944	only	-	Oct	 8	 1:00	1:00	S
+Rule	France	1945	only	-	Apr	 2	 2:00	2:00	M
+Rule	France	1945	only	-	Sep	16	 3:00	0	-
+# Shanks & Pottenger give Mar 28 2:00 and Sep 26 3:00;
+# go with Excoffier's 28/3/76 0hUT and 25/9/76 23hUT.
+Rule	France	1976	only	-	Mar	28	 1:00	1:00	S
+Rule	France	1976	only	-	Sep	26	 1:00	0	-
+# Shanks & Pottenger give 0:09:20 for Paris Mean Time, and Whitman 0:09:05,
+# but Howse quotes the actual French legislation as saying 0:09:21.
+# Go with Howse.  Howse writes that the time in France was officially based
+# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Paris	0:09:21 -	LMT	1891 Mar 15  0:01
+			0:09:21	-	PMT	1911 Mar 11  0:01  # Paris MT
+# Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
+			0:00	France	WE%sT	1940 Jun 14 23:00
+# Le Corre says Paris stuck with occupied-France time after the liberation;
+# go with Shanks & Pottenger.
+			1:00	C-Eur	CE%sT	1944 Aug 25
+			0:00	France	WE%sT	1945 Sep 16  3:00
+			1:00	France	CE%sT	1977
+			1:00	EU	CE%sT
+
+# Germany
+
+# From Markus Kuhn (1998-09-29):
+# The German time zone web site by the Physikalisch-Technische
+# Bundesanstalt contains DST information back to 1916.
+# [See tz-link.htm for the URL.]
+
+# From Joerg Schilling (2002-10-23):
+# In 1945, Berlin was switched to Moscow Summer time (GMT+4) by
+# <a href="http://www.dhm.de/lemo/html/biografien/BersarinNikolai/">
+# General [Nikolai] Bersarin</a>.
+
+# From Paul Eggert (2003-03-08):
+# <a href="http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf">
+# http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
+# </a>
+# says that Bersarin issued an order to use Moscow time on May 20.
+# However, Moscow did not observe daylight saving in 1945, so
+# this was equivalent to CEMT (GMT+3), not GMT+4.
+
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Germany	1946	only	-	Apr	14	2:00s	1:00	S
+Rule	Germany	1946	only	-	Oct	 7	2:00s	0	-
+Rule	Germany	1947	1949	-	Oct	Sun>=1	2:00s	0	-
+# http://www.ptb.de/de/org/4/44/441/salt.htm says the following transition
+# occurred at 3:00 MEZ, not the 2:00 MEZ given in Shanks & Pottenger.
+# Go with the PTB.
+Rule	Germany	1947	only	-	Apr	 6	3:00s	1:00	S
+Rule	Germany	1947	only	-	May	11	2:00s	2:00	M
+Rule	Germany	1947	only	-	Jun	29	3:00	1:00	S
+Rule	Germany	1948	only	-	Apr	18	2:00s	1:00	S
+Rule	Germany	1949	only	-	Apr	10	2:00s	1:00	S
+
+Rule SovietZone	1945	only	-	May	24	2:00	2:00	M # Midsummer
+Rule SovietZone	1945	only	-	Sep	24	3:00	1:00	S
+Rule SovietZone	1945	only	-	Nov	18	2:00s	0	-
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Berlin	0:53:28 -	LMT	1893 Apr
+			1:00	C-Eur	CE%sT	1945 May 24 2:00
+			1:00 SovietZone	CE%sT	1946
+			1:00	Germany	CE%sT	1980
+			1:00	EU	CE%sT
+
+# Georgia
+# Please see the "asia" file for Asia/Tbilisi.
+# Herodotus (Histories, IV.45) says Georgia north of the Phasis (now Rioni)
+# is in Europe.  Our reference location Tbilisi is in the Asian part.
+
+# Gibraltar
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Europe/Gibraltar	-0:21:24 -	LMT	1880 Aug  2 0:00s
+			0:00	GB-Eire	%s	1957 Apr 14 2:00
+			1:00	-	CET	1982
+			1:00	EU	CE%sT
+
+# Greece
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# Whitman gives 1932 Jul 5 - Nov 1; go with Shanks & Pottenger.
+Rule	Greece	1932	only	-	Jul	 7	0:00	1:00	S
+Rule	Greece	1932	only	-	Sep	 1	0:00	0	-
+# Whitman gives 1941 Apr 25 - ?; go with Shanks & Pottenger.
+Rule	Greece	1941	only	-	Apr	 7	0:00	1:00	S
+# Whitman gives 1942 Feb 2 - ?; go with Shanks & Pottenger.
+Rule	Greece	1942	only	-	Nov	 2	3:00	0	-
+Rule	Greece	1943	only	-	Mar	30	0:00	1:00	S
+Rule	Greece	1943	only	-	Oct	 4	0:00	0	-
+# Whitman gives 1944 Oct 3 - Oct 31; go with Shanks & Pottenger.
+Rule	Greece	1952	only	-	Jul	 1	0:00	1:00	S
+Rule	Greece	1952	only	-	Nov	 2	0:00	0	-
+Rule	Greece	1975	only	-	Apr	12	0:00s	1:00	S
+Rule	Greece	1975	only	-	Nov	26	0:00s	0	-
+Rule	Greece	1976	only	-	Apr	11	2:00s	1:00	S
+Rule	Greece	1976	only	-	Oct	10	2:00s	0	-
+Rule	Greece	1977	1978	-	Apr	Sun>=1	2:00s	1:00	S
+Rule	Greece	1977	only	-	Sep	26	2:00s	0	-
+Rule	Greece	1978	only	-	Sep	24	4:00	0	-
+Rule	Greece	1979	only	-	Apr	 1	9:00	1:00	S
+Rule	Greece	1979	only	-	Sep	29	2:00	0	-
+Rule	Greece	1980	only	-	Apr	 1	0:00	1:00	S
+Rule	Greece	1980	only	-	Sep	28	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Athens	1:34:52 -	LMT	1895 Sep 14
+			1:34:52	-	AMT	1916 Jul 28 0:01     # Athens MT
+			2:00	Greece	EE%sT	1941 Apr 30
+			1:00	Greece	CE%sT	1944 Apr  4
+			2:00	Greece	EE%sT	1981
+			# Shanks & Pottenger say it switched to C-Eur in 1981;
+			# go with EU instead, since Greece joined it on Jan 1.
+			2:00	EU	EE%sT
+
+# Hungary
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Hungary	1918	only	-	Apr	 1	 3:00	1:00	S
+Rule	Hungary	1918	only	-	Sep	29	 3:00	0	-
+Rule	Hungary	1919	only	-	Apr	15	 3:00	1:00	S
+Rule	Hungary	1919	only	-	Sep	15	 3:00	0	-
+Rule	Hungary	1920	only	-	Apr	 5	 3:00	1:00	S
+Rule	Hungary	1920	only	-	Sep	30	 3:00	0	-
+Rule	Hungary	1945	only	-	May	 1	23:00	1:00	S
+Rule	Hungary	1945	only	-	Nov	 3	 0:00	0	-
+Rule	Hungary	1946	only	-	Mar	31	 2:00s	1:00	S
+Rule	Hungary	1946	1949	-	Oct	Sun>=1	 2:00s	0	-
+Rule	Hungary	1947	1949	-	Apr	Sun>=4	 2:00s	1:00	S
+Rule	Hungary	1950	only	-	Apr	17	 2:00s	1:00	S
+Rule	Hungary	1950	only	-	Oct	23	 2:00s	0	-
+Rule	Hungary	1954	1955	-	May	23	 0:00	1:00	S
+Rule	Hungary	1954	1955	-	Oct	 3	 0:00	0	-
+Rule	Hungary	1956	only	-	Jun	Sun>=1	 0:00	1:00	S
+Rule	Hungary	1956	only	-	Sep	lastSun	 0:00	0	-
+Rule	Hungary	1957	only	-	Jun	Sun>=1	 1:00	1:00	S
+Rule	Hungary	1957	only	-	Sep	lastSun	 3:00	0	-
+Rule	Hungary	1980	only	-	Apr	 6	 1:00	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Budapest	1:16:20 -	LMT	1890 Oct
+			1:00	C-Eur	CE%sT	1918
+			1:00	Hungary	CE%sT	1941 Apr  6  2:00
+			1:00	C-Eur	CE%sT	1945
+			1:00	Hungary	CE%sT	1980 Sep 28  2:00s
+			1:00	EU	CE%sT
+
+# Iceland
+#
+# From Adam David (1993-11-06):
+# The name of the timezone in Iceland for system / mail / news purposes is GMT.
+#
+# (1993-12-05):
+# This material is paraphrased from the 1988 edition of the University of
+# Iceland Almanak.
+#
+# From January 1st, 1908 the whole of Iceland was standardised at 1 hour
+# behind GMT. Previously, local mean solar time was used in different parts
+# of Iceland, the almanak had been based on Reykjavik mean solar time which
+# was 1 hour and 28 minutes behind GMT.
+#
+# "first day of winter" referred to [below] means the first day of the 26 weeks
+# of winter, according to the old icelandic calendar that dates back to the
+# time the norsemen first settled Iceland.  The first day of winter is always
+# Saturday, but is not dependent on the Julian or Gregorian calendars.
+#
+# (1993-12-10):
+# I have a reference from the Oxford Icelandic-English dictionary for the
+# beginning of winter, which ties it to the ecclesiastical calendar (and thus
+# to the julian/gregorian calendar) over the period in question.
+#	the winter begins on the Saturday next before St. Luke's day
+#	(old style), or on St. Luke's day, if a Saturday.
+# St. Luke's day ought to be traceable from ecclesiastical sources. "old style"
+# might be a reference to the Julian calendar as opposed to Gregorian, or it
+# might mean something else (???).
+#
+# From Paul Eggert (2006-03-22):
+# The Iceland Almanak, Shanks & Pottenger, and Whitman disagree on many points.
+# We go with the Almanak, except for one claim from Shanks & Pottenger, namely
+# that Reykavik was 21W57 from 1837 to 1908, local mean time before that.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Iceland	1917	1918	-	Feb	19	23:00	1:00	S
+Rule	Iceland	1917	only	-	Oct	21	 1:00	0	-
+Rule	Iceland	1918	only	-	Nov	16	 1:00	0	-
+Rule	Iceland	1939	only	-	Apr	29	23:00	1:00	S
+Rule	Iceland	1939	only	-	Nov	29	 2:00	0	-
+Rule	Iceland	1940	only	-	Feb	25	 2:00	1:00	S
+Rule	Iceland	1940	only	-	Nov	 3	 2:00	0	-
+Rule	Iceland	1941	only	-	Mar	 2	 1:00s	1:00	S
+Rule	Iceland	1941	only	-	Nov	 2	 1:00s	0	-
+Rule	Iceland	1942	only	-	Mar	 8	 1:00s	1:00	S
+Rule	Iceland	1942	only	-	Oct	25	 1:00s	0	-
+# 1943-1946 - first Sunday in March until first Sunday in winter
+Rule	Iceland	1943	1946	-	Mar	Sun>=1	 1:00s	1:00	S
+Rule	Iceland	1943	1948	-	Oct	Sun>=22	 1:00s	0	-
+# 1947-1967 - first Sunday in April until first Sunday in winter
+Rule	Iceland	1947	1967	-	Apr	Sun>=1	 1:00s	1:00	S
+# 1949 Oct transition delayed by 1 week
+Rule	Iceland	1949	only	-	Oct	30	 1:00s	0	-
+Rule	Iceland	1950	1966	-	Oct	Sun>=22	 1:00s	0	-
+Rule	Iceland	1967	only	-	Oct	29	 1:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Atlantic/Reykjavik	-1:27:24 -	LMT	1837
+			-1:27:48 -	RMT	1908 # Reykjavik Mean Time?
+			-1:00	Iceland	IS%sT	1968 Apr 7 1:00s
+			 0:00	-	GMT
+
+# Italy
+#
+# From Paul Eggert (2001-03-06):
+# Sicily and Sardinia each had their own time zones from 1866 to 1893,
+# called Palermo Time (+00:53:28) and Cagliari Time (+00:36:32).
+# During World War II, German-controlled Italy used German time.
+# But these events all occurred before the 1970 cutoff,
+# so record only the time in Rome.
+#
+# From Paul Eggert (2006-03-22):
+# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
+# F. Pollastri
+# <a href="http://toi.iriti.cnr.it/uk/ienitlt.html">
+# Day-light Saving Time in Italy (2006-02-03)
+# </a>
+# (`FP' below), taken from an Italian National Electrotechnical Institute
+# publication. When the three sources disagree, guess who's right, as follows:
+#
+# year	FP	Shanks&P. (S)	Whitman (W)	Go with:
+# 1916	06-03	06-03 24:00	06-03 00:00	FP & W
+#	09-30	09-30 24:00	09-30 01:00	FP; guess 24:00s
+# 1917	04-01	03-31 24:00	03-31 00:00	FP & S
+#	09-30	09-29 24:00	09-30 01:00	FP & W
+# 1918	03-09	03-09 24:00	03-09 00:00	FP & S
+#	10-06	10-05 24:00	10-06 01:00	FP & W
+# 1919	03-01	03-01 24:00	03-01 00:00	FP & S
+#	10-04	10-04 24:00	10-04 01:00	FP; guess 24:00s
+# 1920	03-20	03-20 24:00	03-20 00:00	FP & S
+#	09-18	09-18 24:00	10-01 01:00	FP; guess 24:00s
+# 1944	04-02	04-03 02:00			S (see C-Eur)
+#	09-16	10-02 03:00			FP; guess 24:00s
+# 1945	09-14	09-16 24:00			FP; guess 24:00s
+# 1970	05-21	05-31 00:00			S
+#	09-20	09-27 00:00			S
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Italy	1916	only	-	Jun	 3	0:00s	1:00	S
+Rule	Italy	1916	only	-	Oct	 1	0:00s	0	-
+Rule	Italy	1917	only	-	Apr	 1	0:00s	1:00	S
+Rule	Italy	1917	only	-	Sep	30	0:00s	0	-
+Rule	Italy	1918	only	-	Mar	10	0:00s	1:00	S
+Rule	Italy	1918	1919	-	Oct	Sun>=1	0:00s	0	-
+Rule	Italy	1919	only	-	Mar	 2	0:00s	1:00	S
+Rule	Italy	1920	only	-	Mar	21	0:00s	1:00	S
+Rule	Italy	1920	only	-	Sep	19	0:00s	0	-
+Rule	Italy	1940	only	-	Jun	15	0:00s	1:00	S
+Rule	Italy	1944	only	-	Sep	17	0:00s	0	-
+Rule	Italy	1945	only	-	Apr	 2	2:00	1:00	S
+Rule	Italy	1945	only	-	Sep	15	0:00s	0	-
+Rule	Italy	1946	only	-	Mar	17	2:00s	1:00	S
+Rule	Italy	1946	only	-	Oct	 6	2:00s	0	-
+Rule	Italy	1947	only	-	Mar	16	0:00s	1:00	S
+Rule	Italy	1947	only	-	Oct	 5	0:00s	0	-
+Rule	Italy	1948	only	-	Feb	29	2:00s	1:00	S
+Rule	Italy	1948	only	-	Oct	 3	2:00s	0	-
+Rule	Italy	1966	1968	-	May	Sun>=22	0:00	1:00	S
+Rule	Italy	1966	1969	-	Sep	Sun>=22	0:00	0	-
+Rule	Italy	1969	only	-	Jun	 1	0:00	1:00	S
+Rule	Italy	1970	only	-	May	31	0:00	1:00	S
+Rule	Italy	1970	only	-	Sep	lastSun	0:00	0	-
+Rule	Italy	1971	1972	-	May	Sun>=22	0:00	1:00	S
+Rule	Italy	1971	only	-	Sep	lastSun	1:00	0	-
+Rule	Italy	1972	only	-	Oct	 1	0:00	0	-
+Rule	Italy	1973	only	-	Jun	 3	0:00	1:00	S
+Rule	Italy	1973	1974	-	Sep	lastSun	0:00	0	-
+Rule	Italy	1974	only	-	May	26	0:00	1:00	S
+Rule	Italy	1975	only	-	Jun	 1	0:00s	1:00	S
+Rule	Italy	1975	1977	-	Sep	lastSun	0:00s	0	-
+Rule	Italy	1976	only	-	May	30	0:00s	1:00	S
+Rule	Italy	1977	1979	-	May	Sun>=22	0:00s	1:00	S
+Rule	Italy	1978	only	-	Oct	 1	0:00s	0	-
+Rule	Italy	1979	only	-	Sep	30	0:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Rome	0:49:56 -	LMT	1866 Sep 22
+			0:49:56	-	RMT	1893 Nov  1 0:00s # Rome Mean
+			1:00	Italy	CE%sT	1942 Nov  2 2:00s
+			1:00	C-Eur	CE%sT	1944 Jul
+			1:00	Italy	CE%sT	1980
+			1:00	EU	CE%sT
+
+Link	Europe/Rome	Europe/Vatican
+Link	Europe/Rome	Europe/San_Marino
+
+# Latvia
+
+# From Liene Kanepe (1998-09-17):
+
+# I asked about this matter Scientific Secretary of the Institute of Astronomy
+# of The University of Latvia Dr. paed Mr. Ilgonis Vilks. I also searched the
+# correct data in juridical acts and I found some juridical documents about
+# changes in the counting of time in Latvia from 1981....
+#
+# Act No.35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
+# according to the Act No.925 of the Council of Ministers of USSR of 1980-10-24
+# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+# the hands of the clock 1 hour forward on 1 April at 00:00 (GMT 31 March 21:00)
+# and 1 hour backward on the 1 October at 00:00 (GMT 30 September 20:00).
+#
+# Act No.592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
+# according to the Act No.967 of the Council of Ministers of USSR of 1984-09-13
+# ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+# the hands of the clock 1 hour forward on the last Sunday of March at 02:00
+# (GMT 23:00 on the previous day) and 1 hour backward on the last Sunday of
+# September at 03:00 (GMT 23:00 on the previous day).
+#
+# Act No.81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
+# according to the Act No.227 of the Council of Ministers of USSR of 1989-03-14
+# ...: since the last Sunday of March 1989 in Lithuanian SSR, Latvian SSR,
+# Estonian SSR and Kaliningrad region of Russian Federation all year round the
+# time of 2nd time zone (Moscow time minus one hour). On the territory of Latvia
+# transition to summer time is performed on the last Sunday of March at 02:00
+# (GMT 00:00), turning the hands of the clock 1 hour forward.  The end of
+# daylight saving time is performed on the last Sunday of September at 03:00
+# (GMT 00:00), turning the hands of the clock 1 hour backward. Exception is
+# 1989-03-26, when we must not turn the hands of the clock....
+#
+# The Regulations of the Cabinet of Ministers of the Republic of Latvia of
+# 1997-01-21 on transition to Summer time ... established the same order of
+# daylight savings time settings as in the States of the European Union.
+
+# From Andrei Ivanov (2000-03-06):
+# This year Latvia will not switch to Daylight Savings Time (as specified in
+# <a href="http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm">
+# The Regulations of the Cabinet of Ministers of the Rep. of Latvia of
+# 29-Feb-2000 (#79)</a>, in Latvian for subscribers only).
+
+# <a href="http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html">
+# From RFE/RL Newsline (2001-01-03), noted after a heads-up by Rives McDow:
+# </a>
+# The Latvian government on 2 January decided that the country will
+# institute daylight-saving time this spring, LETA reported.
+# Last February the three Baltic states decided not to turn back their
+# clocks one hour in the spring....
+# Minister of Economy Aigars Kalvitis noted that Latvia had too few
+# daylight hours and thus decided to comply with a draft European
+# Commission directive that provides for instituting daylight-saving
+# time in EU countries between 2002 and 2006. The Latvian government
+# urged Lithuania and Estonia to adopt a similar time policy, but it
+# appears that they will not do so....
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Latvia	1989	1996	-	Mar	lastSun	 2:00s	1:00	S
+Rule	Latvia	1989	1996	-	Sep	lastSun	 2:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Riga	1:36:24	-	LMT	1880
+			1:36:24	-	RMT	1918 Apr 15 2:00 #Riga Mean Time
+			1:36:24	1:00	LST	1918 Sep 16 3:00 #Latvian Summer
+			1:36:24	-	RMT	1919 Apr  1 2:00
+			1:36:24	1:00	LST	1919 May 22 3:00
+			1:36:24	-	RMT	1926 May 11
+			2:00	-	EET	1940 Aug  5
+			3:00	-	MSK	1941 Jul
+			1:00	C-Eur	CE%sT	1944 Oct 13
+			3:00	Russia	MSK/MSD	1989 Mar lastSun 2:00s
+			2:00	1:00	EEST	1989 Sep lastSun 2:00s
+			2:00	Latvia	EE%sT	1997 Jan 21
+			2:00	EU	EE%sT	2000 Feb 29
+			2:00	-	EET	2001 Jan  2
+			2:00	EU	EE%sT
+
+# Liechtenstein
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Vaduz	0:38:04 -	LMT	1894 Jun
+			1:00	-	CET	1981
+			1:00	EU	CE%sT
+
+# Lithuania
+
+# From Paul Eggert (1996-11-22):
+# IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
+# known to be wrong about Estonia and Latvia, assume it's wrong here too.
+
+# From Marius Gedminas (1998-08-07):
+# I would like to inform that in this year Lithuanian time zone
+# (Europe/Vilnius) was changed.
+
+# From <a href="http://www.elta.lt/">ELTA</a> No. 972 (2582) (1999-09-29),
+# via Steffen Thorsen:
+# Lithuania has shifted back to the second time zone (GMT plus two hours)
+# to be valid here starting from October 31,
+# as decided by the national government on Wednesday....
+# The Lithuanian government also announced plans to consider a
+# motion to give up shifting to summer time in spring, as it was
+# already done by Estonia.
+
+# From the <a href="http://www.tourism.lt/informa/ff.htm">
+# Fact File, Lithuanian State Department of Tourism
+# </a> (2000-03-27): Local time is GMT+2 hours ..., no daylight saving.
+
+# From a user via Klaus Marten (2003-02-07):
+# As a candidate for membership of the European Union, Lithuania will
+# observe Summer Time in 2003, changing its clocks at the times laid
+# down in EU Directive 2000/84 of 19.I.01 (i.e. at the same times as its
+# neighbour Latvia). The text of the Lithuanian government Order of
+# 7.XI.02 to this effect can be found at
+# http://www.lrvk.lt/nut/11/n1749.htm
+
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Vilnius	1:41:16	-	LMT	1880
+			1:24:00	-	WMT	1917	    # Warsaw Mean Time
+			1:35:36	-	KMT	1919 Oct 10 # Kaunas Mean Time
+			1:00	-	CET	1920 Jul 12
+			2:00	-	EET	1920 Oct  9
+			1:00	-	CET	1940 Aug  3
+			3:00	-	MSK	1941 Jun 24
+			1:00	C-Eur	CE%sT	1944 Aug
+			3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
+			2:00	1:00	EEST	1991 Sep 29 2:00s
+			2:00	C-Eur	EE%sT	1998
+			2:00	-	EET	1998 Mar 29 1:00u
+			1:00	EU	CE%sT	1999 Oct 31 1:00u
+			2:00	-	EET	2003 Jan  1
+			2:00	EU	EE%sT
+
+# Luxembourg
+# Whitman disagrees with most of these dates in minor ways;
+# go with Shanks & Pottenger.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Lux	1916	only	-	May	14	23:00	1:00	S
+Rule	Lux	1916	only	-	Oct	 1	 1:00	0	-
+Rule	Lux	1917	only	-	Apr	28	23:00	1:00	S
+Rule	Lux	1917	only	-	Sep	17	 1:00	0	-
+Rule	Lux	1918	only	-	Apr	Mon>=15	 2:00s	1:00	S
+Rule	Lux	1918	only	-	Sep	Mon>=15	 2:00s	0	-
+Rule	Lux	1919	only	-	Mar	 1	23:00	1:00	S
+Rule	Lux	1919	only	-	Oct	 5	 3:00	0	-
+Rule	Lux	1920	only	-	Feb	14	23:00	1:00	S
+Rule	Lux	1920	only	-	Oct	24	 2:00	0	-
+Rule	Lux	1921	only	-	Mar	14	23:00	1:00	S
+Rule	Lux	1921	only	-	Oct	26	 2:00	0	-
+Rule	Lux	1922	only	-	Mar	25	23:00	1:00	S
+Rule	Lux	1922	only	-	Oct	Sun>=2	 1:00	0	-
+Rule	Lux	1923	only	-	Apr	21	23:00	1:00	S
+Rule	Lux	1923	only	-	Oct	Sun>=2	 2:00	0	-
+Rule	Lux	1924	only	-	Mar	29	23:00	1:00	S
+Rule	Lux	1924	1928	-	Oct	Sun>=2	 1:00	0	-
+Rule	Lux	1925	only	-	Apr	 5	23:00	1:00	S
+Rule	Lux	1926	only	-	Apr	17	23:00	1:00	S
+Rule	Lux	1927	only	-	Apr	 9	23:00	1:00	S
+Rule	Lux	1928	only	-	Apr	14	23:00	1:00	S
+Rule	Lux	1929	only	-	Apr	20	23:00	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Europe/Luxembourg	0:24:36 -	LMT	1904 Jun
+			1:00	Lux	CE%sT	1918 Nov 25
+			0:00	Lux	WE%sT	1929 Oct  6 2:00s
+			0:00	Belgium	WE%sT	1940 May 14 3:00
+			1:00	C-Eur	WE%sT	1944 Sep 18 3:00
+			1:00	Belgium	CE%sT	1977
+			1:00	EU	CE%sT
+
+# Macedonia
+# see Serbia
+
+# Malta
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Malta	1973	only	-	Mar	31	0:00s	1:00	S
+Rule	Malta	1973	only	-	Sep	29	0:00s	0	-
+Rule	Malta	1974	only	-	Apr	21	0:00s	1:00	S
+Rule	Malta	1974	only	-	Sep	16	0:00s	0	-
+Rule	Malta	1975	1979	-	Apr	Sun>=15	2:00	1:00	S
+Rule	Malta	1975	1980	-	Sep	Sun>=15	2:00	0	-
+Rule	Malta	1980	only	-	Mar	31	2:00	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Malta	0:58:04 -	LMT	1893 Nov  2 0:00s # Valletta
+			1:00	Italy	CE%sT	1942 Nov  2 2:00s
+			1:00	C-Eur	CE%sT	1945 Apr  2 2:00s
+			1:00	Italy	CE%sT	1973 Mar 31
+			1:00	Malta	CE%sT	1981
+			1:00	EU	CE%sT
+
+# Moldova
+
+# From Paul Eggert (2006-03-22):
+# A previous version of this database followed Shanks & Pottenger, who write
+# that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
+# However, this is most likely an error, as Moldova declared independence
+# on 1991-08-27 (the 1992-01-19 date is that of a Russian decree).
+# In early 1992 there was large-scale interethnic violence in the area
+# and it's possible that some Russophones continued to observe Moscow time.
+# But [two people] separately reported via
+# Jesper Norgaard that as of 2001-01-24 Tiraspol was like Chisinau.
+# The Tiraspol entry has therefore been removed for now.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Chisinau	1:55:20 -	LMT	1880
+			1:55	-	CMT	1918 Feb 15 # Chisinau MT
+			1:44:24	-	BMT	1931 Jul 24 # Bucharest MT
+			2:00	Romania	EE%sT	1940 Aug 15
+			2:00	1:00	EEST	1941 Jul 17
+			1:00	C-Eur	CE%sT	1944 Aug 24
+			3:00	Russia	MSK/MSD	1990
+			3:00	-	MSK	1990 May 6
+			2:00	-	EET	1991
+			2:00	Russia	EE%sT	1992
+			2:00	E-Eur	EE%sT	1997
+# See Romania commentary for the guessed 1997 transition to EU rules.
+			2:00	EU	EE%sT
+
+# Monaco
+# Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+# more precise 0:09:21.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Monaco	0:29:32 -	LMT	1891 Mar 15
+			0:09:21	-	PMT	1911 Mar 11    # Paris Mean Time
+			0:00	France	WE%sT	1945 Sep 16 3:00
+			1:00	France	CE%sT	1977
+			1:00	EU	CE%sT
+
+# Montenegro
+# see Serbia
+
+# Netherlands
+
+# Howse writes that the Netherlands' railways used GMT between 1892 and 1940,
+# but for other purposes the Netherlands used Amsterdam mean time.
+
+# However, Robert H. van Gent writes (2001-04-01):
+# Howse's statement is only correct up to 1909. From 1909-05-01 (00:00:00
+# Amsterdam mean time) onwards, the whole of the Netherlands (including
+# the Dutch railways) was required by law to observe Amsterdam mean time
+# (19 minutes 32.13 seconds ahead of GMT). This had already been the
+# common practice (except for the railways) for many decades but it was
+# not until 1909 when the Dutch government finally defined this by law.
+# On 1937-07-01 this was changed to 20 minutes (exactly) ahead of GMT and
+# was generally known as Dutch Time ("Nederlandse Tijd").
+#
+# (2001-04-08):
+# 1892-05-01 was the date when the Dutch railways were by law required to
+# observe GMT while the remainder of the Netherlands adhered to the common
+# practice of following Amsterdam mean time.
+#
+# (2001-04-09):
+# In 1835 the authorities of the province of North Holland requested the
+# municipal authorities of the towns and cities in the province to observe
+# Amsterdam mean time but I do not know in how many cases this request was
+# actually followed.
+#
+# From 1852 onwards the Dutch telegraph offices were by law required to
+# observe Amsterdam mean time. As the time signals from the observatory of
+# Leiden were also distributed by the telegraph system, I assume that most
+# places linked up with the telegraph (and railway) system automatically
+# adopted Amsterdam mean time.
+#
+# Although the early Dutch railway companies initially observed a variety
+# of times, most of them had adopted Amsterdam mean time by 1858 but it
+# was not until 1866 when they were all required by law to observe
+# Amsterdam mean time.
+
+# The data before 1945 are taken from
+# <http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm>.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Neth	1916	only	-	May	 1	0:00	1:00	NST	# Netherlands Summer Time
+Rule	Neth	1916	only	-	Oct	 1	0:00	0	AMT	# Amsterdam Mean Time
+Rule	Neth	1917	only	-	Apr	16	2:00s	1:00	NST
+Rule	Neth	1917	only	-	Sep	17	2:00s	0	AMT
+Rule	Neth	1918	1921	-	Apr	Mon>=1	2:00s	1:00	NST
+Rule	Neth	1918	1921	-	Sep	lastMon	2:00s	0	AMT
+Rule	Neth	1922	only	-	Mar	lastSun	2:00s	1:00	NST
+Rule	Neth	1922	1936	-	Oct	Sun>=2	2:00s	0	AMT
+Rule	Neth	1923	only	-	Jun	Fri>=1	2:00s	1:00	NST
+Rule	Neth	1924	only	-	Mar	lastSun	2:00s	1:00	NST
+Rule	Neth	1925	only	-	Jun	Fri>=1	2:00s	1:00	NST
+# From 1926 through 1939 DST began 05-15, except that it was delayed by a week
+# in years when 05-15 fell in the Pentecost weekend.
+Rule	Neth	1926	1931	-	May	15	2:00s	1:00	NST
+Rule	Neth	1932	only	-	May	22	2:00s	1:00	NST
+Rule	Neth	1933	1936	-	May	15	2:00s	1:00	NST
+Rule	Neth	1937	only	-	May	22	2:00s	1:00	NST
+Rule	Neth	1937	only	-	Jul	 1	0:00	1:00	S
+Rule	Neth	1937	1939	-	Oct	Sun>=2	2:00s	0	-
+Rule	Neth	1938	1939	-	May	15	2:00s	1:00	S
+Rule	Neth	1945	only	-	Apr	 2	2:00s	1:00	S
+Rule	Neth	1945	only	-	Sep	16	2:00s	0	-
+#
+# Amsterdam Mean Time was +00:19:32.13 exactly, but the .13 is omitted
+# below because the current format requires GMTOFF to be an integer.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Europe/Amsterdam	0:19:32 -	LMT	1835
+			0:19:32	Neth	%s	1937 Jul  1
+			0:20	Neth	NE%sT	1940 May 16 0:00 # Dutch Time
+			1:00	C-Eur	CE%sT	1945 Apr  2 2:00
+			1:00	Neth	CE%sT	1977
+			1:00	EU	CE%sT
+
+# Norway
+# http://met.no/met/met_lex/q_u/sommertid.html (2004-01) agrees with Shanks &
+# Pottenger.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Norway	1916	only	-	May	22	1:00	1:00	S
+Rule	Norway	1916	only	-	Sep	30	0:00	0	-
+Rule	Norway	1945	only	-	Apr	 2	2:00s	1:00	S
+Rule	Norway	1945	only	-	Oct	 1	2:00s	0	-
+Rule	Norway	1959	1964	-	Mar	Sun>=15	2:00s	1:00	S
+Rule	Norway	1959	1965	-	Sep	Sun>=15	2:00s	0	-
+Rule	Norway	1965	only	-	Apr	25	2:00s	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Oslo	0:43:00 -	LMT	1895 Jan  1
+			1:00	Norway	CE%sT	1940 Aug 10 23:00
+			1:00	C-Eur	CE%sT	1945 Apr  2  2:00
+			1:00	Norway	CE%sT	1980
+			1:00	EU	CE%sT
+
+# Svalbard & Jan Mayen
+
+# From Steffen Thorsen (2001-05-01):
+# Although I could not find it explicitly, it seems that Jan Mayen and
+# Svalbard have been using the same time as Norway at least since the
+# time they were declared as parts of Norway.  Svalbard was declared
+# as a part of Norway by law of 1925-07-17 no 11, section 4 and Jan
+# Mayen by law of 1930-02-27 no 2, section 2. (From
+# http://www.lovdata.no/all/nl-19250717-011.html and
+# http://www.lovdata.no/all/nl-19300227-002.html).  The law/regulation
+# for normal/standard time in Norway is from 1894-06-29 no 1 (came
+# into operation on 1895-01-01) and Svalbard/Jan Mayen seem to be a
+# part of this law since 1925/1930. (From
+# http://www.lovdata.no/all/nl-18940629-001.html ) I have not been
+# able to find if Jan Mayen used a different time zone (e.g. -0100)
+# before 1930. Jan Mayen has only been "inhabitated" since 1921 by
+# Norwegian meteorologists and maybe used the same time as Norway ever
+# since 1921.  Svalbard (Arctic/Longyearbyen) has been inhabited since
+# before 1895, and therefore probably changed the local time somewhere
+# between 1895 and 1925 (inclusive).
+
+# From Paul Eggert (2001-05-01):
+#
+# Actually, Jan Mayen was never occupied by Germany during World War II,
+# so it must have diverged from Oslo time during the war, as Oslo was
+# keeping Berlin time.
+#
+# <http://home.no.net/janmayen/history.htm> says that the meteorologists
+# burned down their station in 1940 and left the island, but returned in
+# 1941 with a small Norwegian garrison and continued operations despite
+# frequent air ttacks from Germans.  In 1943 the Americans established a
+# radiolocating station on the island, called "Atlantic City".  Possibly
+# the UTC offset changed during the war, but I think it unlikely that
+# Jan Mayen used German daylight-saving rules.
+#
+# Svalbard is more complicated, as it was raided in August 1941 by an
+# Allied party that evacuated the civilian population to England (says
+# <http://www.bartleby.com/65/sv/Svalbard.html>).  The Svalbard FAQ
+# <http://www.svalbard.com/SvalbardFAQ.html> says that the Germans were
+# expelled on 1942-05-14.  However, small parties of Germans did return,
+# and according to Wilhelm Dege's book "War North of 80" (1954)
+# <http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html>
+# the German armed forces at the Svalbard weather station code-named
+# Haudegen did not surrender to the Allies until September 1945.
+#
+# All these events predate our cutoff date of 1970.  Unless we can
+# come up with more definitive info about the timekeeping during the
+# war years it's probably best just do do the following for now:
+Link	Europe/Oslo	Arctic/Longyearbyen
+
+# Poland
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Poland	1918	1919	-	Sep	16	2:00s	0	-
+Rule	Poland	1919	only	-	Apr	15	2:00s	1:00	S
+Rule	Poland	1944	only	-	Apr	 3	2:00s	1:00	S
+# Whitman gives 1944 Nov 30; go with Shanks & Pottenger.
+Rule	Poland	1944	only	-	Oct	 4	2:00	0	-
+# For 1944-1948 Whitman gives the previous day; go with Shanks & Pottenger.
+Rule	Poland	1945	only	-	Apr	29	0:00	1:00	S
+Rule	Poland	1945	only	-	Nov	 1	0:00	0	-
+# For 1946 on the source is Kazimierz Borkowski,
+# Torun Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U.,
+# <http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1>
+# Thanks to Przemyslaw Augustyniak (2005-05-28) for this reference.
+# He also gives these further references:
+# Mon Pol nr 13, poz 162 (1995) <http://www.abc.com.pl/serwis/mp/1995/0162.htm>
+# Druk nr 2180 (2003) <http://www.senat.gov.pl/k5/dok/sejm/053/2180.pdf>
+Rule	Poland	1946	only	-	Apr	14	0:00s	1:00	S
+Rule	Poland	1946	only	-	Oct	 7	2:00s	0	-
+Rule	Poland	1947	only	-	May	 4	2:00s	1:00	S
+Rule	Poland	1947	1949	-	Oct	Sun>=1	2:00s	0	-
+Rule	Poland	1948	only	-	Apr	18	2:00s	1:00	S
+Rule	Poland	1949	only	-	Apr	10	2:00s	1:00	S
+Rule	Poland	1957	only	-	Jun	 2	1:00s	1:00	S
+Rule	Poland	1957	1958	-	Sep	lastSun	1:00s	0	-
+Rule	Poland	1958	only	-	Mar	30	1:00s	1:00	S
+Rule	Poland	1959	only	-	May	31	1:00s	1:00	S
+Rule	Poland	1959	1961	-	Oct	Sun>=1	1:00s	0	-
+Rule	Poland	1960	only	-	Apr	 3	1:00s	1:00	S
+Rule	Poland	1961	1964	-	May	lastSun	1:00s	1:00	S
+Rule	Poland	1962	1964	-	Sep	lastSun	1:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Warsaw	1:24:00 -	LMT	1880
+			1:24:00	-	WMT	1915 Aug  5   # Warsaw Mean Time
+			1:00	C-Eur	CE%sT	1918 Sep 16 3:00
+			2:00	Poland	EE%sT	1922 Jun
+			1:00	Poland	CE%sT	1940 Jun 23 2:00
+			1:00	C-Eur	CE%sT	1944 Oct
+			1:00	Poland	CE%sT	1977
+			1:00	W-Eur	CE%sT	1988
+			1:00	EU	CE%sT
+
+# Portugal
+#
+# From Rui Pedro Salgueiro (1992-11-12):
+# Portugal has recently (September, 27) changed timezone
+# (from WET to MET or CET) to harmonize with EEC.
+#
+# Martin Bruckmann (1996-02-29) reports via Peter Ilieve
+# that Portugal is reverting to 0:00 by not moving its clocks this spring.
+# The new Prime Minister was fed up with getting up in the dark in the winter.
+#
+# From Paul Eggert (1996-11-12):
+# IATA SSIM (1991-09) reports several 1991-09 and 1992-09 transitions
+# at 02:00u, not 01:00u.  Assume that these are typos.
+# IATA SSIM (1991/1992) reports that the Azores were at -1:00.
+# IATA SSIM (1993-02) says +0:00; later issues (through 1996-09) say -1:00.
+# Guess that the Azores changed to EU rules in 1992 (since that's when Portugal
+# harmonized with the EU), and that they stayed +0:00 that winter.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# DSH writes that despite Decree 1,469 (1915), the change to the clocks was not
+# done every year, depending on what Spain did, because of railroad schedules.
+# Go with Shanks & Pottenger.
+Rule	Port	1916	only	-	Jun	17	23:00	1:00	S
+# Whitman gives 1916 Oct 31; go with Shanks & Pottenger.
+Rule	Port	1916	only	-	Nov	 1	 1:00	0	-
+Rule	Port	1917	only	-	Feb	28	23:00s	1:00	S
+Rule	Port	1917	1921	-	Oct	14	23:00s	0	-
+Rule	Port	1918	only	-	Mar	 1	23:00s	1:00	S
+Rule	Port	1919	only	-	Feb	28	23:00s	1:00	S
+Rule	Port	1920	only	-	Feb	29	23:00s	1:00	S
+Rule	Port	1921	only	-	Feb	28	23:00s	1:00	S
+Rule	Port	1924	only	-	Apr	16	23:00s	1:00	S
+Rule	Port	1924	only	-	Oct	14	23:00s	0	-
+Rule	Port	1926	only	-	Apr	17	23:00s	1:00	S
+Rule	Port	1926	1929	-	Oct	Sat>=1	23:00s	0	-
+Rule	Port	1927	only	-	Apr	 9	23:00s	1:00	S
+Rule	Port	1928	only	-	Apr	14	23:00s	1:00	S
+Rule	Port	1929	only	-	Apr	20	23:00s	1:00	S
+Rule	Port	1931	only	-	Apr	18	23:00s	1:00	S
+# Whitman gives 1931 Oct 8; go with Shanks & Pottenger.
+Rule	Port	1931	1932	-	Oct	Sat>=1	23:00s	0	-
+Rule	Port	1932	only	-	Apr	 2	23:00s	1:00	S
+Rule	Port	1934	only	-	Apr	 7	23:00s	1:00	S
+# Whitman gives 1934 Oct 5; go with Shanks & Pottenger.
+Rule	Port	1934	1938	-	Oct	Sat>=1	23:00s	0	-
+# Shanks & Pottenger give 1935 Apr 30; go with Whitman.
+Rule	Port	1935	only	-	Mar	30	23:00s	1:00	S
+Rule	Port	1936	only	-	Apr	18	23:00s	1:00	S
+# Whitman gives 1937 Apr 2; go with Shanks & Pottenger.
+Rule	Port	1937	only	-	Apr	 3	23:00s	1:00	S
+Rule	Port	1938	only	-	Mar	26	23:00s	1:00	S
+Rule	Port	1939	only	-	Apr	15	23:00s	1:00	S
+# Whitman gives 1939 Oct 7; go with Shanks & Pottenger.
+Rule	Port	1939	only	-	Nov	18	23:00s	0	-
+Rule	Port	1940	only	-	Feb	24	23:00s	1:00	S
+# Shanks & Pottenger give 1940 Oct 7; go with Whitman.
+Rule	Port	1940	1941	-	Oct	 5	23:00s	0	-
+Rule	Port	1941	only	-	Apr	 5	23:00s	1:00	S
+Rule	Port	1942	1945	-	Mar	Sat>=8	23:00s	1:00	S
+Rule	Port	1942	only	-	Apr	25	22:00s	2:00	M # Midsummer
+Rule	Port	1942	only	-	Aug	15	22:00s	1:00	S
+Rule	Port	1942	1945	-	Oct	Sat>=24	23:00s	0	-
+Rule	Port	1943	only	-	Apr	17	22:00s	2:00	M
+Rule	Port	1943	1945	-	Aug	Sat>=25	22:00s	1:00	S
+Rule	Port	1944	1945	-	Apr	Sat>=21	22:00s	2:00	M
+Rule	Port	1946	only	-	Apr	Sat>=1	23:00s	1:00	S
+Rule	Port	1946	only	-	Oct	Sat>=1	23:00s	0	-
+Rule	Port	1947	1949	-	Apr	Sun>=1	 2:00s	1:00	S
+Rule	Port	1947	1949	-	Oct	Sun>=1	 2:00s	0	-
+# Shanks & Pottenger say DST was observed in 1950; go with Whitman.
+# Whitman gives Oct lastSun for 1952 on; go with Shanks & Pottenger.
+Rule	Port	1951	1965	-	Apr	Sun>=1	 2:00s	1:00	S
+Rule	Port	1951	1965	-	Oct	Sun>=1	 2:00s	0	-
+Rule	Port	1977	only	-	Mar	27	 0:00s	1:00	S
+Rule	Port	1977	only	-	Sep	25	 0:00s	0	-
+Rule	Port	1978	1979	-	Apr	Sun>=1	 0:00s	1:00	S
+Rule	Port	1978	only	-	Oct	 1	 0:00s	0	-
+Rule	Port	1979	1982	-	Sep	lastSun	 1:00s	0	-
+Rule	Port	1980	only	-	Mar	lastSun	 0:00s	1:00	S
+Rule	Port	1981	1982	-	Mar	lastSun	 1:00s	1:00	S
+Rule	Port	1983	only	-	Mar	lastSun	 2:00s	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24;
+# Willett says 1912-01-01.  Go with Willett.
+Zone	Europe/Lisbon	-0:36:32 -	LMT	1884
+			-0:36:32 -	LMT	1912 Jan  1  # Lisbon Mean Time
+			 0:00	Port	WE%sT	1966 Apr  3 2:00
+			 1:00	-	CET	1976 Sep 26 1:00
+			 0:00	Port	WE%sT	1983 Sep 25 1:00s
+			 0:00	W-Eur	WE%sT	1992 Sep 27 1:00s
+			 1:00	EU	CE%sT	1996 Mar 31 1:00u
+			 0:00	EU	WE%sT
+Zone Atlantic/Azores	-1:42:40 -	LMT	1884		# Ponta Delgada
+			-1:54:32 -	HMT	1911 May 24  # Horta Mean Time
+			-2:00	Port	AZO%sT	1966 Apr  3 2:00 # Azores Time
+			-1:00	Port	AZO%sT	1983 Sep 25 1:00s
+			-1:00	W-Eur	AZO%sT	1992 Sep 27 1:00s
+			 0:00	EU	WE%sT	1993 Mar 28 1:00u
+			-1:00	EU	AZO%sT
+Zone Atlantic/Madeira	-1:07:36 -	LMT	1884		# Funchal
+			-1:07:36 -	FMT	1911 May 24  # Funchal Mean Time
+			-1:00	Port	MAD%sT	1966 Apr  3 2:00 # Madeira Time
+			 0:00	Port	WE%sT	1983 Sep 25 1:00s
+			 0:00	EU	WE%sT
+
+# Romania
+#
+# From Paul Eggert (1999-10-07):
+# <a href="http://www.nineoclock.ro/POL/1778pol.html">
+# Nine O'clock</a> (1998-10-23) reports that the switch occurred at
+# 04:00 local time in fall 1998.  For lack of better info,
+# assume that Romania and Moldova switched to EU rules in 1997,
+# the same year as Bulgaria.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Romania	1932	only	-	May	21	 0:00s	1:00	S
+Rule	Romania	1932	1939	-	Oct	Sun>=1	 0:00s	0	-
+Rule	Romania	1933	1939	-	Apr	Sun>=2	 0:00s	1:00	S
+Rule	Romania	1979	only	-	May	27	 0:00	1:00	S
+Rule	Romania	1979	only	-	Sep	lastSun	 0:00	0	-
+Rule	Romania	1980	only	-	Apr	 5	23:00	1:00	S
+Rule	Romania	1980	only	-	Sep	lastSun	 1:00	0	-
+Rule	Romania	1991	1993	-	Mar	lastSun	 0:00s	1:00	S
+Rule	Romania	1991	1993	-	Sep	lastSun	 0:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Europe/Bucharest	1:44:24 -	LMT	1891 Oct
+			1:44:24	-	BMT	1931 Jul 24	# Bucharest MT
+			2:00	Romania	EE%sT	1981 Mar 29 2:00s
+			2:00	C-Eur	EE%sT	1991
+			2:00	Romania	EE%sT	1994
+			2:00	E-Eur	EE%sT	1997
+			2:00	EU	EE%sT
+
+# Russia
+
+# From Paul Eggert (2006-03-22):
+# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
+# Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
+# are from Andrey A. Chernov.  The rest is from Shanks & Pottenger,
+# except we follow Chernov's report that 1992 DST transitions were Sat
+# 23:00, not Sun 02:00s.
+#
+# From Stanislaw A. Kuzikowski (1994-06-29):
+# But now it is some months since Novosibirsk is 3 hours ahead of Moscow!
+# I do not know why they have decided to make this change;
+# as far as I remember it was done exactly during winter->summer switching
+# so we (Novosibirsk) simply did not switch.
+#
+# From Andrey A. Chernov (1996-10-04):
+# `MSK' and `MSD' were born and used initially on Moscow computers with
+# UNIX-like OSes by several developer groups (e.g. Demos group, Kiae group)....
+# The next step was the UUCP network, the Relcom predecessor
+# (used mainly for mail), and MSK/MSD was actively used there.
+#
+# From Chris Carrier (1996-10-30):
+# According to a friend of mine who rode the Trans-Siberian Railroad from
+# Moscow to Irkutsk in 1995, public air and rail transport in Russia ...
+# still follows Moscow time, no matter where in Russia it is located.
+#
+# For Grozny, Chechnya, we have the following story from
+# John Daniszewski, "Scavengers in the Rubble", Los Angeles Times (2001-02-07):
+# News--often false--is spread by word of mouth.  A rumor that it was
+# time to move the clocks back put this whole city out of sync with
+# the rest of Russia for two weeks--even soldiers stationed here began
+# enforcing curfew at the wrong time.
+#
+# From Gwillim Law (2001-06-05):
+# There's considerable evidence that Sakhalin Island used to be in
+# UTC+11, and has changed to UTC+10, in this decade.  I start with the
+# SSIM, which listed Yuzhno-Sakhalinsk in zone RU10 along with Magadan
+# until February 1997, and then in RU9 with Khabarovsk and Vladivostok
+# since September 1997....  Although the Kuril Islands are
+# administratively part of Sakhalin oblast', they appear to have
+# remained on UTC+11 along with Magadan.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+#
+# Kaliningradskaya oblast'.
+Zone Europe/Kaliningrad	 1:22:00 -	LMT	1893 Apr
+			 1:00	C-Eur	CE%sT	1945
+			 2:00	Poland	CE%sT	1946
+			 3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
+			 2:00	Russia	EE%sT
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Respublika Adygeya, Arkhangel'skaya oblast',
+# Belgorodskaya oblast', Bryanskaya oblast', Vladimirskaya oblast',
+# Vologodskaya oblast', Voronezhskaya oblast',
+# Respublika Dagestan, Ivanovskaya oblast', Respublika Ingushetiya,
+# Kabarbino-Balkarskaya Respublika, Respublika Kalmykiya,
+# Kalyzhskaya oblast', Respublika Karachaevo-Cherkessiya,
+# Respublika Kareliya, Respublika Komi,
+# Kostromskaya oblast', Krasnodarskij kraj, Kurskaya oblast',
+# Leningradskaya oblast', Lipetskaya oblast', Respublika Marij El,
+# Respublika Mordoviya, Moskva, Moskovskaya oblast',
+# Murmanskaya oblast', Nenetskij avtonomnyj okrug,
+# Nizhegorodskaya oblast', Novgorodskaya oblast', Orlovskaya oblast',
+# Penzenskaya oblast', Pskovskaya oblast', Rostovskaya oblast',
+# Ryazanskaya oblast', Sankt-Peterburg,
+# Respublika Severnaya Osetiya, Smolenskaya oblast',
+# Stavropol'skij kraj, Tambovskaya oblast', Respublika Tatarstan,
+# Tverskaya oblast', Tyl'skaya oblast', Ul'yanovskaya oblast',
+# Chechenskaya Respublika, Chuvashskaya oblast',
+# Yaroslavskaya oblast'
+Zone Europe/Moscow	 2:30:20 -	LMT	1880
+			 2:30	-	MMT	1916 Jul  3 # Moscow Mean Time
+			 2:30:48 Russia	%s	1919 Jul  1 2:00
+			 3:00	Russia	MSK/MSD	1922 Oct
+			 2:00	-	EET	1930 Jun 21
+			 3:00	Russia	MSK/MSD	1991 Mar 31 2:00s
+			 2:00	Russia	EE%sT	1992 Jan 19 2:00s
+			 3:00	Russia	MSK/MSD
+#
+# Astrakhanskaya oblast', Kirovskaya oblast', Saratovskaya oblast',
+# Volgogradskaya oblast'.  Shanks & Pottenger say Kirov is still at +0400
+# but Wikipedia (2006-05-09) says +0300.  Perhaps it switched after the
+# others?  But we have no data.
+Zone Europe/Volgograd	 2:57:40 -	LMT	1920 Jan  3
+			 3:00	-	TSAT	1925 Apr  6 # Tsaritsyn Time
+			 3:00	-	STAT	1930 Jun 21 # Stalingrad Time
+			 4:00	-	STAT	1961 Nov 11
+			 4:00	Russia	VOL%sT	1989 Mar 26 2:00s # Volgograd T
+			 3:00	Russia	VOL%sT	1991 Mar 31 2:00s
+			 4:00	-	VOLT	1992 Mar 29 2:00s
+			 3:00	Russia	VOL%sT
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Samarskaya oblast', Udmyrtskaya respublika
+Zone Europe/Samara	 3:20:36 -	LMT	1919 Jul  1 2:00
+			 3:00	-	SAMT	1930 Jun 21
+			 4:00	-	SAMT	1935 Jan 27
+			 4:00	Russia	KUY%sT	1989 Mar 26 2:00s # Kuybyshev
+			 3:00	Russia	KUY%sT	1991 Mar 31 2:00s
+			 2:00	Russia	KUY%sT	1991 Sep 29 2:00s
+			 3:00	-	KUYT	1991 Oct 20 3:00
+			 4:00	Russia	SAM%sT	# Samara Time
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Respublika Bashkortostan, Komi-Permyatskij avtonomnyj okrug,
+# Kurganskaya oblast', Orenburgskaya oblast', Permskaya oblast',
+# Sverdlovskaya oblast', Tyumenskaya oblast',
+# Khanty-Manskijskij avtonomnyj okrug, Chelyabinskaya oblast',
+# Yamalo-Nenetskij avtonomnyj okrug.
+Zone Asia/Yekaterinburg	 4:02:24 -	LMT	1919 Jul 15 4:00
+			 4:00	-	SVET	1930 Jun 21 # Sverdlovsk Time
+			 5:00	Russia	SVE%sT	1991 Mar 31 2:00s
+			 4:00	Russia	SVE%sT	1992 Jan 19 2:00s
+			 5:00	Russia	YEK%sT	# Yekaterinburg Time
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Respublika Altaj, Altajskij kraj, Omskaya oblast'.
+Zone Asia/Omsk		 4:53:36 -	LMT	1919 Nov 14
+			 5:00	-	OMST	1930 Jun 21 # Omsk TIme
+			 6:00	Russia	OMS%sT	1991 Mar 31 2:00s
+			 5:00	Russia	OMS%sT	1992 Jan 19 2:00s
+			 6:00	Russia	OMS%sT
+#
+# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
+# not clear when it switched from +7 to +6.
+# Novosibirskaya oblast', Tomskaya oblast'.
+Zone Asia/Novosibirsk	 5:31:40 -	LMT	1919 Dec 14 6:00
+			 6:00	-	NOVT	1930 Jun 21 # Novosibirsk Time
+			 7:00	Russia	NOV%sT	1991 Mar 31 2:00s
+			 6:00	Russia	NOV%sT	1992 Jan 19 2:00s
+			 7:00	Russia	NOV%sT	1993 May 23 # say Shanks & P.
+			 6:00	Russia	NOV%sT
+
+# From Alexander Krivenyshev (2009-10-13):
+# Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on
+# March 28, 2010:
+# from current Russia Zone 6 - Krasnoyarsk Time Zone (KRA) UTC +0700
+# to Russia Zone 5 - Novosibirsk Time Zone (NOV) UTC +0600
+#
+# This is according to Government of Russia decree # 740, on September
+# 14, 2009 "Application in the territory of the Kemerovo region the Fifth
+# time zone." ("Russia Zone 5" or old "USSR Zone 5" is GMT +0600)
+#
+# Russian Government web site (Russian language)
+# <a href="http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archiv">
+# http://www.government.ru/content/governmentactivity/rfgovernmentdecisions/archive/2009/09/14/991633.htm
+# </a>
+# or Russian-English translation by WorldTimeZone.com with reference
+# map to local region and new Russia Time Zone map after March 28, 2010
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_russia03.html">
+# http://www.worldtimezone.com/dst_news/dst_news_russia03.html
+# </a>
+#
+# Thus, when Russia will switch to DST on the night of March 28, 2010
+# Kemerovo region (Kemerovo oblast') will not change the clock.
+#
+# As a result, Kemerovo oblast' will be in the same time zone as
+# Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic.
+
+Zone Asia/Novokuznetsk	 5:48:48 -	NMT	1920 Jan  6
+			 6:00	-	KRAT	1930 Jun 21 # Krasnoyarsk Time
+			 7:00	Russia	KRA%sT	1991 Mar 31 2:00s
+			 6:00	Russia	KRA%sT	1992 Jan 19 2:00s
+			 7:00	Russia	KRA%sT	2010 Mar 28 2:00s
+			 6:00	Russia	NOV%sT # Novosibirsk/Novokuznetsk Time
+
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Krasnoyarskij kraj,
+# Tajmyrskij (Dolgano-Nenetskij) avtonomnyj okrug,
+# Respublika Tuva, Respublika Khakasiya, Evenkijskij avtonomnyj okrug.
+Zone Asia/Krasnoyarsk	 6:11:20 -	LMT	1920 Jan  6
+			 6:00	-	KRAT	1930 Jun 21 # Krasnoyarsk Time
+			 7:00	Russia	KRA%sT	1991 Mar 31 2:00s
+			 6:00	Russia	KRA%sT	1992 Jan 19 2:00s
+			 7:00	Russia	KRA%sT
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Respublika Buryatiya, Irkutskaya oblast',
+# Ust'-Ordynskij Buryatskij avtonomnyj okrug.
+Zone Asia/Irkutsk	 6:57:20 -	LMT	1880
+			 6:57:20 -	IMT	1920 Jan 25 # Irkutsk Mean Time
+			 7:00	-	IRKT	1930 Jun 21 # Irkutsk Time
+			 8:00	Russia	IRK%sT	1991 Mar 31 2:00s
+			 7:00	Russia	IRK%sT	1992 Jan 19 2:00s
+			 8:00	Russia	IRK%sT
+#
+# From Oscar van Vlijmen (2003-10-18): [This region consists of]
+# Aginskij Buryatskij avtonomnyj okrug, Amurskaya oblast',
+# [parts of] Respublika Sakha (Yakutiya), Chitinskaya oblast'.
+# The Sakha districts are: Aldanskij, Amginskij, Anabarskij,
+# Bulunskij, Verkhnekolymskij, Verkhnevilyujskij, Vilyujskij, Gornyj,
+# Zhiganskij, Kobyajskij, Lenskij, Megino-Kangalasskij, Mirninskij,
+# Namskij, Nyurbinskij, Olenekskij, Olekminskij, Srednekolymskij,
+# Suntarskij, Tattinskij, Ust'-Aldanskij, Khangalasskij,
+# Churapchinskij, Eveno-Bytantajskij.
+Zone Asia/Yakutsk	 8:38:40 -	LMT	1919 Dec 15
+			 8:00	-	YAKT	1930 Jun 21 # Yakutsk Time
+			 9:00	Russia	YAK%sT	1991 Mar 31 2:00s
+			 8:00	Russia	YAK%sT	1992 Jan 19 2:00s
+			 9:00	Russia	YAK%sT
+#
+# From Oscar van Vlijmen (2003-10-18): [This region consists of]
+# Evrejskaya avtonomnaya oblast', Khabarovskij kraj, Primorskij kraj,
+# [parts of] Respublika Sakha (Yakutiya).
+# The Sakha districts are: Verkhoyanskij, Tomponskij, Ust'-Majskij,
+# Ust'-Yanskij.
+Zone Asia/Vladivostok	 8:47:44 -	LMT	1922 Nov 15
+			 9:00	-	VLAT	1930 Jun 21 # Vladivostok Time
+			10:00	Russia	VLA%sT	1991 Mar 31 2:00s
+			 9:00	Russia	VLA%sST	1992 Jan 19 2:00s
+			10:00	Russia	VLA%sT
+#
+# Sakhalinskaya oblast'.
+# The Zone name should be Yuzhno-Sakhalinsk, but that's too long.
+Zone Asia/Sakhalin	 9:30:48 -	LMT	1905 Aug 23
+			 9:00	-	CJT	1938
+			 9:00	-	JST	1945 Aug 25
+			11:00	Russia	SAK%sT	1991 Mar 31 2:00s # Sakhalin T.
+			10:00	Russia	SAK%sT	1992 Jan 19 2:00s
+			11:00	Russia	SAK%sT	1997 Mar lastSun 2:00s
+			10:00	Russia	SAK%sT
+#
+# From Oscar van Vlijmen (2003-10-18): [This region consists of]
+# Magadanskaya oblast', Respublika Sakha (Yakutiya).
+# Probably also: Kuril Islands.
+# The Sakha districts are: Abyjskij, Allaikhovskij, Momskij,
+# Nizhnekolymskij, Ojmyakonskij.
+Zone Asia/Magadan	10:03:12 -	LMT	1924 May  2
+			10:00	-	MAGT	1930 Jun 21 # Magadan Time
+			11:00	Russia	MAG%sT	1991 Mar 31 2:00s
+			10:00	Russia	MAG%sT	1992 Jan 19 2:00s
+			11:00	Russia	MAG%sT
+#
+# From Oscar van Vlijmen (2001-08-25): [This region consists of]
+# Kamchatskaya oblast', Koryakskij avtonomnyj okrug.
+#
+# The Zone name should be Asia/Petropavlovsk-Kamchatski, but that's too long.
+Zone Asia/Kamchatka	10:34:36 -	LMT	1922 Nov 10
+			11:00	-	PETT	1930 Jun 21 # P-K Time
+			12:00	Russia	PET%sT	1991 Mar 31 2:00s
+			11:00	Russia	PET%sT	1992 Jan 19 2:00s
+			12:00	Russia	PET%sT
+#
+# Chukotskij avtonomnyj okrug
+Zone Asia/Anadyr	11:49:56 -	LMT	1924 May  2
+			12:00	-	ANAT	1930 Jun 21 # Anadyr Time
+			13:00	Russia	ANA%sT	1982 Apr  1 0:00s
+			12:00	Russia	ANA%sT	1991 Mar 31 2:00s
+			11:00	Russia	ANA%sT	1992 Jan 19 2:00s
+			12:00	Russia	ANA%sT
+
+# Serbia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Belgrade	1:22:00	-	LMT	1884
+			1:00	-	CET	1941 Apr 18 23:00
+			1:00	C-Eur	CE%sT	1945
+			1:00	-	CET	1945 May 8 2:00s
+			1:00	1:00	CEST	1945 Sep 16  2:00s
+# Metod Kozelj reports that the legal date of
+# transition to EU rules was 1982-11-27, for all of Yugoslavia at the time.
+# Shanks & Pottenger don't give as much detail, so go with Kozelj.
+			1:00	-	CET	1982 Nov 27
+			1:00	EU	CE%sT
+Link Europe/Belgrade Europe/Ljubljana	# Slovenia
+Link Europe/Belgrade Europe/Podgorica	# Montenegro
+Link Europe/Belgrade Europe/Sarajevo	# Bosnia and Herzegovina
+Link Europe/Belgrade Europe/Skopje	# Macedonia
+Link Europe/Belgrade Europe/Zagreb	# Croatia
+
+# Slovakia
+Link Europe/Prague Europe/Bratislava
+
+# Slovenia
+# see Serbia
+
+# Spain
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
+# go with Shanks & Pottenger.
+Rule	Spain	1917	only	-	May	 5	23:00s	1:00	S
+Rule	Spain	1917	1919	-	Oct	 6	23:00s	0	-
+Rule	Spain	1918	only	-	Apr	15	23:00s	1:00	S
+Rule	Spain	1919	only	-	Apr	 5	23:00s	1:00	S
+# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
+Rule	Spain	1924	only	-	Apr	16	23:00s	1:00	S
+# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
+Rule	Spain	1924	only	-	Oct	 4	23:00s	0	-
+Rule	Spain	1926	only	-	Apr	17	23:00s	1:00	S
+# Whitman says no DST in 1929; go with Shanks & Pottenger.
+Rule	Spain	1926	1929	-	Oct	Sat>=1	23:00s	0	-
+Rule	Spain	1927	only	-	Apr	 9	23:00s	1:00	S
+Rule	Spain	1928	only	-	Apr	14	23:00s	1:00	S
+Rule	Spain	1929	only	-	Apr	20	23:00s	1:00	S
+# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
+# go with Shanks & Pottenger.
+Rule	Spain	1937	only	-	May	22	23:00s	1:00	S
+Rule	Spain	1937	1939	-	Oct	Sat>=1	23:00s	0	-
+Rule	Spain	1938	only	-	Mar	22	23:00s	1:00	S
+Rule	Spain	1939	only	-	Apr	15	23:00s	1:00	S
+Rule	Spain	1940	only	-	Mar	16	23:00s	1:00	S
+# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
+Rule	Spain	1942	only	-	May	 2	22:00s	2:00	M # Midsummer
+Rule	Spain	1942	only	-	Sep	 1	22:00s	1:00	S
+Rule	Spain	1943	1946	-	Apr	Sat>=13	22:00s	2:00	M
+Rule	Spain	1943	only	-	Oct	 3	22:00s	1:00	S
+Rule	Spain	1944	only	-	Oct	10	22:00s	1:00	S
+Rule	Spain	1945	only	-	Sep	30	 1:00	1:00	S
+Rule	Spain	1946	only	-	Sep	30	 0:00	0	-
+Rule	Spain	1949	only	-	Apr	30	23:00	1:00	S
+Rule	Spain	1949	only	-	Sep	30	 1:00	0	-
+Rule	Spain	1974	1975	-	Apr	Sat>=13	23:00	1:00	S
+Rule	Spain	1974	1975	-	Oct	Sun>=1	 1:00	0	-
+Rule	Spain	1976	only	-	Mar	27	23:00	1:00	S
+Rule	Spain	1976	1977	-	Sep	lastSun	 1:00	0	-
+Rule	Spain	1977	1978	-	Apr	 2	23:00	1:00	S
+Rule	Spain	1978	only	-	Oct	 1	 1:00	0	-
+# The following rules are copied from Morocco from 1967 through 1978.
+Rule SpainAfrica 1967	only	-	Jun	 3	12:00	1:00	S
+Rule SpainAfrica 1967	only	-	Oct	 1	 0:00	0	-
+Rule SpainAfrica 1974	only	-	Jun	24	 0:00	1:00	S
+Rule SpainAfrica 1974	only	-	Sep	 1	 0:00	0	-
+Rule SpainAfrica 1976	1977	-	May	 1	 0:00	1:00	S
+Rule SpainAfrica 1976	only	-	Aug	 1	 0:00	0	-
+Rule SpainAfrica 1977	only	-	Sep	28	 0:00	0	-
+Rule SpainAfrica 1978	only	-	Jun	 1	 0:00	1:00	S
+Rule SpainAfrica 1978	only	-	Aug	 4	 0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Madrid	-0:14:44 -	LMT	1901 Jan  1  0:00s
+			 0:00	Spain	WE%sT	1946 Sep 30
+			 1:00	Spain	CE%sT	1979
+			 1:00	EU	CE%sT
+Zone	Africa/Ceuta	-0:21:16 -	LMT	1901
+			 0:00	-	WET	1918 May  6 23:00
+			 0:00	1:00	WEST	1918 Oct  7 23:00
+			 0:00	-	WET	1924
+			 0:00	Spain	WE%sT	1929
+			 0:00 SpainAfrica WE%sT 1984 Mar 16
+			 1:00	-	CET	1986
+			 1:00	EU	CE%sT
+Zone	Atlantic/Canary	-1:01:36 -	LMT	1922 Mar # Las Palmas de Gran C.
+			-1:00	-	CANT	1946 Sep 30 1:00 # Canaries Time
+			 0:00	-	WET	1980 Apr  6 0:00s
+			 0:00	1:00	WEST	1980 Sep 28 0:00s
+			 0:00	EU	WE%sT
+# IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u.
+# Ignore this for now, as the Canaries are part of the EU.
+
+# Sweden
+
+# From Ivan Nilsson (2001-04-13), superseding Shanks & Pottenger:
+#
+# The law "Svensk forfattningssamling 1878, no 14" about standard time in 1879:
+# From the beginning of 1879 (that is 01-01 00:00) the time for all
+# places in the country is "the mean solar time for the meridian at
+# three degrees, or twelve minutes of time, to the west of the
+# meridian of the Observatory of Stockholm".  The law is dated 1878-05-31.
+#
+# The observatory at that time had the meridian 18 degrees 03' 30"
+# eastern longitude = 01:12:14 in time.  Less 12 minutes gives the
+# national standard time as 01:00:14 ahead of GMT....
+#
+# About the beginning of CET in Sweden. The lawtext ("Svensk
+# forfattningssamling 1899, no 44") states, that "from the beginning
+# of 1900... ... the same as the mean solar time for the meridian at
+# the distance of one hour of time from the meridian of the English
+# observatory at Greenwich, or at 12 minutes 14 seconds to the west
+# from the meridian of the Observatory of Stockholm". The law is dated
+# 1899-06-16.  In short: At 1900-01-01 00:00:00 the new standard time
+# in Sweden is 01:00:00 ahead of GMT.
+#
+# 1916: The lawtext ("Svensk forfattningssamling 1916, no 124") states
+# that "1916-05-15 is considered to begin one hour earlier". It is
+# pretty obvious that at 05-14 23:00 the clocks are set to 05-15 00:00....
+# Further the law says, that "1916-09-30 is considered to end one hour later".
+#
+# The laws regulating [DST] are available on the site of the Swedish
+# Parliament beginning with 1985 - the laws regulating 1980/1984 are
+# not available on the site (to my knowledge they are only available
+# in Swedish): <http://www.riksdagen.se/english/work/sfst.asp> (type
+# "sommartid" without the quotes in the field "Fritext" and then click
+# the Sok-button).
+#
+# (2001-05-13):
+#
+# I have now found a newspaper stating that at 1916-10-01 01:00
+# summertime the church-clocks etc were set back one hour to show
+# 1916-10-01 00:00 standard time.  The article also reports that some
+# people thought the switch to standard time would take place already
+# at 1916-10-01 00:00 summer time, but they had to wait for another
+# hour before the event took place.
+#
+# Source: The newspaper "Dagens Nyheter", 1916-10-01, page 7 upper left.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Europe/Stockholm	1:12:12 -	LMT	1879 Jan  1
+			1:00:14	-	SET	1900 Jan  1	# Swedish Time
+			1:00	-	CET	1916 May 14 23:00
+			1:00	1:00	CEST	1916 Oct  1 01:00
+			1:00	-	CET	1980
+			1:00	EU	CE%sT
+
+# Switzerland
+# From Howse:
+# By the end of the 18th century clocks and watches became commonplace
+# and their performance improved enormously.  Communities began to keep
+# mean time in preference to apparent time -- Geneva from 1780 ....
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# From Whitman (who writes ``Midnight?''):
+# Rule	Swiss	1940	only	-	Nov	 2	0:00	1:00	S
+# Rule	Swiss	1940	only	-	Dec	31	0:00	0	-
+# From Shanks & Pottenger:
+# Rule	Swiss	1941	1942	-	May	Sun>=1	2:00	1:00	S
+# Rule	Swiss	1941	1942	-	Oct	Sun>=1	0:00	0	-
+
+# From Alois Treindl (2008-12-17):
+# I have researched the DST usage in Switzerland during the 1940ies.
+#
+# As I wrote in an earlier message, I suspected the current tzdata values
+# to be wrong. This is now verified.
+#
+# I have found copies of the original ruling by the Swiss Federal
+# government, in 'Eidgen[o]ssische Gesetzessammlung 1941 and 1942' (Swiss
+# federal law collection)...
+#
+# DST began on Monday 5 May 1941, 1:00 am by shifting the clocks to 2:00 am
+# DST ended on Monday 6 Oct 1941, 2:00 am by shifting the clocks to 1:00 am.
+#
+# DST began on Monday, 4 May 1942 at 01:00 am
+# DST ended on Monday, 5 Oct 1942 at 02:00 am
+#
+# There was no DST in 1940, I have checked the law collection carefully.
+# It is also indicated by the fact that the 1942 entry in the law
+# collection points back to 1941 as a reference, but no reference to any
+# other years are made.
+#
+# Newspaper articles I have read in the archives on 6 May 1941 reported
+# about the introduction of DST (Sommerzeit in German) during the previous
+# night as an absolute novelty, because this was the first time that such
+# a thing had happened in Switzerland.
+#
+# I have also checked 1916, because one book source (Gabriel, Traite de
+# l'heure dans le monde) claims that Switzerland had DST in 1916. This is
+# false, no official document could be found. Probably Gabriel got misled
+# by references to Germany, which introduced DST in 1916 for the first time.
+#
+# The tzdata rules for Switzerland must be changed to:
+# Rule  Swiss   1941    1942    -       May     Mon>=1  1:00    1:00    S
+# Rule  Swiss   1941    1942    -       Oct     Mon>=1  2:00    0       -
+#
+# The 1940 rules must be deleted.
+#
+# One further detail for Switzerland, which is probably out of scope for
+# most users of tzdata:
+# The zone file
+# Zone    Europe/Zurich   0:34:08 -       LMT     1848 Sep 12
+#                          0:29:44 -       BMT     1894 Jun #Bern Mean Time
+#                          1:00    Swiss   CE%sT   1981
+#                          1:00    EU      CE%sT
+# describes all of Switzerland correctly, with the exception of
+# the Cantone Geneve (Geneva, Genf). Between 1848 and 1894 Geneve did not
+# follow Bern Mean Time but kept its own local mean time.
+# To represent this, an extra zone would be needed.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Swiss	1941	1942	-	May	Mon>=1	1:00	1:00	S
+Rule	Swiss	1941	1942	-	Oct	Mon>=1	2:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Zurich	0:34:08 -	LMT	1848 Sep 12
+			0:29:44	-	BMT	1894 Jun # Bern Mean Time
+			1:00	Swiss	CE%sT	1981
+			1:00	EU	CE%sT
+
+# Turkey
+
+# From Amar Devegowda (2007-01-03):
+# The time zone rules for Istanbul, Turkey have not been changed for years now.
+# ... The latest rules are available at -
+# http://www.timeanddate.com/worldclock/timezone.html?n=107
+# From Steffen Thorsen (2007-01-03):
+# I have been able to find press records back to 1996 which all say that
+# DST started 01:00 local time and end at 02:00 local time.  I am not sure
+# what happened before that.  One example for each year from 1996 to 2001:
+# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
+# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
+# From Paul Eggert (2007-01-03):
+# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
+
+# From Steffen Thorsen (2007-03-09):
+# Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
+# start/end time, according to the following page (2007-03-07):
+# http://www.ntvmsnbc.com/news/402029.asp
+# The official document is located here - it is in Turkish...:
+# http://rega.basbakanlik.gov.tr/eskiler/2007/03/20070307-7.htm
+# I was able to locate the following seemingly official document
+# (on a non-government server though) describing dates between 2002 and 2006:
+# http://www.alomaliye.com/bkk_2002_3769.htm
+
+# From Sue Williams (2008-08-11):
+# I spotted this news article about a potential change in Turkey.
+#
+# <a href="http://www.hurriyet.com.tr/english/domestic/9626174.asp?scr=1">
+# http://www.hurriyet.com.tr/english/domestic/9626174.asp?scr=1
+# </a>
+
+# From Sue Williams (2008-08-20):
+# This article says that around the end of March 2011, Turkey wants to
+# adjust the clocks forward by 1/2 hour and stay that way permanently.
+# The article indicates that this is a change in timezone offset in addition
+# to stopping observance of DST.
+# This proposal has not yet been approved.
+#
+# Read more here...
+#
+# Turkey to abandon daylight saving time in 2011
+# <a href="http://www.turkishdailynews.com.tr/article.php?enewsid=112989">
+# http://www.turkishdailynews.com.tr/article.php?enewsid=112989
+# </a>
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Turkey	1916	only	-	May	 1	0:00	1:00	S
+Rule	Turkey	1916	only	-	Oct	 1	0:00	0	-
+Rule	Turkey	1920	only	-	Mar	28	0:00	1:00	S
+Rule	Turkey	1920	only	-	Oct	25	0:00	0	-
+Rule	Turkey	1921	only	-	Apr	 3	0:00	1:00	S
+Rule	Turkey	1921	only	-	Oct	 3	0:00	0	-
+Rule	Turkey	1922	only	-	Mar	26	0:00	1:00	S
+Rule	Turkey	1922	only	-	Oct	 8	0:00	0	-
+# Whitman gives 1923 Apr 28 - Sep 16 and no DST in 1924-1925;
+# go with Shanks & Pottenger.
+Rule	Turkey	1924	only	-	May	13	0:00	1:00	S
+Rule	Turkey	1924	1925	-	Oct	 1	0:00	0	-
+Rule	Turkey	1925	only	-	May	 1	0:00	1:00	S
+Rule	Turkey	1940	only	-	Jun	30	0:00	1:00	S
+Rule	Turkey	1940	only	-	Oct	 5	0:00	0	-
+Rule	Turkey	1940	only	-	Dec	 1	0:00	1:00	S
+Rule	Turkey	1941	only	-	Sep	21	0:00	0	-
+Rule	Turkey	1942	only	-	Apr	 1	0:00	1:00	S
+# Whitman omits the next two transition and gives 1945 Oct 1;
+# go with Shanks & Pottenger.
+Rule	Turkey	1942	only	-	Nov	 1	0:00	0	-
+Rule	Turkey	1945	only	-	Apr	 2	0:00	1:00	S
+Rule	Turkey	1945	only	-	Oct	 8	0:00	0	-
+Rule	Turkey	1946	only	-	Jun	 1	0:00	1:00	S
+Rule	Turkey	1946	only	-	Oct	 1	0:00	0	-
+Rule	Turkey	1947	1948	-	Apr	Sun>=16	0:00	1:00	S
+Rule	Turkey	1947	1950	-	Oct	Sun>=2	0:00	0	-
+Rule	Turkey	1949	only	-	Apr	10	0:00	1:00	S
+Rule	Turkey	1950	only	-	Apr	19	0:00	1:00	S
+Rule	Turkey	1951	only	-	Apr	22	0:00	1:00	S
+Rule	Turkey	1951	only	-	Oct	 8	0:00	0	-
+Rule	Turkey	1962	only	-	Jul	15	0:00	1:00	S
+Rule	Turkey	1962	only	-	Oct	 8	0:00	0	-
+Rule	Turkey	1964	only	-	May	15	0:00	1:00	S
+Rule	Turkey	1964	only	-	Oct	 1	0:00	0	-
+Rule	Turkey	1970	1972	-	May	Sun>=2	0:00	1:00	S
+Rule	Turkey	1970	1972	-	Oct	Sun>=2	0:00	0	-
+Rule	Turkey	1973	only	-	Jun	 3	1:00	1:00	S
+Rule	Turkey	1973	only	-	Nov	 4	3:00	0	-
+Rule	Turkey	1974	only	-	Mar	31	2:00	1:00	S
+Rule	Turkey	1974	only	-	Nov	 3	5:00	0	-
+Rule	Turkey	1975	only	-	Mar	30	0:00	1:00	S
+Rule	Turkey	1975	1976	-	Oct	lastSun	0:00	0	-
+Rule	Turkey	1976	only	-	Jun	 1	0:00	1:00	S
+Rule	Turkey	1977	1978	-	Apr	Sun>=1	0:00	1:00	S
+Rule	Turkey	1977	only	-	Oct	16	0:00	0	-
+Rule	Turkey	1979	1980	-	Apr	Sun>=1	3:00	1:00	S
+Rule	Turkey	1979	1982	-	Oct	Mon>=11	0:00	0	-
+Rule	Turkey	1981	1982	-	Mar	lastSun	3:00	1:00	S
+Rule	Turkey	1983	only	-	Jul	31	0:00	1:00	S
+Rule	Turkey	1983	only	-	Oct	 2	0:00	0	-
+Rule	Turkey	1985	only	-	Apr	20	0:00	1:00	S
+Rule	Turkey	1985	only	-	Sep	28	0:00	0	-
+Rule	Turkey	1986	1990	-	Mar	lastSun	2:00s	1:00	S
+Rule	Turkey	1986	1990	-	Sep	lastSun	2:00s	0	-
+Rule	Turkey	1991	2006	-	Mar	lastSun	1:00s	1:00	S
+Rule	Turkey	1991	1995	-	Sep	lastSun	1:00s	0	-
+Rule	Turkey	1996	2006	-	Oct	lastSun	1:00s	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	Europe/Istanbul	1:55:52 -	LMT	1880
+			1:56:56	-	IMT	1910 Oct # Istanbul Mean Time?
+			2:00	Turkey	EE%sT	1978 Oct 15
+			3:00	Turkey	TR%sT	1985 Apr 20 # Turkey Time
+			2:00	Turkey	EE%sT	2007
+			2:00	EU	EE%sT
+Link	Europe/Istanbul	Asia/Istanbul	# Istanbul is in both continents.
+
+# Ukraine
+#
+# From Igor Karpov, who works for the Ukranian Ministry of Justice,
+# via Garrett Wollman (2003-01-27):
+# BTW, I've found the official document on this matter. It's goverment
+# regulations number 509, May 13, 1996. In my poor translation it says:
+# "Time in Ukraine is set to second timezone (Kiev time). Each last Sunday
+# of March at 3am the time is changing to 4am and each last Sunday of
+# October the time at 4am is changing to 3am"
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+# Most of Ukraine since 1970 has been like Kiev.
+# "Kyiv" is the transliteration of the Ukrainian name, but
+# "Kiev" is more common in English.
+Zone Europe/Kiev	2:02:04 -	LMT	1880
+			2:02:04	-	KMT	1924 May  2 # Kiev Mean Time
+			2:00	-	EET	1930 Jun 21
+			3:00	-	MSK	1941 Sep 20
+			1:00	C-Eur	CE%sT	1943 Nov  6
+			3:00	Russia	MSK/MSD	1990
+			3:00	-	MSK	1990 Jul  1 2:00
+			2:00	-	EET	1992
+			2:00	E-Eur	EE%sT	1995
+			2:00	EU	EE%sT
+# Ruthenia used CET 1990/1991.
+# "Uzhhorod" is the transliteration of the Ukrainian name, but
+# "Uzhgorod" is more common in English.
+Zone Europe/Uzhgorod	1:29:12 -	LMT	1890 Oct
+			1:00	-	CET	1940
+			1:00	C-Eur	CE%sT	1944 Oct
+			1:00	1:00	CEST	1944 Oct 26
+			1:00	-	CET	1945 Jun 29
+			3:00	Russia	MSK/MSD	1990
+			3:00	-	MSK	1990 Jul  1 2:00
+			1:00	-	CET	1991 Mar 31 3:00
+			2:00	-	EET	1992
+			2:00	E-Eur	EE%sT	1995
+			2:00	EU	EE%sT
+# Zaporozh'ye and eastern Lugansk oblasts observed DST 1990/1991.
+# "Zaporizhia" is the transliteration of the Ukrainian name, but
+# "Zaporozh'ye" is more common in English.  Use the common English
+# spelling, except omit the apostrophe as it is not allowed in
+# portable Posix file names.
+Zone Europe/Zaporozhye	2:20:40 -	LMT	1880
+			2:20	-	CUT	1924 May  2 # Central Ukraine T
+			2:00	-	EET	1930 Jun 21
+			3:00	-	MSK	1941 Aug 25
+			1:00	C-Eur	CE%sT	1943 Oct 25
+			3:00	Russia	MSK/MSD	1991 Mar 31 2:00
+			2:00	E-Eur	EE%sT	1995
+			2:00	EU	EE%sT
+# Central Crimea used Moscow time 1994/1997.
+Zone Europe/Simferopol	2:16:24 -	LMT	1880
+			2:16	-	SMT	1924 May  2 # Simferopol Mean T
+			2:00	-	EET	1930 Jun 21
+			3:00	-	MSK	1941 Nov
+			1:00	C-Eur	CE%sT	1944 Apr 13
+			3:00	Russia	MSK/MSD	1990
+			3:00	-	MSK	1990 Jul  1 2:00
+			2:00	-	EET	1992
+# From Paul Eggert (2006-03-22):
+# The _Economist_ (1994-05-28, p 45) reports that central Crimea switched
+# from Kiev to Moscow time sometime after the January 1994 elections.
+# Shanks (1999) says ``date of change uncertain'', but implies that it happened
+# sometime between the 1994 DST switches.  Shanks & Pottenger simply say
+# 1994-09-25 03:00, but that can't be right.  For now, guess it
+# changed in May.
+			2:00	E-Eur	EE%sT	1994 May
+# From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
+			3:00	E-Eur	MSK/MSD	1996 Mar 31 3:00s
+			3:00	1:00	MSD	1996 Oct 27 3:00s
+# IATA SSIM (1997-09) says Crimea switched to EET/EEST.
+# Assume it happened in March by not changing the clocks.
+			3:00	Russia	MSK/MSD	1997
+			3:00	-	MSK	1997 Mar lastSun 1:00u
+			2:00	EU	EE%sT
+
+###############################################################################
+
+# One source shows that Bulgaria, Cyprus, Finland, and Greece observe DST from
+# the last Sunday in March to the last Sunday in September in 1986.
+# The source shows Romania changing a day later than everybody else.
+#
+# According to Bernard Sieloff's source, Poland is in the MET time zone but
+# uses the WE DST rules.  The Western USSR uses EET+1 and ME DST rules.
+# Bernard Sieloff's source claims Romania switches on the same day, but at
+# 00:00 standard time (i.e., 01:00 DST).  It also claims that Turkey
+# switches on the same day, but switches on at 01:00 standard time
+# and off at 00:00 standard time (i.e., 01:00 DST)
+
+# ...
+# Date: Wed, 28 Jan 87 16:56:27 -0100
+# From: Tom Hofmann
+# ...
+#
+# ...the European time rules are...standardized since 1981, when
+# most European coun[tr]ies started DST.  Before that year, only
+# a few countries (UK, France, Italy) had DST, each according
+# to own national rules.  In 1981, however, DST started on
+# 'Apr firstSun', and not on 'Mar lastSun' as in the following
+# years...
+# But also since 1981 there are some more national exceptions
+# than listed in 'europe': Switzerland, for example, joined DST
+# one year later, Denmark ended DST on 'Oct 1' instead of 'Sep
+# lastSun' in 1981---I don't know how they handle now.
+#
+# Finally, DST ist always from 'Apr 1' to 'Oct 1' in the
+# Soviet Union (as far as I know).
+#
+# Tom Hofmann, Scientific Computer Center, CIBA-GEIGY AG,
+# 4002 Basle, Switzerland
+# ...
+
+# ...
+# Date: Wed, 4 Feb 87 22:35:22 +0100
+# From: Dik T. Winter
+# ...
+#
+# The information from Tom Hofmann is (as far as I know) not entirely correct.
+# After a request from chongo at amdahl I tried to retrieve all information
+# about DST in Europe.  I was able to find all from about 1969.
+#
+# ...standardization on DST in Europe started in about 1977 with switches on
+# first Sunday in April and last Sunday in September...
+# In 1981 UK joined Europe insofar that
+# the starting day for both shifted to last Sunday in March.  And from 1982
+# the whole of Europe used DST, with switch dates April 1 and October 1 in
+# the Sov[i]et Union.  In 1985 the SU reverted to standard Europe[a]n switch
+# dates...
+#
+# It should also be remembered that time-zones are not constants; e.g.
+# Portugal switched in 1976 from MET (or CET) to WET with DST...
+# Note also that though there were rules for switch dates not
+# all countries abided to these dates, and many individual deviations
+# occurred, though not since 1982 I believe.  Another note: it is always
+# assumed that DST is 1 hour ahead of normal time, this need not be the
+# case; at least in the Netherlands there have been times when DST was 2 hours
+# in advance of normal time.
+#
+# ...
+# dik t. winter, cwi, amsterdam, nederland
+# ...
+
+# From Bob Devine (1988-01-28):
+# ...
+# Greece: Last Sunday in April to last Sunday in September (iffy on dates).
+# Since 1978.  Change at midnight.
+# ...
+# Monaco: has same DST as France.
+# ...
diff --git a/tools/zoneinfo/tzdata2009s/factory b/tools/zoneinfo/tzdata2009s/factory
new file mode 100644
index 0000000..624ccc0
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/factory
@@ -0,0 +1,11 @@
+# <pre>
+# @(#)factory	8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# For companies who don't want to put time zone specification in
+# their installation procedures.  When users run date, they'll get the message.
+# Also useful for the "comp.sources" version.
+
+# Zone	NAME	GMTOFF	RULES	FORMAT
+Zone	Factory	0	- "Local time zone must be set--see zic manual page"
diff --git a/tools/zoneinfo/tzdata2009s/iso3166.tab b/tools/zoneinfo/tzdata2009s/iso3166.tab
new file mode 100644
index 0000000..b8a2592
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/iso3166.tab
@@ -0,0 +1,271 @@
+# <pre>
+# @(#)iso3166.tab	8.6
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+# ISO 3166 alpha-2 country codes
+#
+# From Paul Eggert (2006-09-27):
+#
+# This file contains a table with the following columns:
+# 1.  ISO 3166-1 alpha-2 country code, current as of
+#     ISO 3166-1 Newsletter VI-1 (2007-09-21).  See:
+#     <a href="http://www.iso.org/iso/en/prods-services/iso3166ma/index.html">
+#     ISO 3166 Maintenance agency (ISO 3166/MA)
+#     </a>.
+# 2.  The usual English name for the country,
+#     chosen so that alphabetic sorting of subsets produces helpful lists.
+#     This is not the same as the English name in the ISO 3166 tables.
+#
+# Columns are separated by a single tab.
+# The table is sorted by country code.
+#
+# Lines beginning with `#' are comments.
+#
+#country-
+#code	country name
+AD	Andorra
+AE	United Arab Emirates
+AF	Afghanistan
+AG	Antigua & Barbuda
+AI	Anguilla
+AL	Albania
+AM	Armenia
+AN	Netherlands Antilles
+AO	Angola
+AQ	Antarctica
+AR	Argentina
+AS	Samoa (American)
+AT	Austria
+AU	Australia
+AW	Aruba
+AX	Aaland Islands
+AZ	Azerbaijan
+BA	Bosnia & Herzegovina
+BB	Barbados
+BD	Bangladesh
+BE	Belgium
+BF	Burkina Faso
+BG	Bulgaria
+BH	Bahrain
+BI	Burundi
+BJ	Benin
+BL	St Barthelemy
+BM	Bermuda
+BN	Brunei
+BO	Bolivia
+BR	Brazil
+BS	Bahamas
+BT	Bhutan
+BV	Bouvet Island
+BW	Botswana
+BY	Belarus
+BZ	Belize
+CA	Canada
+CC	Cocos (Keeling) Islands
+CD	Congo (Dem. Rep.)
+CF	Central African Rep.
+CG	Congo (Rep.)
+CH	Switzerland
+CI	Cote d'Ivoire
+CK	Cook Islands
+CL	Chile
+CM	Cameroon
+CN	China
+CO	Colombia
+CR	Costa Rica
+CU	Cuba
+CV	Cape Verde
+CX	Christmas Island
+CY	Cyprus
+CZ	Czech Republic
+DE	Germany
+DJ	Djibouti
+DK	Denmark
+DM	Dominica
+DO	Dominican Republic
+DZ	Algeria
+EC	Ecuador
+EE	Estonia
+EG	Egypt
+EH	Western Sahara
+ER	Eritrea
+ES	Spain
+ET	Ethiopia
+FI	Finland
+FJ	Fiji
+FK	Falkland Islands
+FM	Micronesia
+FO	Faroe Islands
+FR	France
+GA	Gabon
+GB	Britain (UK)
+GD	Grenada
+GE	Georgia
+GF	French Guiana
+GG	Guernsey
+GH	Ghana
+GI	Gibraltar
+GL	Greenland
+GM	Gambia
+GN	Guinea
+GP	Guadeloupe
+GQ	Equatorial Guinea
+GR	Greece
+GS	South Georgia & the South Sandwich Islands
+GT	Guatemala
+GU	Guam
+GW	Guinea-Bissau
+GY	Guyana
+HK	Hong Kong
+HM	Heard Island & McDonald Islands
+HN	Honduras
+HR	Croatia
+HT	Haiti
+HU	Hungary
+ID	Indonesia
+IE	Ireland
+IL	Israel
+IM	Isle of Man
+IN	India
+IO	British Indian Ocean Territory
+IQ	Iraq
+IR	Iran
+IS	Iceland
+IT	Italy
+JE	Jersey
+JM	Jamaica
+JO	Jordan
+JP	Japan
+KE	Kenya
+KG	Kyrgyzstan
+KH	Cambodia
+KI	Kiribati
+KM	Comoros
+KN	St Kitts & Nevis
+KP	Korea (North)
+KR	Korea (South)
+KW	Kuwait
+KY	Cayman Islands
+KZ	Kazakhstan
+LA	Laos
+LB	Lebanon
+LC	St Lucia
+LI	Liechtenstein
+LK	Sri Lanka
+LR	Liberia
+LS	Lesotho
+LT	Lithuania
+LU	Luxembourg
+LV	Latvia
+LY	Libya
+MA	Morocco
+MC	Monaco
+MD	Moldova
+ME	Montenegro
+MF	St Martin (French part)
+MG	Madagascar
+MH	Marshall Islands
+MK	Macedonia
+ML	Mali
+MM	Myanmar (Burma)
+MN	Mongolia
+MO	Macau
+MP	Northern Mariana Islands
+MQ	Martinique
+MR	Mauritania
+MS	Montserrat
+MT	Malta
+MU	Mauritius
+MV	Maldives
+MW	Malawi
+MX	Mexico
+MY	Malaysia
+MZ	Mozambique
+NA	Namibia
+NC	New Caledonia
+NE	Niger
+NF	Norfolk Island
+NG	Nigeria
+NI	Nicaragua
+NL	Netherlands
+NO	Norway
+NP	Nepal
+NR	Nauru
+NU	Niue
+NZ	New Zealand
+OM	Oman
+PA	Panama
+PE	Peru
+PF	French Polynesia
+PG	Papua New Guinea
+PH	Philippines
+PK	Pakistan
+PL	Poland
+PM	St Pierre & Miquelon
+PN	Pitcairn
+PR	Puerto Rico
+PS	Palestine
+PT	Portugal
+PW	Palau
+PY	Paraguay
+QA	Qatar
+RE	Reunion
+RO	Romania
+RS	Serbia
+RU	Russia
+RW	Rwanda
+SA	Saudi Arabia
+SB	Solomon Islands
+SC	Seychelles
+SD	Sudan
+SE	Sweden
+SG	Singapore
+SH	St Helena
+SI	Slovenia
+SJ	Svalbard & Jan Mayen
+SK	Slovakia
+SL	Sierra Leone
+SM	San Marino
+SN	Senegal
+SO	Somalia
+SR	Suriname
+ST	Sao Tome & Principe
+SV	El Salvador
+SY	Syria
+SZ	Swaziland
+TC	Turks & Caicos Is
+TD	Chad
+TF	French Southern & Antarctic Lands
+TG	Togo
+TH	Thailand
+TJ	Tajikistan
+TK	Tokelau
+TL	East Timor
+TM	Turkmenistan
+TN	Tunisia
+TO	Tonga
+TR	Turkey
+TT	Trinidad & Tobago
+TV	Tuvalu
+TW	Taiwan
+TZ	Tanzania
+UA	Ukraine
+UG	Uganda
+UM	US minor outlying islands
+US	United States
+UY	Uruguay
+UZ	Uzbekistan
+VA	Vatican City
+VC	St Vincent
+VE	Venezuela
+VG	Virgin Islands (UK)
+VI	Virgin Islands (US)
+VN	Vietnam
+VU	Vanuatu
+WF	Wallis & Futuna
+WS	Samoa (western)
+YE	Yemen
+YT	Mayotte
+ZA	South Africa
+ZM	Zambia
+ZW	Zimbabwe
diff --git a/tools/zoneinfo/tzdata2009s/leapseconds b/tools/zoneinfo/tzdata2009s/leapseconds
new file mode 100644
index 0000000..a3c95ef
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/leapseconds
@@ -0,0 +1,87 @@
+# <pre>
+# @(#)leapseconds	8.9
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# Allowance for leapseconds added to each timezone file.
+
+# The International Earth Rotation Service periodically uses leap seconds
+# to keep UTC to within 0.9 s of UT1
+# (which measures the true angular orientation of the earth in space); see
+# Terry J Quinn, The BIPM and the accurate measure of time,
+# Proc IEEE 79, 7 (July 1991), 894-905.
+# There were no leap seconds before 1972, because the official mechanism
+# accounting for the discrepancy between atomic time and the earth's rotation
+# did not exist until the early 1970s.
+
+# The correction (+ or -) is made at the given time, so lines
+# will typically look like:
+#	Leap	YEAR	MON	DAY	23:59:60	+	R/S
+# or
+#	Leap	YEAR	MON	DAY	23:59:59	-	R/S
+
+# If the leapsecond is Rolling (R) the given time is local time
+# If the leapsecond is Stationary (S) the given time is UTC
+
+# Leap	YEAR	MONTH	DAY	HH:MM:SS	CORR	R/S
+Leap	1972	Jun	30	23:59:60	+	S
+Leap	1972	Dec	31	23:59:60	+	S
+Leap	1973	Dec	31	23:59:60	+	S
+Leap	1974	Dec	31	23:59:60	+	S
+Leap	1975	Dec	31	23:59:60	+	S
+Leap	1976	Dec	31	23:59:60	+	S
+Leap	1977	Dec	31	23:59:60	+	S
+Leap	1978	Dec	31	23:59:60	+	S
+Leap	1979	Dec	31	23:59:60	+	S
+Leap	1981	Jun	30	23:59:60	+	S
+Leap	1982	Jun	30	23:59:60	+	S
+Leap	1983	Jun	30	23:59:60	+	S
+Leap	1985	Jun	30	23:59:60	+	S
+Leap	1987	Dec	31	23:59:60	+	S
+Leap	1989	Dec	31	23:59:60	+	S
+Leap	1990	Dec	31	23:59:60	+	S
+Leap	1992	Jun	30	23:59:60	+	S
+Leap	1993	Jun	30	23:59:60	+	S
+Leap	1994	Jun	30	23:59:60	+	S
+Leap	1995	Dec	31	23:59:60	+	S
+Leap	1997	Jun	30	23:59:60	+	S
+Leap	1998	Dec	31	23:59:60	+	S
+Leap	2005	Dec	31	23:59:60	+	S
+Leap	2008	Dec	31	23:59:60	+	S
+
+# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
+#
+# SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
+#
+# SERVICE DE LA ROTATION TERRESTRE
+# OBSERVATOIRE DE PARIS
+# 61, Av. de l'Observatoire 75014 PARIS (France)
+# Tel.      : 33 (0) 1 40 51 22 26
+# FAX       : 33 (0) 1 40 51 22 91
+# Internet  : services.iers@obspm.fr
+#
+# Paris, 4 July 2009
+#
+# Bulletin C 38
+#
+# To authorities responsible
+# for the measurement and
+# distribution of time
+#
+# INFORMATION ON UTC - TAI
+#
+# NO positive leap second will be introduced at the end of December 2009.
+# The difference between Coordinated Universal Time UTC and the
+# International Atomic Time TAI is :		
+#
+# from 2009 January 1, 0h UTC, until further notice : UTC-TAI = -34 s
+#
+# Leap seconds can be introduced in UTC at the end of the months of December
+# or June,  depending on the evolution of UT1-TAI. Bulletin C is mailed every
+# six months, either to announce a time step in UTC, or to confirm that there
+# will be no time step at the next possible date.
+#
+# Daniel GAMBIS
+# Director			
+# Earth Orientation Center of IERS
+# Observatoire de Paris, France
diff --git a/tools/zoneinfo/tzdata2009s/northamerica b/tools/zoneinfo/tzdata2009s/northamerica
new file mode 100644
index 0000000..236922d
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/northamerica
@@ -0,0 +1,2680 @@
+# <pre>
+# @(#)northamerica	8.28
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# also includes Central America and the Caribbean
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (1999-03-22):
+# A reliable and entertaining source about time zones is
+# Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+
+###############################################################################
+
+# United States
+
+# From Paul Eggert (1999-03-31):
+# Howse writes (pp 121-125) that time zones were invented by
+# Professor Charles Ferdinand Dowd (1825-1904),
+# Principal of Temple Grove Ladies' Seminary (Saratoga Springs, NY).
+# His pamphlet ``A System of National Time for Railroads'' (1870)
+# was the result of his proposals at the Convention of Railroad Trunk Lines
+# in New York City (1869-10).  His 1870 proposal was based on Washington, DC,
+# but in 1872-05 he moved the proposed origin to Greenwich.
+# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
+# and the most of the country soon followed suit.
+
+# From Paul Eggert (2005-04-16):
+# That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
+# See p 46 of David Prerau, Seize the daylight, Thunder's Mouth Press (2005).
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data in the US is
+# Thomas G. Shanks, The American Atlas (5th edition),
+# San Diego: ACS Publications, Inc. (1991).
+# Make sure you have the errata sheet; the book is somewhat useless without it.
+# It is the source for most of the pre-1991 US entries below.
+
+# From Paul Eggert (2001-03-06):
+# Daylight Saving Time was first suggested as a joke by Benjamin Franklin
+# in his whimsical essay ``An Economical Project for Diminishing the Cost
+# of Light'' published in the Journal de Paris (1784-04-26).
+# Not everyone is happy with the results:
+#
+#	I don't really care how time is reckoned so long as there is some
+#	agreement about it, but I object to being told that I am saving
+#	daylight when my reason tells me that I am doing nothing of the kind.
+#	I even object to the implication that I am wasting something
+#	valuable if I stay in bed after the sun has risen.  As an admirer
+#	of moonlight I resent the bossy insistence of those who want to
+#	reduce my time for enjoying it.  At the back of the Daylight Saving
+#	scheme I detect the bony, blue-fingered hand of Puritanism, eager
+#	to push people into bed earlier, and get them up earlier, to make
+#	them healthy, wealthy and wise in spite of themselves.
+#
+#	-- Robertson Davies, The diary of Samuel Marchbanks,
+#	   Clarke, Irwin (1947), XIX, Sunday
+#
+# For more about the first ten years of DST in the United States, see
+# Robert Garland's <a href="http://www.clpgh.org/exhibit/dst.html">
+# Ten years of daylight saving from the Pittsburgh standpoint
+# (Carnegie Library of Pittsburgh, 1927)</a>.
+#
+# Shanks says that DST was called "War Time" in the US in 1918 and 1919.
+# However, DST was imposed by the Standard Time Act of 1918, which
+# was the first nationwide legal time standard, and apparently
+# time was just called "Standard Time" or "Daylight Saving Time".
+
+# From Arthur David Olson:
+# US Daylight Saving Time ended on the last Sunday of *October* in 1974.
+# See, for example, the front page of the Saturday, 1974-10-26
+# and Sunday, 1974-10-27 editions of the Washington Post.
+
+# From Arthur David Olson:
+# Before the Uniform Time Act of 1966 took effect in 1967, observance of
+# Daylight Saving Time in the US was by local option, except during wartime.
+
+# From Arthur David Olson (2000-09-25):
+# Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama.
+# In the introduction, Oboler spoke of "Eastern Peace Time."
+# An AltaVista search turned up
+# <a href="http://rowayton.org/rhs/hstaug45.html">:
+# "When the time is announced over the radio now, it is 'Eastern Peace
+# Time' instead of the old familiar 'Eastern War Time.'  Peace is wonderful."
+# </a> (August 1945) by way of confirmation.
+
+# From Joseph Gallant citing
+# George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
+# At 7 P.M. (Eastern War Time) [on 1945-08-14], the networks were set
+# to switch to London for Attlee's address, but the American people
+# never got to hear his speech live. According to one press account,
+# CBS' Bob Trout was first to announce the word of Japan's surrender,
+# but a few seconds later, NBC, ABC and Mutual also flashed the word
+# of surrender, all of whom interrupting the bells of Big Ben in
+# London which were to precede Mr. Attlee's speech.
+
+# From Paul Eggert (2003-02-09): It was Robert St John, not Bob Trout.  From
+# Myrna Oliver's obituary of St John on page B16 of today's Los Angeles Times:
+#
+# ... a war-weary U.S. clung to radios, awaiting word of Japan's surrender.
+# Any announcement from Asia would reach St. John's New York newsroom on a
+# wire service teletype machine, which had prescribed signals for major news.
+# Associated Press, for example, would ring five bells before spewing out
+# typed copy of an important story, and 10 bells for news "of transcendental
+# importance."
+#
+# On Aug. 14, stalling while talking steadily into the NBC networks' open
+# microphone, St. John heard five bells and waited only to hear a sixth bell,
+# before announcing confidently: "Ladies and gentlemen, World War II is over.
+# The Japanese have agreed to our surrender terms."
+#
+# He had scored a 20-second scoop on other broadcasters.
+
+# From Arthur David Olson (2005-08-22):
+# Paul has been careful to use the "US" rules only in those locations
+# that are part of the United States; this reflects the real scope of
+# U.S. government action.  So even though the "US" rules have changed
+# in the latest release, other countries won't be affected.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	US	1918	1919	-	Mar	lastSun	2:00	1:00	D
+Rule	US	1918	1919	-	Oct	lastSun	2:00	0	S
+Rule	US	1942	only	-	Feb	9	2:00	1:00	W # War
+Rule	US	1945	only	-	Aug	14	23:00u	1:00	P # Peace
+Rule	US	1945	only	-	Sep	30	2:00	0	S
+Rule	US	1967	2006	-	Oct	lastSun	2:00	0	S
+Rule	US	1967	1973	-	Apr	lastSun	2:00	1:00	D
+Rule	US	1974	only	-	Jan	6	2:00	1:00	D
+Rule	US	1975	only	-	Feb	23	2:00	1:00	D
+Rule	US	1976	1986	-	Apr	lastSun	2:00	1:00	D
+Rule	US	1987	2006	-	Apr	Sun>=1	2:00	1:00	D
+Rule	US	2007	max	-	Mar	Sun>=8	2:00	1:00	D
+Rule	US	2007	max	-	Nov	Sun>=1	2:00	0	S
+
+# From Arthur David Olson, 2005-12-19
+# We generate the files specified below to guard against old files with
+# obsolete information being left in the time zone binary directory.
+# We limit the list to names that have appeared in previous versions of
+# this time zone package.
+# We do these as separate Zones rather than as Links to avoid problems if
+# a particular place changes whether it observes DST.
+# We put these specifications here in the northamerica file both to
+# increase the chances that they'll actually get compiled and to
+# avoid the need to duplicate the US rules in another file.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	EST		 -5:00	-	EST
+Zone	MST		 -7:00	-	MST
+Zone	HST		-10:00	-	HST
+Zone	EST5EDT		 -5:00	US	E%sT
+Zone	CST6CDT		 -6:00	US	C%sT
+Zone	MST7MDT		 -7:00	US	M%sT
+Zone	PST8PDT		 -8:00	US	P%sT
+
+# From Bob Devine (1988-01-28):
+# ...Alaska (and Hawaii) had the timezone names changed in 1967.
+#    old			 new
+#    Pacific Standard Time(PST)  -same-
+#    Yukon Standard Time(YST)    -same-
+#    Central Alaska S.T. (CAT)   Alaska-Hawaii St[an]dard Time (AHST)
+#    Nome Standard Time (NT)     Bering Standard Time (BST)
+#
+# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
+#    The YST zone now covers nearly all of the state, AHST just part
+#    of the Aleutian islands.   No DST.
+
+# From Paul Eggert (1995-12-19):
+# The tables below use `NST', not `NT', for Nome Standard Time.
+# I invented `CAWT' for Central Alaska War Time.
+
+# From U. S. Naval Observatory (1989-01-19):
+# USA  EASTERN       5 H  BEHIND UTC    NEW YORK, WASHINGTON
+# USA  EASTERN       4 H  BEHIND UTC    APR 3 - OCT 30
+# USA  CENTRAL       6 H  BEHIND UTC    CHICAGO, HOUSTON
+# USA  CENTRAL       5 H  BEHIND UTC    APR 3 - OCT 30
+# USA  MOUNTAIN      7 H  BEHIND UTC    DENVER
+# USA  MOUNTAIN      6 H  BEHIND UTC    APR 3 - OCT 30
+# USA  PACIFIC       8 H  BEHIND UTC    L.A., SAN FRANCISCO
+# USA  PACIFIC       7 H  BEHIND UTC    APR 3 - OCT 30
+# USA  ALASKA STD    9 H  BEHIND UTC    MOST OF ALASKA     (AKST)
+# USA  ALASKA STD    8 H  BEHIND UTC    APR 3 - OCT 30 (AKDT)
+# USA  ALEUTIAN     10 H  BEHIND UTC    ISLANDS WEST OF 170W
+# USA  - " -         9 H  BEHIND UTC    APR 3 - OCT 30
+# USA  HAWAII       10 H  BEHIND UTC
+# USA  BERING       11 H  BEHIND UTC    SAMOA, MIDWAY
+
+# From Arthur David Olson (1989-01-21):
+# The above dates are for 1988.
+# Note the "AKST" and "AKDT" abbreviations, the claim that there's
+# no DST in Samoa, and the claim that there is DST in Alaska and the
+# Aleutians.
+
+# From Arthur David Olson (1988-02-13):
+# Legal standard time zone names, from United States Code (1982 Edition and
+# Supplement III), Title 15, Chapter 6, Section 260 and forward.  First, names
+# up to 1967-04-01 (when most provisions of the Uniform Time Act of 1966
+# took effect), as explained in sections 263 and 261:
+#	(none)
+#	United States standard eastern time
+#	United States standard mountain time
+#	United States standard central time
+#	United States standard Pacific time
+#	(none)
+#	United States standard Alaska time
+#	(none)
+# Next, names from 1967-04-01 until 1983-11-30 (the date for
+# public law 98-181):
+#	Atlantic standard time
+#	eastern standard time
+#	central standard time
+#	mountain standard time
+#	Pacific standard time
+#	Yukon standard time
+#	Alaska-Hawaii standard time
+#	Bering standard time
+# And after 1983-11-30:
+#	Atlantic standard time
+#	eastern standard time
+#	central standard time
+#	mountain standard time
+#	Pacific standard time
+#	Alaska standard time
+#	Hawaii-Aleutian standard time
+#	Samoa standard time
+# The law doesn't give abbreviations.
+#
+# From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
+# Public law 106-564 (2000-12-23) introduced the abbreviation
+# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
+# See the file "australasia".
+
+# From Arthur David Olson, 2005-08-09
+# The following was signed into law on 2005-08-08.
+#
+# H.R. 6, Energy Policy Act of 2005, SEC. 110. DAYLIGHT SAVINGS.
+#   (a) Amendment- Section 3(a) of the Uniform Time Act of 1966 (15
+#   U.S.C. 260a(a)) is amended--
+#     (1) by striking `first Sunday of April' and inserting `second
+#     Sunday of March'; and
+#     (2) by striking `last Sunday of October' and inserting `first
+#     Sunday of November'.
+#   (b) Effective Date- Subsection (a) shall take effect 1 year after the
+#   date of enactment of this Act or March 1, 2007, whichever is later.
+#   (c) Report to Congress- Not later than 9 months after the effective
+#   date stated in subsection (b), the Secretary shall report to Congress
+#   on the impact of this section on energy consumption in the United
+#   States.
+#   (d) Right to Revert- Congress retains the right to revert the
+#   Daylight Saving Time back to the 2005 time schedules once the
+#   Department study is complete.
+
+# US eastern time, represented by New York
+
+# Connecticut, Delaware, District of Columbia, most of Florida,
+# Georgia, southeast Indiana (Dearborn and Ohio counties), eastern Kentucky
+# (except America/Kentucky/Louisville below), Maine, Maryland, Massachusetts,
+# New Hampshire, New Jersey, New York, North Carolina, Ohio,
+# Pennsylvania, Rhode Island, South Carolina, eastern Tennessee,
+# Vermont, Virginia, West Virginia
+
+# From Dave Cantor (2004-11-02):
+# Early this summer I had the occasion to visit the Mount Washington
+# Observatory weather station atop (of course!) Mount Washington [, NH]....
+# One of the staff members said that the station was on Eastern Standard Time
+# and didn't change their clocks for Daylight Saving ... so that their
+# reports will always have times which are 5 hours behind UTC.
+
+# From Paul Eggert (2005-08-26):
+# According to today's Huntsville Times
+# <http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1>
+# a few towns on Alabama's "eastern border with Georgia, such as Phenix City
+# in Russell County, Lanett in Chambers County and some towns in Lee County,
+# set their watches and clocks on Eastern time."  It quotes H.H. "Bubba"
+# Roberts, city administrator in Phenix City. as saying "We are in the Central
+# time zone, but we do go by the Eastern time zone because so many people work
+# in Columbus."
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	NYC	1920	only	-	Mar	lastSun	2:00	1:00	D
+Rule	NYC	1920	only	-	Oct	lastSun	2:00	0	S
+Rule	NYC	1921	1966	-	Apr	lastSun	2:00	1:00	D
+Rule	NYC	1921	1954	-	Sep	lastSun	2:00	0	S
+Rule	NYC	1955	1966	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/New_York	-4:56:02 -	LMT	1883 Nov 18 12:03:58
+			-5:00	US	E%sT	1920
+			-5:00	NYC	E%sT	1942
+			-5:00	US	E%sT	1946
+			-5:00	NYC	E%sT	1967
+			-5:00	US	E%sT
+
+# US central time, represented by Chicago
+
+# Alabama, Arkansas, Florida panhandle (Bay, Calhoun, Escambia,
+# Gulf, Holmes, Jackson, Okaloosa, Santa Rosa, Walton, and
+# Washington counties), Illinois, western Indiana
+# (Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
+# Vanderburgh, and Warrick counties), Iowa, most of Kansas, western
+# Kentucky, Louisiana, Minnesota, Mississippi, Missouri, eastern
+# Nebraska, eastern North Dakota, Oklahoma, eastern South Dakota,
+# western Tennessee, most of Texas, Wisconsin
+
+# From Larry M. Smith (2006-04-26) re Wisconsin:
+# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
+# is currently enforced at the 01:00 time of change.  Because the local
+# "bar time" in the state corresponds to 02:00, a number of citations
+# are issued for the "sale of class 'B' alcohol after prohibited
+# hours" within the deviated hour of this change every year....
+#
+# From Douglas R. Bomberg (2007-03-12):
+# Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
+# Statue 175 closer in synch with the US Congress' intent....
+# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	Chicago	1920	only	-	Jun	13	2:00	1:00	D
+Rule	Chicago	1920	1921	-	Oct	lastSun	2:00	0	S
+Rule	Chicago	1921	only	-	Mar	lastSun	2:00	1:00	D
+Rule	Chicago	1922	1966	-	Apr	lastSun	2:00	1:00	D
+Rule	Chicago	1922	1954	-	Sep	lastSun	2:00	0	S
+Rule	Chicago	1955	1966	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Chicago	-5:50:36 -	LMT	1883 Nov 18 12:09:24
+			-6:00	US	C%sT	1920
+			-6:00	Chicago	C%sT	1936 Mar  1 2:00
+			-5:00	-	EST	1936 Nov 15 2:00
+			-6:00	Chicago	C%sT	1942
+			-6:00	US	C%sT	1946
+			-6:00	Chicago	C%sT	1967
+			-6:00	US	C%sT
+# Oliver County, ND switched from mountain to central time on 1992-10-25.
+Zone America/North_Dakota/Center -6:45:12 - LMT	1883 Nov 18 12:14:48
+			-7:00	US	M%sT	1992 Oct 25 02:00
+			-6:00	US	C%sT
+# Morton County, ND, switched from mountain to central time on
+# 2003-10-26, except for the area around Mandan which was already central time.
+# See <http://dmses.dot.gov/docimages/p63/135818.pdf>.
+# Officially this switch also included part of Sioux County, and
+# Jones, Mellette, and Todd Counties in South Dakota;
+# but in practice these other counties were already observing central time.
+# See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>.
+Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
+			-7:00	US	M%sT	2003 Oct 26 02:00
+			-6:00	US	C%sT
+
+# US mountain time, represented by Denver
+#
+# Colorado, far western Kansas, Montana, western
+# Nebraska, Nevada border (Jackpot, Owyhee, and Mountain City),
+# New Mexico, southwestern North Dakota,
+# western South Dakota, far western Texas (El Paso County, Hudspeth County,
+# and Pine Springs and Nickel Creek in Culberson County), Utah, Wyoming
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	Denver	1920	1921	-	Mar	lastSun	2:00	1:00	D
+Rule	Denver	1920	only	-	Oct	lastSun	2:00	0	S
+Rule	Denver	1921	only	-	May	22	2:00	0	S
+Rule	Denver	1965	1966	-	Apr	lastSun	2:00	1:00	D
+Rule	Denver	1965	1966	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Denver	-6:59:56 -	LMT	1883 Nov 18 12:00:04
+			-7:00	US	M%sT	1920
+			-7:00	Denver	M%sT	1942
+			-7:00	US	M%sT	1946
+			-7:00	Denver	M%sT	1967
+			-7:00	US	M%sT
+
+# US Pacific time, represented by Los Angeles
+#
+# California, northern Idaho (Benewah, Bonner, Boundary, Clearwater,
+# Idaho, Kootenai, Latah, Lewis, Nez Perce, and Shoshone counties,
+# and the northern three-quarters of Idaho county),
+# most of Nevada, most of Oregon, and Washington
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	CA	1948	only	-	Mar	14	2:00	1:00	D
+Rule	CA	1949	only	-	Jan	 1	2:00	0	S
+Rule	CA	1950	1966	-	Apr	lastSun	2:00	1:00	D
+Rule	CA	1950	1961	-	Sep	lastSun	2:00	0	S
+Rule	CA	1962	1966	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Los_Angeles -7:52:58 -	LMT	1883 Nov 18 12:07:02
+			-8:00	US	P%sT	1946
+			-8:00	CA	P%sT	1967
+			-8:00	US	P%sT
+
+# Alaska
+# AK%sT is the modern abbreviation for -9:00 per USNO.
+#
+# From Paul Eggert (2001-05-30):
+# Howse writes that Alaska switched from the Julian to the Gregorian calendar,
+# and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
+# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
+# also a Friday.  Include only the time zone part of this transition,
+# ignoring the switch from Julian to Gregorian, since we can't represent
+# the Julian calendar.
+#
+# As far as we know, none of the exact locations mentioned below were
+# permanently inhabited in 1867 by anyone using either calendar.
+# (Yakutat was colonized by the Russians in 1799, but the settlement
+# was destroyed in 1805 by a Yakutat-kon war party.)  However, there
+# were nearby inhabitants in some cases and for our purposes perhaps
+# it's best to simply use the official transition.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Juneau	 15:02:19 -	LMT	1867 Oct 18
+			 -8:57:41 -	LMT	1900 Aug 20 12:00
+			 -8:00	-	PST	1942
+			 -8:00	US	P%sT	1946
+			 -8:00	-	PST	1969
+			 -8:00	US	P%sT	1983 Oct 30 2:00
+			 -9:00	US	Y%sT	1983 Nov 30
+			 -9:00	US	AK%sT
+Zone America/Yakutat	 14:41:05 -	LMT	1867 Oct 18
+			 -9:18:55 -	LMT	1900 Aug 20 12:00
+			 -9:00	-	YST	1942
+			 -9:00	US	Y%sT	1946
+			 -9:00	-	YST	1969
+			 -9:00	US	Y%sT	1983 Nov 30
+			 -9:00	US	AK%sT
+Zone America/Anchorage	 14:00:24 -	LMT	1867 Oct 18
+			 -9:59:36 -	LMT	1900 Aug 20 12:00
+			-10:00	-	CAT	1942
+			-10:00	US	CAT/CAWT 1945 Aug 14 23:00u
+			-10:00	US	CAT/CAPT 1946 # Peace
+			-10:00	-	CAT	1967 Apr
+			-10:00	-	AHST	1969
+			-10:00	US	AH%sT	1983 Oct 30 2:00
+			 -9:00	US	Y%sT	1983 Nov 30
+			 -9:00	US	AK%sT
+Zone America/Nome	 12:58:21 -	LMT	1867 Oct 18
+			-11:01:38 -	LMT	1900 Aug 20 12:00
+			-11:00	-	NST	1942
+			-11:00	US	N%sT	1946
+			-11:00	-	NST	1967 Apr
+			-11:00	-	BST	1969
+			-11:00	US	B%sT	1983 Oct 30 2:00
+			 -9:00	US	Y%sT	1983 Nov 30
+			 -9:00	US	AK%sT
+Zone America/Adak	 12:13:21 -	LMT	1867 Oct 18
+			-11:46:38 -	LMT	1900 Aug 20 12:00
+			-11:00	-	NST	1942
+			-11:00	US	N%sT	1946
+			-11:00	-	NST	1967 Apr
+			-11:00	-	BST	1969
+			-11:00	US	B%sT	1983 Oct 30 2:00
+			-10:00	US	AH%sT	1983 Nov 30
+			-10:00	US	HA%sT
+# The following switches don't quite make our 1970 cutoff.
+#
+# Shanks writes that part of southwest Alaska (e.g. Aniak)
+# switched from -11:00 to -10:00 on 1968-09-22 at 02:00,
+# and another part (e.g. Akiak) made the same switch five weeks later.
+#
+# From David Flater (2004-11-09):
+# In e-mail, 2004-11-02, Ray Hudson, historian/liaison to the Unalaska
+# Historic Preservation Commission, provided this information, which
+# suggests that Unalaska deviated from statutory time from early 1967
+# possibly until 1983:
+#
+#  Minutes of the Unalaska City Council Meeting, January 10, 1967:
+#  "Except for St. Paul and Akutan, Unalaska is the only important
+#  location not on Alaska Standard Time.  The following resolution was
+#  made by William Robinson and seconded by Henry Swanson:  Be it
+#  resolved that the City of Unalaska hereby goes to Alaska Standard
+#  Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday,
+#  January 14, Alaska Standard Time.)  This resolution was passed with
+#  three votes for and one against."
+
+# Hawaii
+#
+# From Arthur David Olson:
+# And then there's Hawaii.
+# DST was observed for one day in 1933;
+# standard time was changed by half an hour in 1947;
+# it's always standard as of 1986.
+#
+# From Paul Eggert:
+# Shanks says the 1933 experiment lasted for three weeks.  Go with Shanks.
+#
+Zone Pacific/Honolulu	-10:31:26 -	LMT	1900 Jan  1 12:00
+			-10:30	-	HST	1933 Apr 30 2:00
+			-10:30	1:00	HDT	1933 May 21 2:00
+			-10:30	US	H%sT	1947 Jun  8 2:00
+			-10:00	-	HST
+
+# Now we turn to US areas that have diverged from the consensus since 1970.
+
+# Arizona mostly uses MST.
+
+# From Paul Eggert (2002-10-20):
+#
+# The information in the rest of this paragraph is derived from the
+# <a href="http://www.dlapr.lib.az.us/links/daylight.htm">
+# Daylight Saving Time web page (2002-01-23)</a> maintained by the
+# Arizona State Library, Archives and Public Records.
+# Between 1944-01-01 and 1944-04-01 the State of Arizona used standard
+# time, but by federal law railroads, airlines, bus lines, military
+# personnel, and some engaged in interstate commerce continued to
+# observe war (i.e., daylight saving) time.  The 1944-03-17 Phoenix
+# Gazette says that was the date the law changed, and that 04-01 was
+# the date the state's clocks would change.  In 1945 the State of
+# Arizona used standard time all year, again with exceptions only as
+# mandated by federal law.  Arizona observed DST in 1967, but Arizona
+# Laws 1968, ch. 183 (effective 1968-03-21) repealed DST.
+#
+# Shanks says the 1944 experiment came to an end on 1944-03-17.
+# Go with the Arizona State Library instead.
+
+Zone America/Phoenix	-7:28:18 -	LMT	1883 Nov 18 11:31:42
+			-7:00	US	M%sT	1944 Jan  1 00:01
+			-7:00	-	MST	1944 Apr  1 00:01
+			-7:00	US	M%sT	1944 Oct  1 00:01
+			-7:00	-	MST	1967
+			-7:00	US	M%sT	1968 Mar 21
+			-7:00	-	MST
+# From Arthur David Olson (1988-02-13):
+# A writer from the Inter Tribal Council of Arizona, Inc.,
+# notes in private correspondence dated 1987-12-28 that "Presently, only the
+# Navajo Nation participates in the Daylight Saving Time policy, due to its
+# large size and location in three states."  (The "only" means that other
+# tribal nations don't use DST.)
+
+Link America/Denver America/Shiprock
+
+# Southern Idaho (Ada, Adams, Bannock, Bear Lake, Bingham, Blaine,
+# Boise, Bonneville, Butte, Camas, Canyon, Caribou, Cassia, Clark,
+# Custer, Elmore, Franklin, Fremont, Gem, Gooding, Jefferson, Jerome,
+# Lemhi, Lincoln, Madison, Minidoka, Oneida, Owyhee, Payette, Power,
+# Teton, Twin Falls, Valley, Washington counties, and the southern
+# quarter of Idaho county) and eastern Oregon (most of Malheur County)
+# switched four weeks late in 1974.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Boise	-7:44:49 -	LMT	1883 Nov 18 12:15:11
+			-8:00	US	P%sT	1923 May 13 2:00
+			-7:00	US	M%sT	1974
+			-7:00	-	MST	1974 Feb  3 2:00
+			-7:00	US	M%sT
+
+# Indiana
+#
+# For a map of Indiana's time zone regions, see:
+# <a href="http://www.mccsc.edu/time.html">
+# What time is it in Indiana?
+# </a> (2006-03-01)
+#
+# From Paul Eggert (2007-08-17):
+# Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
+# with the following exceptions:
+#
+# - Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
+#   Vandenburgh, and Warrick counties have been like America/Chicago.
+#
+# - Dearborn and Ohio counties have been like America/New_York.
+#
+# - Clark, Floyd, and Harrison counties have been like
+#   America/Kentucky/Louisville.
+#
+# - Crawford, Daviess, Dubois, Knox, Martin, Perry, Pike, Pulaski, Starke,
+#   and Switzerland counties have their own time zone histories as noted below.
+#
+# Shanks partitioned Indiana into 345 regions, each with its own time history,
+# and wrote ``Even newspaper reports present contradictory information.''
+# Those Hoosiers!  Such a flighty and changeable people!
+# Fortunately, most of the complexity occurred before our cutoff date of 1970.
+#
+# Other than Indianapolis, the Indiana place names are so nondescript
+# that they would be ambiguous if we left them at the `America' level.
+# So we reluctantly put them all in a subdirectory `America/Indiana'.
+
+# From Paul Eggert (2005-08-16):
+# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
+
+# From Nathan Stratton Treadway (2006-03-30):
+# http://www.dot.gov/affairs/dot0406.htm [3705 B]
+# From Deborah Goldsmith (2006-01-18):
+# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf [2.9 MB]
+# From Paul Eggert (2006-01-20):
+# It says "DOT is relocating the time zone boundary in Indiana to move Starke,
+# Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the
+# Eastern Time Zone to the Central Time Zone.... The effective date of
+# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the
+# changeover date from standard time to Daylight Saving Time."
+# Strictly speaking, this means the affected counties will change their
+# clocks twice that night, but this obviously is in error.  The intent
+# is that 01:59:59 EST be followed by 02:00:00 CDT.
+
+# From Gwillim Law (2007-02-10):
+# The Associated Press has been reporting that Pulaski County, Indiana is
+# going to switch from Central to Eastern Time on March 11, 2007....
+# http://www.indystar.com/apps/pbcs.dll/article?AID=/20070207/LOCAL190108/702070524/0/LOCAL
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule Indianapolis 1941	only	-	Jun	22	2:00	1:00	D
+Rule Indianapolis 1941	1954	-	Sep	lastSun	2:00	0	S
+Rule Indianapolis 1946	1954	-	Apr	lastSun	2:00	1:00	D
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
+			-6:00	US	C%sT	1920
+			-6:00 Indianapolis C%sT	1942
+			-6:00	US	C%sT	1946
+			-6:00 Indianapolis C%sT	1955 Apr 24 2:00
+			-5:00	-	EST	1957 Sep 29 2:00
+			-6:00	-	CST	1958 Apr 27 2:00
+			-5:00	-	EST	1969
+			-5:00	US	E%sT	1971
+			-5:00	-	EST	2006
+			-5:00	US	E%sT
+#
+# Eastern Crawford County, Indiana, left its clocks alone in 1974,
+# as well as from 1976 through 2005.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	Marengo	1951	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Marengo	1951	only	-	Sep	lastSun	2:00	0	S
+Rule	Marengo	1954	1960	-	Apr	lastSun	2:00	1:00	D
+Rule	Marengo	1954	1960	-	Sep	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Indiana/Marengo -5:45:23 -	LMT	1883 Nov 18 12:14:37
+			-6:00	US	C%sT	1951
+			-6:00	Marengo	C%sT	1961 Apr 30 2:00
+			-5:00	-	EST	1969
+			-5:00	US	E%sT	1974 Jan  6 2:00
+			-6:00	1:00	CDT	1974 Oct 27 2:00
+			-5:00	US	E%sT	1976
+			-5:00	-	EST	2006
+			-5:00	US	E%sT
+#
+# Daviess, Dubois, Knox, and Martin Counties, Indiana,
+# switched from eastern to central time in April 2006, then switched back
+# in November 2007.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule Vincennes	1946	only	-	Apr	lastSun	2:00	1:00	D
+Rule Vincennes	1946	only	-	Sep	lastSun	2:00	0	S
+Rule Vincennes	1953	1954	-	Apr	lastSun	2:00	1:00	D
+Rule Vincennes	1953	1959	-	Sep	lastSun	2:00	0	S
+Rule Vincennes	1955	only	-	May	 1	0:00	1:00	D
+Rule Vincennes	1956	1963	-	Apr	lastSun	2:00	1:00	D
+Rule Vincennes	1960	only	-	Oct	lastSun	2:00	0	S
+Rule Vincennes	1961	only	-	Sep	lastSun	2:00	0	S
+Rule Vincennes	1962	1963	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Indiana/Vincennes -5:50:07 - LMT	1883 Nov 18 12:09:53
+			-6:00	US	C%sT	1946
+			-6:00 Vincennes	C%sT	1964 Apr 26 2:00
+			-5:00	-	EST	1969
+			-5:00	US	E%sT	1971
+			-5:00	-	EST	2006 Apr  2 2:00
+			-6:00	US	C%sT	2007 Nov  4 2:00
+			-5:00	US	E%sT
+#
+# Perry County, Indiana, switched from eastern to central time in April 2006.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule Perry	1946	only	-	Apr	lastSun	2:00	1:00	D
+Rule Perry	1946	only	-	Sep	lastSun	2:00	0	S
+Rule Perry	1953	1954	-	Apr	lastSun	2:00	1:00	D
+Rule Perry	1953	1959	-	Sep	lastSun	2:00	0	S
+Rule Perry	1955	only	-	May	 1	0:00	1:00	D
+Rule Perry	1956	1963	-	Apr	lastSun	2:00	1:00	D
+Rule Perry	1960	only	-	Oct	lastSun	2:00	0	S
+Rule Perry	1961	only	-	Sep	lastSun	2:00	0	S
+Rule Perry	1962	1963	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Indiana/Tell_City -5:47:03 - LMT	1883 Nov 18 12:12:57
+			-6:00	US	C%sT	1946
+			-6:00 Perry	C%sT	1964 Apr 26 2:00
+			-5:00	-	EST	1969
+			-5:00	US	E%sT	1971
+			-5:00	-	EST	2006 Apr  2 2:00
+			-6:00	US	C%sT
+#
+# Pike County, Indiana moved from central to eastern time in 1977,
+# then switched back in 2006, then switched back again in 2007.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	Pike	1955	only	-	May	 1	0:00	1:00	D
+Rule	Pike	1955	1960	-	Sep	lastSun	2:00	0	S
+Rule	Pike	1956	1964	-	Apr	lastSun	2:00	1:00	D
+Rule	Pike	1961	1964	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Indiana/Petersburg -5:49:07 - LMT	1883 Nov 18 12:10:53
+			-6:00	US	C%sT	1955
+			-6:00	Pike	C%sT	1965 Apr 25 2:00
+			-5:00	-	EST	1966 Oct 30 2:00
+			-6:00	US	C%sT	1977 Oct 30 2:00
+			-5:00	-	EST	2006 Apr  2 2:00
+			-6:00	US	C%sT	2007 Nov  4 2:00
+			-5:00	US	E%sT
+#
+# Starke County, Indiana moved from central to eastern time in 1991,
+# then switched back in 2006.
+# From Arthur David Olson (1991-10-28):
+# An article on page A3 of the Sunday, 1991-10-27 Washington Post
+# notes that Starke County switched from Central time to Eastern time as of
+# 1991-10-27.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	Starke	1947	1961	-	Apr	lastSun	2:00	1:00	D
+Rule	Starke	1947	1954	-	Sep	lastSun	2:00	0	S
+Rule	Starke	1955	1956	-	Oct	lastSun	2:00	0	S
+Rule	Starke	1957	1958	-	Sep	lastSun	2:00	0	S
+Rule	Starke	1959	1961	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Indiana/Knox -5:46:30 -	LMT	1883 Nov 18 12:13:30
+			-6:00	US	C%sT	1947
+			-6:00	Starke	C%sT	1962 Apr 29 2:00
+			-5:00	-	EST	1963 Oct 27 2:00
+			-6:00	US	C%sT	1991 Oct 27 2:00
+			-5:00	-	EST	2006 Apr  2 2:00
+			-6:00	US	C%sT
+#
+# Pulaski County, Indiana, switched from eastern to central time in
+# April 2006 and then switched back in March 2007.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	Pulaski	1946	1960	-	Apr	lastSun	2:00	1:00	D
+Rule	Pulaski	1946	1954	-	Sep	lastSun	2:00	0	S
+Rule	Pulaski	1955	1956	-	Oct	lastSun	2:00	0	S
+Rule	Pulaski	1957	1960	-	Sep	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Indiana/Winamac -5:46:25 - LMT	1883 Nov 18 12:13:35
+			-6:00	US	C%sT	1946
+			-6:00	Pulaski	C%sT	1961 Apr 30 2:00
+			-5:00	-	EST	1969
+			-5:00	US	E%sT	1971
+			-5:00	-	EST	2006 Apr  2 2:00
+			-6:00	US	C%sT	2007 Mar 11 2:00
+			-5:00	US	E%sT
+#
+# Switzerland County, Indiana, did not observe DST from 1973 through 2005.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Indiana/Vevay -5:40:16 -	LMT	1883 Nov 18 12:19:44
+			-6:00	US	C%sT	1954 Apr 25 2:00
+			-5:00	-	EST	1969
+			-5:00	US	E%sT	1973
+			-5:00	-	EST	2006
+			-5:00	US	E%sT
+
+# Part of Kentucky left its clocks alone in 1974.
+# This also includes Clark, Floyd, and Harrison counties in Indiana.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule Louisville	1921	only	-	May	1	2:00	1:00	D
+Rule Louisville	1921	only	-	Sep	1	2:00	0	S
+Rule Louisville	1941	1961	-	Apr	lastSun	2:00	1:00	D
+Rule Louisville	1941	only	-	Sep	lastSun	2:00	0	S
+Rule Louisville	1946	only	-	Jun	2	2:00	0	S
+Rule Louisville	1950	1955	-	Sep	lastSun	2:00	0	S
+Rule Louisville	1956	1960	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Kentucky/Louisville -5:43:02 -	LMT	1883 Nov 18 12:16:58
+			-6:00	US	C%sT	1921
+			-6:00 Louisville C%sT	1942
+			-6:00	US	C%sT	1946
+			-6:00 Louisville C%sT	1961 Jul 23 2:00
+			-5:00	-	EST	1968
+			-5:00	US	E%sT	1974 Jan  6 2:00
+			-6:00	1:00	CDT	1974 Oct 27 2:00
+			-5:00	US	E%sT
+#
+# Wayne County, Kentucky
+#
+# From
+# <a href="http://www.lake-cumberland.com/life/archive/news990129time.shtml">
+# Lake Cumberland LIFE
+# </a> (1999-01-29) via WKYM-101.7:
+# Clinton County has joined Wayne County in asking the DoT to change from
+# the Central to the Eastern time zone....  The Wayne County government made
+# the same request in December.  And while Russell County officials have not
+# taken action, the majority of respondents to a poll conducted there in
+# August indicated they would like to change to "fast time" also.
+# The three Lake Cumberland counties are the farthest east of any U.S.
+# location in the Central time zone.
+#
+# From Rich Wales (2000-08-29):
+# After prolonged debate, and despite continuing deep differences of opinion,
+# Wayne County (central Kentucky) is switching from Central (-0600) to Eastern
+# (-0500) time.  They won't "fall back" this year.  See Sara Shipley,
+# The difference an hour makes, Nando Times (2000-08-29 15:33 -0400).
+#
+# From Paul Eggert (2001-07-16):
+# The final rule was published in the
+# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22">
+# Federal Register 65, 160 (2000-08-17), page 50154-50158.
+# </a>
+#
+Zone America/Kentucky/Monticello -5:39:24 - LMT	1883 Nov 18 12:20:36
+			-6:00	US	C%sT	1946
+			-6:00	-	CST	1968
+			-6:00	US	C%sT	2000 Oct 29  2:00
+			-5:00	US	E%sT
+
+
+# From Rives McDow (2000-08-30):
+# Here ... are all the changes in the US since 1985.
+# Kearny County, KS (put all of county on central;
+#	previously split between MST and CST) ... 1990-10
+# Starke County, IN (from CST to EST) ... 1991-10
+# Oliver County, ND (from MST to CST) ... 1992-10
+# West Wendover, NV (from PST TO MST) ... 1999-10
+# Wayne County, KY (from CST to EST) ... 2000-10
+#
+# From Paul Eggert (2001-07-17):
+# We don't know where the line used to be within Kearny County, KS,
+# so omit that change for now.
+# See America/Indiana/Knox for the Starke County, IN change.
+# See America/North_Dakota/Center for the Oliver County, ND change.
+# West Wendover, NV officially switched from Pacific to mountain time on
+# 1999-10-31.  See the
+# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15">
+# Federal Register 64, 203 (1999-10-21), page 56705-56707.
+# </a>
+# However, the Federal Register says that West Wendover already operated
+# on mountain time, and the rule merely made this official;
+# hence a separate tz entry is not needed.
+
+# Michigan
+#
+# From Bob Devine (1988-01-28):
+# Michigan didn't observe DST from 1968 to 1973.
+#
+# From Paul Eggert (1999-03-31):
+# Shanks writes that Michigan started using standard time on 1885-09-18,
+# but Howse writes (pp 124-125, referring to Popular Astronomy, 1901-01)
+# that Detroit kept
+#
+#	local time until 1900 when the City Council decreed that clocks should
+#	be put back twenty-eight minutes to Central Standard Time.  Half the
+#	city obeyed, half refused.  After considerable debate, the decision
+#	was rescinded and the city reverted to Sun time.  A derisive offer to
+#	erect a sundial in front of the city hall was referred to the
+#	Committee on Sewers.  Then, in 1905, Central time was adopted
+#	by city vote.
+#
+# This story is too entertaining to be false, so go with Howse over Shanks.
+#
+# From Paul Eggert (2001-03-06):
+# Garland (1927) writes ``Cleveland and Detroit advanced their clocks
+# one hour in 1914.''  This change is not in Shanks.  We have no more
+# info, so omit this for now.
+#
+# Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule	Detroit	1948	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Detroit	1948	only	-	Sep	lastSun	2:00	0	S
+Rule	Detroit	1967	only	-	Jun	14	2:00	1:00	D
+Rule	Detroit	1967	only	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Detroit	-5:32:11 -	LMT	1905
+			-6:00	-	CST	1915 May 15 2:00
+			-5:00	-	EST	1942
+			-5:00	US	E%sT	1946
+			-5:00	Detroit	E%sT	1973
+			-5:00	US	E%sT	1975
+			-5:00	-	EST	1975 Apr 27 2:00
+			-5:00	US	E%sT
+#
+# Dickinson, Gogebic, Iron, and Menominee Counties, Michigan,
+# switched from EST to CST/CDT in 1973.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER
+Rule Menominee	1946	only	-	Apr	lastSun	2:00	1:00	D
+Rule Menominee	1946	only	-	Sep	lastSun	2:00	0	S
+Rule Menominee	1966	only	-	Apr	lastSun	2:00	1:00	D
+Rule Menominee	1966	only	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Menominee	-5:50:27 -	LMT	1885 Sep 18 12:00
+			-6:00	US	C%sT	1946
+			-6:00 Menominee	C%sT	1969 Apr 27 2:00
+			-5:00	-	EST	1973 Apr 29 2:00
+			-6:00	US	C%sT
+
+# Navassa
+# administered by the US Fish and Wildlife Service
+# claimed by US under the provisions of the 1856 Guano Islands Act
+# also claimed by Haiti
+# occupied 1857/1900 by the Navassa Phosphate Co
+# US lighthouse 1917/1996-09
+# currently uninhabited
+# see Mark Fineman, ``An Isle Rich in Guano and Discord'',
+# _Los Angeles Times_ (1998-11-10), A1, A10; it cites
+# Jimmy Skaggs, _The Great Guano Rush_ (1994).
+
+################################################################################
+
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually.  Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Other sources occasionally used include:
+#
+#	Edward W. Whitman, World Time Differences,
+#	Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated),
+#	which I found in the UCLA library.
+#
+#	<a href="http://www.pettswoodvillage.co.uk/Daylight_Savings_William_Willett.pdf">
+#	William Willett, The Waste of Daylight, 19th edition
+#	</a> (1914-03)
+#
+# See the `europe' file for Greenland.
+
+# Canada
+
+# From Alain LaBont<e'> (1994-11-14):
+# I post here the time zone abbreviations standardized in Canada
+# for both English and French in the CAN/CSA-Z234.4-89 standard....
+#
+#	UTC	Standard time	Daylight savings time
+#	offset	French	English	French	English
+#	-2:30	-	-	HAT	NDT
+#	-3	-	-	HAA	ADT
+#	-3:30	HNT	NST	-	-
+#	-4	HNA	AST	HAE	EDT
+#	-5	HNE	EST	HAC	CDT
+#	-6	HNC	CST	HAR	MDT
+#	-7	HNR	MST	HAP	PDT
+#	-8	HNP	PST	HAY	YDT
+#	-9	HNY	YST	-	-
+#
+#	HN: Heure Normale	ST: Standard Time
+#	HA: Heure Avanc<e'>e	DT: Daylight saving Time
+#
+#	A: de l'Atlantique	Atlantic
+#	C: du Centre		Central
+#	E: de l'Est		Eastern
+#	M:			Mountain
+#	N:			Newfoundland
+#	P: du Pacifique		Pacific
+#	R: des Rocheuses
+#	T: de Terre-Neuve
+#	Y: du Yukon		Yukon
+#
+# From Paul Eggert (1994-11-22):
+# Alas, this sort of thing must be handled by localization software.
+
+# Unless otherwise specified, the data for Canada are all from Shanks
+# & Pottenger.
+
+# From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31,
+# 2007-03-01):
+# The British Columbia government announced yesterday that it will
+# adjust daylight savings next year to align with changes in the
+# U.S. and the rest of Canada....
+# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
+# ...
+# Nova Scotia
+# Daylight saving time will be extended by four weeks starting in 2007....
+# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
+#
+# [For New Brunswick] the new legislation dictates that the time change is to
+# be done at 02:00 instead of 00:01.
+# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
+# ...
+# Manitoba has traditionally changed the clock every fall at 03:00.
+# As of 2006, the transition is to take place one hour earlier at 02:00.
+# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
+# ...
+# [Alberta, Ontario, Quebec] will follow US rules.
+# http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
+# http://www.e-laws.gov.on.ca/DBLaws/Source/Regs/English/2006/R06111_e.htm
+# http://www2.publicationsduquebec.gouv.qc.ca/dynamicSearch/telecharge.php?type=5&file=2006C39A.PDF
+# ...
+# P.E.I. will follow US rules....
+# http://www.assembly.pe.ca/bills/pdf_chapter/62/3/chapter-41.pdf
+# ...
+# Province of Newfoundland and Labrador....
+# http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
+# ...
+# Yukon
+# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
+# ...
+# N.W.T. will follow US rules.  Whoever maintains the government web site
+# does not seem to believe in bookmarks.  To see the news release, click the
+# following link and search for "Daylight Savings Time Change".  Press the
+# "Daylight Savings Time Change" link; it will fire off a popup using
+# JavaScript.
+# http://www.exec.gov.nt.ca/currentnews/currentPR.asp?mode=archive
+# ...
+# Nunavut
+# An amendment to the Interpretation Act was registered on February 19/2007....
+# http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf
+
+# From Paul Eggert (2006-04-25):
+# H. David Matthews and Mary Vincent's map
+# <a href="http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp">
+# "It's about TIME", _Canadian Geographic_ (September-October 1998)
+# </a> contains detailed boundaries for regions observing nonstandard
+# time and daylight saving time arrangements in Canada circa 1998.
+#
+# INMS, the Institute for National Measurement Standards in Ottawa, has <a
+# href="http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php">
+# information about standard and daylight saving time zones in Canada.
+# </a> (updated periodically).
+# Its unofficial information is often taken from Matthews and Vincent.
+
+# From Paul Eggert (2006-06-27):
+# For now, assume all of DST-observing Canada will fall into line with the
+# new US DST rules,
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Canada	1918	only	-	Apr	14	2:00	1:00	D
+Rule	Canada	1918	only	-	Oct	31	2:00	0	S
+Rule	Canada	1942	only	-	Feb	 9	2:00	1:00	W # War
+Rule	Canada	1945	only	-	Aug	14	23:00u	1:00	P # Peace
+Rule	Canada	1945	only	-	Sep	30	2:00	0	S
+Rule	Canada	1974	1986	-	Apr	lastSun	2:00	1:00	D
+Rule	Canada	1974	2006	-	Oct	lastSun	2:00	0	S
+Rule	Canada	1987	2006	-	Apr	Sun>=1	2:00	1:00	D
+Rule	Canada	2007	max	-	Mar	Sun>=8	2:00	1:00	D
+Rule	Canada	2007	max	-	Nov	Sun>=1	2:00	0	S
+
+
+# Newfoundland and Labrador
+
+# From Paul Eggert (2000-10-02):
+# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
+# but the only part of Labrador that follows the rules is the
+# southeast corner, including Port Hope Simpson and Mary's Harbour,
+# but excluding, say, Black Tickle.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	StJohns	1917	only	-	Apr	 8	2:00	1:00	D
+Rule	StJohns	1917	only	-	Sep	17	2:00	0	S
+# Whitman gives 1919 Apr 5 and 1920 Apr 5; go with Shanks & Pottenger.
+Rule	StJohns	1919	only	-	May	 5	23:00	1:00	D
+Rule	StJohns	1919	only	-	Aug	12	23:00	0	S
+# For 1931-1935 Whitman gives Apr same date; go with Shanks & Pottenger.
+Rule	StJohns	1920	1935	-	May	Sun>=1	23:00	1:00	D
+Rule	StJohns	1920	1935	-	Oct	lastSun	23:00	0	S
+# For 1936-1941 Whitman gives May Sun>=8 and Oct Sun>=1; go with Shanks &
+# Pottenger.
+Rule	StJohns	1936	1941	-	May	Mon>=9	0:00	1:00	D
+Rule	StJohns	1936	1941	-	Oct	Mon>=2	0:00	0	S
+# Whitman gives the following transitions:
+# 1942 03-01/12-31, 1943 05-30/09-05, 1944 07-10/09-02, 1945 01-01/10-07
+# but go with Shanks & Pottenger and assume they used Canadian rules.
+# For 1946-9 Whitman gives May 5,4,9,1 - Oct 1,5,3,2, and for 1950 he gives
+# Apr 30 - Sep 24; go with Shanks & Pottenger.
+Rule	StJohns	1946	1950	-	May	Sun>=8	2:00	1:00	D
+Rule	StJohns	1946	1950	-	Oct	Sun>=2	2:00	0	S
+Rule	StJohns	1951	1986	-	Apr	lastSun	2:00	1:00	D
+Rule	StJohns	1951	1959	-	Sep	lastSun	2:00	0	S
+Rule	StJohns	1960	1986	-	Oct	lastSun	2:00	0	S
+# From Paul Eggert (2000-10-02):
+# INMS (2000-09-12) says that, since 1988 at least, Newfoundland switches
+# at 00:01 local time.  For now, assume it started in 1987.
+Rule	StJohns	1987	only	-	Apr	Sun>=1	0:01	1:00	D
+Rule	StJohns	1987	2006	-	Oct	lastSun	0:01	0	S
+Rule	StJohns	1988	only	-	Apr	Sun>=1	0:01	2:00	DD
+Rule	StJohns	1989	2006	-	Apr	Sun>=1	0:01	1:00	D
+Rule	StJohns	2007	max	-	Mar	Sun>=8	0:01	1:00	D
+Rule	StJohns	2007	max	-	Nov	Sun>=1	0:01	0	S
+#
+# St John's has an apostrophe, but Posix file names can't have apostrophes.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/St_Johns	-3:30:52 -	LMT	1884
+			-3:30:52 StJohns N%sT	1918
+			-3:30:52 Canada	N%sT	1919
+			-3:30:52 StJohns N%sT	1935 Mar 30
+			-3:30	StJohns	N%sT	1942 May 11
+			-3:30	Canada	N%sT	1946
+			-3:30	StJohns	N%sT
+
+# most of east Labrador
+
+# The name `Happy Valley-Goose Bay' is too long; use `Goose Bay'.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Goose_Bay	-4:01:40 -	LMT	1884 # Happy Valley-Goose Bay
+			-3:30:52 -	NST	1918
+			-3:30:52 Canada N%sT	1919
+			-3:30:52 -	NST	1935 Mar 30
+			-3:30	-	NST	1936
+			-3:30	StJohns	N%sT	1942 May 11
+			-3:30	Canada	N%sT	1946
+			-3:30	StJohns	N%sT	1966 Mar 15 2:00
+			-4:00	StJohns	A%sT
+
+
+# west Labrador, Nova Scotia, Prince Edward I
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that since 1970 most of this region has been like
+# Halifax.  Many locales did not observe peacetime DST until 1972;
+# Glace Bay, NS is the largest that we know of.
+# Shanks & Pottenger also write that Liverpool, NS was the only town
+# in Canada to observe DST in 1971 but not 1970; for now we'll assume
+# this is a typo.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Halifax	1916	only	-	Apr	 1	0:00	1:00	D
+Rule	Halifax	1916	only	-	Oct	 1	0:00	0	S
+Rule	Halifax	1920	only	-	May	 9	0:00	1:00	D
+Rule	Halifax	1920	only	-	Aug	29	0:00	0	S
+Rule	Halifax	1921	only	-	May	 6	0:00	1:00	D
+Rule	Halifax	1921	1922	-	Sep	 5	0:00	0	S
+Rule	Halifax	1922	only	-	Apr	30	0:00	1:00	D
+Rule	Halifax	1923	1925	-	May	Sun>=1	0:00	1:00	D
+Rule	Halifax	1923	only	-	Sep	 4	0:00	0	S
+Rule	Halifax	1924	only	-	Sep	15	0:00	0	S
+Rule	Halifax	1925	only	-	Sep	28	0:00	0	S
+Rule	Halifax	1926	only	-	May	16	0:00	1:00	D
+Rule	Halifax	1926	only	-	Sep	13	0:00	0	S
+Rule	Halifax	1927	only	-	May	 1	0:00	1:00	D
+Rule	Halifax	1927	only	-	Sep	26	0:00	0	S
+Rule	Halifax	1928	1931	-	May	Sun>=8	0:00	1:00	D
+Rule	Halifax	1928	only	-	Sep	 9	0:00	0	S
+Rule	Halifax	1929	only	-	Sep	 3	0:00	0	S
+Rule	Halifax	1930	only	-	Sep	15	0:00	0	S
+Rule	Halifax	1931	1932	-	Sep	Mon>=24	0:00	0	S
+Rule	Halifax	1932	only	-	May	 1	0:00	1:00	D
+Rule	Halifax	1933	only	-	Apr	30	0:00	1:00	D
+Rule	Halifax	1933	only	-	Oct	 2	0:00	0	S
+Rule	Halifax	1934	only	-	May	20	0:00	1:00	D
+Rule	Halifax	1934	only	-	Sep	16	0:00	0	S
+Rule	Halifax	1935	only	-	Jun	 2	0:00	1:00	D
+Rule	Halifax	1935	only	-	Sep	30	0:00	0	S
+Rule	Halifax	1936	only	-	Jun	 1	0:00	1:00	D
+Rule	Halifax	1936	only	-	Sep	14	0:00	0	S
+Rule	Halifax	1937	1938	-	May	Sun>=1	0:00	1:00	D
+Rule	Halifax	1937	1941	-	Sep	Mon>=24	0:00	0	S
+Rule	Halifax	1939	only	-	May	28	0:00	1:00	D
+Rule	Halifax	1940	1941	-	May	Sun>=1	0:00	1:00	D
+Rule	Halifax	1946	1949	-	Apr	lastSun	2:00	1:00	D
+Rule	Halifax	1946	1949	-	Sep	lastSun	2:00	0	S
+Rule	Halifax	1951	1954	-	Apr	lastSun	2:00	1:00	D
+Rule	Halifax	1951	1954	-	Sep	lastSun	2:00	0	S
+Rule	Halifax	1956	1959	-	Apr	lastSun	2:00	1:00	D
+Rule	Halifax	1956	1959	-	Sep	lastSun	2:00	0	S
+Rule	Halifax	1962	1973	-	Apr	lastSun	2:00	1:00	D
+Rule	Halifax	1962	1973	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Halifax	-4:14:24 -	LMT	1902 Jun 15
+			-4:00	Halifax	A%sT	1918
+			-4:00	Canada	A%sT	1919
+			-4:00	Halifax	A%sT	1942 Feb  9 2:00s
+			-4:00	Canada	A%sT	1946
+			-4:00	Halifax	A%sT	1974
+			-4:00	Canada	A%sT
+Zone America/Glace_Bay	-3:59:48 -	LMT	1902 Jun 15
+			-4:00	Canada	A%sT	1953
+			-4:00	Halifax	A%sT	1954
+			-4:00	-	AST	1972
+			-4:00	Halifax	A%sT	1974
+			-4:00	Canada	A%sT
+
+# New Brunswick
+
+# From Paul Eggert (2007-01-31):
+# The Time Definition Act <http://www.gnb.ca/0062/PDF-acts/t-06.pdf>
+# says they changed at 00:01 through 2006, and
+# <http://www.canlii.org/nb/laws/sta/t-6/20030127/whole.html> makes it
+# clear that this was the case since at least 1993.
+# For now, assume it started in 1993.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Moncton	1933	1935	-	Jun	Sun>=8	1:00	1:00	D
+Rule	Moncton	1933	1935	-	Sep	Sun>=8	1:00	0	S
+Rule	Moncton	1936	1938	-	Jun	Sun>=1	1:00	1:00	D
+Rule	Moncton	1936	1938	-	Sep	Sun>=1	1:00	0	S
+Rule	Moncton	1939	only	-	May	27	1:00	1:00	D
+Rule	Moncton	1939	1941	-	Sep	Sat>=21	1:00	0	S
+Rule	Moncton	1940	only	-	May	19	1:00	1:00	D
+Rule	Moncton	1941	only	-	May	 4	1:00	1:00	D
+Rule	Moncton	1946	1972	-	Apr	lastSun	2:00	1:00	D
+Rule	Moncton	1946	1956	-	Sep	lastSun	2:00	0	S
+Rule	Moncton	1957	1972	-	Oct	lastSun	2:00	0	S
+Rule	Moncton	1993	2006	-	Apr	Sun>=1	0:01	1:00	D
+Rule	Moncton	1993	2006	-	Oct	lastSun	0:01	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Moncton	-4:19:08 -	LMT	1883 Dec  9
+			-5:00	-	EST	1902 Jun 15
+			-4:00	Canada	A%sT	1933
+			-4:00	Moncton	A%sT	1942
+			-4:00	Canada	A%sT	1946
+			-4:00	Moncton	A%sT	1973
+			-4:00	Canada	A%sT	1993
+			-4:00	Moncton	A%sT	2007
+			-4:00	Canada	A%sT
+
+# Quebec
+
+# From Paul Eggert (2006-07-09):
+# Shanks & Pottenger write that since 1970 most of Quebec has been
+# like Montreal.
+
+# From Paul Eggert (2006-06-27):
+# Matthews and Vincent (1998) also write that Quebec east of the -63
+# meridian is supposed to observe AST, but residents as far east as
+# Natashquan use EST/EDT, and residents east of Natashquan use AST.
+# In "Official time in Quebec" the Quebec department of justice writes in
+# http://www.justice.gouv.qc.ca/english/publications/generale/temps-regl-1-a.htm
+# that "The residents of the Municipality of the
+# Cote-Nord-du-Golfe-Saint-Laurent and the municipalities of Saint-Augustin,
+# Bonne-Esperance and Blanc-Sablon apply the Official Time Act as it is
+# written and use Atlantic standard time all year round. The same applies to
+# the residents of the Native facilities along the lower North Shore."
+# <http://www.assnat.qc.ca/eng/37legislature2/Projets-loi/Publics/06-a002.htm>
+# says this common practice was codified into law as of 2007.
+# For lack of better info, guess this practice began around 1970, contra to
+# Shanks & Pottenger who have this region observing AST/ADT.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Mont	1917	only	-	Mar	25	2:00	1:00	D
+Rule	Mont	1917	only	-	Apr	24	0:00	0	S
+Rule	Mont	1919	only	-	Mar	31	2:30	1:00	D
+Rule	Mont	1919	only	-	Oct	25	2:30	0	S
+Rule	Mont	1920	only	-	May	 2	2:30	1:00	D
+Rule	Mont	1920	1922	-	Oct	Sun>=1	2:30	0	S
+Rule	Mont	1921	only	-	May	 1	2:00	1:00	D
+Rule	Mont	1922	only	-	Apr	30	2:00	1:00	D
+Rule	Mont	1924	only	-	May	17	2:00	1:00	D
+Rule	Mont	1924	1926	-	Sep	lastSun	2:30	0	S
+Rule	Mont	1925	1926	-	May	Sun>=1	2:00	1:00	D
+# The 1927-to-1937 rules can be expressed more simply as
+# Rule	Mont	1927	1937	-	Apr	lastSat	24:00	1:00	D
+# Rule	Mont	1927	1937	-	Sep	lastSat	24:00	0	S
+# The rules below avoid use of 24:00
+# (which pre-1998 versions of zic cannot handle).
+Rule	Mont	1927	only	-	May	1	0:00	1:00	D
+Rule	Mont	1927	1932	-	Sep	lastSun	0:00	0	S
+Rule	Mont	1928	1931	-	Apr	lastSun	0:00	1:00	D
+Rule	Mont	1932	only	-	May	1	0:00	1:00	D
+Rule	Mont	1933	1940	-	Apr	lastSun	0:00	1:00	D
+Rule	Mont	1933	only	-	Oct	1	0:00	0	S
+Rule	Mont	1934	1939	-	Sep	lastSun	0:00	0	S
+Rule	Mont	1946	1973	-	Apr	lastSun	2:00	1:00	D
+Rule	Mont	1945	1948	-	Sep	lastSun	2:00	0	S
+Rule	Mont	1949	1950	-	Oct	lastSun	2:00	0	S
+Rule	Mont	1951	1956	-	Sep	lastSun	2:00	0	S
+Rule	Mont	1957	1973	-	Oct	lastSun	2:00	0	S
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Blanc-Sablon -3:48:28 -	LMT	1884
+			-4:00	Canada	A%sT	1970
+			-4:00	-	AST
+Zone America/Montreal	-4:54:16 -	LMT	1884
+			-5:00	Mont	E%sT	1918
+			-5:00	Canada	E%sT	1919
+			-5:00	Mont	E%sT	1942 Feb  9 2:00s
+			-5:00	Canada	E%sT	1946
+			-5:00	Mont	E%sT	1974
+			-5:00	Canada	E%sT
+
+
+# Ontario
+
+# From Paul Eggert (2006-07-09):
+# Shanks & Pottenger write that since 1970 most of Ontario has been like
+# Toronto.
+# Thunder Bay skipped DST in 1973.
+# Many smaller locales did not observe peacetime DST until 1974;
+# Nipigon (EST) and Rainy River (CST) are the largest that we know of.
+# Far west Ontario is like Winnipeg; far east Quebec is like Halifax.
+
+# From Mark Brader (2003-07-26):
+# [According to the Toronto Star] Orillia, Ontario, adopted DST
+# effective Saturday, 1912-06-22, 22:00; the article mentions that
+# Port Arthur (now part of Thunder Bay, Ontario) as well as Moose Jaw
+# have already done so.  In Orillia DST was to run until Saturday,
+# 1912-08-31 (no time mentioned), but it was met with considerable
+# hostility from certain segments of the public, and was revoked after
+# only two weeks -- I copied it as Saturday, 1912-07-07, 22:00, but
+# presumably that should be -07-06.  (1912-06-19, -07-12; also letters
+# earlier in June).
+#
+# Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
+
+# From Paul Eggert (1997-10-17):
+# Mark Brader writes that an article in the 1997-10-14 Toronto Star
+# says that Atikokan, Ontario currently does not observe DST,
+# but will vote on 11-10 whether to use EST/EDT.
+# He also writes that the
+# <a href="http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html">
+# Ontario Time Act (1990, Chapter T.9)
+# </a>
+# says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
+# Officially Atikokan is therefore on CST/CDT, and most likely this report
+# concerns a non-official time observed as a matter of local practice.
+#
+# From Paul Eggert (2000-10-02):
+# Matthews and Vincent (1998) write that Atikokan, Pickle Lake, and
+# New Osnaburgh observe CST all year, that Big Trout Lake observes
+# CST/CDT, and that Upsala and Shebandowan observe EST/EDT, all in
+# violation of the official Ontario rules.
+#
+# From Paul Eggert (2006-07-09):
+# Chris Walton (2006-07-06) mentioned an article by Stephanie MacLellan in the
+# 2005-07-21 Chronicle-Journal, which said:
+#
+#	The clocks in Atikokan stay set on standard time year-round.
+#	This means they spend about half the time on central time and
+#	the other half on eastern time.
+#
+#	For the most part, the system works, Mayor Dennis Brown said.
+#
+#	"The majority of businesses in Atikokan deal more with Eastern
+#	Canada, but there are some that deal with Western Canada," he
+#	said.  "I don't see any changes happening here."
+#
+# Walton also writes "Supposedly Pickle Lake and Mishkeegogamang
+# [New Osnaburgh] follow the same practice."
+
+# From Garry McKinnon (2006-07-14) via Chris Walton:
+# I chatted with a member of my board who has an outstanding memory
+# and a long history in Atikokan (and in the telecom industry) and he
+# can say for certain that Atikokan has been practicing the current
+# time keeping since 1952, at least.
+
+# From Paul Eggert (2006-07-17):
+# Shanks & Pottenger say that Atikokan has agreed with Rainy River
+# ever since standard time was introduced, but the information from
+# McKinnon sounds more authoritative.  For now, assume that Atikokan
+# switched to EST immediately after WWII era daylight saving time
+# ended.  This matches the old (less-populous) America/Coral_Harbour
+# entry since our cutoff date of 1970, so we can move
+# America/Coral_Harbour to the 'backward' file.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Toronto	1919	only	-	Mar	30	23:30	1:00	D
+Rule	Toronto	1919	only	-	Oct	26	0:00	0	S
+Rule	Toronto	1920	only	-	May	 2	2:00	1:00	D
+Rule	Toronto	1920	only	-	Sep	26	0:00	0	S
+Rule	Toronto	1921	only	-	May	15	2:00	1:00	D
+Rule	Toronto	1921	only	-	Sep	15	2:00	0	S
+Rule	Toronto	1922	1923	-	May	Sun>=8	2:00	1:00	D
+# Shanks & Pottenger say 1923-09-19; assume it's a typo and that "-16"
+# was meant.
+Rule	Toronto	1922	1926	-	Sep	Sun>=15	2:00	0	S
+Rule	Toronto	1924	1927	-	May	Sun>=1	2:00	1:00	D
+# The 1927-to-1939 rules can be expressed more simply as
+# Rule	Toronto	1927	1937	-	Sep	Sun>=25	2:00	0	S
+# Rule	Toronto	1928	1937	-	Apr	Sun>=25	2:00	1:00	D
+# Rule	Toronto	1938	1940	-	Apr	lastSun	2:00	1:00	D
+# Rule	Toronto	1938	1939	-	Sep	lastSun	2:00	0	S
+# The rules below avoid use of Sun>=25
+# (which pre-2004 versions of zic cannot handle).
+Rule	Toronto	1927	1932	-	Sep	lastSun	2:00	0	S
+Rule	Toronto	1928	1931	-	Apr	lastSun	2:00	1:00	D
+Rule	Toronto	1932	only	-	May	1	2:00	1:00	D
+Rule	Toronto	1933	1940	-	Apr	lastSun	2:00	1:00	D
+Rule	Toronto	1933	only	-	Oct	1	2:00	0	S
+Rule	Toronto	1934	1939	-	Sep	lastSun	2:00	0	S
+Rule	Toronto	1945	1946	-	Sep	lastSun	2:00	0	S
+Rule	Toronto	1946	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Toronto	1947	1949	-	Apr	lastSun	0:00	1:00	D
+Rule	Toronto	1947	1948	-	Sep	lastSun	0:00	0	S
+Rule	Toronto	1949	only	-	Nov	lastSun	0:00	0	S
+Rule	Toronto	1950	1973	-	Apr	lastSun	2:00	1:00	D
+Rule	Toronto	1950	only	-	Nov	lastSun	2:00	0	S
+Rule	Toronto	1951	1956	-	Sep	lastSun	2:00	0	S
+# Shanks & Pottenger say Toronto ended DST a week early in 1971,
+# namely on 1971-10-24, but Mark Brader wrote (2003-05-31) that this
+# is wrong, and that he had confirmed it by checking the 1971-10-30
+# Toronto Star, which said that DST was ending 1971-10-31 as usual.
+Rule	Toronto	1957	1973	-	Oct	lastSun	2:00	0	S
+
+# From Paul Eggert (2003-07-27):
+# Willett (1914-03) writes (p. 17) "In the Cities of Fort William, and
+# Port Arthur, Ontario, the principle of the Bill has been in
+# operation for the past three years, and in the City of Moose Jaw,
+# Saskatchewan, for one year."
+
+# From David Bryan via Tory Tronrud, Director/Curator,
+# Thunder Bay Museum (2003-11-12):
+# There is some suggestion, however, that, by-law or not, daylight
+# savings time was being practiced in Fort William and Port Arthur
+# before 1909.... [I]n 1910, the line between the Eastern and Central
+# Time Zones was permanently moved about two hundred miles west to
+# include the Thunder Bay area....  When Canada adopted daylight
+# savings time in 1916, Fort William and Port Arthur, having done so
+# already, did not change their clocks....  During the Second World
+# War,... [t]he cities agreed to implement DST during the summer
+# months for the remainder of the war years.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Toronto	-5:17:32 -	LMT	1895
+			-5:00	Canada	E%sT	1919
+			-5:00	Toronto	E%sT	1942 Feb  9 2:00s
+			-5:00	Canada	E%sT	1946
+			-5:00	Toronto	E%sT	1974
+			-5:00	Canada	E%sT
+Zone America/Thunder_Bay -5:57:00 -	LMT	1895
+			-6:00	-	CST	1910
+			-5:00	-	EST	1942
+			-5:00	Canada	E%sT	1970
+			-5:00	Mont	E%sT	1973
+			-5:00	-	EST	1974
+			-5:00	Canada	E%sT
+Zone America/Nipigon	-5:53:04 -	LMT	1895
+			-5:00	Canada	E%sT	1940 Sep 29
+			-5:00	1:00	EDT	1942 Feb  9 2:00s
+			-5:00	Canada	E%sT
+Zone America/Rainy_River -6:18:16 -	LMT	1895
+			-6:00	Canada	C%sT	1940 Sep 29
+			-6:00	1:00	CDT	1942 Feb  9 2:00s
+			-6:00	Canada	C%sT
+Zone America/Atikokan	-6:06:28 -	LMT	1895
+			-6:00	Canada	C%sT	1940 Sep 29
+			-6:00	1:00	CDT	1942 Feb  9 2:00s
+			-6:00	Canada	C%sT	1945 Sep 30 2:00
+			-5:00	-	EST
+
+
+# Manitoba
+
+# From Rob Douglas (2006-04-06):
+# the old Manitoba Time Act - as amended by Bill 2, assented to
+# March 27, 1987 ... said ...
+# "between two o'clock Central Standard Time in the morning of
+# the first Sunday of April of each year and two o'clock Central
+# Standard Time in the morning of the last Sunday of October next
+# following, one hour in advance of Central Standard Time."...
+# I believe that the English legislation [of the old time act] had =
+# been assented to (March 22, 1967)....
+# Also, as far as I can tell, there was no order-in-council varying
+# the time of Daylight Saving Time for 2005 and so the provisions of
+# the 1987 version would apply - the changeover was at 2:00 Central
+# Standard Time (i.e. not until 3:00 Central Daylight Time).
+
+# From Paul Eggert (2006-04-10):
+# Shanks & Pottenger say Manitoba switched at 02:00 (not 02:00s)
+# starting 1966.  Since 02:00s is clearly correct for 1967 on, assume
+# it was also 02:00s in 1966.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Winn	1916	only	-	Apr	23	0:00	1:00	D
+Rule	Winn	1916	only	-	Sep	17	0:00	0	S
+Rule	Winn	1918	only	-	Apr	14	2:00	1:00	D
+Rule	Winn	1918	only	-	Oct	31	2:00	0	S
+Rule	Winn	1937	only	-	May	16	2:00	1:00	D
+Rule	Winn	1937	only	-	Sep	26	2:00	0	S
+Rule	Winn	1942	only	-	Feb	 9	2:00	1:00	W # War
+Rule	Winn	1945	only	-	Aug	14	23:00u	1:00	P # Peace
+Rule	Winn	1945	only	-	Sep	lastSun	2:00	0	S
+Rule	Winn	1946	only	-	May	12	2:00	1:00	D
+Rule	Winn	1946	only	-	Oct	13	2:00	0	S
+Rule	Winn	1947	1949	-	Apr	lastSun	2:00	1:00	D
+Rule	Winn	1947	1949	-	Sep	lastSun	2:00	0	S
+Rule	Winn	1950	only	-	May	 1	2:00	1:00	D
+Rule	Winn	1950	only	-	Sep	30	2:00	0	S
+Rule	Winn	1951	1960	-	Apr	lastSun	2:00	1:00	D
+Rule	Winn	1951	1958	-	Sep	lastSun	2:00	0	S
+Rule	Winn	1959	only	-	Oct	lastSun	2:00	0	S
+Rule	Winn	1960	only	-	Sep	lastSun	2:00	0	S
+Rule	Winn	1963	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Winn	1963	only	-	Sep	22	2:00	0	S
+Rule	Winn	1966	1986	-	Apr	lastSun	2:00s	1:00	D
+Rule	Winn	1966	2005	-	Oct	lastSun	2:00s	0	S
+Rule	Winn	1987	2005	-	Apr	Sun>=1	2:00s	1:00	D
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Winnipeg	-6:28:36 -	LMT	1887 Jul 16
+			-6:00	Winn	C%sT	2006
+			-6:00	Canada	C%sT
+
+
+# Saskatchewan
+
+# From Mark Brader (2003-07-26):
+# The first actual adoption of DST in Canada was at the municipal
+# level.  As the [Toronto] Star put it (1912-06-07), "While people
+# elsewhere have long been talking of legislation to save daylight,
+# the city of Moose Jaw [Saskatchewan] has acted on its own hook."
+# DST in Moose Jaw began on Saturday, 1912-06-01 (no time mentioned:
+# presumably late evening, as below), and would run until "the end of
+# the summer".  The discrepancy between municipal time and railroad
+# time was noted.
+
+# From Paul Eggert (2003-07-27):
+# Willett (1914-03) notes that DST "has been in operation ... in the
+# City of Moose Jaw, Saskatchewan, for one year."
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say that since 1970 this region has mostly been as Regina.
+# Some western towns (e.g. Swift Current) switched from MST/MDT to CST in 1972.
+# Other western towns (e.g. Lloydminster) are like Edmonton.
+# Matthews and Vincent (1998) write that Denare Beach and Creighton
+# are like Winnipeg, in violation of Saskatchewan law.
+
+# From W. Jones (1992-11-06):
+# The. . .below is based on information I got from our law library, the
+# provincial archives, and the provincial Community Services department.
+# A precise history would require digging through newspaper archives, and
+# since you didn't say what you wanted, I didn't bother.
+#
+# Saskatchewan is split by a time zone meridian (105W) and over the years
+# the boundary became pretty ragged as communities near it reevaluated
+# their affiliations in one direction or the other.  In 1965 a provincial
+# referendum favoured legislating common time practices.
+#
+# On 15 April 1966 the Time Act (c. T-14, Revised Statutes of
+# Saskatchewan 1978) was proclaimed, and established that the eastern
+# part of Saskatchewan would use CST year round, that districts in
+# northwest Saskatchewan would by default follow CST but could opt to
+# follow Mountain Time rules (thus 1 hour difference in the winter and
+# zero in the summer), and that districts in southwest Saskatchewan would
+# by default follow MT but could opt to follow CST.
+#
+# It took a few years for the dust to settle (I know one story of a town
+# on one time zone having its school in another, such that a mom had to
+# serve her family lunch in two shifts), but presently it seems that only
+# a few towns on the border with Alberta (e.g. Lloydminster) follow MT
+# rules any more; all other districts appear to have used CST year round
+# since sometime in the 1960s.
+
+# From Chris Walton (2006-06-26):
+# The Saskatchewan time act which was last updated in 1996 is about 30 pages
+# long and rather painful to read.
+# http://www.qp.gov.sk.ca/documents/English/Statutes/Statutes/T14.pdf
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Regina	1918	only	-	Apr	14	2:00	1:00	D
+Rule	Regina	1918	only	-	Oct	31	2:00	0	S
+Rule	Regina	1930	1934	-	May	Sun>=1	0:00	1:00	D
+Rule	Regina	1930	1934	-	Oct	Sun>=1	0:00	0	S
+Rule	Regina	1937	1941	-	Apr	Sun>=8	0:00	1:00	D
+Rule	Regina	1937	only	-	Oct	Sun>=8	0:00	0	S
+Rule	Regina	1938	only	-	Oct	Sun>=1	0:00	0	S
+Rule	Regina	1939	1941	-	Oct	Sun>=8	0:00	0	S
+Rule	Regina	1942	only	-	Feb	 9	2:00	1:00	W # War
+Rule	Regina	1945	only	-	Aug	14	23:00u	1:00	P # Peace
+Rule	Regina	1945	only	-	Sep	lastSun	2:00	0	S
+Rule	Regina	1946	only	-	Apr	Sun>=8	2:00	1:00	D
+Rule	Regina	1946	only	-	Oct	Sun>=8	2:00	0	S
+Rule	Regina	1947	1957	-	Apr	lastSun	2:00	1:00	D
+Rule	Regina	1947	1957	-	Sep	lastSun	2:00	0	S
+Rule	Regina	1959	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Regina	1959	only	-	Oct	lastSun	2:00	0	S
+#
+Rule	Swift	1957	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Swift	1957	only	-	Oct	lastSun	2:00	0	S
+Rule	Swift	1959	1961	-	Apr	lastSun	2:00	1:00	D
+Rule	Swift	1959	only	-	Oct	lastSun	2:00	0	S
+Rule	Swift	1960	1961	-	Sep	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Regina	-6:58:36 -	LMT	1905 Sep
+			-7:00	Regina	M%sT	1960 Apr lastSun 2:00
+			-6:00	-	CST
+Zone America/Swift_Current -7:11:20 -	LMT	1905 Sep
+			-7:00	Canada	M%sT	1946 Apr lastSun 2:00
+			-7:00	Regina	M%sT	1950
+			-7:00	Swift	M%sT	1972 Apr lastSun 2:00
+			-6:00	-	CST
+
+
+# Alberta
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Edm	1918	1919	-	Apr	Sun>=8	2:00	1:00	D
+Rule	Edm	1918	only	-	Oct	31	2:00	0	S
+Rule	Edm	1919	only	-	May	27	2:00	0	S
+Rule	Edm	1920	1923	-	Apr	lastSun	2:00	1:00	D
+Rule	Edm	1920	only	-	Oct	lastSun	2:00	0	S
+Rule	Edm	1921	1923	-	Sep	lastSun	2:00	0	S
+Rule	Edm	1942	only	-	Feb	 9	2:00	1:00	W # War
+Rule	Edm	1945	only	-	Aug	14	23:00u	1:00	P # Peace
+Rule	Edm	1945	only	-	Sep	lastSun	2:00	0	S
+Rule	Edm	1947	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Edm	1947	only	-	Sep	lastSun	2:00	0	S
+Rule	Edm	1967	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Edm	1967	only	-	Oct	lastSun	2:00	0	S
+Rule	Edm	1969	only	-	Apr	lastSun	2:00	1:00	D
+Rule	Edm	1969	only	-	Oct	lastSun	2:00	0	S
+Rule	Edm	1972	1986	-	Apr	lastSun	2:00	1:00	D
+Rule	Edm	1972	2006	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Edmonton	-7:33:52 -	LMT	1906 Sep
+			-7:00	Edm	M%sT	1987
+			-7:00	Canada	M%sT
+
+
+# British Columbia
+
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger write that since 1970 most of this region has
+# been like Vancouver.
+# Dawson Creek uses MST.  Much of east BC is like Edmonton.
+# Matthews and Vincent (1998) write that Creston is like Dawson Creek.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Vanc	1918	only	-	Apr	14	2:00	1:00	D
+Rule	Vanc	1918	only	-	Oct	31	2:00	0	S
+Rule	Vanc	1942	only	-	Feb	 9	2:00	1:00	W # War
+Rule	Vanc	1945	only	-	Aug	14	23:00u	1:00	P # Peace
+Rule	Vanc	1945	only	-	Sep	30	2:00	0	S
+Rule	Vanc	1946	1986	-	Apr	lastSun	2:00	1:00	D
+Rule	Vanc	1946	only	-	Oct	13	2:00	0	S
+Rule	Vanc	1947	1961	-	Sep	lastSun	2:00	0	S
+Rule	Vanc	1962	2006	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Vancouver	-8:12:28 -	LMT	1884
+			-8:00	Vanc	P%sT	1987
+			-8:00	Canada	P%sT
+Zone America/Dawson_Creek -8:00:56 -	LMT	1884
+			-8:00	Canada	P%sT	1947
+			-8:00	Vanc	P%sT	1972 Aug 30 2:00
+			-7:00	-	MST
+
+
+# Northwest Territories, Nunavut, Yukon
+
+# From Paul Eggert (2006-03-22):
+# Dawson switched to PST in 1973.  Inuvik switched to MST in 1979.
+# Mathew Englander (1996-10-07) gives the following refs:
+#	* 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
+#	c. 7 defines Yukon standard time as UTC-9.  This is still valid;
+#	see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
+#	* C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
+#	* O.I.C. 1980/02 established DST.
+#	* O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
+# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
+# with Englander.
+# From Chris Walton (2006-06-26):
+# Here is a link to the old daylight saving portion of the interpretation
+# act which was last updated in 1987:
+# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
+
+# From Rives McDow (1999-09-04):
+# Nunavut ... moved ... to incorporate the whole territory into one time zone.
+# <a href="http://www.nunatsiaq.com/nunavut/nvt90903_13.html">
+# Nunavut moves to single time zone Oct. 31
+# </a>
+#
+# From Antoine Leca (1999-09-06):
+# We then need to create a new timezone for the Kitikmeot region of Nunavut
+# to differentiate it from the Yellowknife region.
+
+# From Paul Eggert (1999-09-20):
+# <a href="http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html">
+# Basic Facts: The New Territory
+# </a> (1999) reports that Pangnirtung operates on eastern time,
+# and that Coral Harbour does not observe DST.  We don't know when
+# Pangnirtung switched to eastern time; we'll guess 1995.
+
+# From Rives McDow (1999-11-08):
+# On October 31, when the rest of Nunavut went to Central time,
+# Pangnirtung wobbled.  Here is the result of their wobble:
+#
+# The following businesses and organizations in Pangnirtung use Central Time:
+#
+#	First Air, Power Corp, Nunavut Construction, Health Center, RCMP,
+#	Eastern Arctic National Parks, A & D Specialist
+#
+# The following businesses and organizations in Pangnirtung use Eastern Time:
+#
+#	Hamlet office, All other businesses, Both schools, Airport operator
+#
+# This has made for an interesting situation there, which warranted the news.
+# No one there that I spoke with seems concerned, or has plans to
+# change the local methods of keeping time, as it evidently does not
+# really interfere with any activities or make things difficult locally.
+# They plan to celebrate New Year's turn-over twice, one hour apart,
+# so it appears that the situation will last at least that long.
+# The Nunavut Intergovernmental Affairs hopes that they will "come to
+# their senses", but the locals evidently don't see any problem with
+# the current state of affairs.
+
+# From Michaela Rodrigue, writing in the
+# <a href="http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html">
+# Nunatsiaq News (1999-11-19)</a>:
+# Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones,
+# central - or Nunavut time - for government offices, and eastern time
+# for municipal offices and schools....  Igloolik [was similar but then]
+# made the switch to central time on Saturday, Nov. 6.
+
+# From Paul Eggert (2000-10-02):
+# Matthews and Vincent (1998) say the following, but we lack histories
+# for these potential new Zones.
+#
+# The Canadian Forces station at Alert uses Eastern Time while the
+# handful of residents at the Eureka weather station [in the Central
+# zone] skip daylight savings.  Baffin Island, which is crossed by the
+# Central, Eastern and Atlantic Time zones only uses Eastern Time.
+# Gjoa Haven, Taloyoak and Pelly Bay all use Mountain instead of
+# Central Time and Southampton Island [in the Central zone] is not
+# required to use daylight savings.
+
+# From
+# <a href="http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html">
+# Nunavut now has two time zones
+# </a> (2000-11-10):
+# The Nunavut government would allow its employees in Kugluktuk and
+# Cambridge Bay to operate on central time year-round, putting them
+# one hour behind the rest of Nunavut for six months during the winter.
+# At the end of October the two communities had rebelled against
+# Nunavut's unified time zone, refusing to shift to eastern time with
+# the rest of the territory for the winter.  Cambridge Bay remained on
+# central time, while Kugluktuk, even farther west, reverted to
+# mountain time, which they had used before the advent of Nunavut's
+# unified time zone in 1999.
+#
+# From Rives McDow (2001-01-20), quoting the Nunavut government:
+# The preceding decision came into effect at midnight, Saturday Nov 4, 2000.
+
+# From Paul Eggert (2000-12-04):
+# Let's just keep track of the official times for now.
+
+# From Rives McDow (2001-03-07):
+# The premier of Nunavut has issued a ministerial statement advising
+# that effective 2001-04-01, the territory of Nunavut will revert
+# back to three time zones (mountain, central, and eastern).  Of the
+# cities in Nunavut, Coral Harbor is the only one that I know of that
+# has said it will not observe dst, staying on EST year round.  I'm
+# checking for more info, and will get back to you if I come up with
+# more.
+# [Also see <http://www.nunatsiaq.com/nunavut/nvt10309_06.html> (2001-03-09).]
+
+# From Gwillim Law (2005-05-21):
+# According to maps at
+# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg
+# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg
+# (both dated 2003), and
+# http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp
+# (from a 1998 Canadian Geographic article), the de facto and de jure time
+# for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year
+# round.  Using Google, it's easy to find other websites that confirm this.
+# I wasn't able to find how far back this time regimen goes, but since it
+# predates the creation of Nunavut, it probably goes back many years....
+# The Inuktitut name of Coral Harbour is Sallit, but it's rarely used.
+#
+# From Paul Eggert (2005-07-26):
+# For lack of better information, assume that Southampton Island observed
+# daylight saving only during wartime.
+
+# From Chris Walton (2007-03-01):
+# ... the community of Resolute (located on Cornwallis Island in
+# Nunavut) moved from Central Time to Eastern Time last November.
+# Basically the community did not change its clocks at the end of
+# daylight saving....
+# http://www.nnsl.com/frames/newspapers/2006-11/nov13_06none.html
+
+# From Chris Walton (2007-03-14):
+# Today I phoned the "hamlet office" to find out what Resolute was doing with
+# its clocks.
+#
+# The individual that answered the phone confirmed that the clocks did not
+# move at the end of daylight saving on October 29/2006.  He also told me that
+# the clocks did not move this past weekend (March 11/2007)....
+
+# From Chris Walton (2008-11-13):
+# ...the residents of Resolute believe that they are changing "time zones"
+# twice a year.  In winter months, local time is qualified with "Eastern
+# Time" which is really "Eastern Standard Time (UTC-5)".  In summer
+# months, local time is qualified with "Central Time" which is really
+# "Central Daylight Time (UTC-5)"...
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	NT_YK	1918	only	-	Apr	14	2:00	1:00	D
+Rule	NT_YK	1918	only	-	Oct	27	2:00	0	S
+Rule	NT_YK	1919	only	-	May	25	2:00	1:00	D
+Rule	NT_YK	1919	only	-	Nov	 1	0:00	0	S
+Rule	NT_YK	1942	only	-	Feb	 9	2:00	1:00	W # War
+Rule	NT_YK	1945	only	-	Aug	14	23:00u	1:00	P # Peace
+Rule	NT_YK	1945	only	-	Sep	30	2:00	0	S
+Rule	NT_YK	1965	only	-	Apr	lastSun	0:00	2:00	DD
+Rule	NT_YK	1965	only	-	Oct	lastSun	2:00	0	S
+Rule	NT_YK	1980	1986	-	Apr	lastSun	2:00	1:00	D
+Rule	NT_YK	1980	2006	-	Oct	lastSun	2:00	0	S
+Rule	NT_YK	1987	2006	-	Apr	Sun>=1	2:00	1:00	D
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+# aka Panniqtuuq
+Zone America/Pangnirtung 0	-	zzz	1921 # trading post est.
+			-4:00	NT_YK	A%sT	1995 Apr Sun>=1 2:00
+			-5:00	Canada	E%sT	1999 Oct 31 2:00
+			-6:00	Canada	C%sT	2000 Oct 29 2:00
+			-5:00	Canada	E%sT
+# formerly Frobisher Bay
+Zone America/Iqaluit	0	-	zzz	1942 Aug # Frobisher Bay est.
+			-5:00	NT_YK	E%sT	1999 Oct 31 2:00
+			-6:00	Canada	C%sT	2000 Oct 29 2:00
+			-5:00	Canada	E%sT
+# aka Qausuittuq
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Resolute 2006	max	-	Nov	Sun>=1	2:00	0	ES
+Rule	Resolute 2007	max	-	Mar	Sun>=8	2:00	0	CD
+Zone America/Resolute	0	-	zzz	1947 Aug 31 # Resolute founded
+			-6:00	NT_YK	C%sT	2000 Oct 29 2:00
+			-5:00	-	EST	2001 Apr  1 3:00
+			-6:00	Canada	C%sT	2006 Oct 29 2:00
+			-5:00	Resolute	%sT
+# aka Kangiqiniq
+Zone America/Rankin_Inlet 0	-	zzz	1957 # Rankin Inlet founded
+			-6:00	NT_YK	C%sT	2000 Oct 29 2:00
+			-5:00	-	EST	2001 Apr  1 3:00
+			-6:00	Canada	C%sT
+# aka Iqaluktuuttiaq
+Zone America/Cambridge_Bay 0	-	zzz	1920 # trading post est.?
+			-7:00	NT_YK	M%sT	1999 Oct 31 2:00
+			-6:00	Canada	C%sT	2000 Oct 29 2:00
+			-5:00	-	EST	2000 Nov  5 0:00
+			-6:00	-	CST	2001 Apr  1 3:00
+			-7:00	Canada	M%sT
+Zone America/Yellowknife 0	-	zzz	1935 # Yellowknife founded?
+			-7:00	NT_YK	M%sT	1980
+			-7:00	Canada	M%sT
+Zone America/Inuvik	0	-	zzz	1953 # Inuvik founded
+			-8:00	NT_YK	P%sT	1979 Apr lastSun 2:00
+			-7:00	NT_YK	M%sT	1980
+			-7:00	Canada	M%sT
+Zone America/Whitehorse	-9:00:12 -	LMT	1900 Aug 20
+			-9:00	NT_YK	Y%sT	1966 Jul 1 2:00
+			-8:00	NT_YK	P%sT	1980
+			-8:00	Canada	P%sT
+Zone America/Dawson	-9:17:40 -	LMT	1900 Aug 20
+			-9:00	NT_YK	Y%sT	1973 Oct 28 0:00
+			-8:00	NT_YK	P%sT	1980
+			-8:00	Canada	P%sT
+
+
+###############################################################################
+
+# Mexico
+
+# From Paul Eggert (2001-03-05):
+# The Investigation and Analysis Service of the
+# Mexican Library of Congress (MLoC) has published a
+# <a href="http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/">
+# history of Mexican local time (in Spanish)
+# </a>.
+#
+# Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC.
+# (In all cases we go with the MLoC.)
+# S&P report that Baja was at -8:00 in 1922/1923.
+# S&P say the 1930 transition in Baja was 1930-11-16.
+# S&P report no DST during summer 1931.
+# S&P report a transition at 1932-03-30 23:00, not 1932-04-01.
+
+# From Gwillim Law (2001-02-20):
+# There are some other discrepancies between the Decrees page and the
+# tz database.  I think they can best be explained by supposing that
+# the researchers who prepared the Decrees page failed to find some of
+# the relevant documents.
+
+# From Alan Perry (1996-02-15):
+# A guy from our Mexico subsidiary finally found the Presidential Decree
+# outlining the timezone changes in Mexico.
+#
+# ------------- Begin Forwarded Message -------------
+#
+# I finally got my hands on the Official Presidential Decree that sets up the
+# rules for the DST changes. The rules are:
+#
+# 1. The country is divided in 3 timezones:
+#    - Baja California Norte (the Mexico/BajaNorte TZ)
+#    - Baja California Sur, Nayarit, Sinaloa and Sonora (the Mexico/BajaSur TZ)
+#    - The rest of the country (the Mexico/General TZ)
+#
+# 2. From the first Sunday in April at 2:00 AM to the last Sunday in October
+#    at 2:00 AM, the times in each zone are as follows:
+#    BajaNorte: GMT+7
+#    BajaSur:   GMT+6
+#    General:   GMT+5
+#
+# 3. The rest of the year, the times are as follows:
+#    BajaNorte: GMT+8
+#    BajaSur:   GMT+7
+#    General:   GMT+6
+#
+# The Decree was published in Mexico's Official Newspaper on January 4th.
+#
+# -------------- End Forwarded Message --------------
+# From Paul Eggert (1996-06-12):
+# For an English translation of the decree, see
+# <a href="http://mexico-travel.com/extra/timezone_eng.html">
+# ``Diario Oficial: Time Zone Changeover'' (1996-01-04).
+# </a>
+
+# From Rives McDow (1998-10-08):
+# The State of Quintana Roo has reverted back to central STD and DST times
+# (i.e. UTC -0600 and -0500 as of 1998-08-02).
+
+# From Rives McDow (2000-01-10):
+# Effective April 4, 1999 at 2:00 AM local time, Sonora changed to the time
+# zone 5 hours from the International Date Line, and will not observe daylight
+# savings time so as to stay on the same time zone as the southern part of
+# Arizona year round.
+
+# From Jesper Norgaard, translating
+# <http://www.reforma.com/nacional/articulo/064327/> (2001-01-17):
+# In Oaxaca, the 55.000 teachers from the Section 22 of the National
+# Syndicate of Education Workers, refuse to apply daylight saving each
+# year, so that the more than 10,000 schools work at normal hour the
+# whole year.
+
+# From Gwillim Law (2001-01-19):
+# <http://www.reforma.com/negocios_y_dinero/articulo/064481/> ... says
+# (translated):...
+# January 17, 2000 - The Energy Secretary, Ernesto Martens, announced
+# that Summer Time will be reduced from seven to five months, starting
+# this year....
+# <http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001>
+# [translated], says "summer time will ... take effect on the first Sunday
+# in May, and end on the last Sunday of September.
+
+# From Arthur David Olson (2001-01-25):
+# The 2001-01-24 traditional Washington Post contained the page one
+# story "Timely Issue Divides Mexicans."...
+# http://www.washingtonpost.com/wp-dyn/articles/A37383-2001Jan23.html
+# ... Mexico City Mayor Lopez Obrador "...is threatening to keep
+# Mexico City and its 20 million residents on a different time than
+# the rest of the country..." In particular, Lopez Obrador would abolish
+# observation of Daylight Saving Time.
+
+# <a href="http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre">
+# Official statute published by the Energy Department
+# </a> (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
+# and Sonora with no DST.  This was reported by Jesper Norgaard (2001-02-03).
+
+# From Paul Eggert (2001-03-03):
+#
+# <a href="http://www.latimes.com/news/nation/20010303/t000018766.html">
+# James F. Smith writes in today's LA Times
+# </a>
+# * Sonora will continue to observe standard time.
+# * Last week Mexico City's mayor Andres Manuel Lopez Obrador decreed that
+#   the Federal District will not adopt DST.
+# * 4 of 16 district leaders announced they'll ignore the decree.
+# * The decree does not affect federal-controlled facilities including
+#   the airport, banks, hospitals, and schools.
+#
+# For now we'll assume that the Federal District will bow to federal rules.
+
+# From Jesper Norgaard (2001-04-01):
+# I found some references to the Mexican application of daylight
+# saving, which modifies what I had already sent you, stating earlier
+# that a number of northern Mexican states would go on daylight
+# saving. The modification reverts this to only cover Baja California
+# (Norte), while all other states (except Sonora, who has no daylight
+# saving all year) will follow the original decree of president
+# Vicente Fox, starting daylight saving May 6, 2001 and ending
+# September 30, 2001.
+# References: "Diario de Monterrey" <www.diariodemonterrey.com/index.asp>
+# Palabra <http://palabra.infosel.com/010331/primera/ppri3101.pdf> (2001-03-31)
+
+# From Reuters (2001-09-04):
+# Mexico's Supreme Court on Tuesday declared that daylight savings was
+# unconstitutional in Mexico City, creating the possibility the
+# capital will be in a different time zone from the rest of the nation
+# next year....  The Supreme Court's ruling takes effect at 2:00
+# a.m. (0800 GMT) on Sept. 30, when Mexico is scheduled to revert to
+# standard time. "This is so residents of the Federal District are not
+# subject to unexpected time changes," a statement from the court said.
+
+# From Jesper Norgaard Welen (2002-03-12):
+# ... consulting my local grocery store(!) and my coworkers, they all insisted
+# that a new decision had been made to reinstate US style DST in Mexico....
+# http://www.conae.gob.mx/ahorro/horaver2001_m1_2002.html (2002-02-20)
+# confirms this.  Sonora as usual is the only state where DST is not applied.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Mexico	1939	only	-	Feb	5	0:00	1:00	D
+Rule	Mexico	1939	only	-	Jun	25	0:00	0	S
+Rule	Mexico	1940	only	-	Dec	9	0:00	1:00	D
+Rule	Mexico	1941	only	-	Apr	1	0:00	0	S
+Rule	Mexico	1943	only	-	Dec	16	0:00	1:00	W # War
+Rule	Mexico	1944	only	-	May	1	0:00	0	S
+Rule	Mexico	1950	only	-	Feb	12	0:00	1:00	D
+Rule	Mexico	1950	only	-	Jul	30	0:00	0	S
+Rule	Mexico	1996	2000	-	Apr	Sun>=1	2:00	1:00	D
+Rule	Mexico	1996	2000	-	Oct	lastSun	2:00	0	S
+Rule	Mexico	2001	only	-	May	Sun>=1	2:00	1:00	D
+Rule	Mexico	2001	only	-	Sep	lastSun	2:00	0	S
+Rule	Mexico	2002	max	-	Apr	Sun>=1	2:00	1:00	D
+Rule	Mexico	2002	max	-	Oct	lastSun	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+# Quintana Roo
+Zone America/Cancun	-5:47:04 -	LMT	1922 Jan  1  0:12:56
+			-6:00	-	CST	1981 Dec 23
+			-5:00	Mexico	E%sT	1998 Aug  2  2:00
+			-6:00	Mexico	C%sT
+# Campeche, Yucatan
+Zone America/Merida	-5:58:28 -	LMT	1922 Jan  1  0:01:32
+			-6:00	-	CST	1981 Dec 23
+			-5:00	-	EST	1982 Dec  2
+			-6:00	Mexico	C%sT
+# Coahuila, Durango, Nuevo Leon, Tamaulipas
+Zone America/Monterrey	-6:41:16 -	LMT	1921 Dec 31 23:18:44
+			-6:00	-	CST	1988
+			-6:00	US	C%sT	1989
+			-6:00	Mexico	C%sT
+# Central Mexico
+Zone America/Mexico_City -6:36:36 -	LMT	1922 Jan  1  0:23:24
+			-7:00	-	MST	1927 Jun 10 23:00
+			-6:00	-	CST	1930 Nov 15
+			-7:00	-	MST	1931 May  1 23:00
+			-6:00	-	CST	1931 Oct
+			-7:00	-	MST	1932 Apr  1
+			-6:00	Mexico	C%sT	2001 Sep 30 02:00
+			-6:00	-	CST	2002 Feb 20
+			-6:00	Mexico	C%sT
+# Chihuahua
+Zone America/Chihuahua	-7:04:20 -	LMT	1921 Dec 31 23:55:40
+			-7:00	-	MST	1927 Jun 10 23:00
+			-6:00	-	CST	1930 Nov 15
+			-7:00	-	MST	1931 May  1 23:00
+			-6:00	-	CST	1931 Oct
+			-7:00	-	MST	1932 Apr  1
+			-6:00	-	CST	1996
+			-6:00	Mexico	C%sT	1998
+			-6:00	-	CST	1998 Apr Sun>=1 3:00
+			-7:00	Mexico	M%sT
+# Sonora
+Zone America/Hermosillo	-7:23:52 -	LMT	1921 Dec 31 23:36:08
+			-7:00	-	MST	1927 Jun 10 23:00
+			-6:00	-	CST	1930 Nov 15
+			-7:00	-	MST	1931 May  1 23:00
+			-6:00	-	CST	1931 Oct
+			-7:00	-	MST	1932 Apr  1
+			-6:00	-	CST	1942 Apr 24
+			-7:00	-	MST	1949 Jan 14
+			-8:00	-	PST	1970
+			-7:00	Mexico	M%sT	1999
+			-7:00	-	MST
+# Baja California Sur, Nayarit, Sinaloa
+Zone America/Mazatlan	-7:05:40 -	LMT	1921 Dec 31 23:54:20
+			-7:00	-	MST	1927 Jun 10 23:00
+			-6:00	-	CST	1930 Nov 15
+			-7:00	-	MST	1931 May  1 23:00
+			-6:00	-	CST	1931 Oct
+			-7:00	-	MST	1932 Apr  1
+			-6:00	-	CST	1942 Apr 24
+			-7:00	-	MST	1949 Jan 14
+			-8:00	-	PST	1970
+			-7:00	Mexico	M%sT
+# Baja California
+Zone America/Tijuana	-7:48:04 -	LMT	1922 Jan  1  0:11:56
+			-7:00	-	MST	1924
+			-8:00	-	PST	1927 Jun 10 23:00
+			-7:00	-	MST	1930 Nov 15
+			-8:00	-	PST	1931 Apr  1
+			-8:00	1:00	PDT	1931 Sep 30
+			-8:00	-	PST	1942 Apr 24
+			-8:00	1:00	PWT	1945 Aug 14 23:00u
+			-8:00	1:00	PPT	1945 Nov 12 # Peace
+			-8:00	-	PST	1948 Apr  5
+			-8:00	1:00	PDT	1949 Jan 14
+			-8:00	-	PST	1954
+			-8:00	CA	P%sT	1961
+			-8:00	-	PST	1976
+			-8:00	US	P%sT	1996
+			-8:00	Mexico	P%sT	2001
+			-8:00	US	P%sT	2002 Feb 20
+			-8:00	Mexico	P%sT
+# From Paul Eggert (2006-03-22):
+# Formerly there was an America/Ensenada zone, which differed from
+# America/Tijuana only in that it did not observe DST from 1976
+# through 1995.  This was as per Shanks (1999).  But Shanks & Pottenger say
+# Ensenada did not observe DST from 1948 through 1975.  Guy Harris reports
+# that the 1987 OAG says "Only Ensenada, Mexicale, San Felipe and
+# Tijuana observe DST," which agrees with Shanks & Pottenger but implies that
+# DST-observance was a town-by-town matter back then.  This concerns
+# data after 1970 so most likely there should be at least one Zone
+# other than America/Tijuana for Baja, but it's not clear yet what its
+# name or contents should be.
+#
+# Revillagigedo Is
+# no information
+
+###############################################################################
+
+# Anguilla
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Anguilla	-4:12:16 -	LMT	1912 Mar 2
+			-4:00	-	AST
+
+# Antigua and Barbuda
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Antigua	-4:07:12 -	LMT	1912 Mar 2
+			-5:00	-	EST	1951
+			-4:00	-	AST
+
+# Bahamas
+#
+# From Sue Williams (2006-12-07):
+# The Bahamas announced about a month ago that they plan to change their DST
+# rules to sync with the U.S. starting in 2007....
+# http://www.jonesbahamas.com/?c=45&a=10412
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Bahamas	1964	1975	-	Oct	lastSun	2:00	0	S
+Rule	Bahamas	1964	1975	-	Apr	lastSun	2:00	1:00	D
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Nassau	-5:09:24 -	LMT	1912 Mar 2
+			-5:00	Bahamas	E%sT	1976
+			-5:00	US	E%sT
+
+# Barbados
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Barb	1977	only	-	Jun	12	2:00	1:00	D
+Rule	Barb	1977	1978	-	Oct	Sun>=1	2:00	0	S
+Rule	Barb	1978	1980	-	Apr	Sun>=15	2:00	1:00	D
+Rule	Barb	1979	only	-	Sep	30	2:00	0	S
+Rule	Barb	1980	only	-	Sep	25	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Barbados	-3:58:28 -	LMT	1924		# Bridgetown
+			-3:58:28 -	BMT	1932	  # Bridgetown Mean Time
+			-4:00	Barb	A%sT
+
+# Belize
+# Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Belize	1918	1942	-	Oct	Sun>=2	0:00	0:30	HD
+Rule	Belize	1919	1943	-	Feb	Sun>=9	0:00	0	S
+Rule	Belize	1973	only	-	Dec	 5	0:00	1:00	D
+Rule	Belize	1974	only	-	Feb	 9	0:00	0	S
+Rule	Belize	1982	only	-	Dec	18	0:00	1:00	D
+Rule	Belize	1983	only	-	Feb	12	0:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Belize	-5:52:48 -	LMT	1912 Apr
+			-6:00	Belize	C%sT
+
+# Bermuda
+
+# From Dan Jones, reporting in The Royal Gazette (2006-06-26):
+
+# Next year, however, clocks in the US will go forward on the second Sunday
+# in March, until the first Sunday in November.  And, after the Time Zone
+# (Seasonal Variation) Bill 2006 was passed in the House of Assembly on
+# Friday, the same thing will happen in Bermuda.
+# http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Atlantic/Bermuda	-4:19:04 -	LMT	1930 Jan  1 2:00    # Hamilton
+			-4:00	-	AST	1974 Apr 28 2:00
+			-4:00	Bahamas	A%sT	1976
+			-4:00	US	A%sT
+
+# Cayman Is
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Cayman	-5:25:32 -	LMT	1890		# Georgetown
+			-5:07:12 -	KMT	1912 Feb    # Kingston Mean Time
+			-5:00	-	EST
+
+# Costa Rica
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	CR	1979	1980	-	Feb	lastSun	0:00	1:00	D
+Rule	CR	1979	1980	-	Jun	Sun>=1	0:00	0	S
+Rule	CR	1991	1992	-	Jan	Sat>=15	0:00	1:00	D
+# IATA SSIM (1991-09) says the following was at 1:00;
+# go with Shanks & Pottenger.
+Rule	CR	1991	only	-	Jul	 1	0:00	0	S
+Rule	CR	1992	only	-	Mar	15	0:00	0	S
+# There are too many San Joses elsewhere, so we'll use `Costa Rica'.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Costa_Rica	-5:36:20 -	LMT	1890		# San Jose
+			-5:36:20 -	SJMT	1921 Jan 15 # San Jose Mean Time
+			-6:00	CR	C%sT
+# Coco
+# no information; probably like America/Costa_Rica
+
+# Cuba
+
+# From Arthur David Olson (1999-03-29):
+# The 1999-03-28 exhibition baseball game held in Havana, Cuba, between
+# the Cuban National Team and the Baltimore Orioles was carried live on
+# the Orioles Radio Network, including affiliate WTOP in Washington, DC.
+# During the game, play-by-play announcer Jim Hunter noted that
+# "We'll be losing two hours of sleep...Cuba switched to Daylight Saving
+# Time today."  (The "two hour" remark referred to losing one hour of
+# sleep on 1999-03-28--when the announcers were in Cuba as it switched
+# to DST--and one more hour on 1999-04-04--when the announcers will have
+# returned to Baltimore, which switches on that date.)
+
+# From Evert van der Veer via Steffen Thorsen (2004-10-28):
+# Cuba is not going back to standard time this year.
+# From Paul Eggert (2006-03-22):
+# http://www.granma.cu/ingles/2004/septiembre/juev30/41medid-i.html
+# says that it's due to a problem at the Antonio Guiteras
+# thermoelectric plant, and says "This October there will be no return
+# to normal hours (after daylight saving time)".
+# For now, let's assume that it's a temporary measure.
+
+# From Carlos A. Carnero Delgado (2005-11-12):
+# This year (just like in 2004-2005) there's no change in time zone
+# adjustment in Cuba.  We will stay in daylight saving time:
+# http://www.granma.cu/espanol/2005/noviembre/mier9/horario.html
+
+# From Jesper Norgaard Welen (2006-10-21):
+# An article in GRANMA INTERNACIONAL claims that Cuba will end
+# the 3 years of permanent DST next weekend, see
+# http://www.granma.cu/ingles/2006/octubre/lun16/43horario.html
+# "On Saturday night, October 28 going into Sunday, October 29, at 01:00,
+# watches should be set back one hour -- going back to 00:00 hours -- returning
+# to the normal schedule....
+
+# From Paul Eggert (2007-03-02):
+# http://www.granma.cubaweb.cu/english/news/art89.html, dated yesterday,
+# says Cuban clocks will advance at midnight on March 10.
+# For lack of better information, assume Cuba will use US rules,
+# except that it switches at midnight standard time as usual.
+#
+# From Steffen Thorsen (2007-10-25):
+# Carlos Alberto Fonseca Arauz informed me that Cuba will end DST one week 
+# earlier - on the last Sunday of October, just like in 2006.
+# 
+# He supplied these references:
+# 
+# http://www.prensalatina.com.mx/article.asp?ID=%7B4CC32C1B-A9F7-42FB-8A07-8631AFC923AF%7D&language=ES
+# http://actualidad.terra.es/sociedad/articulo/cuba_llama_ahorrar_energia_cambio_1957044.htm
+# 
+# From Alex Kryvenishev (2007-10-25):
+# Here is also article from Granma (Cuba):
+# 
+# [Regira] el Horario Normal desde el [proximo] domingo 28 de octubre
+# http://www.granma.cubaweb.cu/2007/10/24/nacional/artic07.html
+# 
+# http://www.worldtimezone.com/dst_news/dst_news_cuba03.html
+
+# From Arthur David Olson (2008-03-09):
+# I'm in Maryland which is now observing United States Eastern Daylight
+# Time. At 9:44 local time I used RealPlayer to listen to
+# <a href="http://media.enet.cu/radioreloj">
+# http://media.enet.cu/radioreloj
+# </a>, a Cuban information station, and heard
+# the time announced as "ocho cuarenta y cuatro" ("eight forty-four"),
+# indicating that Cuba is still on standard time.
+
+# From Steffen Thorsen (2008-03-12):
+# It seems that Cuba will start DST on Sunday, 2007-03-16...
+# It was announced yesterday, according to this source (in Spanish):
+# <a href="http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm">
+# http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
+# </a>
+#
+# Some more background information is posted here:
+# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html">
+# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
+# </a>
+#
+# The article also says that Cuba has been observing DST since 1963,
+# while Shanks (and tzdata) has 1965 as the first date (except in the
+# 1940's). Many other web pages in Cuba also claim that it has been
+# observed since 1963, but with the exception of 1970 - an exception
+# which is not present in tzdata/Shanks. So there is a chance we need to
+# change some historic records as well.
+#
+# One example:
+# <a href="http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm">
+# http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm
+# </a>
+
+# From Jesper Norgaard Welen (2008-03-13):
+# The Cuban time change has just been confirmed on the most authoritative
+# web site, the Granma.  Please check out
+# <a href="http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html">
+# http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html
+# </a>
+#
+# Basically as expected after Steffen Thorsens information, the change
+# will take place midnight between Saturday and Sunday.
+
+# From Arthur David Olson (2008-03-12):
+# Assume Sun>=15 (third Sunday) going forward.
+
+# From Alexander Krivenyshev (2009-03-04)
+# According to the Radio Reloj - Cuba will start Daylight Saving Time on
+# midnight between Saturday, March 07, 2009 and Sunday, March 08, 2009-
+# not on midnight March 14 / March 15 as previously thought.
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_cuba05.html">
+# http://www.worldtimezone.com/dst_news/dst_news_cuba05.html
+# (in Spanish)
+# </a>
+
+# From Arthur David Olson (2009-03-09)
+# I listened over the Internet to
+# <a href="http://media.enet.cu/readioreloj">
+# http://media.enet.cu/readioreloj
+# </a>
+# this morning; when it was 10:05 a. m. here in Bethesda, Maryland the
+# the time was announced as "diez cinco"--the same time as here, indicating
+# that has indeed switched to DST. Assume second Sunday from 2009 forward.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Cuba	1928	only	-	Jun	10	0:00	1:00	D
+Rule	Cuba	1928	only	-	Oct	10	0:00	0	S
+Rule	Cuba	1940	1942	-	Jun	Sun>=1	0:00	1:00	D
+Rule	Cuba	1940	1942	-	Sep	Sun>=1	0:00	0	S
+Rule	Cuba	1945	1946	-	Jun	Sun>=1	0:00	1:00	D
+Rule	Cuba	1945	1946	-	Sep	Sun>=1	0:00	0	S
+Rule	Cuba	1965	only	-	Jun	1	0:00	1:00	D
+Rule	Cuba	1965	only	-	Sep	30	0:00	0	S
+Rule	Cuba	1966	only	-	May	29	0:00	1:00	D
+Rule	Cuba	1966	only	-	Oct	2	0:00	0	S
+Rule	Cuba	1967	only	-	Apr	8	0:00	1:00	D
+Rule	Cuba	1967	1968	-	Sep	Sun>=8	0:00	0	S
+Rule	Cuba	1968	only	-	Apr	14	0:00	1:00	D
+Rule	Cuba	1969	1977	-	Apr	lastSun	0:00	1:00	D
+Rule	Cuba	1969	1971	-	Oct	lastSun	0:00	0	S
+Rule	Cuba	1972	1974	-	Oct	8	0:00	0	S
+Rule	Cuba	1975	1977	-	Oct	lastSun	0:00	0	S
+Rule	Cuba	1978	only	-	May	7	0:00	1:00	D
+Rule	Cuba	1978	1990	-	Oct	Sun>=8	0:00	0	S
+Rule	Cuba	1979	1980	-	Mar	Sun>=15	0:00	1:00	D
+Rule	Cuba	1981	1985	-	May	Sun>=5	0:00	1:00	D
+Rule	Cuba	1986	1989	-	Mar	Sun>=14	0:00	1:00	D
+Rule	Cuba	1990	1997	-	Apr	Sun>=1	0:00	1:00	D
+Rule	Cuba	1991	1995	-	Oct	Sun>=8	0:00s	0	S
+Rule	Cuba	1996	only	-	Oct	 6	0:00s	0	S
+Rule	Cuba	1997	only	-	Oct	12	0:00s	0	S
+Rule	Cuba	1998	1999	-	Mar	lastSun	0:00s	1:00	D
+Rule	Cuba	1998	2003	-	Oct	lastSun	0:00s	0	S
+Rule	Cuba	2000	2004	-	Apr	Sun>=1	0:00s	1:00	D
+Rule	Cuba	2006	max	-	Oct	lastSun	0:00s	0	S
+Rule	Cuba	2007	only	-	Mar	Sun>=8	0:00s	1:00	D
+Rule	Cuba	2008	only	-	Mar	Sun>=15	0:00s	1:00	D
+Rule	Cuba	2009	max	-	Mar	Sun>=8	0:00s	1:00	D
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Havana	-5:29:28 -	LMT	1890
+			-5:29:36 -	HMT	1925 Jul 19 12:00 # Havana MT
+			-5:00	Cuba	C%sT
+
+# Dominica
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Dominica	-4:05:36 -	LMT	1911 Jul 1 0:01		# Roseau
+			-4:00	-	AST
+
+# Dominican Republic
+
+# From Steffen Thorsen (2000-10-30):
+# Enrique Morales reported to me that the Dominican Republic has changed the
+# time zone to Eastern Standard Time as of Sunday 29 at 2 am....
+# http://www.listin.com.do/antes/261000/republica/princi.html
+
+# From Paul Eggert (2000-12-04):
+# That URL (2000-10-26, in Spanish) says they planned to use US-style DST.
+
+# From Rives McDow (2000-12-01):
+# Dominican Republic changed its mind and presidential decree on Tuesday,
+# November 28, 2000, with a new decree.  On Sunday, December 3 at 1:00 AM the
+# Dominican Republic will be reverting to 8 hours from the International Date
+# Line, and will not be using DST in the foreseeable future.  The reason they
+# decided to use DST was to be in synch with Puerto Rico, who was also going
+# to implement DST.  When Puerto Rico didn't implement DST, the president
+# decided to revert.
+
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	DR	1966	only	-	Oct	30	0:00	1:00	D
+Rule	DR	1967	only	-	Feb	28	0:00	0	S
+Rule	DR	1969	1973	-	Oct	lastSun	0:00	0:30	HD
+Rule	DR	1970	only	-	Feb	21	0:00	0	S
+Rule	DR	1971	only	-	Jan	20	0:00	0	S
+Rule	DR	1972	1974	-	Jan	21	0:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Santo_Domingo -4:39:36 -	LMT	1890
+			-4:40	-	SDMT	1933 Apr  1 12:00 # S. Dom. MT
+			-5:00	DR	E%sT	1974 Oct 27
+			-4:00	-	AST	2000 Oct 29 02:00
+			-5:00	US	E%sT	2000 Dec  3 01:00
+			-4:00	-	AST
+
+# El Salvador
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Salv	1987	1988	-	May	Sun>=1	0:00	1:00	D
+Rule	Salv	1987	1988	-	Sep	lastSun	0:00	0	S
+# There are too many San Salvadors elsewhere, so use America/El_Salvador
+# instead of America/San_Salvador.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/El_Salvador -5:56:48 -	LMT	1921		# San Salvador
+			-6:00	Salv	C%sT
+
+# Grenada
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Grenada	-4:07:00 -	LMT	1911 Jul	# St George's
+			-4:00	-	AST
+
+# Guadeloupe
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Guadeloupe	-4:06:08 -	LMT	1911 Jun 8	# Pointe a Pitre
+			-4:00	-	AST
+# St Barthelemy
+Link America/Guadeloupe	America/St_Barthelemy
+# St Martin (French part)
+Link America/Guadeloupe	America/Marigot
+
+# Guatemala
+#
+# From Gwillim Law (2006-04-22), after a heads-up from Oscar van Vlijmen:
+# Diario Co Latino, at
+# http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079,
+# says in an article dated 2006-04-19 that the Guatemalan government had
+# decided on that date to advance official time by 60 minutes, to lessen the
+# impact of the elevated cost of oil....  Daylight saving time will last from
+# 2006-04-29 24:00 (Guatemalan standard time) to 2006-09-30 (time unspecified).
+# From Paul Eggert (2006-06-22):
+# The Ministry of Energy and Mines, press release CP-15/2006
+# (2006-04-19), says DST ends at 24:00.  See
+# <http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf>.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Guat	1973	only	-	Nov	25	0:00	1:00	D
+Rule	Guat	1974	only	-	Feb	24	0:00	0	S
+Rule	Guat	1983	only	-	May	21	0:00	1:00	D
+Rule	Guat	1983	only	-	Sep	22	0:00	0	S
+Rule	Guat	1991	only	-	Mar	23	0:00	1:00	D
+Rule	Guat	1991	only	-	Sep	 7	0:00	0	S
+Rule	Guat	2006	only	-	Apr	30	0:00	1:00	D
+Rule	Guat	2006	only	-	Oct	 1	0:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Guatemala	-6:02:04 -	LMT	1918 Oct 5
+			-6:00	Guat	C%sT
+
+# Haiti
+# From Gwillim Law (2005-04-15):
+# Risto O. Nykanen wrote me that Haiti is now on DST.
+# I searched for confirmation, and I found a
+# <a href="http://www.haitianconsulate.org/time.doc"> press release
+# on the Web page of the Haitian Consulate in Chicago (2005-03-31),
+# </a>.  Translated from French, it says:
+#
+#  "The Prime Minister's Communication Office notifies the public in general
+#   and the press in particular that, following a decision of the Interior
+#   Ministry and the Territorial Collectivities [I suppose that means the
+#   provinces], Haiti will move to Eastern Daylight Time in the night from next
+#   Saturday the 2nd to Sunday the 3rd.
+#
+#  "Consequently, the Prime Minister's Communication Office wishes to inform
+#   the population that the country's clocks will be set forward one hour
+#   starting at midnight.  This provision will hold until the last Saturday in
+#   October 2005.
+#
+#  "Port-au-Prince, March 31, 2005"
+#
+# From Steffen Thorsen (2006-04-04):
+# I have been informed by users that Haiti observes DST this year like
+# last year, so the current "only" rule for 2005 might be changed to a
+# "max" rule or to last until 2006. (Who knows if they will observe DST
+# next year or if they will extend their DST like US/Canada next year).
+#
+# I have found this article about it (in French):
+# http://www.haitipressnetwork.com/news.cfm?articleID=7612
+#
+# The reason seems to be an energy crisis.
+
+# From Stephen Colebourne (2007-02-22):
+# Some IATA info: Haiti won't be having DST in 2007.
+
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Haiti	1983	only	-	May	8	0:00	1:00	D
+Rule	Haiti	1984	1987	-	Apr	lastSun	0:00	1:00	D
+Rule	Haiti	1983	1987	-	Oct	lastSun	0:00	0	S
+# Shanks & Pottenger say AT is 2:00, but IATA SSIM (1991/1997) says 1:00s.
+# Go with IATA.
+Rule	Haiti	1988	1997	-	Apr	Sun>=1	1:00s	1:00	D
+Rule	Haiti	1988	1997	-	Oct	lastSun	1:00s	0	S
+Rule	Haiti	2005	2006	-	Apr	Sun>=1	0:00	1:00	D
+Rule	Haiti	2005	2006	-	Oct	lastSun	0:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Port-au-Prince -4:49:20 -	LMT	1890
+			-4:49	-	PPMT	1917 Jan 24 12:00 # P-a-P MT
+			-5:00	Haiti	E%sT
+
+# Honduras
+# Shanks & Pottenger say 1921 Jan 1; go with Whitman's more precise Apr 1.
+
+# From Paul Eggert (2006-05-05):
+# worldtimezone.com reports a 2006-05-02 Spanish-language AP article
+# saying Honduras will start using DST midnight Saturday, effective 4
+# months until September.  La Tribuna reported today
+# <http://www.latribuna.hn/99299.html> that Manuel Zelaya, the president
+# of Honduras, refused to back down on this.
+
+# From Jesper Norgaard Welen (2006-08-08):
+# It seems that Honduras has returned from DST to standard time this Monday at
+# 00:00 hours (prolonging Sunday to 25 hours duration).
+# http://www.worldtimezone.com/dst_news/dst_news_honduras04.html
+
+# From Paul Eggert (2006-08-08):
+# Also see Diario El Heraldo, The country returns to standard time (2006-08-08)
+# <http://www.elheraldo.hn/nota.php?nid=54941&sec=12>.
+# It mentions executive decree 18-2006.
+
+# From Steffen Thorsen (2006-08-17):
+# Honduras will observe DST from 2007 to 2009, exact dates are not
+# published, I have located this authoritative source:
+# http://www.presidencia.gob.hn/noticia.aspx?nId=47
+
+# From Steffen Thorsen (2007-03-30):
+# http://www.laprensahn.com/pais_nota.php?id04962=7386
+# So it seems that Honduras will not enter DST this year....
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Hond	1987	1988	-	May	Sun>=1	0:00	1:00	D
+Rule	Hond	1987	1988	-	Sep	lastSun	0:00	0	S
+Rule	Hond	2006	only	-	May	Sun>=1	0:00	1:00	D
+Rule	Hond	2006	only	-	Aug	Mon>=1	0:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Tegucigalpa -5:48:52 -	LMT	1921 Apr
+			-6:00	Hond	C%sT
+#
+# Great Swan I ceded by US to Honduras in 1972
+
+# Jamaica
+
+# From Bob Devine (1988-01-28):
+# Follows US rules.
+
+# From U. S. Naval Observatory (1989-01-19):
+# JAMAICA             5 H  BEHIND UTC
+
+# From Shanks & Pottenger:
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Jamaica	-5:07:12 -	LMT	1890		# Kingston
+			-5:07:12 -	KMT	1912 Feb    # Kingston Mean Time
+			-5:00	-	EST	1974 Apr 28 2:00
+			-5:00	US	E%sT	1984
+			-5:00	-	EST
+
+# Martinique
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Martinique	-4:04:20 -      LMT	1890		# Fort-de-France
+			-4:04:20 -	FFMT	1911 May     # Fort-de-France MT
+			-4:00	-	AST	1980 Apr  6
+			-4:00	1:00	ADT	1980 Sep 28
+			-4:00	-	AST
+
+# Montserrat
+# From Paul Eggert (2006-03-22):
+# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
+# world.gazetteer.com says Cork Hill is the most populous location now.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Montserrat	-4:08:52 -	LMT	1911 Jul 1 0:01   # Cork Hill
+			-4:00	-	AST
+
+# Nicaragua
+#
+# This uses Shanks & Pottenger for times before 2005.
+#
+# From Steffen Thorsen (2005-04-12):
+# I've got reports from 8 different people that Nicaragua just started
+# DST on Sunday 2005-04-10, in order to save energy because of
+# expensive petroleum.  The exact end date for DST is not yet
+# announced, only "September" but some sites also say "mid-September".
+# Some background information is available on the President's official site:
+# http://www.presidencia.gob.ni/Presidencia/Files_index/Secretaria/Notas%20de%20Prensa/Presidente/2005/ABRIL/Gobierno-de-nicaragua-adelanta-hora-oficial-06abril.htm
+# The Decree, no 23-2005 is available here:
+# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2005/Decreto%2023-2005%20Se%20adelanta%20en%20una%20hora%20en%20todo%20el%20territorio%20nacional%20apartir%20de%20las%2024horas%20del%2009%20de%20Abril.pdf
+#
+# From Paul Eggert (2005-05-01):
+# The decree doesn't say anything about daylight saving, but for now let's
+# assume that it is daylight saving....
+#
+# From Gwillim Law (2005-04-21):
+# The Associated Press story on the time change, which can be found at
+# http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html
+# and elsewhere, says (fifth paragraph, translated from Spanish):  "The last
+# time that a change of clocks was applied to save energy was in the year 2000
+# during the Arnoldo Aleman administration."...
+# The northamerica file says that Nicaragua has been on UTC-6 continuously
+# since December 1998.  I wasn't able to find any details of Nicaraguan time
+# changes in 2000.  Perhaps a note could be added to the northamerica file, to
+# the effect that we have indirect evidence that DST was observed in 2000.
+#
+# From Jesper Norgaard Welen (2005-11-02):
+# Nicaragua left DST the 2005-10-02 at 00:00 (local time).
+# http://www.presidencia.gob.ni/presidencia/files_index/secretaria/comunicados/2005/septiembre/26septiembre-cambio-hora.htm
+# (2005-09-26)
+#
+# From Jesper Norgaard Welen (2006-05-05):
+# http://www.elnuevodiario.com.ni/2006/05/01/nacionales/18410
+# (my informal translation)
+# By order of the president of the republic, Enrique Bolanos, Nicaragua
+# advanced by sixty minutes their official time, yesterday at 2 in the
+# morning, and will stay that way until 30.th. of september.
+#
+# From Jesper Norgaard Welen (2006-09-30):
+# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2006/D-063-2006P-PRN-Cambio-Hora.pdf
+# My informal translation runs:
+# The natural sun time is restored in all the national territory, in that the
+# time is returned one hour at 01:00 am of October 1 of 2006.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Nic	1979	1980	-	Mar	Sun>=16	0:00	1:00	D
+Rule	Nic	1979	1980	-	Jun	Mon>=23	0:00	0	S
+Rule	Nic	2005	only	-	Apr	10	0:00	1:00	D
+Rule	Nic	2005	only	-	Oct	Sun>=1	0:00	0	S
+Rule	Nic	2006	only	-	Apr	30	2:00	1:00	D
+Rule	Nic	2006	only	-	Oct	Sun>=1	1:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Managua	-5:45:08 -	LMT	1890
+			-5:45:12 -	MMT	1934 Jun 23 # Managua Mean Time?
+			-6:00	-	CST	1973 May
+			-5:00	-	EST	1975 Feb 16
+			-6:00	Nic	C%sT	1992 Jan  1 4:00
+			-5:00	-	EST	1992 Sep 24
+			-6:00	-	CST	1993
+			-5:00	-	EST	1997
+			-6:00	Nic	C%sT
+
+# Panama
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Panama	-5:18:08 -	LMT	1890
+			-5:19:36 -	CMT	1908 Apr 22   # Colon Mean Time
+			-5:00	-	EST
+
+# Puerto Rico
+# There are too many San Juans elsewhere, so we'll use `Puerto_Rico'.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Puerto_Rico -4:24:25 -	LMT	1899 Mar 28 12:00    # San Juan
+			-4:00	-	AST	1942 May  3
+			-4:00	US	A%sT	1946
+			-4:00	-	AST
+
+# St Kitts-Nevis
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/St_Kitts	-4:10:52 -	LMT	1912 Mar 2	# Basseterre
+			-4:00	-	AST
+
+# St Lucia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/St_Lucia	-4:04:00 -	LMT	1890		# Castries
+			-4:04:00 -	CMT	1912	    # Castries Mean Time
+			-4:00	-	AST
+
+# St Pierre and Miquelon
+# There are too many St Pierres elsewhere, so we'll use `Miquelon'.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Miquelon	-3:44:40 -	LMT	1911 May 15	# St Pierre
+			-4:00	-	AST	1980 May
+			-3:00	-	PMST	1987 # Pierre & Miquelon Time
+			-3:00	Canada	PM%sT
+
+# St Vincent and the Grenadines
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/St_Vincent	-4:04:56 -	LMT	1890		# Kingstown
+			-4:04:56 -	KMT	1912	   # Kingstown Mean Time
+			-4:00	-	AST
+
+# Turks and Caicos
+#
+# From Chris Dunn in
+# <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007>
+# (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the
+# daylight saving dates for time changes have been adjusted to match
+# the recent U.S. change of dates.
+#
+# From Brian Inglis (2007-04-28):
+# http://www.turksandcaicos.tc/calendar/index.htm [2007-04-26]
+# there is an entry for Nov 4 "Daylight Savings Time Ends 2007" and three
+# rows before that there is an out of date entry for Oct:
+# "Eastern Standard Times Begins 2007
+# Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time"
+# indicating that the normal ET rules are followed.
+#
+# From Paul Eggert (2006-05-01):
+# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998)
+# says they switch at midnight.  Go with Shanks & Pottenger.
+#
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	TC	1979	1986	-	Apr	lastSun	2:00	1:00	D
+Rule	TC	1979	2006	-	Oct	lastSun	2:00	0	S
+Rule	TC	1987	2006	-	Apr	Sun>=1	2:00	1:00	D
+Rule	TC	2007	max	-	Mar	Sun>=8	2:00	1:00	D
+Rule	TC	2007	max	-	Nov	Sun>=1	2:00	0	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Grand_Turk	-4:44:32 -	LMT	1890
+			-5:07:12 -	KMT	1912 Feb    # Kingston Mean Time
+			-5:00	TC	E%sT
+
+# British Virgin Is
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Tortola	-4:18:28 -	LMT	1911 Jul    # Road Town
+			-4:00	-	AST
+
+# Virgin Is
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/St_Thomas	-4:19:44 -	LMT	1911 Jul    # Charlotte Amalie
+			-4:00	-	AST
diff --git a/tools/zoneinfo/tzdata2009s/pacificnew b/tools/zoneinfo/tzdata2009s/pacificnew
new file mode 100644
index 0000000..e2512c1
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/pacificnew
@@ -0,0 +1,29 @@
+# <pre>
+# @(#)pacificnew	8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# From Arthur David Olson (1989-04-05):
+# On 1989-04-05, the U. S. House of Representatives passed (238-154) a bill
+# establishing "Pacific Presidential Election Time"; it was not acted on
+# by the Senate or signed into law by the President.
+# You might want to change the "PE" (Presidential Election) below to
+# "Q" (Quadrennial) to maintain three-character zone abbreviations.
+# If you're really conservative, you might want to change it to "D".
+# Avoid "L" (Leap Year), which won't be true in 2100.
+
+# If Presidential Election Time is ever established, replace "XXXX" below
+# with the year the law takes effect and uncomment the "##" lines.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+## Rule	Twilite	XXXX	max	-	Apr	Sun>=1	2:00	1:00	D
+## Rule	Twilite	XXXX	max	uspres	Oct	lastSun	2:00	1:00	PE
+## Rule	Twilite	XXXX	max	uspres	Nov	Sun>=7	2:00	0	S
+## Rule	Twilite	XXXX	max	nonpres	Oct	lastSun	2:00	0	S
+
+# Zone	NAME			GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
+## Zone	America/Los_Angeles-PET	-8:00	US		P%sT	XXXX
+##				-8:00	Twilite		P%sT
+
+# For now...
+Link	America/Los_Angeles	US/Pacific-New	##
diff --git a/tools/zoneinfo/tzdata2009s/solar87 b/tools/zoneinfo/tzdata2009s/solar87
new file mode 100644
index 0000000..47ee7e7
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/solar87
@@ -0,0 +1,391 @@
+# <pre>
+# @(#)solar87	8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# So much for footnotes about Saudi Arabia.
+# Apparent noon times below are for Riyadh; your mileage will vary.
+# Times were computed using formulas in the U.S. Naval Observatory's
+# Almanac for Computers 1987; the formulas "will give EqT to an accuracy of
+# [plus or minus two] seconds during the current year."
+#
+# Rounding to the nearest five seconds results in fewer than
+# 256 different "time types"--a limit that's faced because time types are
+# stored on disk as unsigned chars.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	sol87	1987	only	-	Jan	1	12:03:20s -0:03:20 -
+Rule	sol87	1987	only	-	Jan	2	12:03:50s -0:03:50 -
+Rule	sol87	1987	only	-	Jan	3	12:04:15s -0:04:15 -
+Rule	sol87	1987	only	-	Jan	4	12:04:45s -0:04:45 -
+Rule	sol87	1987	only	-	Jan	5	12:05:10s -0:05:10 -
+Rule	sol87	1987	only	-	Jan	6	12:05:40s -0:05:40 -
+Rule	sol87	1987	only	-	Jan	7	12:06:05s -0:06:05 -
+Rule	sol87	1987	only	-	Jan	8	12:06:30s -0:06:30 -
+Rule	sol87	1987	only	-	Jan	9	12:06:55s -0:06:55 -
+Rule	sol87	1987	only	-	Jan	10	12:07:20s -0:07:20 -
+Rule	sol87	1987	only	-	Jan	11	12:07:45s -0:07:45 -
+Rule	sol87	1987	only	-	Jan	12	12:08:10s -0:08:10 -
+Rule	sol87	1987	only	-	Jan	13	12:08:30s -0:08:30 -
+Rule	sol87	1987	only	-	Jan	14	12:08:55s -0:08:55 -
+Rule	sol87	1987	only	-	Jan	15	12:09:15s -0:09:15 -
+Rule	sol87	1987	only	-	Jan	16	12:09:35s -0:09:35 -
+Rule	sol87	1987	only	-	Jan	17	12:09:55s -0:09:55 -
+Rule	sol87	1987	only	-	Jan	18	12:10:15s -0:10:15 -
+Rule	sol87	1987	only	-	Jan	19	12:10:35s -0:10:35 -
+Rule	sol87	1987	only	-	Jan	20	12:10:55s -0:10:55 -
+Rule	sol87	1987	only	-	Jan	21	12:11:10s -0:11:10 -
+Rule	sol87	1987	only	-	Jan	22	12:11:30s -0:11:30 -
+Rule	sol87	1987	only	-	Jan	23	12:11:45s -0:11:45 -
+Rule	sol87	1987	only	-	Jan	24	12:12:00s -0:12:00 -
+Rule	sol87	1987	only	-	Jan	25	12:12:15s -0:12:15 -
+Rule	sol87	1987	only	-	Jan	26	12:12:30s -0:12:30 -
+Rule	sol87	1987	only	-	Jan	27	12:12:40s -0:12:40 -
+Rule	sol87	1987	only	-	Jan	28	12:12:55s -0:12:55 -
+Rule	sol87	1987	only	-	Jan	29	12:13:05s -0:13:05 -
+Rule	sol87	1987	only	-	Jan	30	12:13:15s -0:13:15 -
+Rule	sol87	1987	only	-	Jan	31	12:13:25s -0:13:25 -
+Rule	sol87	1987	only	-	Feb	1	12:13:35s -0:13:35 -
+Rule	sol87	1987	only	-	Feb	2	12:13:40s -0:13:40 -
+Rule	sol87	1987	only	-	Feb	3	12:13:50s -0:13:50 -
+Rule	sol87	1987	only	-	Feb	4	12:13:55s -0:13:55 -
+Rule	sol87	1987	only	-	Feb	5	12:14:00s -0:14:00 -
+Rule	sol87	1987	only	-	Feb	6	12:14:05s -0:14:05 -
+Rule	sol87	1987	only	-	Feb	7	12:14:10s -0:14:10 -
+Rule	sol87	1987	only	-	Feb	8	12:14:10s -0:14:10 -
+Rule	sol87	1987	only	-	Feb	9	12:14:15s -0:14:15 -
+Rule	sol87	1987	only	-	Feb	10	12:14:15s -0:14:15 -
+Rule	sol87	1987	only	-	Feb	11	12:14:15s -0:14:15 -
+Rule	sol87	1987	only	-	Feb	12	12:14:15s -0:14:15 -
+Rule	sol87	1987	only	-	Feb	13	12:14:15s -0:14:15 -
+Rule	sol87	1987	only	-	Feb	14	12:14:15s -0:14:15 -
+Rule	sol87	1987	only	-	Feb	15	12:14:10s -0:14:10 -
+Rule	sol87	1987	only	-	Feb	16	12:14:10s -0:14:10 -
+Rule	sol87	1987	only	-	Feb	17	12:14:05s -0:14:05 -
+Rule	sol87	1987	only	-	Feb	18	12:14:00s -0:14:00 -
+Rule	sol87	1987	only	-	Feb	19	12:13:55s -0:13:55 -
+Rule	sol87	1987	only	-	Feb	20	12:13:50s -0:13:50 -
+Rule	sol87	1987	only	-	Feb	21	12:13:45s -0:13:45 -
+Rule	sol87	1987	only	-	Feb	22	12:13:35s -0:13:35 -
+Rule	sol87	1987	only	-	Feb	23	12:13:30s -0:13:30 -
+Rule	sol87	1987	only	-	Feb	24	12:13:20s -0:13:20 -
+Rule	sol87	1987	only	-	Feb	25	12:13:10s -0:13:10 -
+Rule	sol87	1987	only	-	Feb	26	12:13:00s -0:13:00 -
+Rule	sol87	1987	only	-	Feb	27	12:12:50s -0:12:50 -
+Rule	sol87	1987	only	-	Feb	28	12:12:40s -0:12:40 -
+Rule	sol87	1987	only	-	Mar	1	12:12:30s -0:12:30 -
+Rule	sol87	1987	only	-	Mar	2	12:12:20s -0:12:20 -
+Rule	sol87	1987	only	-	Mar	3	12:12:05s -0:12:05 -
+Rule	sol87	1987	only	-	Mar	4	12:11:55s -0:11:55 -
+Rule	sol87	1987	only	-	Mar	5	12:11:40s -0:11:40 -
+Rule	sol87	1987	only	-	Mar	6	12:11:25s -0:11:25 -
+Rule	sol87	1987	only	-	Mar	7	12:11:15s -0:11:15 -
+Rule	sol87	1987	only	-	Mar	8	12:11:00s -0:11:00 -
+Rule	sol87	1987	only	-	Mar	9	12:10:45s -0:10:45 -
+Rule	sol87	1987	only	-	Mar	10	12:10:30s -0:10:30 -
+Rule	sol87	1987	only	-	Mar	11	12:10:15s -0:10:15 -
+Rule	sol87	1987	only	-	Mar	12	12:09:55s -0:09:55 -
+Rule	sol87	1987	only	-	Mar	13	12:09:40s -0:09:40 -
+Rule	sol87	1987	only	-	Mar	14	12:09:25s -0:09:25 -
+Rule	sol87	1987	only	-	Mar	15	12:09:10s -0:09:10 -
+Rule	sol87	1987	only	-	Mar	16	12:08:50s -0:08:50 -
+Rule	sol87	1987	only	-	Mar	17	12:08:35s -0:08:35 -
+Rule	sol87	1987	only	-	Mar	18	12:08:15s -0:08:15 -
+Rule	sol87	1987	only	-	Mar	19	12:08:00s -0:08:00 -
+Rule	sol87	1987	only	-	Mar	20	12:07:40s -0:07:40 -
+Rule	sol87	1987	only	-	Mar	21	12:07:25s -0:07:25 -
+Rule	sol87	1987	only	-	Mar	22	12:07:05s -0:07:05 -
+Rule	sol87	1987	only	-	Mar	23	12:06:50s -0:06:50 -
+Rule	sol87	1987	only	-	Mar	24	12:06:30s -0:06:30 -
+Rule	sol87	1987	only	-	Mar	25	12:06:10s -0:06:10 -
+Rule	sol87	1987	only	-	Mar	26	12:05:55s -0:05:55 -
+Rule	sol87	1987	only	-	Mar	27	12:05:35s -0:05:35 -
+Rule	sol87	1987	only	-	Mar	28	12:05:15s -0:05:15 -
+Rule	sol87	1987	only	-	Mar	29	12:05:00s -0:05:00 -
+Rule	sol87	1987	only	-	Mar	30	12:04:40s -0:04:40 -
+Rule	sol87	1987	only	-	Mar	31	12:04:25s -0:04:25 -
+Rule	sol87	1987	only	-	Apr	1	12:04:05s -0:04:05 -
+Rule	sol87	1987	only	-	Apr	2	12:03:45s -0:03:45 -
+Rule	sol87	1987	only	-	Apr	3	12:03:30s -0:03:30 -
+Rule	sol87	1987	only	-	Apr	4	12:03:10s -0:03:10 -
+Rule	sol87	1987	only	-	Apr	5	12:02:55s -0:02:55 -
+Rule	sol87	1987	only	-	Apr	6	12:02:35s -0:02:35 -
+Rule	sol87	1987	only	-	Apr	7	12:02:20s -0:02:20 -
+Rule	sol87	1987	only	-	Apr	8	12:02:05s -0:02:05 -
+Rule	sol87	1987	only	-	Apr	9	12:01:45s -0:01:45 -
+Rule	sol87	1987	only	-	Apr	10	12:01:30s -0:01:30 -
+Rule	sol87	1987	only	-	Apr	11	12:01:15s -0:01:15 -
+Rule	sol87	1987	only	-	Apr	12	12:00:55s -0:00:55 -
+Rule	sol87	1987	only	-	Apr	13	12:00:40s -0:00:40 -
+Rule	sol87	1987	only	-	Apr	14	12:00:25s -0:00:25 -
+Rule	sol87	1987	only	-	Apr	15	12:00:10s -0:00:10 -
+Rule	sol87	1987	only	-	Apr	16	11:59:55s 0:00:05 -
+Rule	sol87	1987	only	-	Apr	17	11:59:45s 0:00:15 -
+Rule	sol87	1987	only	-	Apr	18	11:59:30s 0:00:30 -
+Rule	sol87	1987	only	-	Apr	19	11:59:15s 0:00:45 -
+Rule	sol87	1987	only	-	Apr	20	11:59:05s 0:00:55 -
+Rule	sol87	1987	only	-	Apr	21	11:58:50s 0:01:10 -
+Rule	sol87	1987	only	-	Apr	22	11:58:40s 0:01:20 -
+Rule	sol87	1987	only	-	Apr	23	11:58:25s 0:01:35 -
+Rule	sol87	1987	only	-	Apr	24	11:58:15s 0:01:45 -
+Rule	sol87	1987	only	-	Apr	25	11:58:05s 0:01:55 -
+Rule	sol87	1987	only	-	Apr	26	11:57:55s 0:02:05 -
+Rule	sol87	1987	only	-	Apr	27	11:57:45s 0:02:15 -
+Rule	sol87	1987	only	-	Apr	28	11:57:35s 0:02:25 -
+Rule	sol87	1987	only	-	Apr	29	11:57:25s 0:02:35 -
+Rule	sol87	1987	only	-	Apr	30	11:57:15s 0:02:45 -
+Rule	sol87	1987	only	-	May	1	11:57:10s 0:02:50 -
+Rule	sol87	1987	only	-	May	2	11:57:00s 0:03:00 -
+Rule	sol87	1987	only	-	May	3	11:56:55s 0:03:05 -
+Rule	sol87	1987	only	-	May	4	11:56:50s 0:03:10 -
+Rule	sol87	1987	only	-	May	5	11:56:45s 0:03:15 -
+Rule	sol87	1987	only	-	May	6	11:56:40s 0:03:20 -
+Rule	sol87	1987	only	-	May	7	11:56:35s 0:03:25 -
+Rule	sol87	1987	only	-	May	8	11:56:30s 0:03:30 -
+Rule	sol87	1987	only	-	May	9	11:56:25s 0:03:35 -
+Rule	sol87	1987	only	-	May	10	11:56:25s 0:03:35 -
+Rule	sol87	1987	only	-	May	11	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	May	12	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	May	13	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	May	14	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	May	15	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	May	16	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	May	17	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	May	18	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	May	19	11:56:25s 0:03:35 -
+Rule	sol87	1987	only	-	May	20	11:56:25s 0:03:35 -
+Rule	sol87	1987	only	-	May	21	11:56:30s 0:03:30 -
+Rule	sol87	1987	only	-	May	22	11:56:35s 0:03:25 -
+Rule	sol87	1987	only	-	May	23	11:56:40s 0:03:20 -
+Rule	sol87	1987	only	-	May	24	11:56:45s 0:03:15 -
+Rule	sol87	1987	only	-	May	25	11:56:50s 0:03:10 -
+Rule	sol87	1987	only	-	May	26	11:56:55s 0:03:05 -
+Rule	sol87	1987	only	-	May	27	11:57:00s 0:03:00 -
+Rule	sol87	1987	only	-	May	28	11:57:10s 0:02:50 -
+Rule	sol87	1987	only	-	May	29	11:57:15s 0:02:45 -
+Rule	sol87	1987	only	-	May	30	11:57:25s 0:02:35 -
+Rule	sol87	1987	only	-	May	31	11:57:30s 0:02:30 -
+Rule	sol87	1987	only	-	Jun	1	11:57:40s 0:02:20 -
+Rule	sol87	1987	only	-	Jun	2	11:57:50s 0:02:10 -
+Rule	sol87	1987	only	-	Jun	3	11:58:00s 0:02:00 -
+Rule	sol87	1987	only	-	Jun	4	11:58:10s 0:01:50 -
+Rule	sol87	1987	only	-	Jun	5	11:58:20s 0:01:40 -
+Rule	sol87	1987	only	-	Jun	6	11:58:30s 0:01:30 -
+Rule	sol87	1987	only	-	Jun	7	11:58:40s 0:01:20 -
+Rule	sol87	1987	only	-	Jun	8	11:58:50s 0:01:10 -
+Rule	sol87	1987	only	-	Jun	9	11:59:05s 0:00:55 -
+Rule	sol87	1987	only	-	Jun	10	11:59:15s 0:00:45 -
+Rule	sol87	1987	only	-	Jun	11	11:59:30s 0:00:30 -
+Rule	sol87	1987	only	-	Jun	12	11:59:40s 0:00:20 -
+Rule	sol87	1987	only	-	Jun	13	11:59:50s 0:00:10 -
+Rule	sol87	1987	only	-	Jun	14	12:00:05s -0:00:05 -
+Rule	sol87	1987	only	-	Jun	15	12:00:15s -0:00:15 -
+Rule	sol87	1987	only	-	Jun	16	12:00:30s -0:00:30 -
+Rule	sol87	1987	only	-	Jun	17	12:00:45s -0:00:45 -
+Rule	sol87	1987	only	-	Jun	18	12:00:55s -0:00:55 -
+Rule	sol87	1987	only	-	Jun	19	12:01:10s -0:01:10 -
+Rule	sol87	1987	only	-	Jun	20	12:01:20s -0:01:20 -
+Rule	sol87	1987	only	-	Jun	21	12:01:35s -0:01:35 -
+Rule	sol87	1987	only	-	Jun	22	12:01:50s -0:01:50 -
+Rule	sol87	1987	only	-	Jun	23	12:02:00s -0:02:00 -
+Rule	sol87	1987	only	-	Jun	24	12:02:15s -0:02:15 -
+Rule	sol87	1987	only	-	Jun	25	12:02:25s -0:02:25 -
+Rule	sol87	1987	only	-	Jun	26	12:02:40s -0:02:40 -
+Rule	sol87	1987	only	-	Jun	27	12:02:50s -0:02:50 -
+Rule	sol87	1987	only	-	Jun	28	12:03:05s -0:03:05 -
+Rule	sol87	1987	only	-	Jun	29	12:03:15s -0:03:15 -
+Rule	sol87	1987	only	-	Jun	30	12:03:30s -0:03:30 -
+Rule	sol87	1987	only	-	Jul	1	12:03:40s -0:03:40 -
+Rule	sol87	1987	only	-	Jul	2	12:03:50s -0:03:50 -
+Rule	sol87	1987	only	-	Jul	3	12:04:05s -0:04:05 -
+Rule	sol87	1987	only	-	Jul	4	12:04:15s -0:04:15 -
+Rule	sol87	1987	only	-	Jul	5	12:04:25s -0:04:25 -
+Rule	sol87	1987	only	-	Jul	6	12:04:35s -0:04:35 -
+Rule	sol87	1987	only	-	Jul	7	12:04:45s -0:04:45 -
+Rule	sol87	1987	only	-	Jul	8	12:04:55s -0:04:55 -
+Rule	sol87	1987	only	-	Jul	9	12:05:05s -0:05:05 -
+Rule	sol87	1987	only	-	Jul	10	12:05:15s -0:05:15 -
+Rule	sol87	1987	only	-	Jul	11	12:05:20s -0:05:20 -
+Rule	sol87	1987	only	-	Jul	12	12:05:30s -0:05:30 -
+Rule	sol87	1987	only	-	Jul	13	12:05:40s -0:05:40 -
+Rule	sol87	1987	only	-	Jul	14	12:05:45s -0:05:45 -
+Rule	sol87	1987	only	-	Jul	15	12:05:50s -0:05:50 -
+Rule	sol87	1987	only	-	Jul	16	12:06:00s -0:06:00 -
+Rule	sol87	1987	only	-	Jul	17	12:06:05s -0:06:05 -
+Rule	sol87	1987	only	-	Jul	18	12:06:10s -0:06:10 -
+Rule	sol87	1987	only	-	Jul	19	12:06:15s -0:06:15 -
+Rule	sol87	1987	only	-	Jul	20	12:06:15s -0:06:15 -
+Rule	sol87	1987	only	-	Jul	21	12:06:20s -0:06:20 -
+Rule	sol87	1987	only	-	Jul	22	12:06:25s -0:06:25 -
+Rule	sol87	1987	only	-	Jul	23	12:06:25s -0:06:25 -
+Rule	sol87	1987	only	-	Jul	24	12:06:25s -0:06:25 -
+Rule	sol87	1987	only	-	Jul	25	12:06:30s -0:06:30 -
+Rule	sol87	1987	only	-	Jul	26	12:06:30s -0:06:30 -
+Rule	sol87	1987	only	-	Jul	27	12:06:30s -0:06:30 -
+Rule	sol87	1987	only	-	Jul	28	12:06:30s -0:06:30 -
+Rule	sol87	1987	only	-	Jul	29	12:06:25s -0:06:25 -
+Rule	sol87	1987	only	-	Jul	30	12:06:25s -0:06:25 -
+Rule	sol87	1987	only	-	Jul	31	12:06:25s -0:06:25 -
+Rule	sol87	1987	only	-	Aug	1	12:06:20s -0:06:20 -
+Rule	sol87	1987	only	-	Aug	2	12:06:15s -0:06:15 -
+Rule	sol87	1987	only	-	Aug	3	12:06:10s -0:06:10 -
+Rule	sol87	1987	only	-	Aug	4	12:06:05s -0:06:05 -
+Rule	sol87	1987	only	-	Aug	5	12:06:00s -0:06:00 -
+Rule	sol87	1987	only	-	Aug	6	12:05:55s -0:05:55 -
+Rule	sol87	1987	only	-	Aug	7	12:05:50s -0:05:50 -
+Rule	sol87	1987	only	-	Aug	8	12:05:40s -0:05:40 -
+Rule	sol87	1987	only	-	Aug	9	12:05:35s -0:05:35 -
+Rule	sol87	1987	only	-	Aug	10	12:05:25s -0:05:25 -
+Rule	sol87	1987	only	-	Aug	11	12:05:15s -0:05:15 -
+Rule	sol87	1987	only	-	Aug	12	12:05:05s -0:05:05 -
+Rule	sol87	1987	only	-	Aug	13	12:04:55s -0:04:55 -
+Rule	sol87	1987	only	-	Aug	14	12:04:45s -0:04:45 -
+Rule	sol87	1987	only	-	Aug	15	12:04:35s -0:04:35 -
+Rule	sol87	1987	only	-	Aug	16	12:04:25s -0:04:25 -
+Rule	sol87	1987	only	-	Aug	17	12:04:10s -0:04:10 -
+Rule	sol87	1987	only	-	Aug	18	12:04:00s -0:04:00 -
+Rule	sol87	1987	only	-	Aug	19	12:03:45s -0:03:45 -
+Rule	sol87	1987	only	-	Aug	20	12:03:30s -0:03:30 -
+Rule	sol87	1987	only	-	Aug	21	12:03:15s -0:03:15 -
+Rule	sol87	1987	only	-	Aug	22	12:03:00s -0:03:00 -
+Rule	sol87	1987	only	-	Aug	23	12:02:45s -0:02:45 -
+Rule	sol87	1987	only	-	Aug	24	12:02:30s -0:02:30 -
+Rule	sol87	1987	only	-	Aug	25	12:02:15s -0:02:15 -
+Rule	sol87	1987	only	-	Aug	26	12:02:00s -0:02:00 -
+Rule	sol87	1987	only	-	Aug	27	12:01:40s -0:01:40 -
+Rule	sol87	1987	only	-	Aug	28	12:01:25s -0:01:25 -
+Rule	sol87	1987	only	-	Aug	29	12:01:05s -0:01:05 -
+Rule	sol87	1987	only	-	Aug	30	12:00:50s -0:00:50 -
+Rule	sol87	1987	only	-	Aug	31	12:00:30s -0:00:30 -
+Rule	sol87	1987	only	-	Sep	1	12:00:10s -0:00:10 -
+Rule	sol87	1987	only	-	Sep	2	11:59:50s 0:00:10 -
+Rule	sol87	1987	only	-	Sep	3	11:59:35s 0:00:25 -
+Rule	sol87	1987	only	-	Sep	4	11:59:15s 0:00:45 -
+Rule	sol87	1987	only	-	Sep	5	11:58:55s 0:01:05 -
+Rule	sol87	1987	only	-	Sep	6	11:58:35s 0:01:25 -
+Rule	sol87	1987	only	-	Sep	7	11:58:15s 0:01:45 -
+Rule	sol87	1987	only	-	Sep	8	11:57:55s 0:02:05 -
+Rule	sol87	1987	only	-	Sep	9	11:57:30s 0:02:30 -
+Rule	sol87	1987	only	-	Sep	10	11:57:10s 0:02:50 -
+Rule	sol87	1987	only	-	Sep	11	11:56:50s 0:03:10 -
+Rule	sol87	1987	only	-	Sep	12	11:56:30s 0:03:30 -
+Rule	sol87	1987	only	-	Sep	13	11:56:10s 0:03:50 -
+Rule	sol87	1987	only	-	Sep	14	11:55:45s 0:04:15 -
+Rule	sol87	1987	only	-	Sep	15	11:55:25s 0:04:35 -
+Rule	sol87	1987	only	-	Sep	16	11:55:05s 0:04:55 -
+Rule	sol87	1987	only	-	Sep	17	11:54:45s 0:05:15 -
+Rule	sol87	1987	only	-	Sep	18	11:54:20s 0:05:40 -
+Rule	sol87	1987	only	-	Sep	19	11:54:00s 0:06:00 -
+Rule	sol87	1987	only	-	Sep	20	11:53:40s 0:06:20 -
+Rule	sol87	1987	only	-	Sep	21	11:53:15s 0:06:45 -
+Rule	sol87	1987	only	-	Sep	22	11:52:55s 0:07:05 -
+Rule	sol87	1987	only	-	Sep	23	11:52:35s 0:07:25 -
+Rule	sol87	1987	only	-	Sep	24	11:52:15s 0:07:45 -
+Rule	sol87	1987	only	-	Sep	25	11:51:55s 0:08:05 -
+Rule	sol87	1987	only	-	Sep	26	11:51:35s 0:08:25 -
+Rule	sol87	1987	only	-	Sep	27	11:51:10s 0:08:50 -
+Rule	sol87	1987	only	-	Sep	28	11:50:50s 0:09:10 -
+Rule	sol87	1987	only	-	Sep	29	11:50:30s 0:09:30 -
+Rule	sol87	1987	only	-	Sep	30	11:50:10s 0:09:50 -
+Rule	sol87	1987	only	-	Oct	1	11:49:50s 0:10:10 -
+Rule	sol87	1987	only	-	Oct	2	11:49:35s 0:10:25 -
+Rule	sol87	1987	only	-	Oct	3	11:49:15s 0:10:45 -
+Rule	sol87	1987	only	-	Oct	4	11:48:55s 0:11:05 -
+Rule	sol87	1987	only	-	Oct	5	11:48:35s 0:11:25 -
+Rule	sol87	1987	only	-	Oct	6	11:48:20s 0:11:40 -
+Rule	sol87	1987	only	-	Oct	7	11:48:00s 0:12:00 -
+Rule	sol87	1987	only	-	Oct	8	11:47:45s 0:12:15 -
+Rule	sol87	1987	only	-	Oct	9	11:47:25s 0:12:35 -
+Rule	sol87	1987	only	-	Oct	10	11:47:10s 0:12:50 -
+Rule	sol87	1987	only	-	Oct	11	11:46:55s 0:13:05 -
+Rule	sol87	1987	only	-	Oct	12	11:46:40s 0:13:20 -
+Rule	sol87	1987	only	-	Oct	13	11:46:25s 0:13:35 -
+Rule	sol87	1987	only	-	Oct	14	11:46:10s 0:13:50 -
+Rule	sol87	1987	only	-	Oct	15	11:45:55s 0:14:05 -
+Rule	sol87	1987	only	-	Oct	16	11:45:45s 0:14:15 -
+Rule	sol87	1987	only	-	Oct	17	11:45:30s 0:14:30 -
+Rule	sol87	1987	only	-	Oct	18	11:45:20s 0:14:40 -
+Rule	sol87	1987	only	-	Oct	19	11:45:05s 0:14:55 -
+Rule	sol87	1987	only	-	Oct	20	11:44:55s 0:15:05 -
+Rule	sol87	1987	only	-	Oct	21	11:44:45s 0:15:15 -
+Rule	sol87	1987	only	-	Oct	22	11:44:35s 0:15:25 -
+Rule	sol87	1987	only	-	Oct	23	11:44:25s 0:15:35 -
+Rule	sol87	1987	only	-	Oct	24	11:44:20s 0:15:40 -
+Rule	sol87	1987	only	-	Oct	25	11:44:10s 0:15:50 -
+Rule	sol87	1987	only	-	Oct	26	11:44:05s 0:15:55 -
+Rule	sol87	1987	only	-	Oct	27	11:43:55s 0:16:05 -
+Rule	sol87	1987	only	-	Oct	28	11:43:50s 0:16:10 -
+Rule	sol87	1987	only	-	Oct	29	11:43:45s 0:16:15 -
+Rule	sol87	1987	only	-	Oct	30	11:43:45s 0:16:15 -
+Rule	sol87	1987	only	-	Oct	31	11:43:40s 0:16:20 -
+Rule	sol87	1987	only	-	Nov	1	11:43:40s 0:16:20 -
+Rule	sol87	1987	only	-	Nov	2	11:43:35s 0:16:25 -
+Rule	sol87	1987	only	-	Nov	3	11:43:35s 0:16:25 -
+Rule	sol87	1987	only	-	Nov	4	11:43:35s 0:16:25 -
+Rule	sol87	1987	only	-	Nov	5	11:43:35s 0:16:25 -
+Rule	sol87	1987	only	-	Nov	6	11:43:40s 0:16:20 -
+Rule	sol87	1987	only	-	Nov	7	11:43:40s 0:16:20 -
+Rule	sol87	1987	only	-	Nov	8	11:43:45s 0:16:15 -
+Rule	sol87	1987	only	-	Nov	9	11:43:50s 0:16:10 -
+Rule	sol87	1987	only	-	Nov	10	11:43:55s 0:16:05 -
+Rule	sol87	1987	only	-	Nov	11	11:44:00s 0:16:00 -
+Rule	sol87	1987	only	-	Nov	12	11:44:05s 0:15:55 -
+Rule	sol87	1987	only	-	Nov	13	11:44:15s 0:15:45 -
+Rule	sol87	1987	only	-	Nov	14	11:44:20s 0:15:40 -
+Rule	sol87	1987	only	-	Nov	15	11:44:30s 0:15:30 -
+Rule	sol87	1987	only	-	Nov	16	11:44:40s 0:15:20 -
+Rule	sol87	1987	only	-	Nov	17	11:44:50s 0:15:10 -
+Rule	sol87	1987	only	-	Nov	18	11:45:05s 0:14:55 -
+Rule	sol87	1987	only	-	Nov	19	11:45:15s 0:14:45 -
+Rule	sol87	1987	only	-	Nov	20	11:45:30s 0:14:30 -
+Rule	sol87	1987	only	-	Nov	21	11:45:45s 0:14:15 -
+Rule	sol87	1987	only	-	Nov	22	11:46:00s 0:14:00 -
+Rule	sol87	1987	only	-	Nov	23	11:46:15s 0:13:45 -
+Rule	sol87	1987	only	-	Nov	24	11:46:30s 0:13:30 -
+Rule	sol87	1987	only	-	Nov	25	11:46:50s 0:13:10 -
+Rule	sol87	1987	only	-	Nov	26	11:47:10s 0:12:50 -
+Rule	sol87	1987	only	-	Nov	27	11:47:25s 0:12:35 -
+Rule	sol87	1987	only	-	Nov	28	11:47:45s 0:12:15 -
+Rule	sol87	1987	only	-	Nov	29	11:48:05s 0:11:55 -
+Rule	sol87	1987	only	-	Nov	30	11:48:30s 0:11:30 -
+Rule	sol87	1987	only	-	Dec	1	11:48:50s 0:11:10 -
+Rule	sol87	1987	only	-	Dec	2	11:49:10s 0:10:50 -
+Rule	sol87	1987	only	-	Dec	3	11:49:35s 0:10:25 -
+Rule	sol87	1987	only	-	Dec	4	11:50:00s 0:10:00 -
+Rule	sol87	1987	only	-	Dec	5	11:50:25s 0:09:35 -
+Rule	sol87	1987	only	-	Dec	6	11:50:50s 0:09:10 -
+Rule	sol87	1987	only	-	Dec	7	11:51:15s 0:08:45 -
+Rule	sol87	1987	only	-	Dec	8	11:51:40s 0:08:20 -
+Rule	sol87	1987	only	-	Dec	9	11:52:05s 0:07:55 -
+Rule	sol87	1987	only	-	Dec	10	11:52:30s 0:07:30 -
+Rule	sol87	1987	only	-	Dec	11	11:53:00s 0:07:00 -
+Rule	sol87	1987	only	-	Dec	12	11:53:25s 0:06:35 -
+Rule	sol87	1987	only	-	Dec	13	11:53:55s 0:06:05 -
+Rule	sol87	1987	only	-	Dec	14	11:54:25s 0:05:35 -
+Rule	sol87	1987	only	-	Dec	15	11:54:50s 0:05:10 -
+Rule	sol87	1987	only	-	Dec	16	11:55:20s 0:04:40 -
+Rule	sol87	1987	only	-	Dec	17	11:55:50s 0:04:10 -
+Rule	sol87	1987	only	-	Dec	18	11:56:20s 0:03:40 -
+Rule	sol87	1987	only	-	Dec	19	11:56:50s 0:03:10 -
+Rule	sol87	1987	only	-	Dec	20	11:57:20s 0:02:40 -
+Rule	sol87	1987	only	-	Dec	21	11:57:50s 0:02:10 -
+Rule	sol87	1987	only	-	Dec	22	11:58:20s 0:01:40 -
+Rule	sol87	1987	only	-	Dec	23	11:58:50s 0:01:10 -
+Rule	sol87	1987	only	-	Dec	24	11:59:20s 0:00:40 -
+Rule	sol87	1987	only	-	Dec	25	11:59:50s 0:00:10 -
+Rule	sol87	1987	only	-	Dec	26	12:00:20s -0:00:20 -
+Rule	sol87	1987	only	-	Dec	27	12:00:45s -0:00:45 -
+Rule	sol87	1987	only	-	Dec	28	12:01:15s -0:01:15 -
+Rule	sol87	1987	only	-	Dec	29	12:01:45s -0:01:45 -
+Rule	sol87	1987	only	-	Dec	30	12:02:15s -0:02:15 -
+Rule	sol87	1987	only	-	Dec	31	12:02:45s -0:02:45 -
+
+# Riyadh is at about 46 degrees 46 minutes East:  3 hrs, 7 mins, 4 secs
+# Before and after 1987, we'll operate on local mean solar time.
+
+# Zone	NAME		GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
+Zone	Asia/Riyadh87	3:07:04	-		zzz	1987
+			3:07:04	sol87		zzz	1988
+			3:07:04	-		zzz
+# For backward compatibility...
+Link	Asia/Riyadh87	Mideast/Riyadh87
diff --git a/tools/zoneinfo/tzdata2009s/solar88 b/tools/zoneinfo/tzdata2009s/solar88
new file mode 100644
index 0000000..8db590e
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/solar88
@@ -0,0 +1,391 @@
+# <pre>
+# @(#)solar88	8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# Apparent noon times below are for Riyadh; they're a bit off for other places.
+# Times were computed using formulas in the U.S. Naval Observatory's
+# Almanac for Computers 1988; the formulas "will give EqT to an accuracy of
+# [plus or minus two] seconds during the current year."
+#
+# Rounding to the nearest five seconds results in fewer than
+# 256 different "time types"--a limit that's faced because time types are
+# stored on disk as unsigned chars.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	sol88	1988	only	-	Jan	1	12:03:15s -0:03:15 -
+Rule	sol88	1988	only	-	Jan	2	12:03:40s -0:03:40 -
+Rule	sol88	1988	only	-	Jan	3	12:04:10s -0:04:10 -
+Rule	sol88	1988	only	-	Jan	4	12:04:40s -0:04:40 -
+Rule	sol88	1988	only	-	Jan	5	12:05:05s -0:05:05 -
+Rule	sol88	1988	only	-	Jan	6	12:05:30s -0:05:30 -
+Rule	sol88	1988	only	-	Jan	7	12:06:00s -0:06:00 -
+Rule	sol88	1988	only	-	Jan	8	12:06:25s -0:06:25 -
+Rule	sol88	1988	only	-	Jan	9	12:06:50s -0:06:50 -
+Rule	sol88	1988	only	-	Jan	10	12:07:15s -0:07:15 -
+Rule	sol88	1988	only	-	Jan	11	12:07:40s -0:07:40 -
+Rule	sol88	1988	only	-	Jan	12	12:08:05s -0:08:05 -
+Rule	sol88	1988	only	-	Jan	13	12:08:25s -0:08:25 -
+Rule	sol88	1988	only	-	Jan	14	12:08:50s -0:08:50 -
+Rule	sol88	1988	only	-	Jan	15	12:09:10s -0:09:10 -
+Rule	sol88	1988	only	-	Jan	16	12:09:30s -0:09:30 -
+Rule	sol88	1988	only	-	Jan	17	12:09:50s -0:09:50 -
+Rule	sol88	1988	only	-	Jan	18	12:10:10s -0:10:10 -
+Rule	sol88	1988	only	-	Jan	19	12:10:30s -0:10:30 -
+Rule	sol88	1988	only	-	Jan	20	12:10:50s -0:10:50 -
+Rule	sol88	1988	only	-	Jan	21	12:11:05s -0:11:05 -
+Rule	sol88	1988	only	-	Jan	22	12:11:25s -0:11:25 -
+Rule	sol88	1988	only	-	Jan	23	12:11:40s -0:11:40 -
+Rule	sol88	1988	only	-	Jan	24	12:11:55s -0:11:55 -
+Rule	sol88	1988	only	-	Jan	25	12:12:10s -0:12:10 -
+Rule	sol88	1988	only	-	Jan	26	12:12:25s -0:12:25 -
+Rule	sol88	1988	only	-	Jan	27	12:12:40s -0:12:40 -
+Rule	sol88	1988	only	-	Jan	28	12:12:50s -0:12:50 -
+Rule	sol88	1988	only	-	Jan	29	12:13:00s -0:13:00 -
+Rule	sol88	1988	only	-	Jan	30	12:13:10s -0:13:10 -
+Rule	sol88	1988	only	-	Jan	31	12:13:20s -0:13:20 -
+Rule	sol88	1988	only	-	Feb	1	12:13:30s -0:13:30 -
+Rule	sol88	1988	only	-	Feb	2	12:13:40s -0:13:40 -
+Rule	sol88	1988	only	-	Feb	3	12:13:45s -0:13:45 -
+Rule	sol88	1988	only	-	Feb	4	12:13:55s -0:13:55 -
+Rule	sol88	1988	only	-	Feb	5	12:14:00s -0:14:00 -
+Rule	sol88	1988	only	-	Feb	6	12:14:05s -0:14:05 -
+Rule	sol88	1988	only	-	Feb	7	12:14:10s -0:14:10 -
+Rule	sol88	1988	only	-	Feb	8	12:14:10s -0:14:10 -
+Rule	sol88	1988	only	-	Feb	9	12:14:15s -0:14:15 -
+Rule	sol88	1988	only	-	Feb	10	12:14:15s -0:14:15 -
+Rule	sol88	1988	only	-	Feb	11	12:14:15s -0:14:15 -
+Rule	sol88	1988	only	-	Feb	12	12:14:15s -0:14:15 -
+Rule	sol88	1988	only	-	Feb	13	12:14:15s -0:14:15 -
+Rule	sol88	1988	only	-	Feb	14	12:14:15s -0:14:15 -
+Rule	sol88	1988	only	-	Feb	15	12:14:10s -0:14:10 -
+Rule	sol88	1988	only	-	Feb	16	12:14:10s -0:14:10 -
+Rule	sol88	1988	only	-	Feb	17	12:14:05s -0:14:05 -
+Rule	sol88	1988	only	-	Feb	18	12:14:00s -0:14:00 -
+Rule	sol88	1988	only	-	Feb	19	12:13:55s -0:13:55 -
+Rule	sol88	1988	only	-	Feb	20	12:13:50s -0:13:50 -
+Rule	sol88	1988	only	-	Feb	21	12:13:45s -0:13:45 -
+Rule	sol88	1988	only	-	Feb	22	12:13:40s -0:13:40 -
+Rule	sol88	1988	only	-	Feb	23	12:13:30s -0:13:30 -
+Rule	sol88	1988	only	-	Feb	24	12:13:20s -0:13:20 -
+Rule	sol88	1988	only	-	Feb	25	12:13:15s -0:13:15 -
+Rule	sol88	1988	only	-	Feb	26	12:13:05s -0:13:05 -
+Rule	sol88	1988	only	-	Feb	27	12:12:55s -0:12:55 -
+Rule	sol88	1988	only	-	Feb	28	12:12:45s -0:12:45 -
+Rule	sol88	1988	only	-	Feb	29	12:12:30s -0:12:30 -
+Rule	sol88	1988	only	-	Mar	1	12:12:20s -0:12:20 -
+Rule	sol88	1988	only	-	Mar	2	12:12:10s -0:12:10 -
+Rule	sol88	1988	only	-	Mar	3	12:11:55s -0:11:55 -
+Rule	sol88	1988	only	-	Mar	4	12:11:45s -0:11:45 -
+Rule	sol88	1988	only	-	Mar	5	12:11:30s -0:11:30 -
+Rule	sol88	1988	only	-	Mar	6	12:11:15s -0:11:15 -
+Rule	sol88	1988	only	-	Mar	7	12:11:00s -0:11:00 -
+Rule	sol88	1988	only	-	Mar	8	12:10:45s -0:10:45 -
+Rule	sol88	1988	only	-	Mar	9	12:10:30s -0:10:30 -
+Rule	sol88	1988	only	-	Mar	10	12:10:15s -0:10:15 -
+Rule	sol88	1988	only	-	Mar	11	12:10:00s -0:10:00 -
+Rule	sol88	1988	only	-	Mar	12	12:09:45s -0:09:45 -
+Rule	sol88	1988	only	-	Mar	13	12:09:30s -0:09:30 -
+Rule	sol88	1988	only	-	Mar	14	12:09:10s -0:09:10 -
+Rule	sol88	1988	only	-	Mar	15	12:08:55s -0:08:55 -
+Rule	sol88	1988	only	-	Mar	16	12:08:40s -0:08:40 -
+Rule	sol88	1988	only	-	Mar	17	12:08:20s -0:08:20 -
+Rule	sol88	1988	only	-	Mar	18	12:08:05s -0:08:05 -
+Rule	sol88	1988	only	-	Mar	19	12:07:45s -0:07:45 -
+Rule	sol88	1988	only	-	Mar	20	12:07:30s -0:07:30 -
+Rule	sol88	1988	only	-	Mar	21	12:07:10s -0:07:10 -
+Rule	sol88	1988	only	-	Mar	22	12:06:50s -0:06:50 -
+Rule	sol88	1988	only	-	Mar	23	12:06:35s -0:06:35 -
+Rule	sol88	1988	only	-	Mar	24	12:06:15s -0:06:15 -
+Rule	sol88	1988	only	-	Mar	25	12:06:00s -0:06:00 -
+Rule	sol88	1988	only	-	Mar	26	12:05:40s -0:05:40 -
+Rule	sol88	1988	only	-	Mar	27	12:05:20s -0:05:20 -
+Rule	sol88	1988	only	-	Mar	28	12:05:05s -0:05:05 -
+Rule	sol88	1988	only	-	Mar	29	12:04:45s -0:04:45 -
+Rule	sol88	1988	only	-	Mar	30	12:04:25s -0:04:25 -
+Rule	sol88	1988	only	-	Mar	31	12:04:10s -0:04:10 -
+Rule	sol88	1988	only	-	Apr	1	12:03:50s -0:03:50 -
+Rule	sol88	1988	only	-	Apr	2	12:03:35s -0:03:35 -
+Rule	sol88	1988	only	-	Apr	3	12:03:15s -0:03:15 -
+Rule	sol88	1988	only	-	Apr	4	12:03:00s -0:03:00 -
+Rule	sol88	1988	only	-	Apr	5	12:02:40s -0:02:40 -
+Rule	sol88	1988	only	-	Apr	6	12:02:25s -0:02:25 -
+Rule	sol88	1988	only	-	Apr	7	12:02:05s -0:02:05 -
+Rule	sol88	1988	only	-	Apr	8	12:01:50s -0:01:50 -
+Rule	sol88	1988	only	-	Apr	9	12:01:35s -0:01:35 -
+Rule	sol88	1988	only	-	Apr	10	12:01:15s -0:01:15 -
+Rule	sol88	1988	only	-	Apr	11	12:01:00s -0:01:00 -
+Rule	sol88	1988	only	-	Apr	12	12:00:45s -0:00:45 -
+Rule	sol88	1988	only	-	Apr	13	12:00:30s -0:00:30 -
+Rule	sol88	1988	only	-	Apr	14	12:00:15s -0:00:15 -
+Rule	sol88	1988	only	-	Apr	15	12:00:00s 0:00:00 -
+Rule	sol88	1988	only	-	Apr	16	11:59:45s 0:00:15 -
+Rule	sol88	1988	only	-	Apr	17	11:59:30s 0:00:30 -
+Rule	sol88	1988	only	-	Apr	18	11:59:20s 0:00:40 -
+Rule	sol88	1988	only	-	Apr	19	11:59:05s 0:00:55 -
+Rule	sol88	1988	only	-	Apr	20	11:58:55s 0:01:05 -
+Rule	sol88	1988	only	-	Apr	21	11:58:40s 0:01:20 -
+Rule	sol88	1988	only	-	Apr	22	11:58:30s 0:01:30 -
+Rule	sol88	1988	only	-	Apr	23	11:58:15s 0:01:45 -
+Rule	sol88	1988	only	-	Apr	24	11:58:05s 0:01:55 -
+Rule	sol88	1988	only	-	Apr	25	11:57:55s 0:02:05 -
+Rule	sol88	1988	only	-	Apr	26	11:57:45s 0:02:15 -
+Rule	sol88	1988	only	-	Apr	27	11:57:35s 0:02:25 -
+Rule	sol88	1988	only	-	Apr	28	11:57:30s 0:02:30 -
+Rule	sol88	1988	only	-	Apr	29	11:57:20s 0:02:40 -
+Rule	sol88	1988	only	-	Apr	30	11:57:10s 0:02:50 -
+Rule	sol88	1988	only	-	May	1	11:57:05s 0:02:55 -
+Rule	sol88	1988	only	-	May	2	11:56:55s 0:03:05 -
+Rule	sol88	1988	only	-	May	3	11:56:50s 0:03:10 -
+Rule	sol88	1988	only	-	May	4	11:56:45s 0:03:15 -
+Rule	sol88	1988	only	-	May	5	11:56:40s 0:03:20 -
+Rule	sol88	1988	only	-	May	6	11:56:35s 0:03:25 -
+Rule	sol88	1988	only	-	May	7	11:56:30s 0:03:30 -
+Rule	sol88	1988	only	-	May	8	11:56:25s 0:03:35 -
+Rule	sol88	1988	only	-	May	9	11:56:25s 0:03:35 -
+Rule	sol88	1988	only	-	May	10	11:56:20s 0:03:40 -
+Rule	sol88	1988	only	-	May	11	11:56:20s 0:03:40 -
+Rule	sol88	1988	only	-	May	12	11:56:20s 0:03:40 -
+Rule	sol88	1988	only	-	May	13	11:56:20s 0:03:40 -
+Rule	sol88	1988	only	-	May	14	11:56:20s 0:03:40 -
+Rule	sol88	1988	only	-	May	15	11:56:20s 0:03:40 -
+Rule	sol88	1988	only	-	May	16	11:56:20s 0:03:40 -
+Rule	sol88	1988	only	-	May	17	11:56:20s 0:03:40 -
+Rule	sol88	1988	only	-	May	18	11:56:25s 0:03:35 -
+Rule	sol88	1988	only	-	May	19	11:56:25s 0:03:35 -
+Rule	sol88	1988	only	-	May	20	11:56:30s 0:03:30 -
+Rule	sol88	1988	only	-	May	21	11:56:35s 0:03:25 -
+Rule	sol88	1988	only	-	May	22	11:56:40s 0:03:20 -
+Rule	sol88	1988	only	-	May	23	11:56:45s 0:03:15 -
+Rule	sol88	1988	only	-	May	24	11:56:50s 0:03:10 -
+Rule	sol88	1988	only	-	May	25	11:56:55s 0:03:05 -
+Rule	sol88	1988	only	-	May	26	11:57:00s 0:03:00 -
+Rule	sol88	1988	only	-	May	27	11:57:05s 0:02:55 -
+Rule	sol88	1988	only	-	May	28	11:57:15s 0:02:45 -
+Rule	sol88	1988	only	-	May	29	11:57:20s 0:02:40 -
+Rule	sol88	1988	only	-	May	30	11:57:30s 0:02:30 -
+Rule	sol88	1988	only	-	May	31	11:57:40s 0:02:20 -
+Rule	sol88	1988	only	-	Jun	1	11:57:50s 0:02:10 -
+Rule	sol88	1988	only	-	Jun	2	11:57:55s 0:02:05 -
+Rule	sol88	1988	only	-	Jun	3	11:58:05s 0:01:55 -
+Rule	sol88	1988	only	-	Jun	4	11:58:15s 0:01:45 -
+Rule	sol88	1988	only	-	Jun	5	11:58:30s 0:01:30 -
+Rule	sol88	1988	only	-	Jun	6	11:58:40s 0:01:20 -
+Rule	sol88	1988	only	-	Jun	7	11:58:50s 0:01:10 -
+Rule	sol88	1988	only	-	Jun	8	11:59:00s 0:01:00 -
+Rule	sol88	1988	only	-	Jun	9	11:59:15s 0:00:45 -
+Rule	sol88	1988	only	-	Jun	10	11:59:25s 0:00:35 -
+Rule	sol88	1988	only	-	Jun	11	11:59:35s 0:00:25 -
+Rule	sol88	1988	only	-	Jun	12	11:59:50s 0:00:10 -
+Rule	sol88	1988	only	-	Jun	13	12:00:00s 0:00:00 -
+Rule	sol88	1988	only	-	Jun	14	12:00:15s -0:00:15 -
+Rule	sol88	1988	only	-	Jun	15	12:00:25s -0:00:25 -
+Rule	sol88	1988	only	-	Jun	16	12:00:40s -0:00:40 -
+Rule	sol88	1988	only	-	Jun	17	12:00:55s -0:00:55 -
+Rule	sol88	1988	only	-	Jun	18	12:01:05s -0:01:05 -
+Rule	sol88	1988	only	-	Jun	19	12:01:20s -0:01:20 -
+Rule	sol88	1988	only	-	Jun	20	12:01:30s -0:01:30 -
+Rule	sol88	1988	only	-	Jun	21	12:01:45s -0:01:45 -
+Rule	sol88	1988	only	-	Jun	22	12:02:00s -0:02:00 -
+Rule	sol88	1988	only	-	Jun	23	12:02:10s -0:02:10 -
+Rule	sol88	1988	only	-	Jun	24	12:02:25s -0:02:25 -
+Rule	sol88	1988	only	-	Jun	25	12:02:35s -0:02:35 -
+Rule	sol88	1988	only	-	Jun	26	12:02:50s -0:02:50 -
+Rule	sol88	1988	only	-	Jun	27	12:03:00s -0:03:00 -
+Rule	sol88	1988	only	-	Jun	28	12:03:15s -0:03:15 -
+Rule	sol88	1988	only	-	Jun	29	12:03:25s -0:03:25 -
+Rule	sol88	1988	only	-	Jun	30	12:03:40s -0:03:40 -
+Rule	sol88	1988	only	-	Jul	1	12:03:50s -0:03:50 -
+Rule	sol88	1988	only	-	Jul	2	12:04:00s -0:04:00 -
+Rule	sol88	1988	only	-	Jul	3	12:04:10s -0:04:10 -
+Rule	sol88	1988	only	-	Jul	4	12:04:25s -0:04:25 -
+Rule	sol88	1988	only	-	Jul	5	12:04:35s -0:04:35 -
+Rule	sol88	1988	only	-	Jul	6	12:04:45s -0:04:45 -
+Rule	sol88	1988	only	-	Jul	7	12:04:55s -0:04:55 -
+Rule	sol88	1988	only	-	Jul	8	12:05:05s -0:05:05 -
+Rule	sol88	1988	only	-	Jul	9	12:05:10s -0:05:10 -
+Rule	sol88	1988	only	-	Jul	10	12:05:20s -0:05:20 -
+Rule	sol88	1988	only	-	Jul	11	12:05:30s -0:05:30 -
+Rule	sol88	1988	only	-	Jul	12	12:05:35s -0:05:35 -
+Rule	sol88	1988	only	-	Jul	13	12:05:45s -0:05:45 -
+Rule	sol88	1988	only	-	Jul	14	12:05:50s -0:05:50 -
+Rule	sol88	1988	only	-	Jul	15	12:05:55s -0:05:55 -
+Rule	sol88	1988	only	-	Jul	16	12:06:00s -0:06:00 -
+Rule	sol88	1988	only	-	Jul	17	12:06:05s -0:06:05 -
+Rule	sol88	1988	only	-	Jul	18	12:06:10s -0:06:10 -
+Rule	sol88	1988	only	-	Jul	19	12:06:15s -0:06:15 -
+Rule	sol88	1988	only	-	Jul	20	12:06:20s -0:06:20 -
+Rule	sol88	1988	only	-	Jul	21	12:06:25s -0:06:25 -
+Rule	sol88	1988	only	-	Jul	22	12:06:25s -0:06:25 -
+Rule	sol88	1988	only	-	Jul	23	12:06:25s -0:06:25 -
+Rule	sol88	1988	only	-	Jul	24	12:06:30s -0:06:30 -
+Rule	sol88	1988	only	-	Jul	25	12:06:30s -0:06:30 -
+Rule	sol88	1988	only	-	Jul	26	12:06:30s -0:06:30 -
+Rule	sol88	1988	only	-	Jul	27	12:06:30s -0:06:30 -
+Rule	sol88	1988	only	-	Jul	28	12:06:30s -0:06:30 -
+Rule	sol88	1988	only	-	Jul	29	12:06:25s -0:06:25 -
+Rule	sol88	1988	only	-	Jul	30	12:06:25s -0:06:25 -
+Rule	sol88	1988	only	-	Jul	31	12:06:20s -0:06:20 -
+Rule	sol88	1988	only	-	Aug	1	12:06:15s -0:06:15 -
+Rule	sol88	1988	only	-	Aug	2	12:06:15s -0:06:15 -
+Rule	sol88	1988	only	-	Aug	3	12:06:10s -0:06:10 -
+Rule	sol88	1988	only	-	Aug	4	12:06:05s -0:06:05 -
+Rule	sol88	1988	only	-	Aug	5	12:05:55s -0:05:55 -
+Rule	sol88	1988	only	-	Aug	6	12:05:50s -0:05:50 -
+Rule	sol88	1988	only	-	Aug	7	12:05:45s -0:05:45 -
+Rule	sol88	1988	only	-	Aug	8	12:05:35s -0:05:35 -
+Rule	sol88	1988	only	-	Aug	9	12:05:25s -0:05:25 -
+Rule	sol88	1988	only	-	Aug	10	12:05:20s -0:05:20 -
+Rule	sol88	1988	only	-	Aug	11	12:05:10s -0:05:10 -
+Rule	sol88	1988	only	-	Aug	12	12:05:00s -0:05:00 -
+Rule	sol88	1988	only	-	Aug	13	12:04:50s -0:04:50 -
+Rule	sol88	1988	only	-	Aug	14	12:04:35s -0:04:35 -
+Rule	sol88	1988	only	-	Aug	15	12:04:25s -0:04:25 -
+Rule	sol88	1988	only	-	Aug	16	12:04:15s -0:04:15 -
+Rule	sol88	1988	only	-	Aug	17	12:04:00s -0:04:00 -
+Rule	sol88	1988	only	-	Aug	18	12:03:50s -0:03:50 -
+Rule	sol88	1988	only	-	Aug	19	12:03:35s -0:03:35 -
+Rule	sol88	1988	only	-	Aug	20	12:03:20s -0:03:20 -
+Rule	sol88	1988	only	-	Aug	21	12:03:05s -0:03:05 -
+Rule	sol88	1988	only	-	Aug	22	12:02:50s -0:02:50 -
+Rule	sol88	1988	only	-	Aug	23	12:02:35s -0:02:35 -
+Rule	sol88	1988	only	-	Aug	24	12:02:20s -0:02:20 -
+Rule	sol88	1988	only	-	Aug	25	12:02:00s -0:02:00 -
+Rule	sol88	1988	only	-	Aug	26	12:01:45s -0:01:45 -
+Rule	sol88	1988	only	-	Aug	27	12:01:30s -0:01:30 -
+Rule	sol88	1988	only	-	Aug	28	12:01:10s -0:01:10 -
+Rule	sol88	1988	only	-	Aug	29	12:00:50s -0:00:50 -
+Rule	sol88	1988	only	-	Aug	30	12:00:35s -0:00:35 -
+Rule	sol88	1988	only	-	Aug	31	12:00:15s -0:00:15 -
+Rule	sol88	1988	only	-	Sep	1	11:59:55s 0:00:05 -
+Rule	sol88	1988	only	-	Sep	2	11:59:35s 0:00:25 -
+Rule	sol88	1988	only	-	Sep	3	11:59:20s 0:00:40 -
+Rule	sol88	1988	only	-	Sep	4	11:59:00s 0:01:00 -
+Rule	sol88	1988	only	-	Sep	5	11:58:40s 0:01:20 -
+Rule	sol88	1988	only	-	Sep	6	11:58:20s 0:01:40 -
+Rule	sol88	1988	only	-	Sep	7	11:58:00s 0:02:00 -
+Rule	sol88	1988	only	-	Sep	8	11:57:35s 0:02:25 -
+Rule	sol88	1988	only	-	Sep	9	11:57:15s 0:02:45 -
+Rule	sol88	1988	only	-	Sep	10	11:56:55s 0:03:05 -
+Rule	sol88	1988	only	-	Sep	11	11:56:35s 0:03:25 -
+Rule	sol88	1988	only	-	Sep	12	11:56:15s 0:03:45 -
+Rule	sol88	1988	only	-	Sep	13	11:55:50s 0:04:10 -
+Rule	sol88	1988	only	-	Sep	14	11:55:30s 0:04:30 -
+Rule	sol88	1988	only	-	Sep	15	11:55:10s 0:04:50 -
+Rule	sol88	1988	only	-	Sep	16	11:54:50s 0:05:10 -
+Rule	sol88	1988	only	-	Sep	17	11:54:25s 0:05:35 -
+Rule	sol88	1988	only	-	Sep	18	11:54:05s 0:05:55 -
+Rule	sol88	1988	only	-	Sep	19	11:53:45s 0:06:15 -
+Rule	sol88	1988	only	-	Sep	20	11:53:25s 0:06:35 -
+Rule	sol88	1988	only	-	Sep	21	11:53:00s 0:07:00 -
+Rule	sol88	1988	only	-	Sep	22	11:52:40s 0:07:20 -
+Rule	sol88	1988	only	-	Sep	23	11:52:20s 0:07:40 -
+Rule	sol88	1988	only	-	Sep	24	11:52:00s 0:08:00 -
+Rule	sol88	1988	only	-	Sep	25	11:51:40s 0:08:20 -
+Rule	sol88	1988	only	-	Sep	26	11:51:15s 0:08:45 -
+Rule	sol88	1988	only	-	Sep	27	11:50:55s 0:09:05 -
+Rule	sol88	1988	only	-	Sep	28	11:50:35s 0:09:25 -
+Rule	sol88	1988	only	-	Sep	29	11:50:15s 0:09:45 -
+Rule	sol88	1988	only	-	Sep	30	11:49:55s 0:10:05 -
+Rule	sol88	1988	only	-	Oct	1	11:49:35s 0:10:25 -
+Rule	sol88	1988	only	-	Oct	2	11:49:20s 0:10:40 -
+Rule	sol88	1988	only	-	Oct	3	11:49:00s 0:11:00 -
+Rule	sol88	1988	only	-	Oct	4	11:48:40s 0:11:20 -
+Rule	sol88	1988	only	-	Oct	5	11:48:25s 0:11:35 -
+Rule	sol88	1988	only	-	Oct	6	11:48:05s 0:11:55 -
+Rule	sol88	1988	only	-	Oct	7	11:47:50s 0:12:10 -
+Rule	sol88	1988	only	-	Oct	8	11:47:30s 0:12:30 -
+Rule	sol88	1988	only	-	Oct	9	11:47:15s 0:12:45 -
+Rule	sol88	1988	only	-	Oct	10	11:47:00s 0:13:00 -
+Rule	sol88	1988	only	-	Oct	11	11:46:45s 0:13:15 -
+Rule	sol88	1988	only	-	Oct	12	11:46:30s 0:13:30 -
+Rule	sol88	1988	only	-	Oct	13	11:46:15s 0:13:45 -
+Rule	sol88	1988	only	-	Oct	14	11:46:00s 0:14:00 -
+Rule	sol88	1988	only	-	Oct	15	11:45:45s 0:14:15 -
+Rule	sol88	1988	only	-	Oct	16	11:45:35s 0:14:25 -
+Rule	sol88	1988	only	-	Oct	17	11:45:20s 0:14:40 -
+Rule	sol88	1988	only	-	Oct	18	11:45:10s 0:14:50 -
+Rule	sol88	1988	only	-	Oct	19	11:45:00s 0:15:00 -
+Rule	sol88	1988	only	-	Oct	20	11:44:45s 0:15:15 -
+Rule	sol88	1988	only	-	Oct	21	11:44:40s 0:15:20 -
+Rule	sol88	1988	only	-	Oct	22	11:44:30s 0:15:30 -
+Rule	sol88	1988	only	-	Oct	23	11:44:20s 0:15:40 -
+Rule	sol88	1988	only	-	Oct	24	11:44:10s 0:15:50 -
+Rule	sol88	1988	only	-	Oct	25	11:44:05s 0:15:55 -
+Rule	sol88	1988	only	-	Oct	26	11:44:00s 0:16:00 -
+Rule	sol88	1988	only	-	Oct	27	11:43:55s 0:16:05 -
+Rule	sol88	1988	only	-	Oct	28	11:43:50s 0:16:10 -
+Rule	sol88	1988	only	-	Oct	29	11:43:45s 0:16:15 -
+Rule	sol88	1988	only	-	Oct	30	11:43:40s 0:16:20 -
+Rule	sol88	1988	only	-	Oct	31	11:43:40s 0:16:20 -
+Rule	sol88	1988	only	-	Nov	1	11:43:35s 0:16:25 -
+Rule	sol88	1988	only	-	Nov	2	11:43:35s 0:16:25 -
+Rule	sol88	1988	only	-	Nov	3	11:43:35s 0:16:25 -
+Rule	sol88	1988	only	-	Nov	4	11:43:35s 0:16:25 -
+Rule	sol88	1988	only	-	Nov	5	11:43:40s 0:16:20 -
+Rule	sol88	1988	only	-	Nov	6	11:43:40s 0:16:20 -
+Rule	sol88	1988	only	-	Nov	7	11:43:45s 0:16:15 -
+Rule	sol88	1988	only	-	Nov	8	11:43:45s 0:16:15 -
+Rule	sol88	1988	only	-	Nov	9	11:43:50s 0:16:10 -
+Rule	sol88	1988	only	-	Nov	10	11:44:00s 0:16:00 -
+Rule	sol88	1988	only	-	Nov	11	11:44:05s 0:15:55 -
+Rule	sol88	1988	only	-	Nov	12	11:44:10s 0:15:50 -
+Rule	sol88	1988	only	-	Nov	13	11:44:20s 0:15:40 -
+Rule	sol88	1988	only	-	Nov	14	11:44:30s 0:15:30 -
+Rule	sol88	1988	only	-	Nov	15	11:44:40s 0:15:20 -
+Rule	sol88	1988	only	-	Nov	16	11:44:50s 0:15:10 -
+Rule	sol88	1988	only	-	Nov	17	11:45:00s 0:15:00 -
+Rule	sol88	1988	only	-	Nov	18	11:45:15s 0:14:45 -
+Rule	sol88	1988	only	-	Nov	19	11:45:25s 0:14:35 -
+Rule	sol88	1988	only	-	Nov	20	11:45:40s 0:14:20 -
+Rule	sol88	1988	only	-	Nov	21	11:45:55s 0:14:05 -
+Rule	sol88	1988	only	-	Nov	22	11:46:10s 0:13:50 -
+Rule	sol88	1988	only	-	Nov	23	11:46:30s 0:13:30 -
+Rule	sol88	1988	only	-	Nov	24	11:46:45s 0:13:15 -
+Rule	sol88	1988	only	-	Nov	25	11:47:05s 0:12:55 -
+Rule	sol88	1988	only	-	Nov	26	11:47:20s 0:12:40 -
+Rule	sol88	1988	only	-	Nov	27	11:47:40s 0:12:20 -
+Rule	sol88	1988	only	-	Nov	28	11:48:00s 0:12:00 -
+Rule	sol88	1988	only	-	Nov	29	11:48:25s 0:11:35 -
+Rule	sol88	1988	only	-	Nov	30	11:48:45s 0:11:15 -
+Rule	sol88	1988	only	-	Dec	1	11:49:05s 0:10:55 -
+Rule	sol88	1988	only	-	Dec	2	11:49:30s 0:10:30 -
+Rule	sol88	1988	only	-	Dec	3	11:49:55s 0:10:05 -
+Rule	sol88	1988	only	-	Dec	4	11:50:15s 0:09:45 -
+Rule	sol88	1988	only	-	Dec	5	11:50:40s 0:09:20 -
+Rule	sol88	1988	only	-	Dec	6	11:51:05s 0:08:55 -
+Rule	sol88	1988	only	-	Dec	7	11:51:35s 0:08:25 -
+Rule	sol88	1988	only	-	Dec	8	11:52:00s 0:08:00 -
+Rule	sol88	1988	only	-	Dec	9	11:52:25s 0:07:35 -
+Rule	sol88	1988	only	-	Dec	10	11:52:55s 0:07:05 -
+Rule	sol88	1988	only	-	Dec	11	11:53:20s 0:06:40 -
+Rule	sol88	1988	only	-	Dec	12	11:53:50s 0:06:10 -
+Rule	sol88	1988	only	-	Dec	13	11:54:15s 0:05:45 -
+Rule	sol88	1988	only	-	Dec	14	11:54:45s 0:05:15 -
+Rule	sol88	1988	only	-	Dec	15	11:55:15s 0:04:45 -
+Rule	sol88	1988	only	-	Dec	16	11:55:45s 0:04:15 -
+Rule	sol88	1988	only	-	Dec	17	11:56:15s 0:03:45 -
+Rule	sol88	1988	only	-	Dec	18	11:56:40s 0:03:20 -
+Rule	sol88	1988	only	-	Dec	19	11:57:10s 0:02:50 -
+Rule	sol88	1988	only	-	Dec	20	11:57:40s 0:02:20 -
+Rule	sol88	1988	only	-	Dec	21	11:58:10s 0:01:50 -
+Rule	sol88	1988	only	-	Dec	22	11:58:40s 0:01:20 -
+Rule	sol88	1988	only	-	Dec	23	11:59:10s 0:00:50 -
+Rule	sol88	1988	only	-	Dec	24	11:59:40s 0:00:20 -
+Rule	sol88	1988	only	-	Dec	25	12:00:10s -0:00:10 -
+Rule	sol88	1988	only	-	Dec	26	12:00:40s -0:00:40 -
+Rule	sol88	1988	only	-	Dec	27	12:01:10s -0:01:10 -
+Rule	sol88	1988	only	-	Dec	28	12:01:40s -0:01:40 -
+Rule	sol88	1988	only	-	Dec	29	12:02:10s -0:02:10 -
+Rule	sol88	1988	only	-	Dec	30	12:02:35s -0:02:35 -
+Rule	sol88	1988	only	-	Dec	31	12:03:05s -0:03:05 -
+
+# Riyadh is at about 46 degrees 46 minutes East:  3 hrs, 7 mins, 4 secs
+# Before and after 1988, we'll operate on local mean solar time.
+
+# Zone	NAME		GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
+Zone	Asia/Riyadh88	3:07:04	-		zzz	1988
+			3:07:04	sol88		zzz	1989
+			3:07:04	-		zzz
+# For backward compatibility...
+Link	Asia/Riyadh88	Mideast/Riyadh88
diff --git a/tools/zoneinfo/tzdata2009s/solar89 b/tools/zoneinfo/tzdata2009s/solar89
new file mode 100644
index 0000000..d24de4a
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/solar89
@@ -0,0 +1,396 @@
+# <pre>
+# @(#)solar89	8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# Apparent noon times below are for Riyadh; they're a bit off for other places.
+# Times were computed using a formula provided by the U. S. Naval Observatory:
+#	eqt = -105.8 * sin(l) + 596.2 * sin(2 * l) + 4.4 * sin(3 * l)
+#		-12.7 * sin(4 * l) - 429.0 * cos(l) - 2.1 * cos (2 * l)
+#		+ 19.3 * cos(3 * l);
+# where l is the "mean longitude of the Sun" given by
+#	l = 279.642 degrees + 0.985647 * d
+# and d is the interval in days from January 0, 0 hours Universal Time
+# (equaling the day of the year plus the fraction of a day from zero hours).
+# The accuracy of the formula is plus or minus three seconds.
+#
+# Rounding to the nearest five seconds results in fewer than
+# 256 different "time types"--a limit that's faced because time types are
+# stored on disk as unsigned chars.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	sol89	1989	only	-	Jan	1	12:03:35s -0:03:35 -
+Rule	sol89	1989	only	-	Jan	2	12:04:05s -0:04:05 -
+Rule	sol89	1989	only	-	Jan	3	12:04:30s -0:04:30 -
+Rule	sol89	1989	only	-	Jan	4	12:05:00s -0:05:00 -
+Rule	sol89	1989	only	-	Jan	5	12:05:25s -0:05:25 -
+Rule	sol89	1989	only	-	Jan	6	12:05:50s -0:05:50 -
+Rule	sol89	1989	only	-	Jan	7	12:06:15s -0:06:15 -
+Rule	sol89	1989	only	-	Jan	8	12:06:45s -0:06:45 -
+Rule	sol89	1989	only	-	Jan	9	12:07:10s -0:07:10 -
+Rule	sol89	1989	only	-	Jan	10	12:07:35s -0:07:35 -
+Rule	sol89	1989	only	-	Jan	11	12:07:55s -0:07:55 -
+Rule	sol89	1989	only	-	Jan	12	12:08:20s -0:08:20 -
+Rule	sol89	1989	only	-	Jan	13	12:08:45s -0:08:45 -
+Rule	sol89	1989	only	-	Jan	14	12:09:05s -0:09:05 -
+Rule	sol89	1989	only	-	Jan	15	12:09:25s -0:09:25 -
+Rule	sol89	1989	only	-	Jan	16	12:09:45s -0:09:45 -
+Rule	sol89	1989	only	-	Jan	17	12:10:05s -0:10:05 -
+Rule	sol89	1989	only	-	Jan	18	12:10:25s -0:10:25 -
+Rule	sol89	1989	only	-	Jan	19	12:10:45s -0:10:45 -
+Rule	sol89	1989	only	-	Jan	20	12:11:05s -0:11:05 -
+Rule	sol89	1989	only	-	Jan	21	12:11:20s -0:11:20 -
+Rule	sol89	1989	only	-	Jan	22	12:11:35s -0:11:35 -
+Rule	sol89	1989	only	-	Jan	23	12:11:55s -0:11:55 -
+Rule	sol89	1989	only	-	Jan	24	12:12:10s -0:12:10 -
+Rule	sol89	1989	only	-	Jan	25	12:12:20s -0:12:20 -
+Rule	sol89	1989	only	-	Jan	26	12:12:35s -0:12:35 -
+Rule	sol89	1989	only	-	Jan	27	12:12:50s -0:12:50 -
+Rule	sol89	1989	only	-	Jan	28	12:13:00s -0:13:00 -
+Rule	sol89	1989	only	-	Jan	29	12:13:10s -0:13:10 -
+Rule	sol89	1989	only	-	Jan	30	12:13:20s -0:13:20 -
+Rule	sol89	1989	only	-	Jan	31	12:13:30s -0:13:30 -
+Rule	sol89	1989	only	-	Feb	1	12:13:40s -0:13:40 -
+Rule	sol89	1989	only	-	Feb	2	12:13:45s -0:13:45 -
+Rule	sol89	1989	only	-	Feb	3	12:13:55s -0:13:55 -
+Rule	sol89	1989	only	-	Feb	4	12:14:00s -0:14:00 -
+Rule	sol89	1989	only	-	Feb	5	12:14:05s -0:14:05 -
+Rule	sol89	1989	only	-	Feb	6	12:14:10s -0:14:10 -
+Rule	sol89	1989	only	-	Feb	7	12:14:10s -0:14:10 -
+Rule	sol89	1989	only	-	Feb	8	12:14:15s -0:14:15 -
+Rule	sol89	1989	only	-	Feb	9	12:14:15s -0:14:15 -
+Rule	sol89	1989	only	-	Feb	10	12:14:20s -0:14:20 -
+Rule	sol89	1989	only	-	Feb	11	12:14:20s -0:14:20 -
+Rule	sol89	1989	only	-	Feb	12	12:14:20s -0:14:20 -
+Rule	sol89	1989	only	-	Feb	13	12:14:15s -0:14:15 -
+Rule	sol89	1989	only	-	Feb	14	12:14:15s -0:14:15 -
+Rule	sol89	1989	only	-	Feb	15	12:14:10s -0:14:10 -
+Rule	sol89	1989	only	-	Feb	16	12:14:10s -0:14:10 -
+Rule	sol89	1989	only	-	Feb	17	12:14:05s -0:14:05 -
+Rule	sol89	1989	only	-	Feb	18	12:14:00s -0:14:00 -
+Rule	sol89	1989	only	-	Feb	19	12:13:55s -0:13:55 -
+Rule	sol89	1989	only	-	Feb	20	12:13:50s -0:13:50 -
+Rule	sol89	1989	only	-	Feb	21	12:13:40s -0:13:40 -
+Rule	sol89	1989	only	-	Feb	22	12:13:35s -0:13:35 -
+Rule	sol89	1989	only	-	Feb	23	12:13:25s -0:13:25 -
+Rule	sol89	1989	only	-	Feb	24	12:13:15s -0:13:15 -
+Rule	sol89	1989	only	-	Feb	25	12:13:05s -0:13:05 -
+Rule	sol89	1989	only	-	Feb	26	12:12:55s -0:12:55 -
+Rule	sol89	1989	only	-	Feb	27	12:12:45s -0:12:45 -
+Rule	sol89	1989	only	-	Feb	28	12:12:35s -0:12:35 -
+Rule	sol89	1989	only	-	Mar	1	12:12:25s -0:12:25 -
+Rule	sol89	1989	only	-	Mar	2	12:12:10s -0:12:10 -
+Rule	sol89	1989	only	-	Mar	3	12:12:00s -0:12:00 -
+Rule	sol89	1989	only	-	Mar	4	12:11:45s -0:11:45 -
+Rule	sol89	1989	only	-	Mar	5	12:11:35s -0:11:35 -
+Rule	sol89	1989	only	-	Mar	6	12:11:20s -0:11:20 -
+Rule	sol89	1989	only	-	Mar	7	12:11:05s -0:11:05 -
+Rule	sol89	1989	only	-	Mar	8	12:10:50s -0:10:50 -
+Rule	sol89	1989	only	-	Mar	9	12:10:35s -0:10:35 -
+Rule	sol89	1989	only	-	Mar	10	12:10:20s -0:10:20 -
+Rule	sol89	1989	only	-	Mar	11	12:10:05s -0:10:05 -
+Rule	sol89	1989	only	-	Mar	12	12:09:50s -0:09:50 -
+Rule	sol89	1989	only	-	Mar	13	12:09:30s -0:09:30 -
+Rule	sol89	1989	only	-	Mar	14	12:09:15s -0:09:15 -
+Rule	sol89	1989	only	-	Mar	15	12:09:00s -0:09:00 -
+Rule	sol89	1989	only	-	Mar	16	12:08:40s -0:08:40 -
+Rule	sol89	1989	only	-	Mar	17	12:08:25s -0:08:25 -
+Rule	sol89	1989	only	-	Mar	18	12:08:05s -0:08:05 -
+Rule	sol89	1989	only	-	Mar	19	12:07:50s -0:07:50 -
+Rule	sol89	1989	only	-	Mar	20	12:07:30s -0:07:30 -
+Rule	sol89	1989	only	-	Mar	21	12:07:15s -0:07:15 -
+Rule	sol89	1989	only	-	Mar	22	12:06:55s -0:06:55 -
+Rule	sol89	1989	only	-	Mar	23	12:06:35s -0:06:35 -
+Rule	sol89	1989	only	-	Mar	24	12:06:20s -0:06:20 -
+Rule	sol89	1989	only	-	Mar	25	12:06:00s -0:06:00 -
+Rule	sol89	1989	only	-	Mar	26	12:05:40s -0:05:40 -
+Rule	sol89	1989	only	-	Mar	27	12:05:25s -0:05:25 -
+Rule	sol89	1989	only	-	Mar	28	12:05:05s -0:05:05 -
+Rule	sol89	1989	only	-	Mar	29	12:04:50s -0:04:50 -
+Rule	sol89	1989	only	-	Mar	30	12:04:30s -0:04:30 -
+Rule	sol89	1989	only	-	Mar	31	12:04:10s -0:04:10 -
+Rule	sol89	1989	only	-	Apr	1	12:03:55s -0:03:55 -
+Rule	sol89	1989	only	-	Apr	2	12:03:35s -0:03:35 -
+Rule	sol89	1989	only	-	Apr	3	12:03:20s -0:03:20 -
+Rule	sol89	1989	only	-	Apr	4	12:03:00s -0:03:00 -
+Rule	sol89	1989	only	-	Apr	5	12:02:45s -0:02:45 -
+Rule	sol89	1989	only	-	Apr	6	12:02:25s -0:02:25 -
+Rule	sol89	1989	only	-	Apr	7	12:02:10s -0:02:10 -
+Rule	sol89	1989	only	-	Apr	8	12:01:50s -0:01:50 -
+Rule	sol89	1989	only	-	Apr	9	12:01:35s -0:01:35 -
+Rule	sol89	1989	only	-	Apr	10	12:01:20s -0:01:20 -
+Rule	sol89	1989	only	-	Apr	11	12:01:05s -0:01:05 -
+Rule	sol89	1989	only	-	Apr	12	12:00:50s -0:00:50 -
+Rule	sol89	1989	only	-	Apr	13	12:00:35s -0:00:35 -
+Rule	sol89	1989	only	-	Apr	14	12:00:20s -0:00:20 -
+Rule	sol89	1989	only	-	Apr	15	12:00:05s -0:00:05 -
+Rule	sol89	1989	only	-	Apr	16	11:59:50s 0:00:10 -
+Rule	sol89	1989	only	-	Apr	17	11:59:35s 0:00:25 -
+Rule	sol89	1989	only	-	Apr	18	11:59:20s 0:00:40 -
+Rule	sol89	1989	only	-	Apr	19	11:59:10s 0:00:50 -
+Rule	sol89	1989	only	-	Apr	20	11:58:55s 0:01:05 -
+Rule	sol89	1989	only	-	Apr	21	11:58:45s 0:01:15 -
+Rule	sol89	1989	only	-	Apr	22	11:58:30s 0:01:30 -
+Rule	sol89	1989	only	-	Apr	23	11:58:20s 0:01:40 -
+Rule	sol89	1989	only	-	Apr	24	11:58:10s 0:01:50 -
+Rule	sol89	1989	only	-	Apr	25	11:58:00s 0:02:00 -
+Rule	sol89	1989	only	-	Apr	26	11:57:50s 0:02:10 -
+Rule	sol89	1989	only	-	Apr	27	11:57:40s 0:02:20 -
+Rule	sol89	1989	only	-	Apr	28	11:57:30s 0:02:30 -
+Rule	sol89	1989	only	-	Apr	29	11:57:20s 0:02:40 -
+Rule	sol89	1989	only	-	Apr	30	11:57:15s 0:02:45 -
+Rule	sol89	1989	only	-	May	1	11:57:05s 0:02:55 -
+Rule	sol89	1989	only	-	May	2	11:57:00s 0:03:00 -
+Rule	sol89	1989	only	-	May	3	11:56:50s 0:03:10 -
+Rule	sol89	1989	only	-	May	4	11:56:45s 0:03:15 -
+Rule	sol89	1989	only	-	May	5	11:56:40s 0:03:20 -
+Rule	sol89	1989	only	-	May	6	11:56:35s 0:03:25 -
+Rule	sol89	1989	only	-	May	7	11:56:30s 0:03:30 -
+Rule	sol89	1989	only	-	May	8	11:56:30s 0:03:30 -
+Rule	sol89	1989	only	-	May	9	11:56:25s 0:03:35 -
+Rule	sol89	1989	only	-	May	10	11:56:25s 0:03:35 -
+Rule	sol89	1989	only	-	May	11	11:56:20s 0:03:40 -
+Rule	sol89	1989	only	-	May	12	11:56:20s 0:03:40 -
+Rule	sol89	1989	only	-	May	13	11:56:20s 0:03:40 -
+Rule	sol89	1989	only	-	May	14	11:56:20s 0:03:40 -
+Rule	sol89	1989	only	-	May	15	11:56:20s 0:03:40 -
+Rule	sol89	1989	only	-	May	16	11:56:20s 0:03:40 -
+Rule	sol89	1989	only	-	May	17	11:56:20s 0:03:40 -
+Rule	sol89	1989	only	-	May	18	11:56:25s 0:03:35 -
+Rule	sol89	1989	only	-	May	19	11:56:25s 0:03:35 -
+Rule	sol89	1989	only	-	May	20	11:56:30s 0:03:30 -
+Rule	sol89	1989	only	-	May	21	11:56:35s 0:03:25 -
+Rule	sol89	1989	only	-	May	22	11:56:35s 0:03:25 -
+Rule	sol89	1989	only	-	May	23	11:56:40s 0:03:20 -
+Rule	sol89	1989	only	-	May	24	11:56:45s 0:03:15 -
+Rule	sol89	1989	only	-	May	25	11:56:55s 0:03:05 -
+Rule	sol89	1989	only	-	May	26	11:57:00s 0:03:00 -
+Rule	sol89	1989	only	-	May	27	11:57:05s 0:02:55 -
+Rule	sol89	1989	only	-	May	28	11:57:15s 0:02:45 -
+Rule	sol89	1989	only	-	May	29	11:57:20s 0:02:40 -
+Rule	sol89	1989	only	-	May	30	11:57:30s 0:02:30 -
+Rule	sol89	1989	only	-	May	31	11:57:35s 0:02:25 -
+Rule	sol89	1989	only	-	Jun	1	11:57:45s 0:02:15 -
+Rule	sol89	1989	only	-	Jun	2	11:57:55s 0:02:05 -
+Rule	sol89	1989	only	-	Jun	3	11:58:05s 0:01:55 -
+Rule	sol89	1989	only	-	Jun	4	11:58:15s 0:01:45 -
+Rule	sol89	1989	only	-	Jun	5	11:58:25s 0:01:35 -
+Rule	sol89	1989	only	-	Jun	6	11:58:35s 0:01:25 -
+Rule	sol89	1989	only	-	Jun	7	11:58:45s 0:01:15 -
+Rule	sol89	1989	only	-	Jun	8	11:59:00s 0:01:00 -
+Rule	sol89	1989	only	-	Jun	9	11:59:10s 0:00:50 -
+Rule	sol89	1989	only	-	Jun	10	11:59:20s 0:00:40 -
+Rule	sol89	1989	only	-	Jun	11	11:59:35s 0:00:25 -
+Rule	sol89	1989	only	-	Jun	12	11:59:45s 0:00:15 -
+Rule	sol89	1989	only	-	Jun	13	12:00:00s 0:00:00 -
+Rule	sol89	1989	only	-	Jun	14	12:00:10s -0:00:10 -
+Rule	sol89	1989	only	-	Jun	15	12:00:25s -0:00:25 -
+Rule	sol89	1989	only	-	Jun	16	12:00:35s -0:00:35 -
+Rule	sol89	1989	only	-	Jun	17	12:00:50s -0:00:50 -
+Rule	sol89	1989	only	-	Jun	18	12:01:05s -0:01:05 -
+Rule	sol89	1989	only	-	Jun	19	12:01:15s -0:01:15 -
+Rule	sol89	1989	only	-	Jun	20	12:01:30s -0:01:30 -
+Rule	sol89	1989	only	-	Jun	21	12:01:40s -0:01:40 -
+Rule	sol89	1989	only	-	Jun	22	12:01:55s -0:01:55 -
+Rule	sol89	1989	only	-	Jun	23	12:02:10s -0:02:10 -
+Rule	sol89	1989	only	-	Jun	24	12:02:20s -0:02:20 -
+Rule	sol89	1989	only	-	Jun	25	12:02:35s -0:02:35 -
+Rule	sol89	1989	only	-	Jun	26	12:02:45s -0:02:45 -
+Rule	sol89	1989	only	-	Jun	27	12:03:00s -0:03:00 -
+Rule	sol89	1989	only	-	Jun	28	12:03:10s -0:03:10 -
+Rule	sol89	1989	only	-	Jun	29	12:03:25s -0:03:25 -
+Rule	sol89	1989	only	-	Jun	30	12:03:35s -0:03:35 -
+Rule	sol89	1989	only	-	Jul	1	12:03:45s -0:03:45 -
+Rule	sol89	1989	only	-	Jul	2	12:04:00s -0:04:00 -
+Rule	sol89	1989	only	-	Jul	3	12:04:10s -0:04:10 -
+Rule	sol89	1989	only	-	Jul	4	12:04:20s -0:04:20 -
+Rule	sol89	1989	only	-	Jul	5	12:04:30s -0:04:30 -
+Rule	sol89	1989	only	-	Jul	6	12:04:40s -0:04:40 -
+Rule	sol89	1989	only	-	Jul	7	12:04:50s -0:04:50 -
+Rule	sol89	1989	only	-	Jul	8	12:05:00s -0:05:00 -
+Rule	sol89	1989	only	-	Jul	9	12:05:10s -0:05:10 -
+Rule	sol89	1989	only	-	Jul	10	12:05:20s -0:05:20 -
+Rule	sol89	1989	only	-	Jul	11	12:05:25s -0:05:25 -
+Rule	sol89	1989	only	-	Jul	12	12:05:35s -0:05:35 -
+Rule	sol89	1989	only	-	Jul	13	12:05:40s -0:05:40 -
+Rule	sol89	1989	only	-	Jul	14	12:05:50s -0:05:50 -
+Rule	sol89	1989	only	-	Jul	15	12:05:55s -0:05:55 -
+Rule	sol89	1989	only	-	Jul	16	12:06:00s -0:06:00 -
+Rule	sol89	1989	only	-	Jul	17	12:06:05s -0:06:05 -
+Rule	sol89	1989	only	-	Jul	18	12:06:10s -0:06:10 -
+Rule	sol89	1989	only	-	Jul	19	12:06:15s -0:06:15 -
+Rule	sol89	1989	only	-	Jul	20	12:06:20s -0:06:20 -
+Rule	sol89	1989	only	-	Jul	21	12:06:20s -0:06:20 -
+Rule	sol89	1989	only	-	Jul	22	12:06:25s -0:06:25 -
+Rule	sol89	1989	only	-	Jul	23	12:06:25s -0:06:25 -
+Rule	sol89	1989	only	-	Jul	24	12:06:30s -0:06:30 -
+Rule	sol89	1989	only	-	Jul	25	12:06:30s -0:06:30 -
+Rule	sol89	1989	only	-	Jul	26	12:06:30s -0:06:30 -
+Rule	sol89	1989	only	-	Jul	27	12:06:30s -0:06:30 -
+Rule	sol89	1989	only	-	Jul	28	12:06:30s -0:06:30 -
+Rule	sol89	1989	only	-	Jul	29	12:06:25s -0:06:25 -
+Rule	sol89	1989	only	-	Jul	30	12:06:25s -0:06:25 -
+Rule	sol89	1989	only	-	Jul	31	12:06:20s -0:06:20 -
+Rule	sol89	1989	only	-	Aug	1	12:06:20s -0:06:20 -
+Rule	sol89	1989	only	-	Aug	2	12:06:15s -0:06:15 -
+Rule	sol89	1989	only	-	Aug	3	12:06:10s -0:06:10 -
+Rule	sol89	1989	only	-	Aug	4	12:06:05s -0:06:05 -
+Rule	sol89	1989	only	-	Aug	5	12:06:00s -0:06:00 -
+Rule	sol89	1989	only	-	Aug	6	12:05:50s -0:05:50 -
+Rule	sol89	1989	only	-	Aug	7	12:05:45s -0:05:45 -
+Rule	sol89	1989	only	-	Aug	8	12:05:35s -0:05:35 -
+Rule	sol89	1989	only	-	Aug	9	12:05:30s -0:05:30 -
+Rule	sol89	1989	only	-	Aug	10	12:05:20s -0:05:20 -
+Rule	sol89	1989	only	-	Aug	11	12:05:10s -0:05:10 -
+Rule	sol89	1989	only	-	Aug	12	12:05:00s -0:05:00 -
+Rule	sol89	1989	only	-	Aug	13	12:04:50s -0:04:50 -
+Rule	sol89	1989	only	-	Aug	14	12:04:40s -0:04:40 -
+Rule	sol89	1989	only	-	Aug	15	12:04:30s -0:04:30 -
+Rule	sol89	1989	only	-	Aug	16	12:04:15s -0:04:15 -
+Rule	sol89	1989	only	-	Aug	17	12:04:05s -0:04:05 -
+Rule	sol89	1989	only	-	Aug	18	12:03:50s -0:03:50 -
+Rule	sol89	1989	only	-	Aug	19	12:03:35s -0:03:35 -
+Rule	sol89	1989	only	-	Aug	20	12:03:25s -0:03:25 -
+Rule	sol89	1989	only	-	Aug	21	12:03:10s -0:03:10 -
+Rule	sol89	1989	only	-	Aug	22	12:02:55s -0:02:55 -
+Rule	sol89	1989	only	-	Aug	23	12:02:40s -0:02:40 -
+Rule	sol89	1989	only	-	Aug	24	12:02:20s -0:02:20 -
+Rule	sol89	1989	only	-	Aug	25	12:02:05s -0:02:05 -
+Rule	sol89	1989	only	-	Aug	26	12:01:50s -0:01:50 -
+Rule	sol89	1989	only	-	Aug	27	12:01:30s -0:01:30 -
+Rule	sol89	1989	only	-	Aug	28	12:01:15s -0:01:15 -
+Rule	sol89	1989	only	-	Aug	29	12:00:55s -0:00:55 -
+Rule	sol89	1989	only	-	Aug	30	12:00:40s -0:00:40 -
+Rule	sol89	1989	only	-	Aug	31	12:00:20s -0:00:20 -
+Rule	sol89	1989	only	-	Sep	1	12:00:00s 0:00:00 -
+Rule	sol89	1989	only	-	Sep	2	11:59:45s 0:00:15 -
+Rule	sol89	1989	only	-	Sep	3	11:59:25s 0:00:35 -
+Rule	sol89	1989	only	-	Sep	4	11:59:05s 0:00:55 -
+Rule	sol89	1989	only	-	Sep	5	11:58:45s 0:01:15 -
+Rule	sol89	1989	only	-	Sep	6	11:58:25s 0:01:35 -
+Rule	sol89	1989	only	-	Sep	7	11:58:05s 0:01:55 -
+Rule	sol89	1989	only	-	Sep	8	11:57:45s 0:02:15 -
+Rule	sol89	1989	only	-	Sep	9	11:57:20s 0:02:40 -
+Rule	sol89	1989	only	-	Sep	10	11:57:00s 0:03:00 -
+Rule	sol89	1989	only	-	Sep	11	11:56:40s 0:03:20 -
+Rule	sol89	1989	only	-	Sep	12	11:56:20s 0:03:40 -
+Rule	sol89	1989	only	-	Sep	13	11:56:00s 0:04:00 -
+Rule	sol89	1989	only	-	Sep	14	11:55:35s 0:04:25 -
+Rule	sol89	1989	only	-	Sep	15	11:55:15s 0:04:45 -
+Rule	sol89	1989	only	-	Sep	16	11:54:55s 0:05:05 -
+Rule	sol89	1989	only	-	Sep	17	11:54:35s 0:05:25 -
+Rule	sol89	1989	only	-	Sep	18	11:54:10s 0:05:50 -
+Rule	sol89	1989	only	-	Sep	19	11:53:50s 0:06:10 -
+Rule	sol89	1989	only	-	Sep	20	11:53:30s 0:06:30 -
+Rule	sol89	1989	only	-	Sep	21	11:53:10s 0:06:50 -
+Rule	sol89	1989	only	-	Sep	22	11:52:45s 0:07:15 -
+Rule	sol89	1989	only	-	Sep	23	11:52:25s 0:07:35 -
+Rule	sol89	1989	only	-	Sep	24	11:52:05s 0:07:55 -
+Rule	sol89	1989	only	-	Sep	25	11:51:45s 0:08:15 -
+Rule	sol89	1989	only	-	Sep	26	11:51:25s 0:08:35 -
+Rule	sol89	1989	only	-	Sep	27	11:51:05s 0:08:55 -
+Rule	sol89	1989	only	-	Sep	28	11:50:40s 0:09:20 -
+Rule	sol89	1989	only	-	Sep	29	11:50:20s 0:09:40 -
+Rule	sol89	1989	only	-	Sep	30	11:50:00s 0:10:00 -
+Rule	sol89	1989	only	-	Oct	1	11:49:45s 0:10:15 -
+Rule	sol89	1989	only	-	Oct	2	11:49:25s 0:10:35 -
+Rule	sol89	1989	only	-	Oct	3	11:49:05s 0:10:55 -
+Rule	sol89	1989	only	-	Oct	4	11:48:45s 0:11:15 -
+Rule	sol89	1989	only	-	Oct	5	11:48:30s 0:11:30 -
+Rule	sol89	1989	only	-	Oct	6	11:48:10s 0:11:50 -
+Rule	sol89	1989	only	-	Oct	7	11:47:50s 0:12:10 -
+Rule	sol89	1989	only	-	Oct	8	11:47:35s 0:12:25 -
+Rule	sol89	1989	only	-	Oct	9	11:47:20s 0:12:40 -
+Rule	sol89	1989	only	-	Oct	10	11:47:00s 0:13:00 -
+Rule	sol89	1989	only	-	Oct	11	11:46:45s 0:13:15 -
+Rule	sol89	1989	only	-	Oct	12	11:46:30s 0:13:30 -
+Rule	sol89	1989	only	-	Oct	13	11:46:15s 0:13:45 -
+Rule	sol89	1989	only	-	Oct	14	11:46:00s 0:14:00 -
+Rule	sol89	1989	only	-	Oct	15	11:45:50s 0:14:10 -
+Rule	sol89	1989	only	-	Oct	16	11:45:35s 0:14:25 -
+Rule	sol89	1989	only	-	Oct	17	11:45:20s 0:14:40 -
+Rule	sol89	1989	only	-	Oct	18	11:45:10s 0:14:50 -
+Rule	sol89	1989	only	-	Oct	19	11:45:00s 0:15:00 -
+Rule	sol89	1989	only	-	Oct	20	11:44:50s 0:15:10 -
+Rule	sol89	1989	only	-	Oct	21	11:44:40s 0:15:20 -
+Rule	sol89	1989	only	-	Oct	22	11:44:30s 0:15:30 -
+Rule	sol89	1989	only	-	Oct	23	11:44:20s 0:15:40 -
+Rule	sol89	1989	only	-	Oct	24	11:44:10s 0:15:50 -
+Rule	sol89	1989	only	-	Oct	25	11:44:05s 0:15:55 -
+Rule	sol89	1989	only	-	Oct	26	11:44:00s 0:16:00 -
+Rule	sol89	1989	only	-	Oct	27	11:43:50s 0:16:10 -
+Rule	sol89	1989	only	-	Oct	28	11:43:45s 0:16:15 -
+Rule	sol89	1989	only	-	Oct	29	11:43:40s 0:16:20 -
+Rule	sol89	1989	only	-	Oct	30	11:43:40s 0:16:20 -
+Rule	sol89	1989	only	-	Oct	31	11:43:35s 0:16:25 -
+Rule	sol89	1989	only	-	Nov	1	11:43:35s 0:16:25 -
+Rule	sol89	1989	only	-	Nov	2	11:43:35s 0:16:25 -
+Rule	sol89	1989	only	-	Nov	3	11:43:30s 0:16:30 -
+Rule	sol89	1989	only	-	Nov	4	11:43:35s 0:16:25 -
+Rule	sol89	1989	only	-	Nov	5	11:43:35s 0:16:25 -
+Rule	sol89	1989	only	-	Nov	6	11:43:35s 0:16:25 -
+Rule	sol89	1989	only	-	Nov	7	11:43:40s 0:16:20 -
+Rule	sol89	1989	only	-	Nov	8	11:43:45s 0:16:15 -
+Rule	sol89	1989	only	-	Nov	9	11:43:50s 0:16:10 -
+Rule	sol89	1989	only	-	Nov	10	11:43:55s 0:16:05 -
+Rule	sol89	1989	only	-	Nov	11	11:44:00s 0:16:00 -
+Rule	sol89	1989	only	-	Nov	12	11:44:05s 0:15:55 -
+Rule	sol89	1989	only	-	Nov	13	11:44:15s 0:15:45 -
+Rule	sol89	1989	only	-	Nov	14	11:44:25s 0:15:35 -
+Rule	sol89	1989	only	-	Nov	15	11:44:35s 0:15:25 -
+Rule	sol89	1989	only	-	Nov	16	11:44:45s 0:15:15 -
+Rule	sol89	1989	only	-	Nov	17	11:44:55s 0:15:05 -
+Rule	sol89	1989	only	-	Nov	18	11:45:10s 0:14:50 -
+Rule	sol89	1989	only	-	Nov	19	11:45:20s 0:14:40 -
+Rule	sol89	1989	only	-	Nov	20	11:45:35s 0:14:25 -
+Rule	sol89	1989	only	-	Nov	21	11:45:50s 0:14:10 -
+Rule	sol89	1989	only	-	Nov	22	11:46:05s 0:13:55 -
+Rule	sol89	1989	only	-	Nov	23	11:46:25s 0:13:35 -
+Rule	sol89	1989	only	-	Nov	24	11:46:40s 0:13:20 -
+Rule	sol89	1989	only	-	Nov	25	11:47:00s 0:13:00 -
+Rule	sol89	1989	only	-	Nov	26	11:47:20s 0:12:40 -
+Rule	sol89	1989	only	-	Nov	27	11:47:35s 0:12:25 -
+Rule	sol89	1989	only	-	Nov	28	11:47:55s 0:12:05 -
+Rule	sol89	1989	only	-	Nov	29	11:48:20s 0:11:40 -
+Rule	sol89	1989	only	-	Nov	30	11:48:40s 0:11:20 -
+Rule	sol89	1989	only	-	Dec	1	11:49:00s 0:11:00 -
+Rule	sol89	1989	only	-	Dec	2	11:49:25s 0:10:35 -
+Rule	sol89	1989	only	-	Dec	3	11:49:50s 0:10:10 -
+Rule	sol89	1989	only	-	Dec	4	11:50:15s 0:09:45 -
+Rule	sol89	1989	only	-	Dec	5	11:50:35s 0:09:25 -
+Rule	sol89	1989	only	-	Dec	6	11:51:00s 0:09:00 -
+Rule	sol89	1989	only	-	Dec	7	11:51:30s 0:08:30 -
+Rule	sol89	1989	only	-	Dec	8	11:51:55s 0:08:05 -
+Rule	sol89	1989	only	-	Dec	9	11:52:20s 0:07:40 -
+Rule	sol89	1989	only	-	Dec	10	11:52:50s 0:07:10 -
+Rule	sol89	1989	only	-	Dec	11	11:53:15s 0:06:45 -
+Rule	sol89	1989	only	-	Dec	12	11:53:45s 0:06:15 -
+Rule	sol89	1989	only	-	Dec	13	11:54:10s 0:05:50 -
+Rule	sol89	1989	only	-	Dec	14	11:54:40s 0:05:20 -
+Rule	sol89	1989	only	-	Dec	15	11:55:10s 0:04:50 -
+Rule	sol89	1989	only	-	Dec	16	11:55:40s 0:04:20 -
+Rule	sol89	1989	only	-	Dec	17	11:56:05s 0:03:55 -
+Rule	sol89	1989	only	-	Dec	18	11:56:35s 0:03:25 -
+Rule	sol89	1989	only	-	Dec	19	11:57:05s 0:02:55 -
+Rule	sol89	1989	only	-	Dec	20	11:57:35s 0:02:25 -
+Rule	sol89	1989	only	-	Dec	21	11:58:05s 0:01:55 -
+Rule	sol89	1989	only	-	Dec	22	11:58:35s 0:01:25 -
+Rule	sol89	1989	only	-	Dec	23	11:59:05s 0:00:55 -
+Rule	sol89	1989	only	-	Dec	24	11:59:35s 0:00:25 -
+Rule	sol89	1989	only	-	Dec	25	12:00:05s -0:00:05 -
+Rule	sol89	1989	only	-	Dec	26	12:00:35s -0:00:35 -
+Rule	sol89	1989	only	-	Dec	27	12:01:05s -0:01:05 -
+Rule	sol89	1989	only	-	Dec	28	12:01:35s -0:01:35 -
+Rule	sol89	1989	only	-	Dec	29	12:02:00s -0:02:00 -
+Rule	sol89	1989	only	-	Dec	30	12:02:30s -0:02:30 -
+Rule	sol89	1989	only	-	Dec	31	12:03:00s -0:03:00 -
+
+# Riyadh is at about 46 degrees 46 minutes East:  3 hrs, 7 mins, 4 secs
+# Before and after 1989, we'll operate on local mean solar time.
+
+# Zone	NAME		GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
+Zone	Asia/Riyadh89	3:07:04	-		zzz	1989
+			3:07:04	sol89		zzz	1990
+			3:07:04	-		zzz
+# For backward compatibility...
+Link	Asia/Riyadh89	Mideast/Riyadh89
diff --git a/tools/zoneinfo/tzdata2009s/southamerica b/tools/zoneinfo/tzdata2009s/southamerica
new file mode 100644
index 0000000..9c4edcb
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/southamerica
@@ -0,0 +1,1517 @@
+# <pre>
+# @(#)southamerica	8.40
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# This data is by no means authoritative; if you think you know better,
+# go ahead and edit the file (and please send any changes to
+# tz@elsie.nci.nih.gov for general use in the future).
+
+# From Paul Eggert (2006-03-22):
+# A good source for time zone historical data outside the U.S. is
+# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+# San Diego: ACS Publications, Inc. (2003).
+#
+# Gwillim Law writes that a good source
+# for recent time zone data is the International Air Transport
+# Association's Standard Schedules Information Manual (IATA SSIM),
+# published semiannually.  Law sent in several helpful summaries
+# of the IATA's data after 1990.
+#
+# Except where otherwise noted, Shanks & Pottenger is the source for
+# entries through 1990, and IATA SSIM is the source for entries afterwards.
+#
+# Earlier editions of these tables used the North American style (e.g. ARST and
+# ARDT for Argentine Standard and Daylight Time), but the following quote
+# suggests that it's better to use European style (e.g. ART and ARST).
+#	I suggest the use of _Summer time_ instead of the more cumbersome
+#	_daylight-saving time_.  _Summer time_ seems to be in general use
+#	in Europe and South America.
+#	-- E O Cutler, _New York Times_ (1937-02-14), quoted in
+#	H L Mencken, _The American Language: Supplement I_ (1960), p 466
+#
+# Earlier editions of these tables also used the North American style
+# for time zones in Brazil, but this was incorrect, as Brazilians say
+# "summer time".  Reinaldo Goulart, a Sao Paulo businessman active in
+# the railroad sector, writes (1999-07-06):
+#	The subject of time zones is currently a matter of discussion/debate in
+#	Brazil.  Let's say that "the Brasilia time" is considered the
+#	"official time" because Brasilia is the capital city.
+#	The other three time zones are called "Brasilia time "minus one" or
+#	"plus one" or "plus two".  As far as I know there is no such
+#	name/designation as "Eastern Time" or "Central Time".
+# So I invented the following (English-language) abbreviations for now.
+# Corrections are welcome!
+#		std	dst
+#	-2:00	FNT	FNST	Fernando de Noronha
+#	-3:00	BRT	BRST	Brasilia
+#	-4:00	AMT	AMST	Amazon
+#	-5:00	ACT	ACST	Acre
+
+###############################################################################
+
+###############################################################################
+
+# Argentina
+
+# From Bob Devine (1988-01-28):
+# Argentina: first Sunday in October to first Sunday in April since 1976.
+# Double Summer time from 1969 to 1974.  Switches at midnight.
+
+# From U. S. Naval Observatory (1988-01-199):
+# ARGENTINA           3 H BEHIND   UTC
+
+# From Hernan G. Otero (1995-06-26):
+# I am sending modifications to the Argentine time zone table...
+# AR was chosen because they are the ISO letters that represent Argentina.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Arg	1930	only	-	Dec	 1	0:00	1:00	S
+Rule	Arg	1931	only	-	Apr	 1	0:00	0	-
+Rule	Arg	1931	only	-	Oct	15	0:00	1:00	S
+Rule	Arg	1932	1940	-	Mar	 1	0:00	0	-
+Rule	Arg	1932	1939	-	Nov	 1	0:00	1:00	S
+Rule	Arg	1940	only	-	Jul	 1	0:00	1:00	S
+Rule	Arg	1941	only	-	Jun	15	0:00	0	-
+Rule	Arg	1941	only	-	Oct	15	0:00	1:00	S
+Rule	Arg	1943	only	-	Aug	 1	0:00	0	-
+Rule	Arg	1943	only	-	Oct	15	0:00	1:00	S
+Rule	Arg	1946	only	-	Mar	 1	0:00	0	-
+Rule	Arg	1946	only	-	Oct	 1	0:00	1:00	S
+Rule	Arg	1963	only	-	Oct	 1	0:00	0	-
+Rule	Arg	1963	only	-	Dec	15	0:00	1:00	S
+Rule	Arg	1964	1966	-	Mar	 1	0:00	0	-
+Rule	Arg	1964	1966	-	Oct	15	0:00	1:00	S
+Rule	Arg	1967	only	-	Apr	 2	0:00	0	-
+Rule	Arg	1967	1968	-	Oct	Sun>=1	0:00	1:00	S
+Rule	Arg	1968	1969	-	Apr	Sun>=1	0:00	0	-
+Rule	Arg	1974	only	-	Jan	23	0:00	1:00	S
+Rule	Arg	1974	only	-	May	 1	0:00	0	-
+Rule	Arg	1988	only	-	Dec	 1	0:00	1:00	S
+#
+# From Hernan G. Otero (1995-06-26):
+# These corrections were contributed by InterSoft Argentina S.A.,
+# obtaining the data from the:
+# Talleres de Hidrografia Naval Argentina
+# (Argentine Naval Hydrography Institute)
+Rule	Arg	1989	1993	-	Mar	Sun>=1	0:00	0	-
+Rule	Arg	1989	1992	-	Oct	Sun>=15	0:00	1:00	S
+#
+# From Hernan G. Otero (1995-06-26):
+# From this moment on, the law that mandated the daylight saving
+# time corrections was derogated and no more modifications
+# to the time zones (for daylight saving) are now made.
+#
+# From Rives McDow (2000-01-10):
+# On October 3, 1999, 0:00 local, Argentina implemented daylight savings time,
+# which did not result in the switch of a time zone, as they stayed 9 hours
+# from the International Date Line.
+Rule	Arg	1999	only	-	Oct	Sun>=1	0:00	1:00	S
+# From Paul Eggert (2007-12-28):
+# DST was set to expire on March 5, not March 3, but since it was converted
+# to standard time on March 3 it's more convenient for us to pretend that
+# it ended on March 3.
+Rule	Arg	2000	only	-	Mar	3	0:00	0	-
+#
+# From Peter Gradelski via Steffen Thorsen (2000-03-01):
+# We just checked with our Sao Paulo office and they say the government of
+# Argentina decided not to become one of the countries that go on or off DST.
+# So Buenos Aires should be -3 hours from GMT at all times.
+#
+# From Fabian L. Arce Jofre (2000-04-04):
+# The law that claimed DST for Argentina was derogated by President Fernando
+# de la Rua on March 2, 2000, because it would make people spend more energy
+# in the winter time, rather than less.  The change took effect on March 3.
+#
+# From Mariano Absatz (2001-06-06):
+# one of the major newspapers here in Argentina said that the 1999
+# Timezone Law (which never was effectively applied) will (would?) be
+# in effect.... The article is at
+# http://ar.clarin.com/diario/2001-06-06/e-01701.htm
+# ... The Law itself is "Ley No 25155", sanctioned on 1999-08-25, enacted
+# 1999-09-17, and published 1999-09-21.  The official publication is at:
+# http://www.boletin.jus.gov.ar/BON/Primera/1999/09-Septiembre/21/PDF/BO21-09-99LEG.PDF
+# Regretfully, you have to subscribe (and pay) for the on-line version....
+#
+# (2001-06-12):
+# the timezone for Argentina will not change next Sunday.
+# Apparently it will do so on Sunday 24th....
+# http://ar.clarin.com/diario/2001-06-12/s-03501.htm
+#
+# (2001-06-25):
+# Last Friday (yes, the last working day before the date of the change), the
+# Senate annulled the 1999 law that introduced the changes later postponed.
+# http://www.clarin.com.ar/diario/2001-06-22/s-03601.htm
+# It remains the vote of the Deputies..., but it will be the same....
+# This kind of things had always been done this way in Argentina.
+# We are still -03:00 all year round in all of the country.
+#
+# From Steffen Thorsen (2007-12-21):
+# A user (Leonardo Chaim) reported that Argentina will adopt DST....
+# all of the country (all Zone-entries) are affected.  News reports like
+# http://www.lanacion.com.ar/opinion/nota.asp?nota_id=973037 indicate
+# that Argentina will use DST next year as well, from October to
+# March, although exact rules are not given.
+#
+# From Jesper Norgaard Welen (2007-12-26)
+# The last hurdle of Argentina DST is over, the proposal was approved in
+# the lower chamber too (Deputados) with a vote 192 for and 2 against.
+# By the way thanks to Mariano Absatz and Daniel Mario Vega for the link to
+# the original scanned proposal, where the dates and the zero hours are
+# clear and unambiguous...This is the article about final approval:
+# <a href="http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996">
+# http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996
+# </a>
+#
+# From Paul Eggert (2007-12-22):
+# For dates after mid-2008, the following rules are my guesses and
+# are quite possibly wrong, but are more likely than no DST at all.
+
+# From Alexander Krivenyshev (2008-09-05):
+# As per message from Carlos Alberto Fonseca Arauz (Nicaragua),
+# Argentina will start DST on Sunday October 19, 2008.
+#
+# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina03.html">
+# http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
+# </a>
+# OR
+# <a href="http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)">
+# http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
+# </a>
+
+# From Rodrigo Severo (2008-10-06):
+# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
+# ...
+# ------- Comment #1 from [jmdocile]  2008-10-06 16:28 0000 -------
+# Hi, there is a problem with timezone-data-2008e and maybe with
+# timezone-data-2008f
+# Argentinian law [Number] 25.155 is no longer valid.
+# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm">
+# http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
+# </a>
+# The new one is law [Number] 26.350
+# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm">
+# http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
+# </a>
+# So there is no summer time in Argentina for now.
+
+# From Mariano Absatz (2008-10-20):
+# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST in Argentina
+# From 2008-10-19 until 2009-03-15
+# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01">
+# http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01
+# </a>
+#
+# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer 2008/2009:
+# Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La Pampa, Neuquen, Rio Negro, Chubut, Santa Cruz
+# and Tierra del Fuego
+# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01">
+# http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01
+# </a>
+#
+# Press release 235 dated Saturday October 18th, from the Government of the Province of Jujuy saying
+# it will not apply DST either (even when it was not included in Decree 1705/2008)
+# <a href="http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc">
+# http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc
+# </a>
+
+# From fullinet (2009-10-18):
+# As announced in
+# <a hef="http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356">
+# http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356
+# </a>
+# (an official .gob.ar) under title: "Sin Cambio de Hora" (english: "No hour change")
+#
+# "Por el momento, el Gobierno Nacional resolvio no modificar la hora
+# oficial, decision que estaba en estudio para su implementacion el
+# domingo 18 de octubre. Desde el Ministerio de Planificacion se anuncio
+# que la Argentina hoy, en estas condiciones meteorologicas, no necesita
+# la modificacion del huso horario, ya que 2009 nos encuentra con
+# crecimiento en la produccion y distribucion energetica."
+
+Rule	Arg	2007	only	-	Dec	30	0:00	1:00	S
+Rule	Arg	2008	2009	-	Mar	Sun>=15	0:00	0	-
+Rule	Arg	2008	only	-	Oct	Sun>=15	0:00	1:00	S
+ 
+# From Mariano Absatz (2004-05-21):
+# Today it was officially published that the Province of Mendoza is changing
+# its timezone this winter... starting tomorrow night....
+# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040521-27158-normas.pdf
+# From Paul Eggert (2004-05-24):
+# It's Law No. 7,210.  This change is due to a public power emergency, so for
+# now we'll assume it's for this year only.
+#
+# From Paul Eggert (2006-03-22):
+# <a href="http://www.spicasc.net/horvera.html">
+# Hora de verano para la Republica Argentina (2003-06-08)
+# </a> says that standard time in Argentina from 1894-10-31
+# to 1920-05-01 was -4:16:48.25.  Go with this more-precise value
+# over Shanks & Pottenger.
+#
+# From Mariano Absatz (2004-06-05):
+# These media articles from a major newspaper mostly cover the current state:
+# http://www.lanacion.com.ar/04/05/27/de_604825.asp
+# http://www.lanacion.com.ar/04/05/28/de_605203.asp
+#
+# The following eight (8) provinces pulled clocks back to UTC-04:00 at
+# midnight Monday May 31st. (that is, the night between 05/31 and 06/01).
+# Apparently, all nine provinces would go back to UTC-03:00 at the same
+# time in October 17th.
+#
+# Catamarca, Chubut, La Rioja, San Juan, San Luis, Santa Cruz,
+# Tierra del Fuego, Tucuman.
+#
+# From Mariano Absatz (2004-06-14):
+# ... this weekend, the Province of Tucuman decided it'd go back to UTC-03:00
+# yesterday midnight (that is, at 24:00 Saturday 12th), since the people's
+# annoyance with the change is much higher than the power savings obtained....
+#
+# From Gwillim Law (2004-06-14):
+# http://www.lanacion.com.ar/04/06/10/de_609078.asp ...
+#     "The time change in Tierra del Fuego was a conflicted decision from
+#   the start.  The government had decreed that the measure would take
+#   effect on June 1, but a normative error forced the new time to begin
+#   three days earlier, from a Saturday to a Sunday....
+# Our understanding was that the change was originally scheduled to take place
+# on June 1 at 00:00 in Chubut, Santa Cruz, Tierra del Fuego (and some other
+# provinces).  Sunday was May 30, only two days earlier.  So the article
+# contains a contradiction.  I would give more credence to the Saturday/Sunday
+# date than the "three days earlier" phrase, and conclude that Tierra del
+# Fuego set its clocks back at 2004-05-30 00:00.
+#
+# From Steffen Thorsen (2004-10-05):
+# The previous law 7210 which changed the province of Mendoza's time zone
+# back in May have been modified slightly in a new law 7277, which set the
+# new end date to 2004-09-26 (original date was 2004-10-17).
+# http://www.gobernac.mendoza.gov.ar/boletin/pdf/20040924-27244-normas.pdf
+#
+# From Mariano Absatz (2004-10-05):
+# San Juan changed from UTC-03:00 to UTC-04:00 at midnight between
+# Sunday, May 30th and Monday, May 31st.  It changed back to UTC-03:00
+# at midnight between Saturday, July 24th and Sunday, July 25th....
+# http://www.sanjuan.gov.ar/prensa/archivo/000329.html
+# http://www.sanjuan.gov.ar/prensa/archivo/000426.html
+# http://www.sanjuan.gov.ar/prensa/archivo/000441.html
+
+# From Alex Krivenyshev (2008-01-17):
+# Here are articles that Argentina Province San Luis is planning to end DST
+# as earlier as upcoming Monday January 21, 2008 or February 2008:
+#
+# Provincia argentina retrasa reloj y marca diferencia con resto del pais
+# (Argentine Province delayed clock and mark difference with the rest of the
+# country)
+# <a href="http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel">
+# http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel
+# </a>
+#
+# Es inminente que en San Luis atrasen una hora los relojes
+# (It is imminent in San Luis clocks one hour delay)
+# <a href="http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414">
+# http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414
+# </a>
+#
+# <a href="http://www.worldtimezone.net/dst_news/dst_news_argentina02.html">
+# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
+# </a>
+
+# From Jesper Norgaard Welen (2008-01-18):
+# The page of the San Luis provincial government
+# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812">
+# http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812
+# </a>
+# confirms what Alex Krivenyshev has earlier sent to the tz
+# emailing list about that San Luis plans to return to standard
+# time much earlier than the rest of the country. It also
+# confirms that upon request the provinces San Juan and Mendoza 
+# refused to follow San Luis in this change. 
+# 
+# The change is supposed to take place Monday the 21.st at 0:00
+# hours. As far as I understand it if this goes ahead, we need
+# a new timezone for San Luis (although there are also documented
+# independent changes in the southamerica file of San Luis in
+# 1990 and 1991 which has not been confirmed).
+
+# From Jesper Norgaard Welen (2008-01-25):
+# Unfortunately the below page has become defunct, about the San Luis
+# time change. Perhaps because it now is part of a group of pages "Most
+# important pages of 2008."
+#
+# You can use
+# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834">
+# http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834
+# </a>
+# instead it seems. Or use "Buscador" from the main page of the San Luis
+# government, and fill in "huso" and click OK, and you will get 3 pages
+# from which the first one is identical to the above.
+
+# From Mariano Absatz (2008-01-28):
+# I can confirm that the Province of San Luis (and so far only that
+# province) decided to go back to UTC-3 effective midnight Jan 20th 2008
+# (that is, Monday 21st at 0:00 is the time the clocks were delayed back
+# 1 hour), and they intend to keep UTC-3 as their timezone all year round
+# (that is, unless they change their mind any minute now).
+#
+# So we'll have to add yet another city to 'southamerica' (I think San
+# Luis city is the mos populated city in the Province, so it'd be
+# America/Argentina/San_Luis... of course I can't remember if San Luis's
+# history of particular changes goes along with Mendoza or San Juan :-(
+# (I only remember not being able to collect hard facts about San Luis
+# back in 2004, when these provinces changed to UTC-4 for a few days, I
+# mailed them personally and never got an answer).
+
+# From Paul Eggert (2008-06-30):
+# Unless otherwise specified, data are from Shanks & Pottenger through 1992,
+# from the IATA otherwise.  As noted below, Shanks & Pottenger say that
+# America/Cordoba split into 6 subregions during 1991/1992, one of which
+# was America/San_Luis, but we haven't verified this yet so for now we'll
+# keep America/Cordoba a single region rather than splitting it into the
+# other 5 subregions.
+
+# From Mariano Absatz (2009-03-13):
+# Yesterday (with our usual 2-day notice) the Province of San Luis
+# decided that next Sunday instead of "staying" @utc-03:00 they will go
+# to utc-04:00 until the second Saturday in October...
+#
+# The press release is at
+# <a href="http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102">
+# http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102
+# </a>
+# (I couldn't find the decree, but
+# <a href="http://www.sanluis.gov.ar">
+# www.sanluis.gov.ar
+# <a/>
+# is the official page for the Province Government).
+#
+# There's also a note in only one of the major national papers (La Nación) at
+# <a href="http://www.lanacion.com.ar/nota.asp?nota_id=1107912">
+# http://www.lanacion.com.ar/nota.asp?nota_id=1107912
+# </a>
+# 
+# The press release says:
+#  (...) anunció que el próximo domingo a las 00:00 los puntanos deberán
+# atrasar una hora sus relojes.
+#
+# A partir de entonces, San Luis establecerá el huso horario propio de
+# la Provincia. De esta manera, durante el periodo del calendario anual
+# 2009, el cambio horario quedará comprendido entre las 00:00 del tercer
+# domingo de marzo y las 24:00 del segundo sábado de octubre.
+# Quick&dirty translation
+# (...) announced that next Sunday, at 00:00, Puntanos (the San Luis
+# inhabitants) will have to turn back one hour their clocks
+#
+# Since then, San Luis will establish its own Province timezone. Thus,
+# during 2009, this timezone change will run from 00:00 the third Sunday
+# in March until 24:00 of the second Saturday in October.
+
+# From Mariano Absatz (2009-10-16):
+# ...the Province of San Luis is a case in itself.
+#
+# The Law at
+# <a href="http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276>"
+# http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276
+# </a>
+# is ambiguous because establishes a calendar from the 2nd Sunday in
+# October at 0:00 thru the 2nd Saturday in March at 24:00 and the
+# complement of that starting on the 2nd Sunday of March at 0:00 and
+# ending on the 2nd Saturday of March at 24:00.
+#
+# This clearly breaks every time the 1st of March or October is a Sunday.
+#
+# IMHO, the "spirit of the Law" is to make the changes at 0:00 on the 2nd
+# Sunday of October and March.
+#
+# The problem is that the changes in the rest of the Provinces that did
+# change in 2007/2008, were made according to the Federal Law and Decrees
+# that did so on the 3rd Sunday of October and March.
+#
+# In fact, San Luis actually switched from UTC-4 to UTC-3 last Sunday
+# (October 11th) at 0:00.
+#
+# So I guess a new set of rules, besides "Arg", must be made and the last
+# America/Argentina/San_Luis entries should change to use these...
+#
+# I'm enclosing a patch that does what I say... regretfully, the San Luis
+# timezone must be called "WART/WARST" even when most of the time (like,
+# right now) WARST == ART... that is, since last Sunday, all the country
+# is using UTC-3, but in my patch, San Luis calls it "WARST" and the rest
+# of the country calls it "ART".
+# ...
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+#
+# Buenos Aires (BA), Capital Federal (CF),
+Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
+			-4:16:48 -	CMT	1920 May # Cordoba Mean Time
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	Arg	AR%sT
+#
+# Cordoba (CB), Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN),
+# Chaco (CC), Formosa (FM), Santiago del Estero (SE)
+#
+# Shanks & Pottenger also make the following claims, which we haven't verified:
+# - Formosa switched to -3:00 on 1991-01-07.
+# - Misiones switched to -3:00 on 1990-12-29.
+# - Chaco switched to -3:00 on 1991-01-04.
+# - Santiago del Estero switched to -4:00 on 1991-04-01,
+#   then to -3:00 on 1991-04-26.
+#
+Zone America/Argentina/Cordoba -4:16:48 - LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1991 Mar  3
+			-4:00	-	WART	1991 Oct 20
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	Arg	AR%sT
+#
+# Salta (SA), La Pampa (LP), Neuquen (NQ), Rio Negro (RN)
+Zone America/Argentina/Salta -4:21:40 - LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1991 Mar  3
+			-4:00	-	WART	1991 Oct 20
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	Arg	AR%sT	2008 Oct 18
+			-3:00	-	ART
+#
+# Tucuman (TM)
+Zone America/Argentina/Tucuman -4:20:52 - LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1991 Mar  3
+			-4:00	-	WART	1991 Oct 20
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	-	ART	2004 Jun  1
+			-4:00	-	WART	2004 Jun 13
+			-3:00	Arg	AR%sT
+#
+# La Rioja (LR)
+Zone America/Argentina/La_Rioja -4:27:24 - LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1991 Mar  1
+			-4:00	-	WART	1991 May  7
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	-	ART	2004 Jun  1
+			-4:00	-	WART	2004 Jun 20
+			-3:00	Arg	AR%sT	2008 Oct 18
+			-3:00	-	ART
+#
+# San Juan (SJ)
+Zone America/Argentina/San_Juan -4:34:04 - LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1991 Mar  1
+			-4:00	-	WART	1991 May  7
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	-	ART	2004 May 31
+			-4:00	-	WART	2004 Jul 25
+			-3:00	Arg	AR%sT	2008 Oct 18
+			-3:00	-	ART
+#
+# Jujuy (JY)
+Zone America/Argentina/Jujuy -4:21:12 -	LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1990 Mar  4
+			-4:00	-	WART	1990 Oct 28
+			-4:00	1:00	WARST	1991 Mar 17
+			-4:00	-	WART	1991 Oct  6
+			-3:00	1:00	ARST	1992
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	Arg	AR%sT	2008 Oct 18
+			-3:00	-	ART
+#
+# Catamarca (CT), Chubut (CH)
+Zone America/Argentina/Catamarca -4:23:08 - LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1991 Mar  3
+			-4:00	-	WART	1991 Oct 20
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	-	ART	2004 Jun  1
+			-4:00	-	WART	2004 Jun 20
+			-3:00	Arg	AR%sT	2008 Oct 18
+			-3:00	-	ART
+#
+# Mendoza (MZ)
+Zone America/Argentina/Mendoza -4:35:16 - LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1990 Mar  4
+			-4:00	-	WART	1990 Oct 15
+			-4:00	1:00	WARST	1991 Mar  1
+			-4:00	-	WART	1991 Oct 15
+			-4:00	1:00	WARST	1992 Mar  1
+			-4:00	-	WART	1992 Oct 18
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	-	ART	2004 May 23
+			-4:00	-	WART	2004 Sep 26
+			-3:00	Arg	AR%sT	2008 Oct 18
+			-3:00	-	ART
+#
+# San Luis (SL)
+
+Rule	SanLuis	2008	max	-	Mar	Sun>=8	0:00	0	-
+Rule	SanLuis	2007	max	-	Oct	Sun>=8	0:00	1:00	S
+
+Zone America/Argentina/San_Luis -4:25:24 - LMT	1894 Oct 31
+			-4:16:48 -	CMT	1920 May
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1990
+			-3:00	1:00	ARST	1990 Mar 14
+			-4:00	-	WART	1990 Oct 15
+			-4:00	1:00	WARST	1991 Mar  1
+			-4:00	-	WART	1991 Jun  1
+			-3:00	-	ART	1999 Oct  3
+			-4:00	1:00	WARST	2000 Mar  3
+			-3:00	-	ART	2004 May 31
+			-4:00	-	WART	2004 Jul 25
+			-3:00	Arg	AR%sT	2008 Jan 21
+			-4:00	SanLuis	WAR%sT
+#
+# Santa Cruz (SC)
+Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
+			-4:16:48 -	CMT	1920 May # Cordoba Mean Time
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	-	ART	2004 Jun  1
+			-4:00	-	WART	2004 Jun 20
+			-3:00	Arg	AR%sT	2008 Oct 18
+			-3:00	-	ART
+#
+# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF)
+Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
+			-4:16:48 -	CMT	1920 May # Cordoba Mean Time
+			-4:00	-	ART	1930 Dec
+			-4:00	Arg	AR%sT	1969 Oct  5
+			-3:00	Arg	AR%sT	1999 Oct  3
+			-4:00	Arg	AR%sT	2000 Mar  3
+			-3:00	-	ART	2004 May 30
+			-4:00	-	WART	2004 Jun 20
+			-3:00	Arg	AR%sT	2008 Oct 18
+			-3:00	-	ART
+
+# Aruba
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Aruba	-4:40:24 -	LMT	1912 Feb 12	# Oranjestad
+			-4:30	-	ANT	1965 # Netherlands Antilles Time
+			-4:00	-	AST
+
+# Bolivia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/La_Paz	-4:32:36 -	LMT	1890
+			-4:32:36 -	CMT	1931 Oct 15 # Calamarca MT
+			-4:32:36 1:00	BOST	1932 Mar 21 # Bolivia ST
+			-4:00	-	BOT	# Bolivia Time
+
+# Brazil
+
+# From Paul Eggert (1993-11-18):
+# The mayor of Rio recently attempted to change the time zone rules
+# just in his city, in order to leave more summer time for the tourist trade.
+# The rule change lasted only part of the day;
+# the federal government refused to follow the city's rules, and business
+# was in a chaos, so the mayor backed down that afternoon.
+
+# From IATA SSIM (1996-02):
+# _Only_ the following states in BR1 observe DST: Rio Grande do Sul (RS),
+# Santa Catarina (SC), Parana (PR), Sao Paulo (SP), Rio de Janeiro (RJ),
+# Espirito Santo (ES), Minas Gerais (MG), Bahia (BA), Goias (GO),
+# Distrito Federal (DF), Tocantins (TO), Sergipe [SE] and Alagoas [AL].
+# [The last three states are new to this issue of the IATA SSIM.]
+
+# From Gwillim Law (1996-10-07):
+# Geography, history (Tocantins was part of Goias until 1989), and other
+# sources of time zone information lead me to believe that AL, SE, and TO were
+# always in BR1, and so the only change was whether or not they observed DST....
+# The earliest issue of the SSIM I have is 2/91.  Each issue from then until
+# 9/95 says that DST is observed only in the ten states I quoted from 9/95,
+# along with Mato Grosso (MT) and Mato Grosso do Sul (MS), which are in BR2
+# (UTC-4)....  The other two time zones given for Brazil are BR3, which is
+# UTC-5, no DST, and applies only in the state of Acre (AC); and BR4, which is
+# UTC-2, and applies to Fernando de Noronha (formerly FN, but I believe it's
+# become part of the state of Pernambuco).  The boundary between BR1 and BR2
+# has never been clearly stated.  They've simply been called East and West.
+# However, some conclusions can be drawn from another IATA manual: the Airline
+# Coding Directory, which lists close to 400 airports in Brazil.  For each
+# airport it gives a time zone which is coded to the SSIM.  From that
+# information, I'm led to conclude that the states of Amapa (AP), Ceara (CE),
+# Maranhao (MA), Paraiba (PR), Pernambuco (PE), Piaui (PI), and Rio Grande do
+# Norte (RN), and the eastern part of Para (PA) are all in BR1 without DST.
+
+# From Marcos Tadeu (1998-09-27):
+# <a href="http://pcdsh01.on.br/verao1.html">
+# Brazilian official page
+# </a>
+
+# From Jesper Norgaard (2000-11-03):
+# [For an official list of which regions in Brazil use which time zones, see:]
+# http://pcdsh01.on.br/Fusbr.htm
+# http://pcdsh01.on.br/Fusbrhv.htm
+
+# From Celso Doria via David Madeo (2002-10-09):
+# The reason for the delay this year has to do with elections in Brazil.
+#
+# Unlike in the United States, elections in Brazil are 100% computerized and
+# the results are known almost immediately.  Yesterday, it was the first
+# round of the elections when 115 million Brazilians voted for President,
+# Governor, Senators, Federal Deputies, and State Deputies.  Nobody is
+# counting (or re-counting) votes anymore and we know there will be a second
+# round for the Presidency and also for some Governors.  The 2nd round will
+# take place on October 27th.
+#
+# The reason why the DST will only begin November 3rd is that the thousands
+# of electoral machines used cannot have their time changed, and since the
+# Constitution says the elections must begin at 8:00 AM and end at 5:00 PM,
+# the Government decided to postpone DST, instead of changing the Constitution
+# (maybe, for the next elections, it will be possible to change the clock)...
+
+# From Rodrigo Severo (2004-10-04):
+# It's just the biannual change made necessary by the much hyped, supposedly
+# modern Brazilian eletronic voting machines which, apparently, can't deal
+# with a time change between the first and the second rounds of the elections.
+
+# From Steffen Thorsen (2007-09-20):
+# Brazil will start DST on 2007-10-14 00:00 and end on 2008-02-17 00:00:
+# http://www.mme.gov.br/site/news/detail.do;jsessionid=BBA06811AFCAAC28F0285210913513DA?newsId=13975
+
+# From Paul Schulze (2008-06-24):
+# ...by law number 11.662 of April 24, 2008 (published in the "Diario
+# Oficial da Uniao"...) in Brazil there are changes in the timezones,
+# effective today (00:00am at June 24, 2008) as follows:
+#
+# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the
+# part of the Amazonas state that had this timezone now being put to the
+# timezone UTC+4
+# b) The whole Para state now is put at timezone UTC+3, instead of just
+# part of it, as was before.
+#
+# This change follows a proposal of senator Tiao Viana of Acre state, that
+# proposed it due to concerns about open television channels displaying
+# programs inappropriate to youths in the states that had the timezone
+# UTC+5 too early in the night. In the occasion, some more corrections
+# were proposed, trying to unify the timezones of any given state. This
+# change modifies timezone rules defined in decree 2.784 of 18 June,
+# 1913.
+
+# From Rodrigo Severo (2008-06-24):
+# Just correcting the URL:
+# <a href="https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008">
+# https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008
+# </a>
+#
+# As a result of the above Decree I believe the America/Rio_Branco
+# timezone shall be modified from UTC-5 to UTC-4 and a new timezone shall
+# be created to represent the the west side of the Para State. I
+# suggest this new timezone be called Santarem as the most
+# important/populated city in the affected area.
+#
+# This new timezone would be the same as the Rio_Branco timezone up to
+# the 2008/06/24 change which would be to UTC-3 instead of UTC-4.
+
+# From Alex Krivenyshev (2008-06-24):
+# This is a quick reference page for New and Old Brazil Time Zones map.
+# <a href="http://www.worldtimezone.com/brazil-time-new-old.php">
+# http://www.worldtimezone.com/brazil-time-new-old.php
+# </a>
+#
+# - 4 time zones replaced by 3 time zones-eliminating time zone UTC- 05
+# (state Acre and the part of the Amazonas will be UTC/GMT- 04) - western
+# part of Par state is moving to one timezone UTC- 03 (from UTC -04).
+
+# From Paul Eggert (2002-10-10):
+# The official decrees referenced below are mostly taken from
+# <a href="http://pcdsh01.on.br/DecHV.html">
+# Decretos sobre o Horario de Verao no Brasil
+# </a>.
+
+# From Steffen Thorsen (2008-08-29):
+# As announced by the government and many newspapers in Brazil late
+# yesterday, Brazil will start DST on 2008-10-19 (need to change rule) and
+# it will end on 2009-02-15 (current rule for Brazil is fine). Based on
+# past years experience with the elections, there was a good chance that
+# the start was postponed to November, but it did not happen this year.
+#
+# It has not yet been posted to http://pcdsh01.on.br/DecHV.html
+#
+# An official page about it:
+# <a href="http://www.mme.gov.br/site/news/detail.do?newsId=16722">
+# http://www.mme.gov.br/site/news/detail.do?newsId=16722
+# </a>
+# Note that this link does not always work directly, but must be accessed
+# by going to
+# <a href="http://www.mme.gov.br/first">
+# http://www.mme.gov.br/first
+# </a>
+#
+# One example link that works directly:
+# <a href="http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54">
+# http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54
+# (Portuguese)
+# </a>
+#
+# We have a written a short article about it as well:
+# <a href="http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html">
+# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
+# </a>
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# Decree <a href="http://pcdsh01.on.br/HV20466.htm">20,466</a> (1931-10-01)
+# Decree <a href="http://pcdsh01.on.br/HV21896.htm">21,896</a> (1932-01-10)
+Rule	Brazil	1931	only	-	Oct	 3	11:00	1:00	S
+Rule	Brazil	1932	1933	-	Apr	 1	 0:00	0	-
+Rule	Brazil	1932	only	-	Oct	 3	 0:00	1:00	S
+# Decree <a href="http://pcdsh01.on.br/HV23195.htm">23,195</a> (1933-10-10)
+# revoked DST.
+# Decree <a href="http://pcdsh01.on.br/HV27496.htm">27,496</a> (1949-11-24)
+# Decree <a href="http://pcdsh01.on.br/HV27998.htm">27,998</a> (1950-04-13)
+Rule	Brazil	1949	1952	-	Dec	 1	 0:00	1:00	S
+Rule	Brazil	1950	only	-	Apr	16	 1:00	0	-
+Rule	Brazil	1951	1952	-	Apr	 1	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV32308.htm">32,308</a> (1953-02-24)
+Rule	Brazil	1953	only	-	Mar	 1	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV34724.htm">34,724</a> (1953-11-30)
+# revoked DST.
+# Decree <a href="http://pcdsh01.on.br/HV52700.htm">52,700</a> (1963-10-18)
+# established DST from 1963-10-23 00:00 to 1964-02-29 00:00
+# in SP, RJ, GB, MG, ES, due to the prolongation of the drought.
+# Decree <a href="http://pcdsh01.on.br/HV53071.htm">53,071</a> (1963-12-03)
+# extended the above decree to all of the national territory on 12-09.
+Rule	Brazil	1963	only	-	Dec	 9	 0:00	1:00	S
+# Decree <a href="http://pcdsh01.on.br/HV53604.htm">53,604</a> (1964-02-25)
+# extended summer time by one day to 1964-03-01 00:00 (start of school).
+Rule	Brazil	1964	only	-	Mar	 1	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV55639.htm">55,639</a> (1965-01-27)
+Rule	Brazil	1965	only	-	Jan	31	 0:00	1:00	S
+Rule	Brazil	1965	only	-	Mar	31	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV57303.htm">57,303</a> (1965-11-22)
+Rule	Brazil	1965	only	-	Dec	 1	 0:00	1:00	S
+# Decree <a href="http://pcdsh01.on.br/HV57843.htm">57,843</a> (1966-02-18)
+Rule	Brazil	1966	1968	-	Mar	 1	 0:00	0	-
+Rule	Brazil	1966	1967	-	Nov	 1	 0:00	1:00	S
+# Decree <a href="http://pcdsh01.on.br/HV63429.htm">63,429</a> (1968-10-15)
+# revoked DST.
+# Decree <a href="http://pcdsh01.on.br/HV91698.htm">91,698</a> (1985-09-27)
+Rule	Brazil	1985	only	-	Nov	 2	 0:00	1:00	S
+# Decree 92,310 (1986-01-21)
+# Decree 92,463 (1986-03-13)
+Rule	Brazil	1986	only	-	Mar	15	 0:00	0	-
+# Decree 93,316 (1986-10-01)
+Rule	Brazil	1986	only	-	Oct	25	 0:00	1:00	S
+Rule	Brazil	1987	only	-	Feb	14	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV94922.htm">94,922</a> (1987-09-22)
+Rule	Brazil	1987	only	-	Oct	25	 0:00	1:00	S
+Rule	Brazil	1988	only	-	Feb	 7	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV96676.htm">96,676</a> (1988-09-12)
+# except for the states of AC, AM, PA, RR, RO, and AP (then a territory)
+Rule	Brazil	1988	only	-	Oct	16	 0:00	1:00	S
+Rule	Brazil	1989	only	-	Jan	29	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV98077.htm">98,077</a> (1989-08-21)
+# with the same exceptions
+Rule	Brazil	1989	only	-	Oct	15	 0:00	1:00	S
+Rule	Brazil	1990	only	-	Feb	11	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV99530.htm">99,530</a> (1990-09-17)
+# adopted by RS, SC, PR, SP, RJ, ES, MG, GO, MS, DF.
+# Decree 99,629 (1990-10-19) adds BA, MT.
+Rule	Brazil	1990	only	-	Oct	21	 0:00	1:00	S
+Rule	Brazil	1991	only	-	Feb	17	 0:00	0	-
+# <a href="http://pcdsh01.on.br/HV1991.htm">Unnumbered decree</a> (1991-09-25)
+# adopted by RS, SC, PR, SP, RJ, ES, MG, BA, GO, MT, MS, DF.
+Rule	Brazil	1991	only	-	Oct	20	 0:00	1:00	S
+Rule	Brazil	1992	only	-	Feb	 9	 0:00	0	-
+# <a href="http://pcdsh01.on.br/HV1992.htm">Unnumbered decree</a> (1992-10-16)
+# adopted by same states.
+Rule	Brazil	1992	only	-	Oct	25	 0:00	1:00	S
+Rule	Brazil	1993	only	-	Jan	31	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV942.htm">942</a> (1993-09-28)
+# adopted by same states, plus AM.
+# Decree <a href="http://pcdsh01.on.br/HV1252.htm">1,252</a> (1994-09-22;
+# web page corrected 2004-01-07) adopted by same states, minus AM.
+# Decree <a href="http://pcdsh01.on.br/HV1636.htm">1,636</a> (1995-09-14)
+# adopted by same states, plus MT and TO.
+# Decree <a href="http://pcdsh01.on.br/HV1674.htm">1,674</a> (1995-10-13)
+# adds AL, SE.
+Rule	Brazil	1993	1995	-	Oct	Sun>=11	 0:00	1:00	S
+Rule	Brazil	1994	1995	-	Feb	Sun>=15	 0:00	0	-
+Rule	Brazil	1996	only	-	Feb	11	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/HV2000.htm">2,000</a> (1996-09-04)
+# adopted by same states, minus AL, SE.
+Rule	Brazil	1996	only	-	Oct	 6	 0:00	1:00	S
+Rule	Brazil	1997	only	-	Feb	16	 0:00	0	-
+# From Daniel C. Sobral (1998-02-12):
+# In 1997, the DS began on October 6. The stated reason was that
+# because international television networks ignored Brazil's policy on DS,
+# they bought the wrong times on satellite for coverage of Pope's visit.
+# This year, the ending date of DS was postponed to March 1
+# to help dealing with the shortages of electric power.
+#
+# Decree 2,317 (1997-09-04), adopted by same states.
+Rule	Brazil	1997	only	-	Oct	 6	 0:00	1:00	S
+# Decree <a href="http://pcdsh01.on.br/figuras/HV2495.JPG">2,495</a>
+# (1998-02-10)
+Rule	Brazil	1998	only	-	Mar	 1	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/figuras/Hv98.jpg">2,780</a> (1998-09-11)
+# adopted by the same states as before.
+Rule	Brazil	1998	only	-	Oct	11	 0:00	1:00	S
+Rule	Brazil	1999	only	-	Feb	21	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/figuras/HV3150.gif">3,150</a>
+# (1999-08-23) adopted by same states.
+# Decree <a href="http://pcdsh01.on.br/DecHV99.gif">3,188</a> (1999-09-30)
+# adds SE, AL, PB, PE, RN, CE, PI, MA and RR.
+Rule	Brazil	1999	only	-	Oct	 3	 0:00	1:00	S
+Rule	Brazil	2000	only	-	Feb	27	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/DEC3592.htm">3,592</a> (2000-09-06)
+# adopted by the same states as before.
+# Decree <a href="http://pcdsh01.on.br/Dec3630.jpg">3,630</a> (2000-10-13)
+# repeals DST in PE and RR, effective 2000-10-15 00:00.
+# Decree <a href="http://pcdsh01.on.br/Dec3632.jpg">3,632</a> (2000-10-17)
+# repeals DST in SE, AL, PB, RN, CE, PI and MA, effective 2000-10-22 00:00.
+# Decree <a href="http://pcdsh01.on.br/figuras/HV3916.gif">3,916</a>
+# (2001-09-13) reestablishes DST in AL, CE, MA, PB, PE, PI, RN, SE.
+Rule	Brazil	2000	2001	-	Oct	Sun>=8	 0:00	1:00	S
+Rule	Brazil	2001	2006	-	Feb	Sun>=15	 0:00	0	-
+# Decree 4,399 (2002-10-01) repeals DST in AL, CE, MA, PB, PE, PI, RN, SE.
+# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm">4,399</a>
+Rule	Brazil	2002	only	-	Nov	 3	 0:00	1:00	S
+# Decree 4,844 (2003-09-24; corrected 2003-09-26) repeals DST in BA, MT, TO.
+# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm">4,844</a>
+Rule	Brazil	2003	only	-	Oct	19	 0:00	1:00	S
+# Decree 5,223 (2004-10-01) reestablishes DST in MT.
+# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm">5,223</a>
+Rule	Brazil	2004	only	-	Nov	 2	 0:00	1:00	S
+# Decree <a href="http://pcdsh01.on.br/DecHV5539.gif">5,539</a> (2005-09-19),
+# adopted by the same states as before.
+Rule	Brazil	2005	only	-	Oct	16	 0:00	1:00	S
+# Decree <a href="http://pcdsh01.on.br/DecHV5920.gif">5,920</a> (2006-10-03),
+# adopted by the same states as before.
+Rule	Brazil	2006	only	-	Nov	 5	 0:00	1:00	S
+Rule	Brazil	2007	only	-	Feb	25	 0:00	0	-
+# Decree <a href="http://pcdsh01.on.br/DecHV6212.gif">6,212</a> (2007-09-26),
+# adopted by the same states as before.
+Rule	Brazil	2007	only	-	Oct	Sun>=8	 0:00	1:00	S
+# From Frederico A. C. Neves (2008-09-10):
+# Acording to this decree
+# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm">
+# http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm
+# </a>
+# [t]he DST period in Brazil now on will be from the 3rd Oct Sunday to the
+# 3rd Feb Sunday. There is an exception on the return date when this is
+# the Carnival Sunday then the return date will be the next Sunday...
+Rule	Brazil	2008	max	-	Oct	Sun>=15	0:00	1:00	S
+Rule	Brazil	2008	2011	-	Feb	Sun>=15	0:00	0	-
+Rule	Brazil	2012	only	-	Feb	Sun>=22	0:00	0	-
+Rule	Brazil	2013	2014	-	Feb	Sun>=15	0:00	0	-
+Rule	Brazil	2015	only	-	Feb	Sun>=22	0:00	0	-
+Rule	Brazil	2016	2022	-	Feb	Sun>=15	0:00	0	-
+Rule	Brazil	2023	only	-	Feb	Sun>=22	0:00	0	-
+Rule	Brazil	2024	2025	-	Feb	Sun>=15	0:00	0	-
+Rule	Brazil	2026	only	-	Feb	Sun>=22	0:00	0	-
+Rule	Brazil	2027	2033	-	Feb	Sun>=15	0:00	0	-
+Rule	Brazil	2034	only	-	Feb	Sun>=22	0:00	0	-
+Rule	Brazil	2035	2036	-	Feb	Sun>=15	0:00	0	-
+Rule	Brazil	2037	only	-	Feb	Sun>=22	0:00	0	-
+# From Arthur David Olson (2008-09-29):
+# The next is wrong in some years but is better than nothing.
+Rule	Brazil	2038	max	-	Feb	Sun>=15	0:00	0	-
+
+# The latest ruleset listed above says that the following states observe DST:
+# DF, ES, GO, MG, MS, MT, PR, RJ, RS, SC, SP.
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+#
+# Fernando de Noronha (administratively part of PE)
+Zone America/Noronha	-2:09:40 -	LMT	1914
+			-2:00	Brazil	FN%sT	1990 Sep 17
+			-2:00	-	FNT	1999 Sep 30
+			-2:00	Brazil	FN%sT	2000 Oct 15
+			-2:00	-	FNT	2001 Sep 13
+			-2:00	Brazil	FN%sT	2002 Oct  1
+			-2:00	-	FNT
+# Other Atlantic islands have no permanent settlement.
+# These include Trindade and Martin Vaz (administratively part of ES),
+# Atol das Rocas (RN), and Penedos de Sao Pedro e Sao Paulo (PE).
+# Fernando de Noronha was a separate territory from 1942-09-02 to 1989-01-01;
+# it also included the Penedos.
+#
+# Amapa (AP), east Para (PA)
+# East Para includes Belem, Maraba, Serra Norte, and Sao Felix do Xingu.
+# The division between east and west Para is the river Xingu.
+# In the north a very small part from the river Javary (now Jari I guess,
+# the border with Amapa) to the Amazon, then to the Xingu.
+Zone America/Belem	-3:13:56 -	LMT	1914
+			-3:00	Brazil	BR%sT	1988 Sep 12
+			-3:00	-	BRT
+#
+# west Para (PA)
+# West Para includes Altamira, Oribidos, Prainha, Oriximina, and Santarem.
+Zone America/Santarem	-3:38:48 -	LMT	1914
+			-4:00	Brazil	AM%sT	1988 Sep 12
+			-4:00	-	AMT	2008 Jun 24 00:00
+			-3:00	-	BRT
+#
+# Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN),
+# Paraiba (PB)
+Zone America/Fortaleza	-2:34:00 -	LMT	1914
+			-3:00	Brazil	BR%sT	1990 Sep 17
+			-3:00	-	BRT	1999 Sep 30
+			-3:00	Brazil	BR%sT	2000 Oct 22
+			-3:00	-	BRT	2001 Sep 13
+			-3:00	Brazil	BR%sT	2002 Oct  1
+			-3:00	-	BRT
+#
+# Pernambuco (PE) (except Atlantic islands)
+Zone America/Recife	-2:19:36 -	LMT	1914
+			-3:00	Brazil	BR%sT	1990 Sep 17
+			-3:00	-	BRT	1999 Sep 30
+			-3:00	Brazil	BR%sT	2000 Oct 15
+			-3:00	-	BRT	2001 Sep 13
+			-3:00	Brazil	BR%sT	2002 Oct  1
+			-3:00	-	BRT
+#
+# Tocantins (TO)
+Zone America/Araguaina	-3:12:48 -	LMT	1914
+			-3:00	Brazil	BR%sT	1990 Sep 17
+			-3:00	-	BRT	1995 Sep 14
+			-3:00	Brazil	BR%sT	2003 Sep 24
+			-3:00	-	BRT
+#
+# Alagoas (AL), Sergipe (SE)
+Zone America/Maceio	-2:22:52 -	LMT	1914
+			-3:00	Brazil	BR%sT	1990 Sep 17
+			-3:00	-	BRT	1995 Oct 13
+			-3:00	Brazil	BR%sT	1996 Sep  4
+			-3:00	-	BRT	1999 Sep 30
+			-3:00	Brazil	BR%sT	2000 Oct 22
+			-3:00	-	BRT	2001 Sep 13
+			-3:00	Brazil	BR%sT	2002 Oct  1
+			-3:00	-	BRT
+#
+# Bahia (BA)
+# There are too many Salvadors elsewhere, so use America/Bahia instead
+# of America/Salvador.
+Zone America/Bahia	-2:34:04 -	LMT	1914
+			-3:00	Brazil	BR%sT	2003 Sep 24
+			-3:00	-	BRT
+#
+# Goias (GO), Distrito Federal (DF), Minas Gerais (MG),
+# Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR),
+# Santa Catarina (SC), Rio Grande do Sul (RS)
+Zone America/Sao_Paulo	-3:06:28 -	LMT	1914
+			-3:00	Brazil	BR%sT	1963 Oct 23 00:00
+			-3:00	1:00	BRST	1964
+			-3:00	Brazil	BR%sT
+#
+# Mato Grosso do Sul (MS)
+Zone America/Campo_Grande -3:38:28 -	LMT	1914
+			-4:00	Brazil	AM%sT
+#
+# Mato Grosso (MT)
+Zone America/Cuiaba	-3:44:20 -	LMT	1914
+			-4:00	Brazil	AM%sT	2003 Sep 24
+			-4:00	-	AMT	2004 Oct  1
+			-4:00	Brazil	AM%sT
+#
+# Rondonia (RO)
+Zone America/Porto_Velho -4:15:36 -	LMT	1914
+			-4:00	Brazil	AM%sT	1988 Sep 12
+			-4:00	-	AMT
+#
+# Roraima (RR)
+Zone America/Boa_Vista	-4:02:40 -	LMT	1914
+			-4:00	Brazil	AM%sT	1988 Sep 12
+			-4:00	-	AMT	1999 Sep 30
+			-4:00	Brazil	AM%sT	2000 Oct 15
+			-4:00	-	AMT
+#
+# east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto
+# The great circle line from Tabatinga to Porto Acre divides
+# east from west Amazonas.
+Zone America/Manaus	-4:00:04 -	LMT	1914
+			-4:00	Brazil	AM%sT	1988 Sep 12
+			-4:00	-	AMT	1993 Sep 28
+			-4:00	Brazil	AM%sT	1994 Sep 22
+			-4:00	-	AMT
+#
+# west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
+#	Eirunepe, Envira, Ipixuna
+Zone America/Eirunepe	-4:39:28 -	LMT	1914
+			-5:00	Brazil	AC%sT	1988 Sep 12
+			-5:00	-	ACT	1993 Sep 28
+			-5:00	Brazil	AC%sT	1994 Sep 22
+			-5:00	-	ACT	2008 Jun 24 00:00
+			-4:00	-	AMT
+#
+# Acre (AC)
+Zone America/Rio_Branco	-4:31:12 -	LMT	1914
+			-5:00	Brazil	AC%sT	1988 Sep 12
+			-5:00	-	ACT	2008 Jun 24 00:00
+			-4:00	-	AMT
+
+# Chile
+
+# From Eduardo Krell (1995-10-19):
+# The law says to switch to DST at midnight [24:00] on the second SATURDAY
+# of October....  The law is the same for March and October.
+# (1998-09-29):
+# Because of the drought this year, the government decided to go into
+# DST earlier (saturday 9/26 at 24:00). This is a one-time change only ...
+# (unless there's another dry season next year, I guess).
+
+# From Julio I. Pacheco Troncoso (1999-03-18):
+# Because of the same drought, the government decided to end DST later,
+# on April 3, (one-time change).
+
+# From Oscar van Vlijmen (2006-10-08):
+# http://www.horaoficial.cl/cambio.htm
+
+# From Jesper Norgaard Welen (2006-10-08):
+# I think that there are some obvious mistakes in the suggested link
+# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
+# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
+# (they should have been 1990-09-15 and 1990-09-16 respectively), but
+# anyhow it clears up some doubts too.
+
+# From Paul Eggert (2006-12-27):
+# The following data for Chile and America/Santiago are from
+# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
+# Jesper Norgaard Welen.  The data for Pacific/Easter are from Shanks
+# & Pottenger, except with DST transitions after 1932 cloned from
+# America/Santiago.  The pre-1980 Pacific/Easter data are dubious,
+# but we have no other source.
+
+# From German Poo-Caaman~o (2008-03-03):
+# Due to drought, Chile extends Daylight Time in three weeks.  This
+# is one-time change (Saturday 3/29 at 24:00 for America/Santiago
+# and Saturday 3/29 at 22:00 for Pacific/Easter)
+# The Supreme Decree is located at 
+# <a href="http://www.shoa.cl/servicios/supremo316.pdf">
+# http://www.shoa.cl/servicios/supremo316.pdf
+# </a>
+# and the instructions for 2008 are located in:
+# <a href="http://www.horaoficial.cl/cambio.htm">
+# http://www.horaoficial.cl/cambio.htm
+# </a>.
+
+# From Jose Miguel Garrido (2008-03-05):
+# ...
+# You could see the announces of the change on 
+# <a href="http://www.shoa.cl/noticias/2008/04hora/hora.htm">
+# http://www.shoa.cl/noticias/2008/04hora/hora.htm
+# </a>.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Chile	1927	1932	-	Sep	 1	0:00	1:00	S
+Rule	Chile	1928	1932	-	Apr	 1	0:00	0	-
+Rule	Chile	1942	only	-	Jun	 1	4:00u	0	-
+Rule	Chile	1942	only	-	Aug	 1	5:00u	1:00	S
+Rule	Chile	1946	only	-	Jul	15	4:00u	1:00	S
+Rule	Chile	1946	only	-	Sep	 1	3:00u	0:00	-
+Rule	Chile	1947	only	-	Apr	 1	4:00u	0	-
+Rule	Chile	1968	only	-	Nov	 3	4:00u	1:00	S
+Rule	Chile	1969	only	-	Mar	30	3:00u	0	-
+Rule	Chile	1969	only	-	Nov	23	4:00u	1:00	S
+Rule	Chile	1970	only	-	Mar	29	3:00u	0	-
+Rule	Chile	1971	only	-	Mar	14	3:00u	0	-
+Rule	Chile	1970	1972	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	Chile	1972	1986	-	Mar	Sun>=9	3:00u	0	-
+Rule	Chile	1973	only	-	Sep	30	4:00u	1:00	S
+Rule	Chile	1974	1987	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	Chile	1987	only	-	Apr	12	3:00u	0	-
+Rule	Chile	1988	1989	-	Mar	Sun>=9	3:00u	0	-
+Rule	Chile	1988	only	-	Oct	Sun>=1	4:00u	1:00	S
+Rule	Chile	1989	only	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	Chile	1990	only	-	Mar	18	3:00u	0	-
+Rule	Chile	1990	only	-	Sep	16	4:00u	1:00	S
+Rule	Chile	1991	1996	-	Mar	Sun>=9	3:00u	0	-
+Rule	Chile	1991	1997	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	Chile	1997	only	-	Mar	30	3:00u	0	-
+Rule	Chile	1998	only	-	Mar	Sun>=9	3:00u	0	-
+Rule	Chile	1998	only	-	Sep	27	4:00u	1:00	S
+Rule	Chile	1999	only	-	Apr	 4	3:00u	0	-
+Rule	Chile	1999	max	-	Oct	Sun>=9	4:00u	1:00	S
+Rule	Chile	2000	2007	-	Mar	Sun>=9	3:00u	0	-
+# N.B.: the end of March 29 in Chile is March 30 in Universal time,
+# which is used below in specifying the transition.
+Rule	Chile	2008	only	-	Mar	30	3:00u	0	-
+Rule	Chile	2009	max	-	Mar	Sun>=9	3:00u	0	-
+# IATA SSIM anomalies: (1992-02) says 1992-03-14;
+# (1996-09) says 1998-03-08.  Ignore these.
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Santiago	-4:42:46 -	LMT	1890
+			-4:42:46 -	SMT	1910 	    # Santiago Mean Time
+			-5:00	-	CLT	1916 Jul  1 # Chile Time
+			-4:42:46 -	SMT	1918 Sep  1 # Santiago Mean Time
+			-4:00	-	CLT	1919 Jul  1 # Chile Time
+			-4:42:46 -	SMT	1927 Sep  1 # Santiago Mean Time
+			-5:00	Chile	CL%sT	1947 May 22 # Chile Time
+			-4:00	Chile	CL%sT
+Zone Pacific/Easter	-7:17:44 -	LMT	1890
+			-7:17:28 -	EMT	1932 Sep    # Easter Mean Time
+			-7:00	Chile	EAS%sT	1982 Mar 13 21:00 # Easter I Time
+			-6:00	Chile	EAS%sT
+#
+# Sala y Gomez Island is like Pacific/Easter.
+# Other Chilean locations, including Juan Fernandez Is, San Ambrosio,
+# San Felix, and Antarctic bases, are like America/Santiago.
+
+# Colombia
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	CO	1992	only	-	May	 3	0:00	1:00	S
+Rule	CO	1993	only	-	Apr	 4	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Bogota	-4:56:20 -	LMT	1884 Mar 13
+			-4:56:20 -	BMT	1914 Nov 23 # Bogota Mean Time
+			-5:00	CO	CO%sT	# Colombia Time
+# Malpelo, Providencia, San Andres
+# no information; probably like America/Bogota
+
+# Curacao
+#
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say that The Bottom and Philipsburg have been at
+# -4:00 since standard time was introduced on 1912-03-02; and that
+# Kralendijk and Rincon used Kralendijk Mean Time (-4:33:08) from
+# 1912-02-02 to 1965-01-01.  The former is dubious, since S&P also say
+# Saba Island has been like Curacao.
+# This all predates our 1970 cutoff, though.
+#
+# By July 2007 Curacao and St Maarten are planned to become
+# associated states within the Netherlands, much like Aruba;
+# Bonaire, Saba and St Eustatius would become directly part of the
+# Netherlands as Kingdom Islands.  This won't affect their time zones
+# though, as far as we know.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Curacao	-4:35:44 -	LMT	1912 Feb 12	# Willemstad
+			-4:30	-	ANT	1965 # Netherlands Antilles Time
+			-4:00	-	AST
+
+# Ecuador
+#
+# From Paul Eggert (2007-03-04):
+# Apparently Ecuador had a failed experiment with DST in 1992.
+# <http://midena.gov.ec/content/view/1261/208/> (2007-02-27) and
+# <http://www.hoy.com.ec/NoticiaNue.asp?row_id=249856> (2006-11-06) both
+# talk about "hora Sixto".  Leave this alone for now, as we have no data.
+#
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Guayaquil	-5:19:20 -	LMT	1890
+			-5:14:00 -	QMT	1931 # Quito Mean Time
+			-5:00	-	ECT	     # Ecuador Time
+Zone Pacific/Galapagos	-5:58:24 -	LMT	1931 # Puerto Baquerizo Moreno
+			-5:00	-	ECT	1986
+			-6:00	-	GALT	     # Galapagos Time
+
+# Falklands
+
+# From Paul Eggert (2006-03-22):
+# Between 1990 and 2000 inclusive, Shanks & Pottenger and the IATA agree except
+# the IATA gives 1996-09-08.  Go with Shanks & Pottenger.
+
+# From Falkland Islands Government Office, London (2001-01-22)
+# via Jesper Norgaard:
+# ... the clocks revert back to Local Mean Time at 2 am on Sunday 15
+# April 2001 and advance one hour to summer time at 2 am on Sunday 2
+# September.  It is anticipated that the clocks will revert back at 2
+# am on Sunday 21 April 2002 and advance to summer time at 2 am on
+# Sunday 1 September.
+
+# From Rives McDow (2001-02-13):
+#
+# I have communicated several times with people there, and the last
+# time I had communications that was helpful was in 1998.  Here is
+# what was said then:
+#
+# "The general rule was that Stanley used daylight saving and the Camp
+# did not. However for various reasons many people in the Camp have
+# started to use daylight saving (known locally as 'Stanley Time')
+# There is no rule as to who uses daylight saving - it is a matter of
+# personal choice and so it is impossible to draw a map showing who
+# uses it and who does not. Any list would be out of date as soon as
+# it was produced. This year daylight saving ended on April 18/19th
+# and started again on September 12/13th.  I do not know what the rule
+# is, but can find out if you like.  We do not change at the same time
+# as UK or Chile."
+#
+# I did have in my notes that the rule was "Second Saturday in Sep at
+# 0:00 until third Saturday in Apr at 0:00".  I think that this does
+# not agree in some cases with Shanks; is this true?
+#
+# Also, there is no mention in the list that some areas in the
+# Falklands do not use DST.  I have found in my communications there
+# that these areas are on the western half of East Falkland and all of
+# West Falkland.  Stanley is the only place that consistently observes
+# DST.  Again, as in other places in the world, the farmers don't like
+# it.  West Falkland is almost entirely sheep farmers.
+#
+# I know one lady there that keeps a list of which farm keeps DST and
+# which doesn't each year.  She runs a shop in Stanley, and says that
+# the list changes each year.  She uses it to communicate to her
+# customers, catching them when they are home for lunch or dinner.
+
+# From Paul Eggert (2001-03-05):
+# For now, we'll just record the time in Stanley, since we have no
+# better info.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Falk	1937	1938	-	Sep	lastSun	0:00	1:00	S
+Rule	Falk	1938	1942	-	Mar	Sun>=19	0:00	0	-
+Rule	Falk	1939	only	-	Oct	1	0:00	1:00	S
+Rule	Falk	1940	1942	-	Sep	lastSun	0:00	1:00	S
+Rule	Falk	1943	only	-	Jan	1	0:00	0	-
+Rule	Falk	1983	only	-	Sep	lastSun	0:00	1:00	S
+Rule	Falk	1984	1985	-	Apr	lastSun	0:00	0	-
+Rule	Falk	1984	only	-	Sep	16	0:00	1:00	S
+Rule	Falk	1985	2000	-	Sep	Sun>=9	0:00	1:00	S
+Rule	Falk	1986	2000	-	Apr	Sun>=16	0:00	0	-
+Rule	Falk	2001	max	-	Apr	Sun>=15	2:00	0	-
+Rule	Falk	2001	max	-	Sep	Sun>=1	2:00	1:00	S
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Atlantic/Stanley	-3:51:24 -	LMT	1890
+			-3:51:24 -	SMT	1912 Mar 12  # Stanley Mean Time
+			-4:00	Falk	FK%sT	1983 May     # Falkland Is Time
+			-3:00	Falk	FK%sT	1985 Sep 15
+			-4:00	Falk	FK%sT
+
+# French Guiana
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Cayenne	-3:29:20 -	LMT	1911 Jul
+			-4:00	-	GFT	1967 Oct # French Guiana Time
+			-3:00	-	GFT
+
+# Guyana
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Guyana	-3:52:40 -	LMT	1915 Mar	# Georgetown
+			-3:45	-	GBGT	1966 May 26 # Br Guiana Time
+			-3:45	-	GYT	1975 Jul 31 # Guyana Time
+			-3:00	-	GYT	1991
+# IATA SSIM (1996-06) says -4:00.  Assume a 1991 switch.
+			-4:00	-	GYT
+
+# Paraguay
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger say that spring transitions are from 01:00 -> 02:00,
+# and autumn transitions are from 00:00 -> 23:00.  Go with pre-1999
+# editions of Shanks, and with the IATA, who say transitions occur at 00:00.
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Para	1975	1988	-	Oct	 1	0:00	1:00	S
+Rule	Para	1975	1978	-	Mar	 1	0:00	0	-
+Rule	Para	1979	1991	-	Apr	 1	0:00	0	-
+Rule	Para	1989	only	-	Oct	22	0:00	1:00	S
+Rule	Para	1990	only	-	Oct	 1	0:00	1:00	S
+Rule	Para	1991	only	-	Oct	 6	0:00	1:00	S
+Rule	Para	1992	only	-	Mar	 1	0:00	0	-
+Rule	Para	1992	only	-	Oct	 5	0:00	1:00	S
+Rule	Para	1993	only	-	Mar	31	0:00	0	-
+Rule	Para	1993	1995	-	Oct	 1	0:00	1:00	S
+Rule	Para	1994	1995	-	Feb	lastSun	0:00	0	-
+Rule	Para	1996	only	-	Mar	 1	0:00	0	-
+# IATA SSIM (2000-02) says 1999-10-10; ignore this for now.
+# From Steffen Thorsen (2000-10-02):
+# I have three independent reports that Paraguay changed to DST this Sunday
+# (10-01).
+#
+# Translated by Gwillim Law (2001-02-27) from
+# <a href="http://www.diarionoticias.com.py/011000/nacional/naciona1.htm">
+# Noticias, a daily paper in Asuncion, Paraguay (2000-10-01)
+# </a>:
+# Starting at 0:00 today, the clock will be set forward 60 minutes, in
+# fulfillment of Decree No. 7,273 of the Executive Power....  The time change
+# system has been operating for several years.  Formerly there was a separate
+# decree each year; the new law has the same effect, but permanently.  Every
+# year, the time will change on the first Sunday of October; likewise, the
+# clock will be set back on the first Sunday of March.
+#
+Rule	Para	1996	2001	-	Oct	Sun>=1	0:00	1:00	S
+# IATA SSIM (1997-09) says Mar 1; go with Shanks & Pottenger.
+Rule	Para	1997	only	-	Feb	lastSun	0:00	0	-
+# Shanks & Pottenger say 1999-02-28; IATA SSIM (1999-02) says 1999-02-27, but
+# (1999-09) reports no date; go with above sources and Gerd Knops (2001-02-27).
+Rule	Para	1998	2001	-	Mar	Sun>=1	0:00	0	-
+# From Rives McDow (2002-02-28):
+# A decree was issued in Paraguay (no. 16350) on 2002-02-26 that changed the
+# dst method to be from the first Sunday in September to the first Sunday in
+# April.
+Rule	Para	2002	2004	-	Apr	Sun>=1	0:00	0	-
+Rule	Para	2002	2003	-	Sep	Sun>=1	0:00	1:00	S
+#
+# From Jesper Norgaard Welen (2005-01-02):
+# There are several sources that claim that Paraguay made
+# a timezone rule change in autumn 2004.
+# From Steffen Thorsen (2005-01-05):
+# Decree 1,867 (2004-03-05)
+# From Carlos Raul Perasso via Jesper Norgaard Welen (2006-10-13)
+# <http://www.presidencia.gov.py/decretos/D1867.pdf>
+Rule	Para	2004	max	-	Oct	Sun>=15	0:00	1:00	S
+Rule	Para	2005	max	-	Mar	Sun>=8	0:00	0	-
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Asuncion	-3:50:40 -	LMT	1890
+			-3:50:40 -	AMT	1931 Oct 10 # Asuncion Mean Time
+			-4:00	-	PYT	1972 Oct # Paraguay Time
+			-3:00	-	PYT	1974 Apr
+			-4:00	Para	PY%sT
+
+# Peru
+#
+# <a href="news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net">
+# From Evelyn C. Leeper via Mark Brader (2003-10-26):</a>
+# When we were in Peru in 1985-1986, they apparently switched over
+# sometime between December 29 and January 3 while we were on the Amazon.
+#
+# From Paul Eggert (2006-03-22):
+# Shanks & Pottenger don't have this transition.  Assume 1986 was like 1987.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	Peru	1938	only	-	Jan	 1	0:00	1:00	S
+Rule	Peru	1938	only	-	Apr	 1	0:00	0	-
+Rule	Peru	1938	1939	-	Sep	lastSun	0:00	1:00	S
+Rule	Peru	1939	1940	-	Mar	Sun>=24	0:00	0	-
+Rule	Peru	1986	1987	-	Jan	 1	0:00	1:00	S
+Rule	Peru	1986	1987	-	Apr	 1	0:00	0	-
+Rule	Peru	1990	only	-	Jan	 1	0:00	1:00	S
+Rule	Peru	1990	only	-	Apr	 1	0:00	0	-
+# IATA is ambiguous for 1993/1995; go with Shanks & Pottenger.
+Rule	Peru	1994	only	-	Jan	 1	0:00	1:00	S
+Rule	Peru	1994	only	-	Apr	 1	0:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Lima	-5:08:12 -	LMT	1890
+			-5:08:36 -	LMT	1908 Jul 28 # Lima Mean Time?
+			-5:00	Peru	PE%sT	# Peru Time
+
+# South Georgia
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone Atlantic/South_Georgia -2:26:08 -	LMT	1890		# Grytviken
+			-2:00	-	GST	# South Georgia Time
+
+# South Sandwich Is
+# uninhabited; scientific personnel have wintered
+
+# Suriname
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Paramaribo	-3:40:40 -	LMT	1911
+			-3:40:52 -	PMT	1935     # Paramaribo Mean Time
+			-3:40:36 -	PMT	1945 Oct # The capital moved?
+			-3:30	-	NEGT	1975 Nov 20 # Dutch Guiana Time
+			-3:30	-	SRT	1984 Oct # Suriname Time
+			-3:00	-	SRT
+
+# Trinidad and Tobago
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Port_of_Spain -4:06:04 -	LMT	1912 Mar 2
+			-4:00	-	AST
+
+# Uruguay
+# From Paul Eggert (1993-11-18):
+# Uruguay wins the prize for the strangest peacetime manipulation of the rules.
+# From Shanks & Pottenger:
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+# Whitman gives 1923 Oct 1; go with Shanks & Pottenger.
+Rule	Uruguay	1923	only	-	Oct	 2	 0:00	0:30	HS
+Rule	Uruguay	1924	1926	-	Apr	 1	 0:00	0	-
+Rule	Uruguay	1924	1925	-	Oct	 1	 0:00	0:30	HS
+Rule	Uruguay	1933	1935	-	Oct	lastSun	 0:00	0:30	HS
+# Shanks & Pottenger give 1935 Apr 1 0:00 & 1936 Mar 30 0:00; go with Whitman.
+Rule	Uruguay	1934	1936	-	Mar	Sat>=25	23:30s	0	-
+Rule	Uruguay	1936	only	-	Nov	 1	 0:00	0:30	HS
+Rule	Uruguay	1937	1941	-	Mar	lastSun	 0:00	0	-
+# Whitman gives 1937 Oct 3; go with Shanks & Pottenger.
+Rule	Uruguay	1937	1940	-	Oct	lastSun	 0:00	0:30	HS
+# Whitman gives 1941 Oct 24 - 1942 Mar 27, 1942 Dec 14 - 1943 Apr 13,
+# and 1943 Apr 13 ``to present time''; go with Shanks & Pottenger.
+Rule	Uruguay	1941	only	-	Aug	 1	 0:00	0:30	HS
+Rule	Uruguay	1942	only	-	Jan	 1	 0:00	0	-
+Rule	Uruguay	1942	only	-	Dec	14	 0:00	1:00	S
+Rule	Uruguay	1943	only	-	Mar	14	 0:00	0	-
+Rule	Uruguay	1959	only	-	May	24	 0:00	1:00	S
+Rule	Uruguay	1959	only	-	Nov	15	 0:00	0	-
+Rule	Uruguay	1960	only	-	Jan	17	 0:00	1:00	S
+Rule	Uruguay	1960	only	-	Mar	 6	 0:00	0	-
+Rule	Uruguay	1965	1967	-	Apr	Sun>=1	 0:00	1:00	S
+Rule	Uruguay	1965	only	-	Sep	26	 0:00	0	-
+Rule	Uruguay	1966	1967	-	Oct	31	 0:00	0	-
+Rule	Uruguay	1968	1970	-	May	27	 0:00	0:30	HS
+Rule	Uruguay	1968	1970	-	Dec	 2	 0:00	0	-
+Rule	Uruguay	1972	only	-	Apr	24	 0:00	1:00	S
+Rule	Uruguay	1972	only	-	Aug	15	 0:00	0	-
+Rule	Uruguay	1974	only	-	Mar	10	 0:00	0:30	HS
+Rule	Uruguay	1974	only	-	Dec	22	 0:00	1:00	S
+Rule	Uruguay	1976	only	-	Oct	 1	 0:00	0	-
+Rule	Uruguay	1977	only	-	Dec	 4	 0:00	1:00	S
+Rule	Uruguay	1978	only	-	Apr	 1	 0:00	0	-
+Rule	Uruguay	1979	only	-	Oct	 1	 0:00	1:00	S
+Rule	Uruguay	1980	only	-	May	 1	 0:00	0	-
+Rule	Uruguay	1987	only	-	Dec	14	 0:00	1:00	S
+Rule	Uruguay	1988	only	-	Mar	14	 0:00	0	-
+Rule	Uruguay	1988	only	-	Dec	11	 0:00	1:00	S
+Rule	Uruguay	1989	only	-	Mar	12	 0:00	0	-
+Rule	Uruguay	1989	only	-	Oct	29	 0:00	1:00	S
+# Shanks & Pottenger say no DST was observed in 1990/1 and 1991/2,
+# and that 1992/3's DST was from 10-25 to 03-01.  Go with IATA.
+Rule	Uruguay	1990	1992	-	Mar	Sun>=1	 0:00	0	-
+Rule	Uruguay	1990	1991	-	Oct	Sun>=21	 0:00	1:00	S
+Rule	Uruguay	1992	only	-	Oct	18	 0:00	1:00	S
+Rule	Uruguay	1993	only	-	Feb	28	 0:00	0	-
+# From Eduardo Cota (2004-09-20):
+# The uruguayan government has decreed a change in the local time....
+# http://www.presidencia.gub.uy/decretos/2004091502.htm
+Rule	Uruguay	2004	only	-	Sep	19	 0:00	1:00	S
+# From Steffen Thorsen (2005-03-11):
+# Uruguay's DST was scheduled to end on Sunday, 2005-03-13, but in order to
+# save energy ... it was postponed two weeks....
+# http://www.presidencia.gub.uy/_Web/noticias/2005/03/2005031005.htm
+Rule	Uruguay	2005	only	-	Mar	27	 2:00	0	-
+# From Eduardo Cota (2005-09-27):
+# http://www.presidencia.gub.uy/_Web/decretos/2005/09/CM%20119_09%2009%202005_00001.PDF
+# This means that from 2005-10-09 at 02:00 local time, until 2006-03-12 at
+# 02:00 local time, official time in Uruguay will be at GMT -2.
+Rule	Uruguay	2005	only	-	Oct	 9	 2:00	1:00	S
+Rule	Uruguay	2006	only	-	Mar	12	 2:00	0	-
+# From Jesper Norgaard Welen (2006-09-06):
+# http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
+Rule	Uruguay	2006	max	-	Oct	Sun>=1	 2:00	1:00	S
+Rule	Uruguay	2007	max	-	Mar	Sun>=8	 2:00	0	-
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone America/Montevideo	-3:44:44 -	LMT	1898 Jun 28
+			-3:44:44 -	MMT	1920 May  1	# Montevideo MT
+			-3:30	Uruguay	UY%sT	1942 Dec 14	# Uruguay Time
+			-3:00	Uruguay	UY%sT
+
+# Venezuela
+#
+# From John Stainforth (2007-11-28):
+# ... the change for Venezuela originally expected for 2007-12-31 has
+# been brought forward to 2007-12-09.  The official announcement was
+# published today in the "Gaceta Oficial de la Republica Bolivariana
+# de Venezuela, numero 38.819" (official document for all laws or
+# resolution publication)
+# http://www.globovision.com/news.php?nid=72208
+
+# Zone	NAME		GMTOFF	RULES	FORMAT	[UNTIL]
+Zone	America/Caracas	-4:27:44 -	LMT	1890
+			-4:27:40 -	CMT	1912 Feb 12 # Caracas Mean Time?
+			-4:30	-	VET	1965	     # Venezuela Time
+			-4:00	-	VET	2007 Dec  9 03:00
+			-4:30	-	VET
diff --git a/tools/zoneinfo/tzdata2009s/systemv b/tools/zoneinfo/tzdata2009s/systemv
new file mode 100644
index 0000000..767388d
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/systemv
@@ -0,0 +1,39 @@
+# <pre>
+# @(#)systemv	8.2
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+
+# Old rules, should the need arise.
+# No attempt is made to handle Newfoundland, since it cannot be expressed
+# using the System V "TZ" scheme (half-hour offset), or anything outside
+# North America (no support for non-standard DST start/end dates), nor
+# the changes in the DST rules in the US after 1976 (which occurred after
+# the old rules were written).
+#
+# If you need the old rules, uncomment ## lines.
+# Compile this *without* leap second correction for true conformance.
+
+# Rule	NAME	FROM	TO	TYPE	IN	ON	AT	SAVE	LETTER/S
+Rule	SystemV	min	1973	-	Apr	lastSun	2:00	1:00	D
+Rule	SystemV	min	1973	-	Oct	lastSun	2:00	0	S
+Rule	SystemV	1974	only	-	Jan	6	2:00	1:00	D
+Rule	SystemV	1974	only	-	Nov	lastSun	2:00	0	S
+Rule	SystemV	1975	only	-	Feb	23	2:00	1:00	D
+Rule	SystemV	1975	only	-	Oct	lastSun	2:00	0	S
+Rule	SystemV	1976	max	-	Apr	lastSun	2:00	1:00	D
+Rule	SystemV	1976	max	-	Oct	lastSun	2:00	0	S
+
+# Zone	NAME		GMTOFF	RULES/SAVE	FORMAT	[UNTIL]
+## Zone	SystemV/AST4ADT	-4:00	SystemV		A%sT
+## Zone	SystemV/EST5EDT	-5:00	SystemV		E%sT
+## Zone	SystemV/CST6CDT	-6:00	SystemV		C%sT
+## Zone	SystemV/MST7MDT	-7:00	SystemV		M%sT
+## Zone	SystemV/PST8PDT	-8:00	SystemV		P%sT
+## Zone	SystemV/YST9YDT	-9:00	SystemV		Y%sT
+## Zone	SystemV/AST4	-4:00	-		AST
+## Zone	SystemV/EST5	-5:00	-		EST
+## Zone	SystemV/CST6	-6:00	-		CST
+## Zone	SystemV/MST7	-7:00	-		MST
+## Zone	SystemV/PST8	-8:00	-		PST
+## Zone	SystemV/YST9	-9:00	-		YST
+## Zone	SystemV/HST10	-10:00	-		HST
diff --git a/tools/zoneinfo/tzdata2008h/yearistype.sh b/tools/zoneinfo/tzdata2009s/yearistype.sh
similarity index 100%
rename from tools/zoneinfo/tzdata2008h/yearistype.sh
rename to tools/zoneinfo/tzdata2009s/yearistype.sh
diff --git a/tools/zoneinfo/tzdata2009s/zone.tab b/tools/zoneinfo/tzdata2009s/zone.tab
new file mode 100644
index 0000000..0f91941
--- /dev/null
+++ b/tools/zoneinfo/tzdata2009s/zone.tab
@@ -0,0 +1,429 @@
+# <pre>
+# @(#)zone.tab	8.29
+# This file is in the public domain, so clarified as of
+# 2009-05-17 by Arthur David Olson.
+#
+# TZ zone descriptions
+#
+# From Paul Eggert (1996-08-05):
+#
+# This file contains a table with the following columns:
+# 1.  ISO 3166 2-character country code.  See the file `iso3166.tab'.
+# 2.  Latitude and longitude of the zone's principal location
+#     in ISO 6709 sign-degrees-minutes-seconds format,
+#     either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
+#     first latitude (+ is north), then longitude (+ is east).
+# 3.  Zone name used in value of TZ environment variable.
+# 4.  Comments; present if and only if the country has multiple rows.
+#
+# Columns are separated by a single tab.
+# The table is sorted first by country, then an order within the country that
+# (1) makes some geographical sense, and
+# (2) puts the most populous zones first, where that does not contradict (1).
+#
+# Lines beginning with `#' are comments.
+#
+#country-
+#code	coordinates	TZ			comments
+AD	+4230+00131	Europe/Andorra
+AE	+2518+05518	Asia/Dubai
+AF	+3431+06912	Asia/Kabul
+AG	+1703-06148	America/Antigua
+AI	+1812-06304	America/Anguilla
+AL	+4120+01950	Europe/Tirane
+AM	+4011+04430	Asia/Yerevan
+AN	+1211-06900	America/Curacao
+AO	-0848+01314	Africa/Luanda
+AQ	-7750+16636	Antarctica/McMurdo	McMurdo Station, Ross Island
+AQ	-9000+00000	Antarctica/South_Pole	Amundsen-Scott Station, South Pole
+AQ	-6734-06808	Antarctica/Rothera	Rothera Station, Adelaide Island
+AQ	-6448-06406	Antarctica/Palmer	Palmer Station, Anvers Island
+AQ	-6736+06253	Antarctica/Mawson	Mawson Station, Holme Bay
+AQ	-6835+07758	Antarctica/Davis	Davis Station, Vestfold Hills
+AQ	-6617+11031	Antarctica/Casey	Casey Station, Bailey Peninsula
+AQ	-7824+10654	Antarctica/Vostok	Vostok Station, S Magnetic Pole
+AQ	-6640+14001	Antarctica/DumontDUrville	Dumont-d'Urville Station, Terre Adelie
+AQ	-690022+0393524	Antarctica/Syowa	Syowa Station, E Ongul I
+AR	-3436-05827	America/Argentina/Buenos_Aires	Buenos Aires (BA, CF)
+AR	-3124-06411	America/Argentina/Cordoba	most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+AR	-2447-06525	America/Argentina/Salta	(SA, LP, NQ, RN)
+AR	-2411-06518	America/Argentina/Jujuy	Jujuy (JY)
+AR	-2649-06513	America/Argentina/Tucuman	Tucuman (TM)
+AR	-2828-06547	America/Argentina/Catamarca	Catamarca (CT), Chubut (CH)
+AR	-2926-06651	America/Argentina/La_Rioja	La Rioja (LR)
+AR	-3132-06831	America/Argentina/San_Juan	San Juan (SJ)
+AR	-3253-06849	America/Argentina/Mendoza	Mendoza (MZ)
+AR	-3319-06621	America/Argentina/San_Luis	San Luis (SL)
+AR	-5138-06913	America/Argentina/Rio_Gallegos	Santa Cruz (SC)
+AR	-5448-06818	America/Argentina/Ushuaia	Tierra del Fuego (TF)
+AS	-1416-17042	Pacific/Pago_Pago
+AT	+4813+01620	Europe/Vienna
+AU	-3133+15905	Australia/Lord_Howe	Lord Howe Island
+AU	-4253+14719	Australia/Hobart	Tasmania - most locations
+AU	-3956+14352	Australia/Currie	Tasmania - King Island
+AU	-3749+14458	Australia/Melbourne	Victoria
+AU	-3352+15113	Australia/Sydney	New South Wales - most locations
+AU	-3157+14127	Australia/Broken_Hill	New South Wales - Yancowinna
+AU	-2728+15302	Australia/Brisbane	Queensland - most locations
+AU	-2016+14900	Australia/Lindeman	Queensland - Holiday Islands
+AU	-3455+13835	Australia/Adelaide	South Australia
+AU	-1228+13050	Australia/Darwin	Northern Territory
+AU	-3157+11551	Australia/Perth	Western Australia - most locations
+AU	-3143+12852	Australia/Eucla	Western Australia - Eucla area
+AW	+1230-06958	America/Aruba
+AX	+6006+01957	Europe/Mariehamn
+AZ	+4023+04951	Asia/Baku
+BA	+4352+01825	Europe/Sarajevo
+BB	+1306-05937	America/Barbados
+BD	+2343+09025	Asia/Dhaka
+BE	+5050+00420	Europe/Brussels
+BF	+1222-00131	Africa/Ouagadougou
+BG	+4241+02319	Europe/Sofia
+BH	+2623+05035	Asia/Bahrain
+BI	-0323+02922	Africa/Bujumbura
+BJ	+0629+00237	Africa/Porto-Novo
+BL	+1753-06251	America/St_Barthelemy
+BM	+3217-06446	Atlantic/Bermuda
+BN	+0456+11455	Asia/Brunei
+BO	-1630-06809	America/La_Paz
+BR	-0351-03225	America/Noronha	Atlantic islands
+BR	-0127-04829	America/Belem	Amapa, E Para
+BR	-0343-03830	America/Fortaleza	NE Brazil (MA, PI, CE, RN, PB)
+BR	-0803-03454	America/Recife	Pernambuco
+BR	-0712-04812	America/Araguaina	Tocantins
+BR	-0940-03543	America/Maceio	Alagoas, Sergipe
+BR	-1259-03831	America/Bahia	Bahia
+BR	-2332-04637	America/Sao_Paulo	S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+BR	-2027-05437	America/Campo_Grande	Mato Grosso do Sul
+BR	-1535-05605	America/Cuiaba	Mato Grosso
+BR	-0226-05452	America/Santarem	W Para
+BR	-0846-06354	America/Porto_Velho	Rondonia
+BR	+0249-06040	America/Boa_Vista	Roraima
+BR	-0308-06001	America/Manaus	E Amazonas
+BR	-0640-06952	America/Eirunepe	W Amazonas
+BR	-0958-06748	America/Rio_Branco	Acre
+BS	+2505-07721	America/Nassau
+BT	+2728+08939	Asia/Thimphu
+BW	-2439+02555	Africa/Gaborone
+BY	+5354+02734	Europe/Minsk
+BZ	+1730-08812	America/Belize
+CA	+4734-05243	America/St_Johns	Newfoundland Time, including SE Labrador
+CA	+4439-06336	America/Halifax	Atlantic Time - Nova Scotia (most places), PEI
+CA	+4612-05957	America/Glace_Bay	Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+CA	+4606-06447	America/Moncton	Atlantic Time - New Brunswick
+CA	+5320-06025	America/Goose_Bay	Atlantic Time - Labrador - most locations
+CA	+5125-05707	America/Blanc-Sablon	Atlantic Standard Time - Quebec - Lower North Shore
+CA	+4531-07334	America/Montreal	Eastern Time - Quebec - most locations
+CA	+4339-07923	America/Toronto	Eastern Time - Ontario - most locations
+CA	+4901-08816	America/Nipigon	Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+CA	+4823-08915	America/Thunder_Bay	Eastern Time - Thunder Bay, Ontario
+CA	+6344-06828	America/Iqaluit	Eastern Time - east Nunavut - most locations
+CA	+6608-06544	America/Pangnirtung	Eastern Time - Pangnirtung, Nunavut
+CA	+744144-0944945	America/Resolute	Eastern Standard Time - Resolute, Nunavut
+CA	+484531-0913718	America/Atikokan	Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+CA	+624900-0920459	America/Rankin_Inlet	Central Time - central Nunavut
+CA	+4953-09709	America/Winnipeg	Central Time - Manitoba & west Ontario
+CA	+4843-09434	America/Rainy_River	Central Time - Rainy River & Fort Frances, Ontario
+CA	+5024-10439	America/Regina	Central Standard Time - Saskatchewan - most locations
+CA	+5017-10750	America/Swift_Current	Central Standard Time - Saskatchewan - midwest
+CA	+5333-11328	America/Edmonton	Mountain Time - Alberta, east British Columbia & west Saskatchewan
+CA	+690650-1050310	America/Cambridge_Bay	Mountain Time - west Nunavut
+CA	+6227-11421	America/Yellowknife	Mountain Time - central Northwest Territories
+CA	+682059-1334300	America/Inuvik	Mountain Time - west Northwest Territories
+CA	+5946-12014	America/Dawson_Creek	Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+CA	+4916-12307	America/Vancouver	Pacific Time - west British Columbia
+CA	+6043-13503	America/Whitehorse	Pacific Time - south Yukon
+CA	+6404-13925	America/Dawson	Pacific Time - north Yukon
+CC	-1210+09655	Indian/Cocos
+CD	-0418+01518	Africa/Kinshasa	west Dem. Rep. of Congo
+CD	-1140+02728	Africa/Lubumbashi	east Dem. Rep. of Congo
+CF	+0422+01835	Africa/Bangui
+CG	-0416+01517	Africa/Brazzaville
+CH	+4723+00832	Europe/Zurich
+CI	+0519-00402	Africa/Abidjan
+CK	-2114-15946	Pacific/Rarotonga
+CL	-3327-07040	America/Santiago	most locations
+CL	-2709-10926	Pacific/Easter	Easter Island & Sala y Gomez
+CM	+0403+00942	Africa/Douala
+CN	+3114+12128	Asia/Shanghai	east China - Beijing, Guangdong, Shanghai, etc.
+CN	+4545+12641	Asia/Harbin	Heilongjiang (except Mohe), Jilin
+CN	+2934+10635	Asia/Chongqing	central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc.
+CN	+4348+08735	Asia/Urumqi	most of Tibet & Xinjiang
+CN	+3929+07559	Asia/Kashgar	west Tibet & Xinjiang
+CO	+0436-07405	America/Bogota
+CR	+0956-08405	America/Costa_Rica
+CU	+2308-08222	America/Havana
+CV	+1455-02331	Atlantic/Cape_Verde
+CX	-1025+10543	Indian/Christmas
+CY	+3510+03322	Asia/Nicosia
+CZ	+5005+01426	Europe/Prague
+DE	+5230+01322	Europe/Berlin
+DJ	+1136+04309	Africa/Djibouti
+DK	+5540+01235	Europe/Copenhagen
+DM	+1518-06124	America/Dominica
+DO	+1828-06954	America/Santo_Domingo
+DZ	+3647+00303	Africa/Algiers
+EC	-0210-07950	America/Guayaquil	mainland
+EC	-0054-08936	Pacific/Galapagos	Galapagos Islands
+EE	+5925+02445	Europe/Tallinn
+EG	+3003+03115	Africa/Cairo
+EH	+2709-01312	Africa/El_Aaiun
+ER	+1520+03853	Africa/Asmara
+ES	+4024-00341	Europe/Madrid	mainland
+ES	+3553-00519	Africa/Ceuta	Ceuta & Melilla
+ES	+2806-01524	Atlantic/Canary	Canary Islands
+ET	+0902+03842	Africa/Addis_Ababa
+FI	+6010+02458	Europe/Helsinki
+FJ	-1808+17825	Pacific/Fiji
+FK	-5142-05751	Atlantic/Stanley
+FM	+0725+15147	Pacific/Truk	Truk (Chuuk) and Yap
+FM	+0658+15813	Pacific/Ponape	Ponape (Pohnpei)
+FM	+0519+16259	Pacific/Kosrae	Kosrae
+FO	+6201-00646	Atlantic/Faroe
+FR	+4852+00220	Europe/Paris
+GA	+0023+00927	Africa/Libreville
+GB	+513030-0000731	Europe/London
+GD	+1203-06145	America/Grenada
+GE	+4143+04449	Asia/Tbilisi
+GF	+0456-05220	America/Cayenne
+GG	+4927-00232	Europe/Guernsey
+GH	+0533-00013	Africa/Accra
+GI	+3608-00521	Europe/Gibraltar
+GL	+6411-05144	America/Godthab	most locations
+GL	+7646-01840	America/Danmarkshavn	east coast, north of Scoresbysund
+GL	+7029-02158	America/Scoresbysund	Scoresbysund / Ittoqqortoormiit
+GL	+7634-06847	America/Thule	Thule / Pituffik
+GM	+1328-01639	Africa/Banjul
+GN	+0931-01343	Africa/Conakry
+GP	+1614-06132	America/Guadeloupe
+GQ	+0345+00847	Africa/Malabo
+GR	+3758+02343	Europe/Athens
+GS	-5416-03632	Atlantic/South_Georgia
+GT	+1438-09031	America/Guatemala
+GU	+1328+14445	Pacific/Guam
+GW	+1151-01535	Africa/Bissau
+GY	+0648-05810	America/Guyana
+HK	+2217+11409	Asia/Hong_Kong
+HN	+1406-08713	America/Tegucigalpa
+HR	+4548+01558	Europe/Zagreb
+HT	+1832-07220	America/Port-au-Prince
+HU	+4730+01905	Europe/Budapest
+ID	-0610+10648	Asia/Jakarta	Java & Sumatra
+ID	-0002+10920	Asia/Pontianak	west & central Borneo
+ID	-0507+11924	Asia/Makassar	east & south Borneo, Celebes, Bali, Nusa Tengarra, west Timor
+ID	-0232+14042	Asia/Jayapura	Irian Jaya & the Moluccas
+IE	+5320-00615	Europe/Dublin
+IL	+3146+03514	Asia/Jerusalem
+IM	+5409-00428	Europe/Isle_of_Man
+IN	+2232+08822	Asia/Kolkata
+IO	-0720+07225	Indian/Chagos
+IQ	+3321+04425	Asia/Baghdad
+IR	+3540+05126	Asia/Tehran
+IS	+6409-02151	Atlantic/Reykjavik
+IT	+4154+01229	Europe/Rome
+JE	+4912-00207	Europe/Jersey
+JM	+1800-07648	America/Jamaica
+JO	+3157+03556	Asia/Amman
+JP	+353916+1394441	Asia/Tokyo
+KE	-0117+03649	Africa/Nairobi
+KG	+4254+07436	Asia/Bishkek
+KH	+1133+10455	Asia/Phnom_Penh
+KI	+0125+17300	Pacific/Tarawa	Gilbert Islands
+KI	-0308-17105	Pacific/Enderbury	Phoenix Islands
+KI	+0152-15720	Pacific/Kiritimati	Line Islands
+KM	-1141+04316	Indian/Comoro
+KN	+1718-06243	America/St_Kitts
+KP	+3901+12545	Asia/Pyongyang
+KR	+3733+12658	Asia/Seoul
+KW	+2920+04759	Asia/Kuwait
+KY	+1918-08123	America/Cayman
+KZ	+4315+07657	Asia/Almaty	most locations
+KZ	+4448+06528	Asia/Qyzylorda	Qyzylorda (Kyzylorda, Kzyl-Orda)
+KZ	+5017+05710	Asia/Aqtobe	Aqtobe (Aktobe)
+KZ	+4431+05016	Asia/Aqtau	Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
+KZ	+5113+05121	Asia/Oral	West Kazakhstan
+LA	+1758+10236	Asia/Vientiane
+LB	+3353+03530	Asia/Beirut
+LC	+1401-06100	America/St_Lucia
+LI	+4709+00931	Europe/Vaduz
+LK	+0656+07951	Asia/Colombo
+LR	+0618-01047	Africa/Monrovia
+LS	-2928+02730	Africa/Maseru
+LT	+5441+02519	Europe/Vilnius
+LU	+4936+00609	Europe/Luxembourg
+LV	+5657+02406	Europe/Riga
+LY	+3254+01311	Africa/Tripoli
+MA	+3339-00735	Africa/Casablanca
+MC	+4342+00723	Europe/Monaco
+MD	+4700+02850	Europe/Chisinau
+ME	+4226+01916	Europe/Podgorica
+MF	+1804-06305	America/Marigot
+MG	-1855+04731	Indian/Antananarivo
+MH	+0709+17112	Pacific/Majuro	most locations
+MH	+0905+16720	Pacific/Kwajalein	Kwajalein
+MK	+4159+02126	Europe/Skopje
+ML	+1239-00800	Africa/Bamako
+MM	+1647+09610	Asia/Rangoon
+MN	+4755+10653	Asia/Ulaanbaatar	most locations
+MN	+4801+09139	Asia/Hovd	Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
+MN	+4804+11430	Asia/Choibalsan	Dornod, Sukhbaatar
+MO	+2214+11335	Asia/Macau
+MP	+1512+14545	Pacific/Saipan
+MQ	+1436-06105	America/Martinique
+MR	+1806-01557	Africa/Nouakchott
+MS	+1643-06213	America/Montserrat
+MT	+3554+01431	Europe/Malta
+MU	-2010+05730	Indian/Mauritius
+MV	+0410+07330	Indian/Maldives
+MW	-1547+03500	Africa/Blantyre
+MX	+1924-09909	America/Mexico_City	Central Time - most locations
+MX	+2105-08646	America/Cancun	Central Time - Quintana Roo
+MX	+2058-08937	America/Merida	Central Time - Campeche, Yucatan
+MX	+2540-10019	America/Monterrey	Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas
+MX	+2313-10625	America/Mazatlan	Mountain Time - S Baja, Nayarit, Sinaloa
+MX	+2838-10605	America/Chihuahua	Mountain Time - Chihuahua
+MX	+2904-11058	America/Hermosillo	Mountain Standard Time - Sonora
+MX	+3232-11701	America/Tijuana	Pacific Time
+MY	+0310+10142	Asia/Kuala_Lumpur	peninsular Malaysia
+MY	+0133+11020	Asia/Kuching	Sabah & Sarawak
+MZ	-2558+03235	Africa/Maputo
+NA	-2234+01706	Africa/Windhoek
+NC	-2216+16627	Pacific/Noumea
+NE	+1331+00207	Africa/Niamey
+NF	-2903+16758	Pacific/Norfolk
+NG	+0627+00324	Africa/Lagos
+NI	+1209-08617	America/Managua
+NL	+5222+00454	Europe/Amsterdam
+NO	+5955+01045	Europe/Oslo
+NP	+2743+08519	Asia/Kathmandu
+NR	-0031+16655	Pacific/Nauru
+NU	-1901-16955	Pacific/Niue
+NZ	-3652+17446	Pacific/Auckland	most locations
+NZ	-4357-17633	Pacific/Chatham	Chatham Islands
+OM	+2336+05835	Asia/Muscat
+PA	+0858-07932	America/Panama
+PE	-1203-07703	America/Lima
+PF	-1732-14934	Pacific/Tahiti	Society Islands
+PF	-0900-13930	Pacific/Marquesas	Marquesas Islands
+PF	-2308-13457	Pacific/Gambier	Gambier Islands
+PG	-0930+14710	Pacific/Port_Moresby
+PH	+1435+12100	Asia/Manila
+PK	+2452+06703	Asia/Karachi
+PL	+5215+02100	Europe/Warsaw
+PM	+4703-05620	America/Miquelon
+PN	-2504-13005	Pacific/Pitcairn
+PR	+182806-0660622	America/Puerto_Rico
+PS	+3130+03428	Asia/Gaza
+PT	+3843-00908	Europe/Lisbon	mainland
+PT	+3238-01654	Atlantic/Madeira	Madeira Islands
+PT	+3744-02540	Atlantic/Azores	Azores
+PW	+0720+13429	Pacific/Palau
+PY	-2516-05740	America/Asuncion
+QA	+2517+05132	Asia/Qatar
+RE	-2052+05528	Indian/Reunion
+RO	+4426+02606	Europe/Bucharest
+RS	+4450+02030	Europe/Belgrade
+RU	+5443+02030	Europe/Kaliningrad	Moscow-01 - Kaliningrad
+RU	+5545+03735	Europe/Moscow	Moscow+00 - west Russia
+RU	+4844+04425	Europe/Volgograd	Moscow+00 - Caspian Sea
+RU	+5312+05009	Europe/Samara	Moscow+01 - Samara, Udmurtia
+RU	+5651+06036	Asia/Yekaterinburg	Moscow+02 - Urals
+RU	+5500+07324	Asia/Omsk	Moscow+03 - west Siberia
+RU	+5502+08255	Asia/Novosibirsk	Moscow+03 - Novosibirsk
+RU	+5345+08707	Asia/Novokuznetsk	Moscow+03 - Novokuznetsk
+RU	+5601+09250	Asia/Krasnoyarsk	Moscow+04 - Yenisei River
+RU	+5216+10420	Asia/Irkutsk	Moscow+05 - Lake Baikal
+RU	+6200+12940	Asia/Yakutsk	Moscow+06 - Lena River
+RU	+4310+13156	Asia/Vladivostok	Moscow+07 - Amur River
+RU	+4658+14242	Asia/Sakhalin	Moscow+07 - Sakhalin Island
+RU	+5934+15048	Asia/Magadan	Moscow+08 - Magadan
+RU	+5301+15839	Asia/Kamchatka	Moscow+09 - Kamchatka
+RU	+6445+17729	Asia/Anadyr	Moscow+10 - Bering Sea
+RW	-0157+03004	Africa/Kigali
+SA	+2438+04643	Asia/Riyadh
+SB	-0932+16012	Pacific/Guadalcanal
+SC	-0440+05528	Indian/Mahe
+SD	+1536+03232	Africa/Khartoum
+SE	+5920+01803	Europe/Stockholm
+SG	+0117+10351	Asia/Singapore
+SH	-1555-00542	Atlantic/St_Helena
+SI	+4603+01431	Europe/Ljubljana
+SJ	+7800+01600	Arctic/Longyearbyen
+SK	+4809+01707	Europe/Bratislava
+SL	+0830-01315	Africa/Freetown
+SM	+4355+01228	Europe/San_Marino
+SN	+1440-01726	Africa/Dakar
+SO	+0204+04522	Africa/Mogadishu
+SR	+0550-05510	America/Paramaribo
+ST	+0020+00644	Africa/Sao_Tome
+SV	+1342-08912	America/El_Salvador
+SY	+3330+03618	Asia/Damascus
+SZ	-2618+03106	Africa/Mbabane
+TC	+2128-07108	America/Grand_Turk
+TD	+1207+01503	Africa/Ndjamena
+TF	-492110+0701303	Indian/Kerguelen
+TG	+0608+00113	Africa/Lome
+TH	+1345+10031	Asia/Bangkok
+TJ	+3835+06848	Asia/Dushanbe
+TK	-0922-17114	Pacific/Fakaofo
+TL	-0833+12535	Asia/Dili
+TM	+3757+05823	Asia/Ashgabat
+TN	+3648+01011	Africa/Tunis
+TO	-2110-17510	Pacific/Tongatapu
+TR	+4101+02858	Europe/Istanbul
+TT	+1039-06131	America/Port_of_Spain
+TV	-0831+17913	Pacific/Funafuti
+TW	+2503+12130	Asia/Taipei
+TZ	-0648+03917	Africa/Dar_es_Salaam
+UA	+5026+03031	Europe/Kiev	most locations
+UA	+4837+02218	Europe/Uzhgorod	Ruthenia
+UA	+4750+03510	Europe/Zaporozhye	Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
+UA	+4457+03406	Europe/Simferopol	central Crimea
+UG	+0019+03225	Africa/Kampala
+UM	+1645-16931	Pacific/Johnston	Johnston Atoll
+UM	+2813-17722	Pacific/Midway	Midway Islands
+UM	+1917+16637	Pacific/Wake	Wake Island
+US	+404251-0740023	America/New_York	Eastern Time
+US	+421953-0830245	America/Detroit	Eastern Time - Michigan - most locations
+US	+381515-0854534	America/Kentucky/Louisville	Eastern Time - Kentucky - Louisville area
+US	+364947-0845057	America/Kentucky/Monticello	Eastern Time - Kentucky - Wayne County
+US	+394606-0860929	America/Indiana/Indianapolis	Eastern Time - Indiana - most locations
+US	+384038-0873143	America/Indiana/Vincennes	Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+US	+410305-0863611	America/Indiana/Winamac	Eastern Time - Indiana - Pulaski County
+US	+382232-0862041	America/Indiana/Marengo	Eastern Time - Indiana - Crawford County
+US	+382931-0871643	America/Indiana/Petersburg	Eastern Time - Indiana - Pike County
+US	+384452-0850402	America/Indiana/Vevay	Eastern Time - Indiana - Switzerland County
+US	+415100-0873900	America/Chicago	Central Time
+US	+375711-0864541	America/Indiana/Tell_City	Central Time - Indiana - Perry County
+US	+411745-0863730	America/Indiana/Knox	Central Time - Indiana - Starke County
+US	+450628-0873651	America/Menominee	Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+US	+470659-1011757	America/North_Dakota/Center	Central Time - North Dakota - Oliver County
+US	+465042-1012439	America/North_Dakota/New_Salem	Central Time - North Dakota - Morton County (except Mandan area)
+US	+394421-1045903	America/Denver	Mountain Time
+US	+433649-1161209	America/Boise	Mountain Time - south Idaho & east Oregon
+US	+364708-1084111	America/Shiprock	Mountain Time - Navajo
+US	+332654-1120424	America/Phoenix	Mountain Standard Time - Arizona
+US	+340308-1181434	America/Los_Angeles	Pacific Time
+US	+611305-1495401	America/Anchorage	Alaska Time
+US	+581807-1342511	America/Juneau	Alaska Time - Alaska panhandle
+US	+593249-1394338	America/Yakutat	Alaska Time - Alaska panhandle neck
+US	+643004-1652423	America/Nome	Alaska Time - west Alaska
+US	+515248-1763929	America/Adak	Aleutian Islands
+US	+211825-1575130	Pacific/Honolulu	Hawaii
+UY	-3453-05611	America/Montevideo
+UZ	+3940+06648	Asia/Samarkand	west Uzbekistan
+UZ	+4120+06918	Asia/Tashkent	east Uzbekistan
+VA	+415408+0122711	Europe/Vatican
+VC	+1309-06114	America/St_Vincent
+VE	+1030-06656	America/Caracas
+VG	+1827-06437	America/Tortola
+VI	+1821-06456	America/St_Thomas
+VN	+1045+10640	Asia/Ho_Chi_Minh
+VU	-1740+16825	Pacific/Efate
+WF	-1318-17610	Pacific/Wallis
+WS	-1350-17144	Pacific/Apia
+YE	+1245+04512	Asia/Aden
+YT	-1247+04514	Indian/Mayotte
+ZA	-2615+02800	Africa/Johannesburg
+ZM	-1525+02817	Africa/Lusaka
+ZW	-1750+03103	Africa/Harare