text:
package com.dyhpoon.fodex.data.actual;

import android.content.ContentProvider;
import android.content.ContentUris;
import android.content.ContentValues;
import android.content.UriMatcher;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteQueryBuilder;
import android.net.Uri;
import android.support.annotation.NonNull;

import com.dyhpoon.fodex.data.actual.FodexContract.ImageEntry;
import com.dyhpoon.fodex.data.actual.FodexContract.ImageTagEntry;
import com.dyhpoon.fodex.data.actual.FodexContract.ShareEntry;
import com.dyhpoon.fodex.data.actual.FodexContract.TagEntry;

import java.util.HashMap;
import java.util.List;

/**
 * Created by darrenpoon on 20/12/14.
 */
public class FodexProvider extends ContentProvider {

    private static final UriMatcher mUriMatcher = buildUriMatcher();
    private FodexDbHelper mOpenHelper;

    private static final int IMAGE = 100;
    private static final int IMAGE_ID = 101;

    private static final int TAG = 200;
    private static final int TAG_ID = 201;
    private static final int TAG_GET = 202;
    private static final int TAG_SEARCH = 203;
    private static final int TAG_SEARCH_ALL = 204;
    private static final int TAG_KEYWORDS = 205;

    private static final int IMAGE_TAG = 300;
    private static final int IMAGE_TAG_ID = 301;
    private static final int IMAGE_TAG_SEARCH = 302;
    private static final int IMAGE_TAG_NAME = 303;

    private static final int INDEXED_IMAGE = 400;

    private static final int UNINDEXED_IMAGE = 500;

    private static final int SHARE = 600;
    private static final int SHARE_ID = 601;

    private static final String ERR_UNSUPPORTED_URI = "Unsupported uri: ";
    private static final String ERR_INSERT_FAILED = "Failed to insert row into: ";

    private static UriMatcher buildUriMatcher() {
        final UriMatcher matcher = new UriMatcher(UriMatcher.NO_MATCH);
        final String authority = FodexContract.CONTENT_AUTHORITY;

        final String imagePath = FodexContract.PATH_IMAGE;
        // content://com.dyhpoon.fodex.provider/image
        matcher.addURI(authority, imagePath, IMAGE);
        // content://com.dyhpoon.fodex.provider/image/1
        matcher.addURI(authority, imagePath + "/#", IMAGE_ID);

        final String tagPath = FodexContract.PATH_TAG;
        // content://com.dyhpoon.fodex.provider/tag
        matcher.addURI(authority, tagPath, TAG);
        // content://com.dyhpoon.fodex.provider/tag/1
        matcher.addURI(authority, tagPath + "/#", TAG_ID);
        // content://com.dyhpoon.fodex.provider/tag/get/morning
        matcher.addURI(authority, tagPath + "/" + TagEntry.PATH_SEGMENT_GET + "/*", TAG_GET);
        // content://com.dyhpoon.fodex.provider/tag/search/morning
        matcher.addURI(authority, tagPath + "/" + TagEntry.PATH_SEGMENT_SEARCH + "/*", TAG_SEARCH);
        // content://com.dyhpoon.fodex.provider/tag/search/
        matcher.addURI(authority, tagPath + "/" + TagEntry.PATH_SEGMENT_SEARCH + "/", TAG_SEARCH_ALL);
        // content://com.dyhpoon.fodex.provider/tag/keywords/morning+evening
        matcher.addURI(authority, tagPath + "/" + TagEntry.PATH_SEGMENT_KEYWORD + "/*", TAG_KEYWORDS);

        final String imageTagPath = FodexContract.PATH_IMAGE_TAG;
        // content://com.dyhpoon.fodex.provider/image_tag
        matcher.addURI(authority, imageTagPath, IMAGE_TAG);
        // content://com.dyhpoon.fodex.provider/image_tag/1
        matcher.addURI(authority, imageTagPath + "/#", IMAGE_TAG_ID);
        // content://com.dyhpoon.fodex.provider/image_tag/search/1
        matcher.addURI(authority, imageTagPath + "/" + ImageTagEntry.PATH_SEGMENT_SEARCH + "/#", IMAGE_TAG_SEARCH);
        // content://com.dyhpoon.fodex.provider/image_tag/name/morning
        matcher.addURI(authority, imageTagPath + "/" + ImageTagEntry.PATH_SEGMENT_NAME + "/*", IMAGE_TAG_NAME);

        final String indexImagePath = FodexContract.PATH_INDEXED_IMAGE;
        // content://com.dyhpoon.fodex.provider/indexed_image
        matcher.addURI(authority, indexImagePath, INDEXED_IMAGE);

        final String unindexedImagePath = FodexContract.PATH_UNINDEXED_IMAGE;
        // content://com.dyhpoon.fodex.provider/unindexed_image
        matcher.addURI(authority, unindexedImagePath, UNINDEXED_IMAGE);

        final String sharePath = FodexContract.PATH_SHARE;
        // content://com.dyhpoon.fodex.provider/share
        matcher.addURI(authority, sharePath, SHARE);
        // content://com.dyhpoon.fodex.provider/share/1
        matcher.addURI(authority, sharePath + "/#", SHARE_ID);

        return matcher;
    }

    @Override
    public boolean onCreate() {
        mOpenHelper = new FodexDbHelper(getContext());
        return true;
    }

    @Override
    public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) {
        Cursor cursor;
        switch (mUriMatcher.match(uri)) {
            case IMAGE:
                cursor = mOpenHelper.getReadableDatabase().query(
                        ImageEntry.TABLE_NAME,
                        projection,
                        selection,
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            case IMAGE_ID:
                cursor = mOpenHelper.getReadableDatabase().query(
                        ImageEntry.TABLE_NAME,
                        projection,
                        ImageEntry._ID + " =?",
                        new String[]{String.valueOf(ContentUris.parseId(uri))},
                        null,
                        null,
                        sortOrder);
                break;
            case TAG:
                cursor = mOpenHelper.getReadableDatabase().query(
                        TagEntry.TABLE_NAME,
                        projection,
                        selection,
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            case TAG_ID:
                cursor = mOpenHelper.getReadableDatabase().query(
                        TagEntry.TABLE_NAME,
                        projection,
                        TagEntry._ID + "=?",
                        new String[]{String.valueOf(ContentUris.parseId(uri))},
                        null,
                        null,
                        sortOrder);
                break;
            case TAG_GET:
                cursor = mOpenHelper.getReadableDatabase().query(
                        TagEntry.TABLE_NAME,
                        projection,
                        TagEntry.COLUMN_TAG_NAME + " =?",
                        new String[]{TagEntry.getTagName(uri)},
                        null,
                        null,
                        sortOrder);
                break;
            case TAG_SEARCH:
                cursor = mOpenHelper.getReadableDatabase().query(
                        TagEntry.TABLE_NAME,
                        projection,
                        TagEntry.COLUMN_TAG_NAME + " LIKE ?",
                        new String[]{"%" + TagEntry.getSearchTagName(uri) + "%"},
                        null,
                        null,
                        sortOrder);
                break;
            case TAG_SEARCH_ALL:
                cursor = mOpenHelper.getReadableDatabase().query(
                        TagEntry.TABLE_NAME,
                        projection,
                        selection,
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            case TAG_KEYWORDS:
                /*
SELECT image._id, image.uri, image.hash, image.date
FROM image_tag
INNER JOIN image ON image._id = image_tag.image_id
INNER JOIN tag ON tag._id = image_tag.tag_id
WHERE tag.name in ("hello")
group by image._id
having count(tag.name) = 1

SELECT image._id, image.uri, image.hash, image.date
FROM image_tag
INNER JOIN image ON image._id = image_tag.image_id
INNER JOIN tag ON tag._id = image_tag.tag_id
WHERE tag.name in ("hello", "bye")
group by image._id
having count(tag.name) = 2
                 */
            {
                final SQLiteQueryBuilder builder = new SQLiteQueryBuilder();

                builder.setTables(ImageTagEntry.TABLE_NAME +
                        " INNER JOIN " + TagEntry.TABLE_NAME + " ON " + TagEntry.TABLE_NAME + "." + TagEntry._ID + " = " + ImageTagEntry.TABLE_NAME + "." + ImageTagEntry.COLUMN_IT_TAG_ID +
                        " INNER JOIN " + ImageEntry.TABLE_NAME + " ON " + ImageEntry.TABLE_NAME + "." + ImageEntry._ID + " = " + ImageTagEntry.TABLE_NAME + "." + ImageTagEntry.COLUMN_IT_IMAGE_ID);

                builder.setProjectionMap(new HashMap<String, String>(){{
                    put(ImageEntry.TABLE_NAME + "." + ImageEntry._ID, ImageEntry.TABLE_NAME + "." + ImageEntry._ID);
                    put(ImageEntry.COLUMN_IMAGE_ID, ImageEntry.COLUMN_IMAGE_ID);
                    put(ImageEntry.COLUMN_IMAGE_DATA, ImageEntry.COLUMN_IMAGE_DATA);
                    put(ImageEntry.COLUMN_IMAGE_DATE_TAKEN, ImageEntry.COLUMN_IMAGE_DATE_TAKEN);
                }});

                List<String> tagNames = ImageTagEntry.getTagNames(uri);
                if (tagNames.size() > 0) {
                    builder.appendWhere(TagEntry.TABLE_NAME + "." + TagEntry.COLUMN_TAG_NAME + " in (");
                    for (int i = 0; i < tagNames.size(); i++) {
                        String tagName = tagNames.get(i);
                        if (i == tagNames.size() - 1) {
                            builder.appendWhereEscapeString(tagName);
                        } else {
                            builder.appendWhereEscapeString(tagName);
                            builder.appendWhere(",");
                        }
                    }
                    builder.appendWhere(")");
                }

                cursor = builder.query(
                        mOpenHelper.getReadableDatabase(),
                        projection,
                        selection,
                        selectionArgs,
                        ImageEntry.TABLE_NAME + "." + ImageEntry._ID,
                        "count(" + TagEntry.TABLE_NAME + "." + TagEntry.COLUMN_TAG_NAME + ") = " + Integer.toString(tagNames.size()),
                        sortOrder);
                break;
            }
            case IMAGE_TAG:
                cursor = mOpenHelper.getReadableDatabase().query(
                        ImageTagEntry.TABLE_NAME,
                        projection,
                        selection,
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            case IMAGE_TAG_ID:
                cursor = mOpenHelper.getReadableDatabase().query(
                        ImageTagEntry.TABLE_NAME,
                        projection,
                        ImageTagEntry._ID + " = '" + ContentUris.parseId(uri) + "'",
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            case IMAGE_TAG_SEARCH:
                /*
SELECT tag._id, tag.name, tag.visible
FROM image_tag
INNER JOIN tag ON tag_id = tag._id
INNER JOIN image ON image_id = image._id
WHERE image._id = 100
                 */
            {
                final SQLiteQueryBuilder builder = new SQLiteQueryBuilder();

                builder.setTables("(SELECT " +
                        TagEntry.TABLE_NAME + "." + TagEntry._ID + ", " +
                        TagEntry.TABLE_NAME + "." + TagEntry.COLUMN_TAG_NAME + ", " +
                        TagEntry.TABLE_NAME + "." + TagEntry.COLUMN_TAG_VISIBLE +
                        " FROM " + ImageTagEntry.TABLE_NAME +
                        " INNER JOIN " + TagEntry.TABLE_NAME + " ON " + ImageTagEntry.COLUMN_IT_TAG_ID + " = " + TagEntry.TABLE_NAME + "." + TagEntry._ID +
                        " INNER JOIN " + ImageEntry.TABLE_NAME + " ON " + ImageTagEntry.COLUMN_IT_IMAGE_ID + " = " + ImageEntry.TABLE_NAME + "." + ImageEntry._ID +
                        " WHERE " + ImageEntry.TABLE_NAME + "." + ImageEntry._ID + " = " + ImageTagEntry.getSearchId(uri) + ")");

                cursor = builder.query(
                        mOpenHelper.getReadableDatabase(),
                        projection,
                        selection,
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            }
            case IMAGE_TAG_NAME:
                /*
SELECT tag._id, tag.name, tag.visible
FROM image_tag
INNER JOIN tag
ON tag_id = tag._id
                 */
            {
                final SQLiteQueryBuilder builder = new SQLiteQueryBuilder();

                builder.setTables("(SELECT *" +
                        " FROM " + ImageTagEntry.TABLE_NAME +
                        " INNER JOIN " + TagEntry.TABLE_NAME + " ON " + TagEntry.TABLE_NAME + "." + TagEntry._ID + " = " + ImageTagEntry.TABLE_NAME + "." + ImageTagEntry.COLUMN_IT_TAG_ID + ")");

                builder.setProjectionMap(new HashMap<String, String>() {{
                    put(TagEntry._ID, TagEntry._ID);
                    put(TagEntry.COLUMN_TAG_NAME, TagEntry.COLUMN_TAG_NAME);
                    put(TagEntry.COLUMN_TAG_VISIBLE, TagEntry.COLUMN_TAG_VISIBLE);
                }});

                cursor = builder.query(
                        mOpenHelper.getReadableDatabase(),
                        projection,
                        TagEntry.COLUMN_TAG_NAME + "=?",
                        new String[]{ImageTagEntry.getSearchName(uri)},
                        null,
                        null,
                        sortOrder);
                break;
            }
            case INDEXED_IMAGE:
                /*
SELECT image._id, image.photo_id, image.data, image.date_taken
FROM (SELECT DISTINCT image_id, MAX(date_added)
      FROM image_tag
      GROUP BY image_id
      ORDER BY date_added DESC) AS recent
INNER JOIN image ON recent.image_id = image._id
                 */
            {
                final SQLiteQueryBuilder builder = new SQLiteQueryBuilder();

                builder.setTables(
                        "(SELECT DISTINCT " + ImageTagEntry.COLUMN_IT_IMAGE_ID + ", MAX(" + ImageTagEntry.COLUMN_IT_DATE_ADDED + ")" +
                                " FROM " + ImageTagEntry.TABLE_NAME +
                                " GROUP BY " + ImageTagEntry.COLUMN_IT_IMAGE_ID +
                                " ORDER BY " + ImageTagEntry.COLUMN_IT_DATE_ADDED + " DESC) AS recent" +
                                " INNER JOIN " + ImageEntry.TABLE_NAME + " ON recent." + ImageTagEntry.COLUMN_IT_IMAGE_ID + " = " + ImageEntry.TABLE_NAME + "." + ImageEntry._ID);

                builder.setProjectionMap(new HashMap<String, String>(){{
                    put(ImageEntry.TABLE_NAME + "." + ImageEntry._ID, ImageEntry.TABLE_NAME + "." + ImageEntry._ID);
                    put(ImageEntry.COLUMN_IMAGE_ID, ImageEntry.COLUMN_IMAGE_ID);
                    put(ImageEntry.COLUMN_IMAGE_DATA, ImageEntry.COLUMN_IMAGE_DATA);
                    put(ImageEntry.COLUMN_IMAGE_DATE_TAKEN, ImageEntry.COLUMN_IMAGE_DATE_TAKEN);
                }});

                cursor = builder.query(
                        mOpenHelper.getReadableDatabase(),
                        projection,
                        selection,
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            }
            case UNINDEXED_IMAGE:
                /*
SELECT *
FROM image
WHERE _id
NOT IN (SELECT DISTINCT image_id
        FROM image_tag)
                 */
            {
                final SQLiteQueryBuilder builder = new SQLiteQueryBuilder();

                builder.setTables("(SELECT * FROM " + ImageEntry.TABLE_NAME +
                        " WHERE " + ImageEntry._ID +
                        " NOT IN (SELECT DISTINCT " + ImageTagEntry.COLUMN_IT_IMAGE_ID +
                                " FROM " + ImageTagEntry.TABLE_NAME + "))");

                builder.setProjectionMap(new HashMap<String, String>(){{
                    put(ImageEntry._ID, ImageEntry._ID);
                    put(ImageEntry.COLUMN_IMAGE_ID, ImageEntry.COLUMN_IMAGE_ID);
                    put(ImageEntry.COLUMN_IMAGE_DATA, ImageEntry.COLUMN_IMAGE_DATA);
                    put(ImageEntry.COLUMN_IMAGE_DATE_TAKEN, ImageEntry.COLUMN_IMAGE_DATE_TAKEN);
                }});

                cursor = builder.query(
                        mOpenHelper.getReadableDatabase(),
                        projection,
                        selection,
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            }
            case SHARE:
                /*
SELECT image._id, image.photo_id, image.data, image.date_taken
FROM share
INNER JOIN image
ON share.image_id = image._id
                 */
            {
                final SQLiteQueryBuilder builder = new SQLiteQueryBuilder();

                builder.setTables("(SELECT " +
                        ImageEntry.TABLE_NAME + "." + ImageEntry._ID + ", " +
                        ImageEntry.TABLE_NAME + "." + ImageEntry.COLUMN_IMAGE_ID + ", " +
                        ImageEntry.TABLE_NAME + "." + ImageEntry.COLUMN_IMAGE_DATA + ", " +
                        ImageEntry.TABLE_NAME + "." + ImageEntry.COLUMN_IMAGE_DATE_TAKEN +
                        " FROM " + ShareEntry.TABLE_NAME +
                        " INNER JOIN " + ImageEntry.TABLE_NAME + " ON " + ShareEntry.TABLE_NAME + "." + ShareEntry.COLUMN_SHARE_IMAGE_ID + "=" + ImageEntry.TABLE_NAME + "." + ImageEntry._ID +
                        ")");

                cursor = builder.query(
                        mOpenHelper.getReadableDatabase(),
                        projection,
                        selection,
                        selectionArgs,
                        null,
                        null,
                        sortOrder);
                break;
            }
            case SHARE_ID:
                cursor = mOpenHelper.getReadableDatabase().query(
                        ShareEntry.TABLE_NAME,
                        projection,
                        ShareEntry._ID + " =?",
                        new String[]{String.valueOf(ContentUris.parseId(uri))},
                        null,
                        null,
                        sortOrder);
                break;
            default:
                throw new UnsupportedOperationException(ERR_UNSUPPORTED_URI + uri);
        }
        return cursor;
    }

    @Override
    public String getType(Uri uri) {
        switch (mUriMatcher.match(uri)) {
            case IMAGE:
                return ImageEntry.CONTENT_DIR_TYPE;
            case IMAGE_ID:
                return ImageEntry.CONTENT_ITEM_TYPE;
            case TAG:
                return TagEntry.CONTENT_DIR_TYPE;
            case TAG_ID:
                return TagEntry.CONTENT_ITEM_TYPE;
            case TAG_GET:
                return TagEntry.CONTENT_ITEM_TYPE;
            case TAG_SEARCH:
                return TagEntry.CONTENT_DIR_TYPE;
            case TAG_SEARCH_ALL:
                return TagEntry.CONTENT_DIR_TYPE;
            case TAG_KEYWORDS:
                return ImageEntry.CONTENT_DIR_TYPE;
            case IMAGE_TAG:
                return ImageTagEntry.CONTENT_DIR_TYPE;
            case IMAGE_TAG_ID:
                return ImageTagEntry.CONTENT_ITEM_TYPE;
            case IMAGE_TAG_SEARCH:
                return ImageTagEntry.CONTENT_DIR_TYPE;
            case IMAGE_TAG_NAME:
                return TagEntry.CONTENT_DIR_TYPE;
            case INDEXED_IMAGE:
                return ImageEntry.CONTENT_DIR_TYPE;
            case UNINDEXED_IMAGE:
                return ImageEntry.CONTENT_DIR_TYPE;
            case SHARE:
                return ShareEntry.CONTENT_DIR_TYPE;
            case SHARE_ID:
                return ShareEntry.CONTENT_ITEM_TYPE;
            default:
                throw new UnsupportedOperationException(ERR_UNSUPPORTED_URI + uri);
        }
    }

    @Override
    public Uri insert(Uri uri, ContentValues values) {
        final SQLiteDatabase database = mOpenHelper.getWritableDatabase();
        Uri returnUri;
        switch (mUriMatcher.match(uri)) {
            case IMAGE: {
                long _id = database.insert(ImageEntry.TABLE_NAME, null, values);
                if (_id > 0)
                    returnUri = ImageEntry.buildImageUri(_id);
                else
                    throw new SQLException(ERR_INSERT_FAILED + uri);
                break;
            }
            case TAG: {
                long _id = database.insert(TagEntry.TABLE_NAME, null, values);
                if (_id > 0)
                    returnUri = TagEntry.buildTagUri(_id);
                else
                    throw new SQLException(ERR_INSERT_FAILED + uri);
                break;
            }
            case IMAGE_TAG: {
                long _id = database.insert(ImageTagEntry.TABLE_NAME, null, values);
                if (_id > 0)
                    returnUri = ImageTagEntry.buildImageTagUri(_id);
                else
                    throw new SQLException(ERR_INSERT_FAILED + uri);
                break;
            }
            case SHARE: {
                long _id = database.insert(ShareEntry.TABLE_NAME, null, values);
                if (_id > 0)
                    returnUri = ShareEntry.buildShareUri(_id);
                else
                    throw new SQLException(ERR_INSERT_FAILED + uri);
                break;
            }
            default:
                throw new UnsupportedOperationException(ERR_UNSUPPORTED_URI + uri);

        }
        getContext().getContentResolver().notifyChange(uri, null);
        return returnUri;
    }

    @Override
    public int bulkInsert(Uri uri, @NonNull ContentValues[] values) {
        final SQLiteDatabase database = mOpenHelper.getWritableDatabase();
        switch (mUriMatcher.match(uri)) {
            case IMAGE: {
                return bulkInsertHelper(ImageEntry.TABLE_NAME, database, uri, values);
            }
            case TAG: {
                return bulkInsertHelper(TagEntry.TABLE_NAME, database, uri, values);
            }
            case IMAGE_TAG: {
                return bulkInsertHelper(ImageTagEntry.TABLE_NAME, database, uri, values);
            }
            case SHARE: {
                return bulkInsertHelper(ShareEntry.TABLE_NAME, database, uri, values);
            }
            default:
                return super.bulkInsert(uri, values);
        }
    }

    private int bulkInsertHelper(String table,
                                 SQLiteDatabase database,
                                 Uri uri,
                                 ContentValues[] values) {
        database.beginTransaction();
        int returnCount = 0;
        try {
            for (ContentValues value : values) {

                long _id = database.insert(table, null, value);
                if (_id != -1) {
                    returnCount++;
                }
            }
            database.setTransactionSuccessful();
        } finally {
            database.endTransaction();
        }
        getContext().getContentResolver().notifyChange(uri, null);
        return returnCount;
    }

    @Override
    public int delete(Uri uri, String selection, String[] selectionArgs) {
        final SQLiteDatabase database = mOpenHelper.getWritableDatabase();
        int rowsDeleted;
        switch (mUriMatcher.match(uri)) {
            case IMAGE:
                rowsDeleted = database.delete(ImageEntry.TABLE_NAME, selection, selectionArgs);
                break;
            case TAG:
                rowsDeleted = database.delete(TagEntry.TABLE_NAME, selection, selectionArgs);
                break;
            case IMAGE_TAG:
                rowsDeleted = database.delete(ImageTagEntry.TABLE_NAME, selection, selectionArgs);
                break;
            case SHARE:
                rowsDeleted = database.delete(ShareEntry.TABLE_NAME, selection, selectionArgs);
                break;
            default:
                throw new UnsupportedOperationException(ERR_UNSUPPORTED_URI + uri);
        }
        if (selection == null || rowsDeleted != 0) {
            getContext().getContentResolver().notifyChange(uri, null);
        }
        return rowsDeleted;
    }

    @Override
    public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) {
        final SQLiteDatabase database = mOpenHelper.getWritableDatabase();
        int rowsUpdated;
        switch (mUriMatcher.match(uri)) {
            case IMAGE:
                rowsUpdated = database.update(ImageEntry.TABLE_NAME, values, selection, selectionArgs);
                break;
            case TAG:
                rowsUpdated = database.update(TagEntry.TABLE_NAME, values, selection, selectionArgs);
                break;
            case IMAGE_TAG:
                rowsUpdated = database.update(ImageTagEntry.TABLE_NAME, values, selection, selectionArgs);
                break;
            case SHARE:
                rowsUpdated = database.update(ShareEntry.TABLE_NAME, values, selection, selectionArgs);
                break;
            default:
                throw new UnsupportedOperationException(ERR_UNSUPPORTED_URI + uri);
        }
        if (rowsUpdated != 0) {
            getContext().getContentResolver().notifyChange(uri, null);
        }
        return rowsUpdated;
    }
}


text:
Data & Telecom
Internet Backhaul
Corporate Networks
Inflight Connectivity
Maritime Connectivity
Oil & Gas Connectivity
Universal Connectivity
Telesat U.S. Services
Occasional Use
LEO Satellites
GEO Satellites
Centre of Box
Look Angle Calculator
Sun Transit Calculator
U.S. FCC Spectrum Clearing
Telesat Orders New Telstar 19 VANTAGE High Throughput Satellite from SSL
Launch Planned for Early 2018 to 63 Degrees West
OTTAWA, CANADA, November 25, 2015 – Telesat, a leading global satellite operator, announced today that it has selected Space Systems Loral (SSL) to build its new high throughput satellite, Telstar 19 VANTAGE. As described in a recent Telesat release, Telstar 19 VANTAGE will have two high throughput payloads, one in Ku-band and the other in Ka-band and will be co-located with Telesat's Telstar 14R satellite at 63 degrees West, a prime orbital slot for coverage of the Americas.
Hughes Network Systems LLC (Hughes) has made a significant commitment to utilize the high throughput Ka-band capacity of Telstar 19 VANTAGE in South America. In addition to this payload, the satellite will have high throughput Ka-band capacity over Northern Canada, the Caribbean and the North Atlantic Ocean. It will also provide high throughput Ku-band capacity over Brazil, the Andean region and the North Atlantic Ocean. The launch of Telstar 19 VANTAGE is planned for early 2018.
"Telstar 19 VANTAGE is a state-of-the-art, high throughput satellite optimized to serve growing markets in the Americas," said Dan Goldberg, Telesat's President and CEO. "We are pleased to again be working with SSL, a longstanding technology partner for Telesat, and excited to be augmenting our prime orbital position at 63 degrees West with additional HTS capacity to serve Latin America, Northern Canada and mobile broadband requirements in the Caribbean and North Atlantic, all markets where we have a leading position today."
Telesat's Newest Satellite
Telstar 19 VANTAGE is based on the highly reliable SSL 1300 platform, which supports a broad range of applications and makes use of the latest technology advances. It is designed for an in-orbit life of more than 15 years with electrical output of approximately 15 kW.
Telesat's VANTAGE satellites represent a new generation of spacecraft optimized to serve the types of bandwidth intensive applications increasingly in demand across the satellite industry. Telstar 19 VANTAGE will be the company's second high throughput satellite. Telesat's first HTS, Telstar 12 VANTAGE, was launched November 24th to 15 degrees West aboard an MHI H-IIA rocket from the Tanegashima Space Center in Japan.
About Telesat (www.telesat.com)
Telesat is a leading global satellite operator, providing reliable and secure satellite-delivered communications solutions worldwide to broadcast, telecom, corporate and government customers. Headquartered in Ottawa, Canada, with offices and facilities around the world, the Company's state-of-the-art fleet consists of 15 satellites, including the newly launched Telstar 12 VANTAGE, plus the Canadian payload on ViaSat-1 with a new satellite under construction. Telesat also manages the operations of additional satellites for third parties. Privately held, Telesat's principal shareholders are Canada's Public Sector Pension Investment Board and Loral Space & Communications Inc. (NASDAQ: LORL).
Forward-Looking Statements Safe Harbor
This news release contains statements that are not based on historical fact and are ''forward-looking statements'' within the meaning of the Private Securities Litigation Reform Act of 1995. When used in this news release, the word "planned" or other similar expressions are intended to identify forward-looking statements and information. Actual results may differ materially from the expectations expressed or implied in the forward-looking statements as a result of known and unknown risks and uncertainties. Detailed information about some of the known risks and uncertainties is included in the "Risk Factors" section of Telesat Holdings Inc.'s Annual Report on Form 20-F for the fiscal year ended December 31, 2014 which can be obtained on the United States Securities and Exchange Commission (SEC) website at http://www.sec.gov. The information contained in this news release reflects Telesat's beliefs, assumptions, intentions, plans and expectations as of the date of this news release. Except as required by law, Telesat disclaims any obligation or undertaking to update or revise the information herein.
Gerry Nagler, Telesat +1 908 470-4907 (gnagler@telesat.com)
Satellite Coverage App
Copyright© 2020 Telesat – Disclaimers
Enter your contact information below to receive this complimentary content asset:
Do you want to stay up to date with news and information from Telesat?

redpajama_set_name: RedPajamaCommonCrawl


Prolific sci-fi writer Christopher Stasheff of Champaign died June 10, 2018, at age 74.
CHAMPAIGN — A daughter of the prolific author who brought literary depth to the science fiction and fantasy genres with books like "The Warlock in Spite of Himself" said he used the people of Champaign as his muse.
"He gained inspiration from the people around him," said Eleanore Stasheff, whose father, Christopher Stasheff, died June 10 at age 74.
"He always believed home is where the heart is, which is Champaign," she said. "He found beauty anywhere we were at, but to him, people were more important than nature."
Hailing from Mount Vernon, N.Y., and Ann Arbor, Mich., Mr. Stasheff stayed in the latter while pursuing bachelor's and master's degrees in speech and broadcasting at the University of Michigan.
Later, he attended the University of Nebraska-Lincoln, where he met his wife, Mary Miller, and earned a Ph.D. in theater before moving to New Jersey to take a job as an assistant professor in radio and television broadcasting at Montclair State University.
Decades after his retirement, his former students raised money to name the college's television control room after him.
Despite a growing family — the Stasheffs had four children — the sci-fi writer published 44 novels, which were translated into five languages, as well as 29 short stories.
He also edited seven anthologies.
Eleanore Stasheff said her father relocated the family to Champaign in 1987 to allocate his time to writing while his oldest daughter, Isobel, attended University Laboratory High School in Urbana.
His son, Edward, said his only requirement was that they live in a university town known for its diversity.
"My father always believed in encouraging imagination," Eleanore said. "This is a place full of artists and education. He was somebody who loved to watch people and wonder about their lives."
Eleanore Stasheff said that when her father wasn't writing, he was directing "A Midsummer Night's Dream" and "Cinderella" at Holy Cross School and performing in several plays at the Station Theatre, which directly inspired his book "A Company of Stars."
Although Mr. Stasheff is a renowned writer, his books' popularity waned over time, and in 2000, with all of his children out of the house, he took a job teaching broadcasting at Eastern New Mexico University in Portales, N.M., Eleanore said.
But she said he still considered Champaign home.
He moved back for good after retiring from that job in 2009.
In between writing, traveling and lecturing, Mr. Stasheff taught television and broadcast courses at Parkland College, attended writers conferences at the Champaign Public Library and volunteered at WILL-TV.
"He believed in helping others," she said. "He always believed in people and believed in their potential, particularly children. His legacy is not just his books or stories left behind, but his ability to inspire and support others."


text:
Core Study Materials
Core Study Materials Home Page
Combined Materials Pack
Core Reading
CMP Upgrade
Revision Materials
Revision Materials Home Page
Pure Maths and Statistics for Actuarial Studies
Practice Module Exams
Marking Home Page
Series Marking
Marking Vouchers
Mock Exam Marking
Marking Distributions
Coversheets
Tutorials Home Page
Tuition Bulletin
In-house Tutorials
Induction Courses
Tutorial Venues
Reduced-rate Prices
New Students Home Page
Placing First Order
Exam Entries
Sitting the CS1 or CM1 exam as a non-member
Help with Maths and Statistics
Devices and Products
ACET
Ebook Instructions
Retakers
Waiting for Results
Students in India
Students in South Africa
Contact ActEd
Please feel free to contact us to provide your feedback. Your opinion is very important to us because it helps us improve the services we offer.
About ActEd
The Actuarial Education Company (ActEd) is a subsidiary of BPP Actuarial Education Ltd. ActEd is contracted to provide actuarial tuition for students on behalf of Institute and Faculty Education Ltd (IFE), a subsidiary of the Institute and Faculty of Actuaries (IFoA). The IFoA, through IFE, set ActEd's prices each year. The Office of Tuition Monitoring (OTM, a function of the IFoA) has responsibility for monitoring the quality of aspects of ActEd's services to ensure that they meet certain standards. You may meet members of OTM at ActEd's tutorials from time to time.
All aspects of the examination process (Syllabus, Core Reading, exam dates, exam entry, exam setting, exam delivery, exam marking, communication of exam results, and production of Examiners' Reports) are the direct responsibility of the IFoA. Full details of the examinations are given on the IFoA website.
If you have any comments about ActEd's services please email us in the first instance. We will endeavour to act on any suggestions or complaints and we will copy correspondence to OTM where appropriate. If you are unhappy with our response, you may wish to follow BPP's formal complaints procedure or take your complaint directly to OTM.
Fancy being an ActEd tutor?
We are always keen to meet highly motivated individuals with excellent communications skills and a strong academic history to join ActEd's team of tutors. Please read our Recruitment information for actuaries for actuaries for further information. Note that this document explains the role of an ActEd tutor before Covid-19. Whilst all teaching is online at the moment we do not expect it to remain this way indefinitely and so this document continues to reflect the anticipated future expectations and demands of ActEd tutors.
If you are interested in joining ActEd, please send an email to Ian Senator.
Tutor profiles
Gresham Arnold
Lynn Birchall
Julie Lewis
Anna Bishop
Duncan Brydon
Colin McKee
Darren Michaels
Robert Chadburn
Mark Mitchell
Darrell Chainey
Justine Peggs
Lucy England
Helen Evans
Aman Sehra
Emma Francis
Ian Senator
Steve Hales
Lindsay Smitherman
Richie Holway
Stuart Underwood
Joe Hook
Anna Walklate
Michael Hosking
Mark Willder
Simon James
Katherine Young
ActEd non-teaching staff
Materials Administration
Paula Butler, Gaye Greenaway & Rebecca Nicholls
Marking Administration
Angus Black & Ellee Taylor
Tutorials Administration
Fiona Hayden & Peter Lockwood
Rachel Kappen-Rutterford
Actuarial Apprenticeship Co-ordinators
Rachel Bowen & Joanna Slade
Judi Gowing & Teresa Miller
Susanna Gibelli & Gia Luc
Gresham currently teaches CB2, SP4, SP5 and SA4. He graduated from Cambridge University in 1996 with a degree in Natural Science and spent much of his earlier actuarial career with Bacon & Woodrow (now Aon), where he worked in their Birmingham office. He completed the actuarial exams in 2001. In 2016 he gained an MA in Online and Distance Education from the Open University.
Gresham enjoys trail running, hill walking and spending time with his family.
Lynn currently teaches Subjects CB1, CP1, SP2 and SA2. After graduating in Mathematics from Oxford University in 1993, Lynn worked in the insurance sector. She completed the actuarial exams in 1996 and was both an ActEd marker and an Examiner prior to joining ActEd.
Outside work, Lynn's main interests are running, fell-walking and appreciating wine.
Anna joined ActEd in 2003 and teaches Subjects CM2, CP1 and SP9. After obtaining a First Class Honours degree in Mathematics and French from Swansea University in 1997, she subsequently worked for Norwich Union (now Aviva) in Norwich and AXA-Sunlife (now also Aviva) in Bristol. She is a qualified actuary, has a life insurance background and has marked exams for the Institute and Faculty of Actuaries. She has been heavily involved at ActEd in various projects, including setting up the Online Classroom, Live Online tutorials and the Actuarial Technician Apprenticeship Programme.
Anna lives in Oxford, plays the oboe and piano and is trying to walk the AA's 1001 walks around Great Britain by the time she is 80. She has a son at primary school.
Duncan is a qualified actuary who joined ActEd in 2009 after spending over 4 years working for Tillinghast. He was previously a lecturer in mathematics at Hertford College, Oxford. He teaches / has taught SP8 and SA3.
When not working, Duncan enjoys composing music, reading and swimming.
Sarah joined ActEd in 2011 and currently teaches CP1, CP2, SP1 and SA1. Sarah graduated from the University of Cambridge with a degree in Natural Sciences. Her actuarial career began in 2006 when she joined Watson Wyatt (now Willis Towers Watson), working in life insurance. Her time there included secondments to the Hong Kong and Sydney offices, and she qualified as an actuary in 2010.
Sarah lives in Surrey with her husband and two young boys. She is a member of a local amateur dramatics group and gets involved both on-stage and behind the scenes. She also enjoys travelling (although prefers shorter flights these days!).
Robert (FIA 1990) joined ActEd in March 2000 and currently teaches Subjects CM1, CS2 and induction courses. Robert was a Senior Lecturer in Actuarial Science at the City University, London, where he taught a variety of actuarial subjects to undergraduates and postgraduates, supervised MSc and PhD projects, and participated in research. He has also contributed to many of the profession's education and research activities. Robert has a PhD in Population Genetics from the University of Liverpool, and spent his formative actuarial years with the NFU Mutual in Stratford-upon-Avon.
Robert is a singer of classical music, he conducts a small a capella choir, and he is a bellringer, teaching and leading the bellringers at his local church. He also enjoys walking, running (slowly), natural history, and being with his family.
Darrell is Managing Director of ActEd. He joined ActEd in 1998 after spending over 5 years working for Pearl Assurance in Peterborough. He obtained a First Class degree in Mathematics from the University of Warwick in 1992 and became an FIA in 1997. Darrell currently teaches Subjects CM1 and SP2. He is heavily involved as an (unfit) player, coach and umpire with a local hockey club and a governor/trustee of a secondary school.
Lucy joined ActEd in late 2018 and currently teaches CM1. Lucy graduated from Kent University in 2008 with a Financial Maths degree and then went to work at PwC where she got her ACA (Chartered Accountancy qualification). Having found that far too exciting, she joined the corporate pensions consultancy team in PwC's Reading office in 2012 and started studying for the actuarial exams. Lucy qualified in early 2017 and shortly afterwards moved to XPS (previously Xafinity) to work more with pension scheme trustees and members. During her career in pensions, she was involved in lots of training, coaching and team leadering.
Outside of work Lucy is a trustee for a charity in Reading, which provides education and support to marginalised women. She also enjoys watching her favourite bands, hiking and making a fuss of her cat, Bella.
Helen joined ActEd at the start of 2000 and teaches Subjects CB1, CP1, CP3 and SP4. After obtaining a PhD in Applied Mathematics from Exeter University in 1992, Helen joined Sun Life in Bristol as an actuarial student. She became an FIA in 1997, and subsequently worked for Friends Provident as a marketing Actuary.
Helen enjoys spending time looking after her family, dancing, cooking and walking the dog.
Emma joined BPP as a qualified Actuary in 2015 after spending 12 years working within Financial Services. During this time she worked in Deloitte, EY and HBOS/LBG in Guernsey, Bristol and most recently Edinburgh where she managed a large team of actuaries and analysts. Emma has a 1st degree in Mathematics which she earned whilst studying in Bristol. During her degree she spent a year working for the Ministry of Defence within a statistics department.
Outside of work Emma loves to travel and has been to all corners of the earth, particularly enjoying the bullet trains of Japan and the salt lakes of Bolivia. Emma is also a keen runner and has completed half marathons in Bristol, Bath and Edinburgh and hopes to one day complete the London marathon.
Steve joined ActEd in 2013, and currently teaches CM2, CP1 and CP2. Steve worked at The Phoenix Group (the UK's largest closed life and pension fund consolidator) for ten years in a variety of different roles, and qualified in 2010. He later went on to become the Actuarial Sciences Programme Director at the University of Leicester.
Steve is also busy at home with three children, and a small church group.
Richie graduated from the University of Southampton in 2013 with a first class degree in Economics and Actuarial Science before going on to join Mercer in their pension consulting business. After a number of years working across multiple teams at Mercer, Richie joined ActEd and currently teaches CP1,CB2 and CM1.
Richie's interests include travelling, scuba diving and exploring the new forest and its surrounding beaches with his wife, daughter and dog.
Joe currently teaches CM1 and CM2. He graduated from Durham University in 2012 with a degree in Natural Sciences. Prior to joining ActEd he spent 7 years at Legal & General working in both Pensions and Group Protection across multiple sites. He qualified as a fellow in 2018 and has marked SP2 and SA2 for the Institute and Faculty of Actuaries.
Joe enjoys most sports but is a particularly keen runner. He supports Hartlepool United and hopes to have visited all of the 92 football league grounds by 2025.
Michael has been training actuarial students since 1992, when he joined ActEd. He had previously been a secondary school teacher, teaching mathematics and statistics and running a maths department. He completed the actuarial exams whilst working for ActEd, and now teaches a variety of actuarial subjects, the current emphasis being on CS1, CS2 and CM1.
When he's not working, he enjoys singing (with a chamber choir in Oxford), walking and playing duplicate bridge.
Simon joined ActEd in 2007. He is currently Director of Actuarial Apprenticeships. He teaches / has taught CB1, SP5, CP2, CP3 and SP9. Simon gained a degree in Mathematics and Statistics from Sussex University in 1988. He qualified as an actuary in 1994 with Prudential. Simon has experience in wider fields having helped set up Prudential Banking and create the internet bank Egg. He has also worked as an independent consultant and coach.
Simon is married with two rapidly growing children. Simon is a keen skier. He juggles fire.
Dave joined ActEd in 2020 and teaches subject CS2. He graduated from Birmingham University with a first class degree in Mathematics in 2001 and qualified as an actuary in 2007. His working background is mostly in the life sector.
When not working Dave spends most of his time either with his children, his running club or his choir.
John joined ActEd in July 2001 and currently teaches Subject CS1 and parts of CS2. John graduated in Mathematics from Oxford University in 1991 before completing a PGCE also at Oxford. John taught mathematics, statistics and finance at a number of schools, and was Head of Mathematics at his last school.
John qualified as an FFA in 2008 and then promptly took a sabbatical to attend King's Bible College. He led an organic church for 2 years before moving into writing. John has written ten books under a pseudonym, six of which are Christian satire and parody, he also runs a Christian satirical news website.
John is married and has four children (Lizzie, Josiah, Hannah and Levi) and daily wonders how his wife still finds the same jokes funny after more than 20 years of marriage. So when John is not wrestling with his work life balance, or literally wrestling with his children, then he's wrestling with writing funny words on a bit of paper in his cramped study.
Julie graduated from the University of Edinburgh in 1992 with a First Class degree in Mathematics, and again in 1997 with a PhD in Mathematics (in the area of functional analysis). Before joining ActEd in February 2000, she spent 4½ years as a lecturer in the Department of Mathematics at Glasgow Caledonian University. She currently teaches Subjects CS1, CS2 and CM1.
Julie now works 3 days a week. She and her husband spend much of their non-work time in their garden. Julie's other interests include history and keeping fit.
Andrew joined ActEd in December 2018 and currently teaches CS2. He studied MMORSE at the University of Warwick and graduated with a First Class Honours degree in 2011. He started his career in the pensions team at Deloitte where he qualified as an Actuary in 2014. He subsequently worked for BT and Aon providing data analytics and pensions consulting services.
In his spare time, Andrew does Taekwondo and enjoys playing badminton and five-a-side.
Colin joined ActEd in 1999 and currently teaches Subjects SA7, SP5, CP1, CB1. After obtaining a First Class degree in Mathematics and Natural Philosophy from the University of Glasgow, he joined Scottish Mutual, then Scottish Amicable, as a fund manager, where he completed the actuarial examinations in 1989. He then worked for the Bank for International Settlements in Basel, Switzerland from 1991 until he joined ActEd.
Colin enjoys squash, golf, walking and playing the piano in his spare time.
Darren joined ActEd in 2014 and currently teaches SP7, SP8 and SA3. Darren graduated with a First Class degree in Maths from Cambridge University and qualified as an Actuary in 1998. He has 20 years of General Insurance consulting experience, primarily in the London Market, having previously worked for Bacon & Woodrow, KPMG, Tillinghast (now Willis Towers Watson) and Deloitte. Darren was the chairman of the Institute of Actuaries' General Insurance Research Organising (GIRO) Committee from 2007-2010, which amongst other things is responsible for running the UK's annual General Insurance Actuarial Conference.
Outside of work, Darren is a qualified tennis umpire and has regularly umpired at tennis tournaments around the world, including Wimbledon, the Australian and US Opens and the Olympic and Paralympic Games.
Mark joined ActEd in 2007 and currently teaches CM1, CM2 and CS2. He graduated from Cambridge University in 1999 with a degree in Mathematics. He spent the early part of his career at Mercer Human Resource Consulting in Leeds, where he qualified as an actuary in 2003. He has since worked for Scottish Widows in Edinburgh.
Mark enjoys travel, reading, visiting historic sites and going to the theatre.
Justine joined ActEd in July 2003 and currently teaches CB2, SP4 and SA4. Justine graduated in mathematics with economics from the University of Sussex in 1987. Justine worked in the retirement practice at Mercer from 1987 until she joined ActEd in 2003. Justine qualified as an Actuary in 1995 and from 1997 was appointed as Scheme Actuary to a variety of pension schemes. Justine became a Fellow of the Higher Education Academy in 2014.
Justine is married to Ian and they have two daughters, Sophie and Lucy. Justine enjoys dancing, running and reading with her book club.
John joined ActEd in May 2002. He teaches Subjects CM2, CS2 and SP6 as well as ActEd's Induction Course.
John is a cycling author and competes for Great Britain in his age group at triathlon. He loves a good pub quiz and competes regularly in the Derbyshire pub quiz league. He is very bad on the guitar but still enjoys it. John is happy enough on a cycling or walking holiday in Europe with his girlfriend, Laura and their baby daughter, Jennifer.
Aman graduated from the University of Warwick in 2010 with a first class degree in Civil Engineering, before moving into the General Insurance market as a trainee Actuary. After a number of years working in the Lloyd's and London Market, Aman joined ActEd in 2017 as an Apprenticeship Coach (for the Level 4 Actuarial Technician programme) and Tutor (CM1).
Aman's interests include DIY, building things out of timber (sheds, benches, stools) and spending time with his family. Aman also has a bus driving licence, though has never used it!
Ian joined ActEd in 2000. He currently teaches Subjects CP3, SP7, SP8 and SA3. Ian has a Mathematics degree from Kent University. He started his actuarial career with Prudential, completing his exams in 1996. He has also worked in the London Market.
Ian is a very active volunteer for a national feline charity, and describes himself as having OCD (Obsessive Cat Disorder).
Lindsay joined ActEd at the start of 2017 and currently teaches CP1, CP3, SP2 and SA2. She obtained a 1st class Mathematics degree from the University of Warwick in 1989 and qualified as an FIA in 1993. She has previously worked as a life insurance actuary in a couple of large UK life offices, as a consultant with KPMG and as an Education Actuary with the IFoA.
In her spare time she enjoys music (watching indie bands, going to festivals), running, travel (particularly exploring all corners of the USA) and has a soft spot for greyhounds.
Stuart joined ActEd in 2010 and currently teaches CT2, CA1, ST4 and SA4. He graduated from the University of Birmingham with a Masters degree in Mathematics and Statistics. He started his actuarial career with Mercer in 2003 and on qualification in 2007 he joined Garvins (who were acquired by Barnett Waddingham in 2008).
Stuart has had a number of roles in helping students to qualify including developing student training, study mentoring, marking assignments and exams and as an assessor for the CA2 and CA3 courses. His interests include listening to music, languages, property, travel and football.
Anna joined ActEd in 2005 and is currently teaching CB2, CP1, and SP1. After graduating from Nottingham University in 2000 with a First Class degree in Mathematics, she joined Norwich Union Healthcare (now Aviva Healthcare) in Southampton, where she lives with her partner, and three young children. She completed the exams in 2004.
Anna enjoys running (anything from 5Ks to ultramarathons) and generally keeping fit.
Mark joined ActEd in 2007 and currently teaches CM2, CP1, SP1, SP2, SA1 and SA2. Mark graduated with a mathematics degree from Oxford University in 1992. He then qualified as an actuary while working at Norwich Union (now part of AVIVA). Before joining ActEd Mark was a lecturer at Heriot-Watt University where he completed his PhD in the use of options for with-profits policies.
Mark is married to Wenyi and they have two young children, Matthew and Helen. Mark enjoys motor racing and fossil collecting.
In 1986 David graduated from Warwick University with First Class honours in Pure Mathematics and has subsequently worked for the HBOS group, Clerical Medical and The Equitable Life. He became a Fellow of the Institute of Actuaries in 1992 and worked initially in product development. Having subsequently headed up a large customer service operation David chose to re-focus his career in 2001 by moving into training and subsequently joined BPP in 2002. He is a director of BPP Professional Education which offers study support to students of the Society of Actuaries in the USA. David has completed an MSc in Organisational Development, and in 2012 he obtained the Chartered Enterprise Risk Actuary (CERA) qualification.
David's interests include psychology, the cinema, audio-visual technology, music of all kinds, singing, traveling and motorbikes.
Katherine joined ActEd in 2009 and teaches CS2, SP7, SP8 and SA3. After obtaining a First Class Honours degree in Mathematics and French she subsequently worked for Ernst & Young in London. She is a qualified actuary, with a General Insurance background. Before joining ActEd, Katherine taught management and finance courses for a range of professional qualifications, and lectured on the finance and actuarial degrees at Queen's University, Belfast.
Katherine enjoys skiing, diving and bell-ringing.
Guide to choosing material
Student Brochure Download
Full list of exams
Certified Actuarial Analyst
We are specialist actuarial educators and we are producing a wide range of affordable, online study resources to prepare students studying for the Certified Actuarial Analyst (CAA) exams offered by CAA Global.
For Markers
Codes of Business Ethics
Jobs at BPP
Copyright © 2019 Actuarial Education Company Ltd – Part of the BPP Professional Education Group – ActEd@bpp.com.


text:
Maj. Brooke Davis
Sep. 28, 2018 10:58AM EST
Emergency C-17 flight to Antarctic saves lives
Just after completing the final flight of the Southern Hemisphere winter Antarctic season, the 304th Expeditionary Air Squadron was alerted there was a medical emergency at the National Science Foundation's McMurdo Station Aug. 25, 2018.
In the face of rapidly deteriorating weather conditions, the 304th EAS was able to redirect a mission to respond to the medical evacuation and use a local Christchurch New Zealand Life Fleet medical team to save time.
"We were in alert position to leave for Guam, and when I woke up, there was a note under my door that read we were now going to do a medevac mission," said Lt. Col. Bruce Cohn, 97th Airlift Squadron pilot.
Planners worked throughout the night to switch from a 'go home' mission to medevac mission in order to airlift two patients to medical facilities in Christchurch. During the flight to the Antarctic, aircrew were able to interact with the New Zealand Life Fleet medical team to orient them to the C-17 Globemaster III.
"The team was great to work with, and this was their first aeromedical evacuation mission and flight on a military aircraft," Cohn said.
Upon landing, weather impacted the medevac mission.
"Weather was favorable for the arrival except temperatures at the time of landing were much colder than previously forecasted," said Lt. Col. Trace Dotson, the 304th EAS commander.
The crew worked quickly in negative 65.2 Fahrenheit conditions to safely evacuate one critically ill patient and another patient needing medical care.
A Christchurch New Zealand Life Fleet medical team loads response equipment onto the C-17 Globemaster III for an emergency medevac from the National Science Foundation's McMurdo Station.
"There was a lot of coordination with the New Zealand Life Fleet medical personnel as we usually work with Air Force Aeromedical Evacuation teams," said Tech. Sgt. Seth Lewis, 7th Airlift Squadron loadmaster. "The increased coordination helped us perform the medevac safely. It was so cold that we weren't able to open up the back of the aircraft, so the patients were loaded through the crew door, which is located on the front left side of the aircraft."
With a wind-chill of negative 94 Fahrenheit, crew minimized time on the ground due to the extreme cold and returned the patients to Christchurch within 24 hours from the time we were notified of the evacuation request, Dotson said.
"This mission was outside normal operations since it was an emergency situation," Cohn said. "The rapidness of how we changed gear to respond really showed the teamwork of all who were involved."
The rapid, life-saving response demonstrated the flexibility and capabilities of the Joint Task Force-Support Forces Antarctica to respond quickly to emergency situations in the Antarctic. The patients were treated in New Zealand medical facilities.
"This was a complete different mission from what we typically do," Lewis said. "It was really special to be part of something that you weren't expecting. I was expecting to go home, but then I got to participate in a medical evacuation to help two people."
The last dedicated medevac mission the 304th EAS supported was in 2013. The 304th is comprised of blended aircrews from the active duty 62nd Airlift Wing and the reserve 446th Airlift Wing.
The NSF manages the U.S. Antarctic Program. Operation Deep Freeze is the logistical support provided by the DoD to the U. S. Antarctic Program. This includes the coordination of strategic inter-theater airlift, tactical intra-theater airlift and airdrop, aeromedical evacuation support, search-and-rescue response, sealift, seaport access, bulk fuel supply, port cargo handling, and transportation requirements supporting the NSF.
This is a unique mission that demonstrates U.S. commitment to stability in the Pacific and research programs conducted for the betterment of all mankind.
Featured image: A C-17 Globemaster III sits on the runway at McMurdo Station in Antarctic.
This article originally appeared on the United States Air Force. Follow @usairforce on Twitter.
Female veterans pose on same ship that carried WW2 troops
The 13 funniest military memes for the week of April 5th


The Economist invites applications for the 2019 Marjorie Deane internship. Paid for by the Marjorie Deane Financial Journalism Foundation, the award is designed to provide work experience for a promising journalist or would-be journalist, who will spend three months at the London office of The Economist writing about finance and economics. Applicants are asked to write a covering letter and an original article of no more than 500 words suitable for publication in the Finance and Economics section. Applications should be sent to deaneintern@economist.com by May 3rd.
Click here to read some testimonials from former Marjorie Deane interns at The Economist.


Why use Attic Self Storage in London?
Self storage is something that refers to a space where a company or individual can store and has access to their own personal items, large and small. Without these facilities items could potentially have to be disposed of or sold due to lack of space. Putting your belongings in this place will save huge amounts of office space as well as space at home. Another advantage with self storage is that your things will be kept safe and secure. Another reason you need self storage is if you keep moving from one place to another, so you can keep your belongings safe until a time where you can retrieve them. These also help with downsizing.
Now if you're looking for the best place to store your goods, the only best solution will be to go to Attic Storage. We are a storage provider in London and offer premium services when it comes to storage in London.
This London storage company offers access to your storage 24/7. It has state of art security system and all our storage units are individually alarmed. We offer you a complete space saving solution. We are members of the Self Storage Association as well as members of FEDESSA and the National Guild of Removers and Storers, so you can rest assured that once you come to us, you have placed your storage items into the right hands. This London storage company offers self storage solutions that are highly affordable. Whatever space you require we'll provide the perfect fit. We have everything you need to provide a safe and secure second home to all your belongings.


text:
The Machiavellian Boss: A Brief on Corporate Machiavelli
Article Author: K. A. Bakare
CORPORATE MACHIAVELLI has over the years, been confined to the doldrums. This is not unconnected with the name 'Machiavelli' of the "Nicolo Machiavelli-the end justifies the means" fame which tends to pin every negativity on the name because of the 'dangerous' messages and brutish signification of the person involved. Though Nicolo's treatise was primarily on the principles of statecraft and governance, illustrating his stance with ample examples from the Greco-Roman, Euro-Gaelic and biblical histories, the principles have been extended to rulership and leadership in general and in corporate circles. The Machiavellian Prince is an eclectic personality used to typify the all-important features and attributes expected of a leader. The work is empirical, stressing the necessity of cruel actions to keep and maintain power. It has been considered as,"…evil throughout the centuries, but as most business leaders and politicians agree Machiavelli has only defined the physics of power."1.In defining the 'physics of power,' the book could pass as a chiaroscuro of ideas underlined by the merger of the harsh and the tender for corporate well-being of an organization. It is a blend of the kid's glove and the sledge hammer, of the carrot and the stick, of honesty and shenanigans, to fashion out an arsenal of incisive management technique, and a distinctive philosophy of leadership. This temperament is aptly captured in the opening of V's controversial book, The Mafia Manager, a quotation credited to the notorious Italian Mafioso, Al Capone:"You can get a lot more done with a kind word and a gun than with a kind word alone"2The political doctrine of Machiavelli is not averse to craft and deceit as a means of achieving and maintaining power when necessary. In Machiavelli's world, good and evil are equal when one is in pursuit of power.The aim of this study is to attempt to engage the minds of bureaucrats to be able to brainstorm on the concepts and issues raised in Nicolo Machiavelli's theories as they affect the corporate world, and to encourage an open-minded approach to corporate management. Our intention is to consider the leadership stance in the workplace vis a vis the philosophies of Nicolo Machiavelli as expounded in his magnus opus, The Prince, and as delineated in The Mafia Manager written by V, an incognito author. We shall of necessity, list specific extracts from the controversial books and pass comments on their relevance or otherwise for effective service delivery and how they have impacted on the art of corporate climbing and corporate management. We shall attempt to show that the Machiavellian principle on governance and statecraft which eschew moral standpoints and emphasize realpolitik is extended to interpret corporate realities and to teach management skills.
Keywords: Machiavellian, boss, brief corporate Machiavelli
Article Review Status: Published
Pages: 39-51 (Download PDF)


text:
alexandria August 27, 2020 department
Welcome To Department Of Commerce, Government Of India
You see, they put her in my department when she first came here to work. They will select competent and trustworthy representatives for each department.
Our partnership is the foundation of our mutual prosperity and safety. An extraordinary first one hundred days of learning Prep academics replicate on supporting our youngest college college students to reach a significant milestone.
From Massachusetts Department Of Revenue
She has a Saturday job in the footwear department of a large city centre store. He was beforehand a lecturer in the pharmacy department of Queen's University. More examples Please submit your claim for travelling bills to the accounts department.
The United States Department of the Interior is a federal executive department of the U.S. authorities. It is liable for the management and conservation of most federal lands and pure sources, and the administration of applications regarding Native Americans, Alaska Natives, Native Hawaiians, territorial affairs, and insular areas of the United States. About 75% of federal public land is managed by the department, with a lot of the the rest managed by the United States Department of Agriculture's United States Forest Service. Secretary of War Elihu Root (1899–1904) sought to appoint a chief of employees as basic manager and a European-sort basic employees for planning, aiming to achieve this goal in a businesslike manner, however General Nelson A. Miles stymied his efforts. Root enlarged the United States Military Academy at West Point, New York and established the United States Army War College and the General Staff.
A tendency towards formalism and legalism may also be noticed in the contract-like relations between govt businesses and their sponsoring department. To the mid-1980s, the study of digital music attracted few folks in tertiary music departments. This article should be obligatory studying for anyone who's proposing to work in a conservatoire or university department of music. Shopkeepers additionally directed their consideration to malls and mail-order firms. This approach is easy when a single diagnosis is listed, as is often the case for outpatient and emergency department visits.
The United States and Italy cooperate carefully on main financial points, including within the G-7. The United States is considered one of Italy's most necessary commerce companions, with two-method trade in items and services in 2019 valued at $103.112 billion).
The U.S. strongly objects to Turkish President Erdogan hosting two Hamas leaders in Istanbul on August 22. Hamas is designated as a terrorist organization by the U.S. and EU and both officials hosted by President Erdogan are Specially Designated Global Terrorists. Three years after Burma's security forces launched brutal assaults towards hundreds of 1000's of Rohingya men, women, and kids, the U.S. reiterates its name for justice for victims and accountability for these responsible. The Fine Arts are his department, and the question was totally one for him.
Tags: commerce, department, government, india, welcome


Selecting from a fully fit squad is one of the hardest things you can do as a coach. When you have injuries, when your hand is forced, you can often fall back on that and say, "Well, I had to play him because I had no one else available." When you have multiple world-class options, that is when you earn your pay cheque.
It is then you see what a coach's philosophy really is; what sort of a game he is trying to put out there. And, importantly, how the team can adapt and adjust to circumstances.


Positive (45) - 91% of the 45 user reviews for this game are positive.
Customize your truck with a choice of 10 unique Metallic paint jobs!
All of these themes are applicable to any in-game truck.
(C) 2012 SCS Software. All brand names, trademarks, registered marks, logos, and symbols on vehicles in the game are property of their rightful owners. Used with kind permission.


text:
Dan Rodricks
Ten years since 'Sicko,' still seeking a cure
Ten years ago this month, Michael Moore's "Sicko" offered a blistering survey of the for-profit health insurance industry. The two-hour polemic focused not so much on the 48 million Americans who were at the time uninsured, but on men and women engaged in futile battles with their private insurers to get affordable — in some cases, life-saving — medical treatment.
"Sicko" showed the disastrous aspects of the U.S. health insurance system — in striking contrast to those established in other Western democracies — and argued for a better, more generous and humane system, operated by the government and financed with taxes, that would relieve us of the worries associated with paying for care.
I watched "Sicko" again recently, and while parts of it still left me feeling ashamed and angry, I took consolation in the substantial progress that has been made since the film's release in 2007. In fact, some of the central complaints of "Sicko" are conspicuously dated because of Obamacare, and Americans should celebrate that.
Barack Obama was elected president the year after the film hit theaters, and by March 2010 he had signed the Patient Care and Affordable Care Act. It survived two Supreme Court challenges and dozens of votes for repeal by the Republicans in Congress. Persistent opponents of the ACA, including the Koch brothers and well-funded libertarian think-tankers, were desperate to crush the law before it took hold in American life. But they failed.
Based on a conservative, market-based model, the ACA addressed the costly problems related to the uninsured and provided certain benefits to those of us who already had insurance through our employers. The ACA also tackled one of the most disturbing problems in U.S. health care: The refusal of insurance companies to cover people with pre-existing conditions.
[Most read] 2 dead, including gunman, in Baltimore methadone clinic shooting; wounded sergeant in serious but stable condition »
Since the ACA took effect, more than 20 million Americans gained insurance, according to the most recent data from the National Center for Health Statistics. Some received coverage through the Obamacare exchanges, others through the expansion of Medicaid.
In Maryland, more than half of the estimated 750,000 people without health insurance in 2010 are now covered. Some of the biggest gains occurred in rural areas, on the Eastern Shore and in Western Maryland, and in Baltimore. That means fewer people are putting off getting care. Fewer are putting off buying food or clothes — or even a new car or truck — because of hospital bills. And Maryland hospitals are seeing reductions in uncompensated care.
Nationally, filings for personal bankruptcies, many of them caused in the past by outrageous medical expenses, have been in steady decline since 2010, according to Consumer Reports.
Obamacare is nowhere near perfect. Some customers are still paying too much, and not enough young adults have bought insurance to make the market math work and keep insurers in the exchanges.
But for a law that has been attacked incessantly by members of Congress — Maryland's lone Republican, Andy Harris, among them — the ACA has held up pretty well. It is not a "disaster." If anything was a disaster, it was the system Moore depicted a decade ago in "Sicko."
[Most read] Baltimore drug treatment center where fatal shooting occurred is highly regarded and the oldest in Maryland »
Imagine how much better things would be had Republican governors and members of Congress supported the ACA from the start. The issue would have been settled and behind us by now.
Being American and being ashamed — that's not a good feeling. But the fact that we're still arguing about government's role in serving the fundamental need of all Americans to have affordable medical care is shameful. We are 17 years into the 21st century. We should have figured this out by now.
The British did it a couple of years after World War II.
In "Sicko," Moore interviewed Tony Benn, the longtime Labor Party politician, about the British national health system. Benn, who died in 2014, said it was democracy — with the poor and middle class fully engaged — that made such a system possible and permanent. And he described, presciently, the counterforce that could keep it from happening here.
"I think there are two ways in which people are controlled," Benn said. "First of all, frighten them, and secondly, demoralize them. An educated, healthy and confident nation is harder to govern, and I think there is an element in the thinking of some people that we don't want people to be educated, healthy and confident because they will get out of control."
[Most read] Maryland banned a school from voucher program over anti-LGBT views. It says that violates religious freedom. »
Republicans in Congress, bent on erasing the Obama legacy, are still attempting to gut a law that became increasingly popular under their noses. They offer a replacement that would put insurance out of the reach of millions of Americans while transferring wealth back to the wealthy. It makes no sense.
What makes sense, for starters, is a repair of Obamacare that includes an affordable public option, with a path to a single-payer, Medicare-for-all system down the road. The Republicans won't pursue that. Democrats should. If politically it's a heavy lift, then they should gather reinforcements.
Latest Dan Rodricks
A visionary mayor would be nice, but focus on Baltimore's big, fundamental problems will suffice
The last thing Baltimore needs is more abandonment
America needs fixing, so ramp up training and wages in the building trades
An American from way back, when the country was new, would be shocked in Trump time
Maryland estimate for seawalls against rising tides: $27 billion
drodricks@baltsun.com
Labour Party (UK)
Most Read • Dan Rodricks
Roughly Speaking podcast: Chief Joseph, General Howard and the Nez Perce resistance of 1877 (episode 251)


Oriental lanterns can enhance practically any space, but the simple addition of a light to your Chinese lanterns can add a note of mystique and ambience. The MoonBright 6-Pack Battery-Powered Single Bulb Lights for Paper Lanterns from the Paper Lantern Store makes it easy and affordable to light up any interior or exterior landscape.
Use these lights with any of our paper lanterns that are 12 inches or larger. This money-saving bulk package includes six terminals and incandescent bulbs that you can easily hang from your lanterns with the attached bracket clips or included cords. These white bulbs add a special, warm glow to your Chinese lanterns, really bringing out the color. They will generate oohs and ahs from your guests.
Turn them on or off with a switch on the side. Running on two AA batteries, sold separately, they will provide uninterrupted light for five to seven hours, and the batteries can be easily replaced.
Light weight lite and easy to install. Great shipping time. I will be buying again.
I purchased 20 of these to put into the paper lanterns that I also bought from here for use as decor for my wedding. Because my wedding is outdoors, I needed lighting that did not require cords and these were by far the most inexpensive options. I was afraid that they would not put off enough light, but I was surprised by how much light there was. Just perfect for setting a romantic feel!
The transaction and customer service was easy and simple. My order arrived in no time. The hanging battery was easy to use. Very helpful. Thanks!
Great product, well priced, very pleased.
I received three of these hanging lights for the lanterns I ordered, and I was very pleased with them at first. It was kind of annoying to have to turn them off and on individually whenever I wanted to use them, but it wasn't a deal breaker for me. They shone just about as bright as I'd expected and gave my room a really nice ambience. I only used them for about 45 minutes, two different times. The third time I used them, I fell asleep. They were on for about 2 hours. When I woke up, they'd gone out. I didn't think the batteries were already dead, as they were brand new, but I made myself a note to test new batteries in them. A few days later as I was about to change their batteries, I tried them again just for funsies, and they turned on. But they're not half as bright as before. They barely shine at all. I'll try them again with new batteries, but if battery isn't the issue, then these lights just dim very quickly.
They look awesome inside my paper lanter. Very happy.
Just what I wanted! Soft glow for my 18" lanterns.
I decorated a very large and dark indoor venue with 8 sets of bistro lights and 48 paper lanterns. These battery packs work well for small and medium-sized lanterns. They produce a warm yellow glow and, with enough lanterns, will cast a romantic glow across your room.
I bought this one because it was the cheapest and seemed like the most reliable for the price from the reviews. I wish batteries would have come with it and it remote. Overall it was what I expected in labor of turning them on and off by going up and down a ladder. My only disappointment was that they were not brighter.
At first, I was hesitant to order this product. Simply, because I didn't know it existed. I am so grateful I did order it. It is simply an amazing product. It allows you to light your paper lanterns without worrying about a fire! Easily fits into any paper lantern without any difficulties whatsoever. My only regret is I did not buy the remote control model.
ConsI wish I had bought the remote control model for even easier use.
These are perfect! I bought 40 12" paper lanterns for a party and tested several different lights in them before deciding on these. The LED lights are too blue and artificial looking and the LED "soft white" balloon/lantern lights looked good for 5 minutes then dimmed to barely visible. For the money, these are the best! Stayed lit and bright for 7.5 hrs before I turned them off. Shipping was great. None broken. And out of 45 (I got a few extra just in case) only one didn't work! And at this price it's not a big deal to lose 1 or 2! Buy these!
Worked great for engagement party. Ambient lighting.
All the lights worked when they came and stayed lit the whole evening. Easy to install. We used the 16" lanterns and the light was perfect for ambient lighting (which is what we wanted), but would not have worked for main lighting (they weren't bright enough for that, but we didn't expect a small light like that to be super bright in larger size lanterns). We used white and turquoise lanterns and the light kept the colors true. Would definitely use again.
I bought ten of these to put in the 16" white paper lanterns. 1 (out of 10) had a busted light bulb. No one within a 15 mile radius of where I am has this particular bulb. It's definitely not a standard size.
But I did not have time get a replacement.
The light emitted from these is a soft yellow. It makes for pretty good mood lighting. It would not do so well for actual lighting. Like I said, I had 10 of these up and that would not have lit anything really. It's just good accent lighting.
what is the measurement of this light? I have several small silk lanterns and it's only a 1.5 inch diameter opening to accommodate the light fixture.
Hello Robin, Thank you for your inquiry. The length of the light is about 1.25 inches. Please let us know if you have any other questions or concerns.


WebOS has a user-friendly, multimedia interface similar to that found on the iPhone, and it's currently showcased on the Pre smartphone, the first device to be released with the new operating system. A quick look at system on the Pre reveals a similar layout to the iPhone with applications arranged in rows of three and a Quick Launch bar containing four applications at the bottom. Graphically speaking, webOS is aesthetically pleasing. The colors are rich and applications look crisp and detailed. Like the iPhone, the Pre employs a touch-screen interface for navigation. This is perhaps where webOS differs from the rest of the competition.
Like Apple's iPhone, webOS is built around using a touch-screen interface. However, not all users prefer the touch-screen-only approach. As a result, webOS engineers designed an operating system that can be used with only a touch screen or in combination with a physical keyboard. Like applications designed for the iPhone, webOS developers write Ajax-based software. Traditionally, Web applications are HTML-based and use HTTP as the main vehicle of communication. Once a request has been sent, the application waits for a response before updating, which slows down the program. Ajax applications, however, handle user interactions directly and transfer information asynchronously. In the end, they're faster than their HTML counterparts [source: Palm].
WebOS offers users a breadth of features you would expect to find on a personal computer. Contacts, calandars, e-mail and a full Web browser are all included with the operating system. You can even use the device to pull contacts from your various e-mail accounts and contact lists from your favorite social networking sites to create a personalized profile known as your Palm profile. Like many other smartphone systems now, webOS also offers software for developers to build applications. Palm made sure to ramp up its application development for third-party vendors to coincide with its launch in June 2009 (the Pre), again in the wake of Apple's success. Third-party applications ultimately will be vital to webOS's success.
Palm's webOS 1.2 version features the ability to purchase Amazon MP3 songs over a phone network, negating the need for WiFi, and credit card information can be stored in your Palm profile for future use with an upcoming e-commerce application.


text:
Reintegration of the Croatian Danube Area into the Croatian payment system successfully completed
Published: 6/5/1998
On Wednesday May 6, the Council of the Croatian National Bank, chaired by Governor Dr. Marko Skreb, held its regular meeting to review recent economic and monetary developments, examine the special audit program for a selected group of Croatian banks and the report on international reserves management in 1997. The Council was briefed on the results of the successfully conducted reintegration of the Croatian Danube Area into the payment system of the Republic of Croatia. Mr. Borislav Skegro, vice-president of the Croatian Government and finance minister of the Republic of Croatia, and Mr. Djuro Njavro, president of the Parliamentary Committee for Budget and Finances, attended the meeting of the Council.
The main indicators confirmed that in April macroeconomic stability was not disturbed. Therefore, no changes in monetary policy are necessary. The transitional impact of the value added tax has subsided, so that in April retail prices grew by 0.3 percent, cost of living by 0.5 percent and producer prices by 0.2 percent. The exchange rate of the kuna remained within the framework of usual seasonal fluctuations. From the beginning of 1998, the kuna depreciated by 1.8 percent in relation to the German mark. In the same period, the real effective exchange rate (deflated by producer prices) depreciated by 3.72 percent, contributing to the competitiveness of exports. The Council concluded that this year's seasonal depreciation seems to be somewhat higher than last year's - probably due to the fact that payments for record high imports at the end of 1997 fell due in the first months of this year.
However, it can be forecasted that - due to the seasonal increase in foreign exchange supply - the exchange rate fluctuations will subside, giving way to a gradually increasing appreciation pressure. Therefore, the Council does not expect any significant intervention by the central bank in the foreign exchange market. Such expectations are supported by the fact that on Wednesday the Croatian National Bank sold to commercial banks DEM 10.6 million at the average exchange rate of 3.5824 kuna due to be repurchased by the end of June. Relatively few banks were interested in the abovementioned auction, which emphasizes the fact that there is no significant discrepancy between supply and demand on the foreign exchange market.
In 1997 intervention in the foreign exchange market was the main instrument of the CNB's monetary policy, and more than 99 percent of CNB's assets were foreign currency. The CNB issued about HRK 1.9 billion through 14 interventions in the foreign exchange market. Last year international reserves of the Croatian National Bank increased by USD 225 million based on the current exchange rate or by USD 444 million based on the dollar exchange rate at the end of 1996.
The Council of the Croatian National Bank discussed the progress of the rehabilitation and restructuring of Dubrovacka banka. It was noted that savers are less worried about their deposits at this bank, which echoes savers' attitudes towards other banks which were rehabilitated under government surveillance. Especially encouraging is the fact that the Dubrovacka Banka crisis had no wider repercussions on the confidence in the Croatian banking system as a whole: the March increase of foreign currency deposits was comparable to the average monthly increase recorded in the past six months.
The Council of the CNB agreed on the nomination of Mr. Tomislav Vujic for Member of the Management Board of Trgovacka Banka d.d. Zagreb and Mr. Antun Sermek for Member of the Management Board of Hypobanka d.o.o. Zagreb.
The Council also selected Rijecka Banka to cooperate on a project entitled "Famous Croatian Women", to finance, produce and sell memorial coins dedicated to Ivana Brlic-Mažuranić. Rijecka Banka was chosen from tenders submitted by a number of banks.


text:
Home History and Culture Tours in Thailand Bangkok Tours Thailand
Grand Palace in Bangkok
Our Bangkok tours could start at the Grand Palace in Bangkok, this is possibly the Thai capitals most famous landmark. Built in 1782 – for 150 years it was the home of the Thai King, his Royal court and the administrative seat of government – the Grand Palace of Bangkok is a steeped in culture and importance.
The Grand Palace in Thailand is composed of stunning architecture and intricate detail which combine to create a place of much grandeur and splendour. Inside its mighty gold encrusted walls were also the Thai war ministry, state departments, and the Royal mint. In present day the complex remains the spiritual heart of the Thai Kingdom and centre of Buddhist beliefs. Inside the palace complex are several impressive buildings and temples including Wat Phra Kaew (Temple of the Emerald Buddha), which contains a small, very famous and greatly revered Emerald Buddha with history dating back to the 14th century. The robes which adorn the Buddha are changed with the seasons by His Majesty The King of Thailand, and form an important ritual in the sacred Buddhist calendar.
Thai Royalty stopped living in the palace at the turn of the twentieth century, but the palace complex is still used to celebrate all kinds of other ceremonial and auspicious happenings.The palace complex which is located on Ratanakosin Island on the banks of the Chaophraya River, has a layout similar to the ancient palaces of Ayutthaya, the former capital of Siam/Thailand.
The Outer Court, close to the entrance, previously housed government departments which the King had direct involvement, such as civil administration, the military and the treasury. The Temple of the Emerald Buddha is situated in a corner of this outer court. The Central Court is where the residence of the Royal family and halls used for conducting state business were located. Two of the throne halls are still open to viewing by the public.The Inner Court is where the King's royal consorts and daughters lived. The Inner Court was like a small city within the palace which was entirely populated by women and young boys under the age of puberty. The inner court is completely closed off to the public even though no Royalty now resides in this area of the palace.
There is a distinct contrast between the architectural styles of the Thai Temple of the Emerald Buddha and the more European inspired design of the Grand Palace with the main exception being the roof .
Other places of interest on our Bangkok Tours are Boromabiman Hall and Amarinda Hall,which are the original residence of King Rama I and the Hall of Justice.These spectacular halls with their impressive interior's are still used for important ceremonial occasions like coronations. It also contains an antique throne which was used before the Western style one presently in use.
Visitors are permitted inside the spacious European style Hall or Grand Palace Hall (Chakri Maha Prasat). In addition it is possible to enter the impressive Dusit Hall, which is possibly the finest example of an architectural building in this style, with a museum that has information on the restoration of the Grand Palace, with scale models of the palace and temples and various Buddha images.
The Grand Palace in Bangkok, Thailand is a stunning and majestic attraction which is well worth a visit when visiting Bangkok and is a perfect example of the amazing architectural skills used in the construction of one of Thailand's most beautiful Royal Palaces.
Suan Pakkad
Suan Pakkad Palace is a place to observe Thailand and its architecture from a bygone era. Its name litterally means 'cabbage patch', in reference to when the land was used for agricultral purposes. In present day it is has been unchanged for over 50 years with a well-tended tropical garden and serene ponds surrounding eight traditional Thai houses, each of house full of fine arts, antiquities and oddities belonging to Prince and Princess Chumbhot.
The Royal couple converted their traditional private residence to a museum in 1952, which is the first instance of a Thai Royal family doing this.
The Royal couples rationale was that while treasured and coveted possessions are an individuals private property, they are still a part of the Thai peoples heritage and should be made accessible to all.The Chumbhot – Panthip Centre of Arts is host to prehistoric Ban Chieng artifacts dating back to the , Bronze,Neolithic and Iron Ages.These extremely rare and historically items of painted pottery,tools and bronze weapons, are indicative of a Southeast Asian civilization that equalled Egypt and Stonehenge in terms of technological and social advancements.
Wangderm Palace
After liberating Siam (Thailand) from the Burmese in 1767, a provincial governor called Taksin was crowned King. He constructed Wangderm palace to mark the creation of the new capital in Thonburi. Situated on the west bank of the Chao Phraya River near Wat Arun (The Temple of Dawn), it stands on a site which was previously of great strategic importance which was located behind the Wichayen Fort and various other fortifications that protected access to the Kingdom's port.
When King Rama I later took the throne, following the previous King Taksin's execution after a coup d'etat, the capital was relocated to the east bank of the river. Wangderm Palace then became the residence of various members of the Chakri Dynasty before King Rama V donated it to the Royal Thai Navy. T
oday it serves as the headquarters of the Royal Thai Navy. Many original buildings and architecture remain, such as the Throne Hall. This traditional Thai structure was constructed when Thonburi was established, and consists of a large open pavilion used by the King to receive guests.
There are also two Chinese-style residences, constructed at the beginning of the Rattanakosin period with the smaller residence containing a collection of traditional Thai weapons displayed alongside depictions of King Taksin's military achievements, the larger residence exhibits a collection of antiques and paintings. Other buildings of interest situated at the site include a King Taksin shrine, Whale Head Shrine and King Pinklao's residence.
The Wangderm Palace is considered to be the first American architecturally influenced building to be used as a royal residence and now houses an extensive library covering the Thonburi period, antique ceramics, Thai coins and other material depicting the life and works of King Pinklao


text:
Thomas Menzies (March 30, 1870 – March 13, 1947) was a Canadian politician. He served in the Legislative Assembly of British Columbia from 1920 to 1924  from the electoral district of Comox, a member of the People's Party.

References

1870 births
1947 deaths

redpajama_set_name: RedPajamaWikipedia


That punch you saw? It was taken out of context, Ray Rice says.
When the former Baltimore Ravens star appeals his indefinite suspension from the NFL, he plans to argue the tape of him punching his then-fiancée was edited, ESPN reports.
Rice's legal team will maintain the video of him decking Janay Palmer Rice is "a cleaned-up, whittled-down and condensed version," according to the report.
In July, the league suspended Rice for two games — until TMZ revealed the inside-the-elevator footage, which shows Rice belting Palmer. At that point, he was suspended indefinitely.
"As we initially reported, the original raw video was jerky . . . so we removed the reverse frames," TMZ reported.


As of June 24 2013, this contract is delisted.
ISDA USD Benchmark Swap Rate with a five (5) year term and a $200,000 notional value.
Two months in the March quarterly cycle.
N/A No limits between 7:20 a.m. and 2:00 p.m.; 2.00 Index Point limit in other hours.
This page was last modified on 25 June 2018, at 16:09.


text:
North Carolina Weighs Expunging Convictions for Trafficking Victims
Law & PolicyRehabilitation & Liberation
This year, North Carolina's Human Trafficking Commission introduced statewide legislation that could radically change the lives of trafficking survivors.
Central to House Bill 198 is post-conviction relief for survivors who were charged with minor crimes while they were being trafficked. Victims are often coerced into committing these crimes by their traffickers, and the resulting criminal record that follows survivors for the rest of their lives can make getting back on their feet much harder.
It affects their ability to get jobs, housing, licenses, and even immigration relief.
The Laurinburg Exchange reports:
Often, victims of sex and labor trafficking come from criminal backgrounds — or are coerced into crime by their traffickers. Physical and psychological trauma can lead to acts of prostitution, drug sales or drug use, theft, gang activity, resisting arrest, and much more.
House Bill 198, "Human Trafficking Commission Recommendations," would expunge lesser offenses from victims' records. Class A through G felonies, which span violent crimes such as murder, rape, kidnapping, and robbery, wouldn't be erased. The bill's primary sponsors are Reps. Ted Davis, R-New Hanover; Sarah Stevens, R-Wilkes; Steve Jarvis, R-Davidson; and Jerry Carter, R-Rockingham.
The only offense that can be expunged under current state law is prostitution, said Ryan Boyce, senior counsel for policy at the North Carolina Administrative Office of the Courts, who's advising the human trafficking commission.
The law must be expanded, he said, since trafficking rings weave a wide and sticky criminal web.
Last year, the General Assembly passed Senate Bill 162, the Human Trafficking Restorative Justice Act. This expanded the definition of "victim" to mean anyone subjected to human trafficking, and established an affirmative defense for trafficking victims who were coerced or deceived into committing crimes.
House Bill 198 expands on this by adding to the list of offenses that can be expunged, as well as providing immediate relief to those who qualify. Survivors would have no waiting period and would pay no filing fees.


It's February here in North Carolina, and as we approach Valentine's Day we're thinking a lot about how much we love the work we do – and the people we do it for (a feeling that seems to be mutual, based on the great testimonials we continue to get from our loyal customers).
Reliable fuel delivery – At LG Jordan, we pride ourselves in getting you the fuel you need, when you need it – something we have been doing for local homes, businesses, and farms since 1924. Our expert technicians and delivery crew are on the road every day in all kinds of weather to make sure you stay safe and warm.
Impeccable service – As a family-owned, locally based business, we are dedicated to exceeding your expectations and providing true value from the first day you become an LG Jordan customer.
Quality propane appliance and installations – LG Jordan Oil provides free, no obligation estimates on the propane appliances you need to improve your quality of life at home. We stock a wide selection of options ranging from built-in gas grills and generators to water heaters, vented heaters and even propane gas logs. Once you pick your equipment, we will install it right the first time, neatly and quickly – with as little interruption for your family as possible.
Convenient payment and fuel delivery options– Our convenient Pre-buy and Budget Payment Programs make bill paying more predictable, and services like FREE automatic propane delivery make it easier than ever to have a hassle-free heating season.
LG Jordan Oil – What's not to love? Contact us today to join the LG Jordan family. LG Jordan Oil – serving Wake, Chatham, Durham counties and the surrounding five county area.