text:
package com.lambdaworks.redis.protocol;

import static com.lambdaworks.redis.protocol.LettuceCharsets.buffer;
import static com.lambdaworks.redis.protocol.RedisStateMachine.State.Type.*;

import java.nio.ByteBuffer;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicBoolean;

import com.lambdaworks.redis.RedisException;
import com.lambdaworks.redis.output.CommandOutput;

import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufProcessor;
import io.netty.buffer.PooledByteBufAllocator;
import io.netty.util.Version;
import io.netty.util.internal.logging.InternalLogger;
import io.netty.util.internal.logging.InternalLoggerFactory;

/**
 * State machine that decodes redis server responses encoded according to the Unified
 * Request Protocol (RESP).
 *
 * @param <K> Key type.
 * @param <V> Value type.
 * @author Will Glozer
 * @author Mark Paluch
 * @author Helly Guo
 */
public class RedisStateMachine<K, V> {

    private static final InternalLogger logger = InternalLoggerFactory.getInstance(RedisStateMachine.class);
    private static final ByteBuffer QUEUED = buffer("QUEUED");

    private static final boolean USE_NETTY40_BYTEBUF_COMPATIBILITY;
    private static final Class<?> LONG_PROCESSOR_CLASS;
    private static final Class<?> INDEX_OF_LINEBREAK_PROCESSOR_CLASS;

    static {

        Version nettyBufferVersion = Version.identify().get("netty-buffer");

        USE_NETTY40_BYTEBUF_COMPATIBILITY = nettyBufferVersion != null
                && nettyBufferVersion.artifactVersion().startsWith("4.0");
        if (!USE_NETTY40_BYTEBUF_COMPATIBILITY) {
            try {
                LONG_PROCESSOR_CLASS = Class.forName("com.lambdaworks.redis.protocol.RedisStateMachine$Netty41LongProcessor");
            } catch (ClassNotFoundException e) {
                throw new RedisException("Cannot load Netty41LongProcessor class", e);
            }
            try {
                INDEX_OF_LINEBREAK_PROCESSOR_CLASS = Class
                        .forName("com.lambdaworks.redis.protocol.RedisStateMachine$Netty41IndexOfLineBreakProcessor");
            } catch (ClassNotFoundException e) {
                throw new RedisException("Cannot load Netty41IndexOfLineBreakProcessor class", e);
            }
        } else {
            LONG_PROCESSOR_CLASS = null;
            INDEX_OF_LINEBREAK_PROCESSOR_CLASS = null;
        }
    }

    static class State {
        enum Type {
            SINGLE, ERROR, INTEGER, BULK, MULTI, BYTES
        }

        Type type = null;
        int count = -1;
    }

    private final State[] stack = new State[32];
    private final boolean debugEnabled = logger.isDebugEnabled();
    private final LongProcessor longProcessor;
    private final IndexOfLineBreakProcessor indexOfLineBreakProcessor;
    private final ByteBuf responseElementBuffer = PooledByteBufAllocator.DEFAULT.directBuffer(1024);
    private final AtomicBoolean closed = new AtomicBoolean();

    private int stackElements;

    /**
     * Initialize a new instance.
     */
    public RedisStateMachine() {

        LongProcessor longProcessor;
        IndexOfLineBreakProcessor indexOfLineBreakProcessor;

        if (!USE_NETTY40_BYTEBUF_COMPATIBILITY) {
            try {
                longProcessor = (LongProcessor) LONG_PROCESSOR_CLASS.newInstance();
            } catch (ReflectiveOperationException e) {
                throw new RedisException("Cannot create Netty41LongProcessor instance", e);
            }

            try {
                indexOfLineBreakProcessor = (IndexOfLineBreakProcessor) INDEX_OF_LINEBREAK_PROCESSOR_CLASS.newInstance();
            } catch (ReflectiveOperationException e) {
                throw new RedisException("Cannot create Netty41IndexOfLineBreakProcessor instance", e);
            }
        } else {
            longProcessor = new LongProcessor();
            indexOfLineBreakProcessor = new IndexOfLineBreakProcessor();
        }

        this.longProcessor = longProcessor;
        this.indexOfLineBreakProcessor = indexOfLineBreakProcessor;
    }

    /**
     * Decode a command using the input buffer.
     *
     * @param buffer Buffer containing data from the server.
     * @param output Current command output.
     * @return true if a complete response was read.
     */
    public boolean decode(ByteBuf buffer, CommandOutput<K, V, ?> output) {
        return decode(buffer, null, output);
    }

    /**
     * Attempt to decode a redis response and return a flag indicating whether a complete response was read.
     *
     * @param buffer Buffer containing data from the server.
     * @param command the command itself
     * @param output Current command output.
     * @return true if a complete response was read.
     */
    public boolean decode(ByteBuf buffer, RedisCommand<K, V, ?> command, CommandOutput<K, V, ?> output) {
        int length, end;
        ByteBuffer bytes;

        if (debugEnabled) {
            logger.debug("Decode {}", command);
        }

        if (isEmpty(stack)) {
            add(stack, new State());
        }

        if (output == null) {
            return isEmpty(stack);
        }

        loop:

        while (!isEmpty(stack)) {
            State state = peek(stack);

            if (state.type == null) {
                if (!buffer.isReadable()) {
                    break;
                }
                state.type = readReplyType(buffer);
                buffer.markReaderIndex();
            }

            switch (state.type) {
                case SINGLE:
                    if ((bytes = readLine(buffer)) == null) {
                        break loop;
                    }

                    if (!QUEUED.equals(bytes)) {
                        safeSet(output, bytes, command);
                    }
                    break;
                case ERROR:
                    if ((bytes = readLine(buffer)) == null) {
                        break loop;
                    }
                    safeSetError(output, bytes, command);
                    break;
                case INTEGER:
                    if ((end = findLineEnd(buffer)) == -1) {
                        break loop;
                    }
                    long integer = readLong(buffer, buffer.readerIndex(), end);
                    safeSet(output, integer, command);
                    break;
                case BULK:
                    if ((end = findLineEnd(buffer)) == -1) {
                        break loop;
                    }
                    length = (int) readLong(buffer, buffer.readerIndex(), end);
                    if (length == -1) {
                        safeSet(output, null, command);
                    } else {
                        state.type = BYTES;
                        state.count = length + 2;
                        buffer.markReaderIndex();
                        continue loop;
                    }
                    break;
                case MULTI:
                    if (state.count == -1) {
                        if ((end = findLineEnd(buffer)) == -1) {
                            break loop;
                        }
                        length = (int) readLong(buffer, buffer.readerIndex(), end);
                        state.count = length;
                        buffer.markReaderIndex();
                        safeMulti(output, state.count, command);
                    }

                    if (state.count <= 0) {
                        break;
                    }

                    state.count--;
                    addFirst(stack, new State());

                    continue loop;
                case BYTES:
                    if ((bytes = readBytes(buffer, state.count)) == null) {
                        break loop;
                    }
                    safeSet(output, bytes, command);
                    break;
                default:
                    throw new IllegalStateException("State " + state.type + " not supported");
            }

            buffer.markReaderIndex();
            remove(stack);

            output.complete(size(stack));
        }

        if (debugEnabled) {
            logger.debug("Decoded {}, empty stack: {}", command, isEmpty(stack));
        }

        return isEmpty(stack);
    }

    /**
     * Reset the state machine.
     */
    public void reset() {
        Arrays.fill(stack, null);
        stackElements = 0;
    }

    /**
     * Close the state machine to free resources.
     */
    public void close() {
        if (closed.compareAndSet(false, true)) {
            responseElementBuffer.release();
        }
    }

    private int findLineEnd(ByteBuf buffer) {

        int index = (int) indexOfLineBreakProcessor.getValue(buffer, buffer.readerIndex(), buffer.writerIndex());
        return (index > 0 && buffer.getByte(index - 1) == '\r') ? index : -1;
    }

    private State.Type readReplyType(ByteBuf buffer) {
        byte b = buffer.readByte();
        switch (b) {
            case '+':
                return SINGLE;
            case '-':
                return ERROR;
            case ':':
                return INTEGER;
            case '$':
                return BULK;
            case '*':
                return MULTI;
            default:
                throw new RedisException("Invalid first byte: " + Byte.toString(b));
        }
    }

    private long readLong(ByteBuf buffer, int start, int end) {
        return longProcessor.getValue(buffer, start, end);
    }

    private ByteBuffer readLine(ByteBuf buffer) {

        ByteBuffer bytes = null;
        int end = findLineEnd(buffer);

        if (end > -1) {
            int start = buffer.readerIndex();
            responseElementBuffer.clear();
            int size = end - start - 1;

            if (responseElementBuffer.capacity() < size) {
                responseElementBuffer.capacity(size);
            }

            buffer.readBytes(responseElementBuffer, size);

            bytes = responseElementBuffer.internalNioBuffer(0, size);

            buffer.readerIndex(end + 1);
            buffer.markReaderIndex();
        }
        return bytes;
    }

    private ByteBuffer readBytes(ByteBuf buffer, int count) {

        ByteBuffer bytes = null;

        if (buffer.readableBytes() >= count) {
            responseElementBuffer.clear();

            int size = count - 2;

            if (responseElementBuffer.capacity() < size) {
                responseElementBuffer.capacity(size);
            }
            buffer.readBytes(responseElementBuffer, size);

            bytes = responseElementBuffer.internalNioBuffer(0, size);
            buffer.readerIndex(buffer.readerIndex() + 2);
        }
        return bytes;
    }

    /**
     * Remove the head element from the stack.
     *
     * @param stack
     */
    private void remove(State[] stack) {
        stack[stackElements - 1] = null;
        stackElements--;
    }

    /**
     * Add the element to the stack to be the new head element.
     *
     * @param stack
     * @param state
     */
    private void addFirst(State[] stack, State state) {
        stack[stackElements++] = state;
    }

    /**
     * Returns the head element without removing it.
     *
     * @param stack
     * @return
     */
    private State peek(State[] stack) {
        return stack[stackElements - 1];
    }

    /**
     * Add a state as tail element. This method shifts the whole stack if the stack is not empty.
     *
     * @param stack
     * @param state
     */
    private void add(State[] stack, State state) {

        if (stackElements != 0) {
            System.arraycopy(stack, 0, stack, 1, stackElements);
        }

        stack[0] = state;
        stackElements++;
    }

    /**
     * @param stack
     * @return number of stack elements.
     */
    private int size(State[] stack) {
        return stackElements;
    }

    /**
     * @param stack
     * @return true if the stack is empty.
     */
    private boolean isEmpty(State[] stack) {
        return stackElements == 0;
    }

    /**
     * Safely sets {@link CommandOutput#set(long)}. Completes a command exceptionally in case an exception occurs.
     *
     * @param output
     * @param integer
     * @param command
     */
    protected void safeSet(CommandOutput<K, V, ?> output, long integer, RedisCommand<K, V, ?> command) {

        try {
            output.set(integer);
        } catch (Exception e) {
            command.completeExceptionally(e);
        }
    }

    /**
     * Safely sets {@link CommandOutput#set(ByteBuffer)}. Completes a command exceptionally in case an exception occurs.
     *
     * @param output
     * @param bytes
     * @param command
     */
    protected void safeSet(CommandOutput<K, V, ?> output, ByteBuffer bytes, RedisCommand<K, V, ?> command) {

        try {
            output.set(bytes);
        } catch (Exception e) {
            command.completeExceptionally(e);
        }
    }

    /**
     * Safely sets {@link CommandOutput#multi(int)}. Completes a command exceptionally in case an exception occurs.
     *
     * @param output
     * @param count
     * @param command
     */
    protected void safeMulti(CommandOutput<K, V, ?> output, int count, RedisCommand<K, V, ?> command) {

        try {
            output.multi(count);
        } catch (Exception e) {
            command.completeExceptionally(e);
        }
    }

    /**
     * Safely sets {@link CommandOutput#setError(ByteBuffer)}. Completes a command exceptionally in case an exception occurs.
     *
     * @param output
     * @param bytes
     * @param command
     */
    protected void safeSetError(CommandOutput<K, V, ?> output, ByteBuffer bytes, RedisCommand<K, V, ?> command) {

        try {
            output.setError(bytes);
        } catch (Exception e) {
            command.completeExceptionally(e);
        }
    }

    /**
     * Compatibility code that works also on Netty 4.0.
     */
    static class LongProcessor {

        public long getValue(ByteBuf buffer, int start, int end) {

            long value = 0;

            boolean negative = buffer.getByte(start) == '-';
            int offset = negative ? start + 1 : start;
            while (offset < end - 1) {
                int digit = buffer.getByte(offset++) - '0';
                value = value * 10 - digit;
            }
            if (!negative) {
                value = -value;
            }

            buffer.readerIndex(end + 1);
            buffer.markReaderIndex();
            return value;
        }
    }

    /**
     * Processor for Netty 4.1. Note {@link ByteBufProcessor} is deprecated but ByteProcessor does not exist in Netty 4.0. So we
     * need to stick to that as long as we support Netty 4.0.
     */
    @SuppressWarnings("unused")
    static class Netty41LongProcessor extends LongProcessor implements ByteBufProcessor {

        long result;
        boolean negative;
        boolean first;

        @Override
        public long getValue(ByteBuf buffer, int start, int end) {

            this.result = 0;
            this.first = true;

            buffer.forEachByte(start, end - start - 1, this);

            if (!this.negative) {
                this.result = -this.result;
            }
            buffer.readerIndex(end + 1);

            return this.result;
        }

        public boolean process(byte value) throws Exception {

            if (first) {
                first = false;

                if (value == '-') {
                    negative = true;
                } else {
                    negative = false;
                    int digit = value - '0';
                    result = result * 10 - digit;
                }
                return true;
            }

            int digit = value - '0';
            result = result * 10 - digit;

            return true;
        }
    }

    /**
     * Compatibility code that works also on Netty 4.0.
     */
    static class IndexOfLineBreakProcessor {

        public long getValue(ByteBuf buffer, int start, int end) {
            return buffer.indexOf(start, buffer.writerIndex(), (byte) '\n');
        }
    }

    /**
     * Processor for Netty 4.1. Note {@link ByteBufProcessor} is deprecated but ByteProcessor does not exist in Netty 4.0. So we
     * need to stick to that as long as we support Netty 4.0.
     */
    static class Netty41IndexOfLineBreakProcessor extends IndexOfLineBreakProcessor implements ByteBufProcessor {

        @Override
        public long getValue(ByteBuf buffer, int start, int end) {
            return buffer.forEachByte(start, end - start, this);
        }

        @Override
        public boolean process(byte value) throws Exception {
            return value != (byte) '\n';
        }
    }
}

redpajama_set_name: RedPajamaGithub


text:
Q: How can you break ask in netlogo How can you break ask in netlogo?
For example..agents are moving and suddenly some condition has satifised. Now you don't want ask agents to execute(move) and stop ask. And pass control to next line after ask.
Something similar exists in procedures called "stop". But not for ask. Is there a way around?

A: Well, stop does break out of ask. From the documentation of stop:

This agent exits immediately from the enclosing procedure, ask, or ask-like construct (e.g. crt, hatch, sprout). Only the current procedure stops, not all execution for the agent.

So you can do things like:
ask turtles [
  if stop-condition? [ stop ]
  move-to one-of patches ; or whatever
]
print "done!"

...and as soon as stop-condition? becomes true, the execution will break out of the ask block and "done!" will be printed.

A: While I really hesitate to contradict Nicholas, I feel his answer is this case is misleading.  Lack of a real break statement is a serious shortcoming of NetLogo. Inside an ask, a stop is more like a continue than a break. Example: executing the following code will always print 50.
to test
  let ctr 0
  crt 100 [set color blue]
  ask n-of 50 turtles [set color red]
  ask turtles [
    if (color = red) [ stop ]
    set ctr (1 + ctr)
  ]
  print ctr
end

redpajama_set_name: RedPajamaStackExchange


text:
Ancient Magus Bride Anime Review
Anime Anime Review Fantasy Featured Film and Television Manga Review Slice of Life
By GeekySweetie January 3, 2018
Title: Ancient Magus Bride
Based On the Manga by Kore Yamazaki
Genre: Fantasy, Super Natural, Mystery, Romance, Slice of Life
Studio: Wit Studio
Where to Watch: Crunchyroll
Overall: 38/45 84% B "Very Good Anime For Girls"
Geeky: 3/5 – A great story with high production values, a good blend of action, comedy, mystery and romance make this show a hit with geeks of either gender. I took away 1 point for the somewhat slow pacing of the early episodes, and 1 point away for the character designs – they don't feel as clean or modern as most other contemporary anime characters, even though I understand that's the style also of the original manga.
Sweetie: 4/5 – Chise is a unique female lead. In the begining she is broken inside, however we watch her become stronger and transform due to her magic training and new found feelings and emotions.
Story: 10/10 – (Note there may be spoilers in this paragraph up to episode 12). The story is quite interesting, Chise has seen strange monsters and creatures since she was very young. Paralyzed by fear, Chise withdraws from the world around her. Her parents are unsure how to handle her, so her dad runs off and her mother kills herself. Chise is passed off to other family members but they also don't know how to handle Chise's unique condition. At one point, Chise discovers someone very similar to herself, able to see the same creatures as well. He grants Chise a special book. In the end, he entrusts Chise with a special request which leads her on her path. Chise wants to escape her world, to the point she tries to kill herself, and doesn't care what happens to her or anyone else. Sensing Chise's magical abilities, men approach her and get her to sign a contract, placing her in a strange auction for magical goods. Elias meets Chise at this auction and purchases her to be his apprentice, and future bride. Thus Chise's magical training begins. Chise is later discovered to be a Sleigh Beggy. A person who can see spirits and fairies. These people usually live short lives because their magic powers are so strong and so draining. Elias is working on a spell that can break the "curse" upon Chise, while also showing her love and affection and giving her a home for the first time. Chise's heart begins to open and she too begins to show Elias what it is like to be loved for the first time. As part of their "honey moon" they travel around the world helping people with magic quests, which further help Chise develop her skills and talents.
At time of this blog post, the series is halfway complete, with many more mysteries and questions to be answered:
What/Who is Elias? (I haven't read the manga, and I'm probably way off base, but I wonder if he's at all related to the person who gave her the book at the beginning of the anime)
WTF happened to Chise's little sister/brother? Maybe it's as simple as a miscarriage? Maybe it's related to why Chise's mom killed herself?
Why did Chise's mom kill herself? (It's later revealed that she at one point really loved Chise, and that both of her parents saw the same spirits and creatures that Chise sees)
What happened to Chise's father? Will he ever be back in the picture?
Will Chise die from her magical abilities, or will Elias find a way to save her?
Will Elias ever become human?
Can Chise and Elias' love survive all of the odds against them?
All of these questions keep you intrigued and watching each week.
Characters: 8/10 – The characters are interesting and unique. Chise starts out very weak and hard to like, but as the series progresses she matures and finds her own confidence and independence. We also witness the relationship and Elias' changes as well. All of the minor characters are also awesome. Silky is so funny even though she is silent. And the back story of how Chise gets her familiar, Ruth, is very touching. Ruth is one of my favorite characters in the anime.
Artwork: 3/5 – I'm not a fan of the character designs as mentioned above; they just don't seem very clean and kinda have a retro vibe. The backgrounds and effects on the other hand are lovely.
Music: 5/5 – This anime has some of the best music I have ever heard. I love both the opening and ending, but my favorite song is Iruna Etelero, the flower song that Lindel sings in episodes 11 and 12. It's maybe my favorite song, ever, of all time, from anything, tv, anime, video game, radio, etc. It's so beautiful and soothing.
Voice Acting: 5/5 – The voice acting is also another highlight of this anime. They really make the characters more unique and bring their emotions to life. From the deep booming voice of Elias, to the sweet soft voice of Lindel, or the sarcastic and sadistic voice of one of the series' first villains, each character is well cast.
Please Save My Earth Anime and Manga Review
This Is US – Season 1 and 2 Review

redpajama_set_name: RedPajamaCommonCrawl


Learn how to manage items on your computer and reduce the time it takes to find them. Learn to create folders, move things among folders, rename folders, copy and paste, and delete folders.
The Broad Ripple community has enjoyed library service at various sites since 1930. The first stand-alone library opened in 1949 adjacent to School No. 80 and continued at that location until a larger branch opened in Broad Ripple Park in 1986. Facing a need for continued growth, the current Glendale Branch was constructed in 2000 and became the country's first full-service library in a major shopping mall.
Tuesday Night Readers - The book to be discussed is "The Immortal Life of Henrietta Lacks" by Rebecca Skloot.


Chelsea pottery artist marks??Is it Joyce Morgan art ??
Does anyone know this Chelsea artist/s Initials?
Re: Chelsea pottery artist marks??Is it Joyce Morgan art ??
Is it Joyce Morgan art ??
Peter, yes the last one looks like JEM Joyce's mark. Not sure about RS .


The following terms and conditions (the "T&C") govern the use of the website www.musicraiser.com by third parties, as well as the services offered through it. Users must read carefully the T&C before accessing the website, being it provided that the services shall be offered subject to prior acceptance of said T&C. The sole access to said website results in a full, automatic and unconditioned acceptance of the T&C and, therefore, requires for a strict compliance to them.
Refusal to accept the T&C, instead, does not allow access to the website www.musicraiser.com and the services offered through it.
Musicraiser S.r.l. reserves the right, in its sole discretion, without prior notice and/or communication, to modify or replace one or any of the T&C, and/or change, suspend and/or terminate one or more services offered at any time. Use of the services following any change to the T&C uploaded on the website shall be deemed acceptance of the occurred amendments.
"Additional Services" means certain additional services and/or features such as, for example, music digital distribution, print, etc., provided by third parties and offered from time to time to the Creators by the Company through its Website, upon occurrence of certain conditions.
"Company" or "Musicraiser" means Musicraiser S.r.l., with registered office in Via Cosimo Del Fante 10, Milan, registered with the Companies' Register of Milan under no. 07915260967.
"Creator" means a User who created a Project uploaded on the Website.
"Crowdfunding Service" means the service better described under Article 3.
"Pre-Order Service" means the service better described under Article 3.
"Project" means, either, a project for a crowdfunding campaign in the context of the Crowdfunding Services, the project for the pre-sale of live events or albums in the context of the Pre-Order Service, or the creation of a live event in the context of the Wishow Services.
"Reward" means the reward decided and made available by the Creator to Users who support his Project.
"Services" means, collectively, the Crowdfunding Service, the Wishow Service,the Pre-Order Service and the Additional Services.
"User" means the Website's user and, upon registration, the user of the Services offered by the Company, including the Creator.
"Website" means the website www.musicraiser.com, owned by the Company and offering the Services.
"Wishow Service" means the service better described under Article 3.
The Company offers, through the Website, the opportunity for bands, artists and anyone involved in the music market, including labels, promoters, event organizers, videomakers, photographers, to launch crowdfunding campaigns for projects involving, and/or connected to, music.
The Crowdfunding Service consents the Creator to collect from Users, so called raisers, the required amount of money to realize its Project; the Users, in fact, by disbursing an amount corresponding to the economic value of the chosen Reward will consent the Creator to reach the targeted objective.
The Company offers, through the Website, the possibility to organize a music event, a festival or a concert, if the minimum amount of pre-sales is placed to Users. The event may be organized by artists, agencies, promoters, etc.
The Creator must pre-determine the minimum number of tickets to be sold to organize the event. Once the threshold is reached, the tickets for the event may still be sold through the Website until the event date. In case of failure to reach the minimum number of tickets purchased by the Users, the Project will be deemed not realized. The Company may issue the tickets through services from third parties.
The Pre-Order Services may allow the Creator (i) to sell his music album although still in production (so called album pre-order); (ii) to find alternative channels to sell tickets for an event, concert or music venue (so called ticket pre-order).
The Pre-Order Services, unlike the Crowdfunding and the Wishow Services do not require for minimum Users payment thresholds to be reached. The purchase of a music album or an event ticket include also the Reward to the User, to be delivered according to the specific instructions indicated in the Project web page (e.g., pick up at the event, delivery, etc.). In case of the ticket pre-order option the Company may issue the tickets through services from third parties.
The Company may enter into agreements with third parties for the supply of Additional Services to Creators that expressly ask for them. Such Additional Services may be subject to additional terms and conditions other than the T&C.
The Website visit does not require for any registration.
However, free registration to Website by inserting e-mail address and password is required to use and benefit from the Services.
User is responsible for all activities related to his ID as well as for maintaining the confidentiality of his password. The User shall promptly inform the Company in case of unauthorized access to his registration information.
For the purpose of registering, the User must provide accurate, complete, and up-to-date information; instead the Company will provide all the necessary information to complete the registration process.
It is the User's duty to promptly communicate to the Company any changes in the e-mail address chosen for registration. In the absence of any notice, Musicraiser will continue to send communications by means of the e-mail address provided, even if the same is outdated.
The Company may, in its sole discretion, refuse to allow registration to any person or entity, and change eligibility criteria at any time. Musicraiser will immediately cancel any accounts of Users who provide data herein recognized as in breach of the T&C.
Registration is not allowed to Users under age 13 and Musicraiser will cancel any information and registration in breach of this provision. Users between 13 and 18 years may use the Services subject to their parents' consent and with their assistance. Project creation is not allowed to Users under the age of 18.
Any User may request cancellation of his account; all the cancellation operations will be completed in 30 days from request.
h. include willfully incorrect obsolete, altered, or counterfeit information.
The Company reserves the right, in case of breach, to remove said materials and/or to suspend, wholly or in part, the Services and, as the case may be, inform the competent authorities. In no case, the User shall have title to request for reimbursement, even partial, of any amount or to ask for any damages.
The User agrees not to store sensitive data on the Website or the Platform and to bear responsibility for the lack of protection of information entered on the platform except for personal data essential for account creation.
The User further agrees to safeguard, with the utmost care, the password, the alphanumeric code indispensable to use the Services, and to store them without communicating it or leaving it at the disposal of others.
The Creator further agrees to collect and treat Users' personal data in relation to the Project and delivery of the Reward, only for such purposes, for a period not longer than what is required to deliver the Reward and, in any case, with the utmost diligence and care and in accordance with Legislative Decree 196/2003 as further amended.
The Company shall keep monitored the Website, the Services, as well as the contents and material sent by the Users.
Musicraiser is committed to maintain the efficiency of the Services provided. In the event that it would be forced to stop them due to exceptional events and/or maintenance, it is committed to restore such Services as quickly as possible to reduce and eliminate the risk of disruption of any kind caused to their Users.
The Company shall provide any clarifications and explanations with respect to the Website, its technical requirements and the Services offered.
The Company undertakes to transfer to the Creator with all the amounts collected by the Users, in compliance with the Services specifications, net of commission fees.
The main requirement for a Project to be uploaded on the Website is its relation, anyhow, with music.
The Project creation, the use of instruments made available to the Creator, as well as the Project presence on the Website are free. Each Project profile page is upgradeable, implementable, editable, associated with the concept of a blog, and must contain a presentation video and a brief explanation of the goal the Creator wants to achieve.
The Project and its profile, the Reward and its corresponding economic value may be subject to Company's assessment and control through discussions and/or verification of personal documentation. In case of Wishow Services the Creator must deliver to the Company satisfactory evidence of the relevant artist's acceptance to perform the live event on the chosen date.
The Creator must provide Musicraiser with a valid ID card and the IBAN account number.
With respect to the Crowdfunding Services, all the sums collected through the available payment channels, will be charged at the end of the campaign and only if it reaches 100% of the economic goal. With respect to the Wishow Services all the all the sums collected through the available payment channels will be transferred from the Users' accounts if the targeted objective is reached. In case of the Pre-Order Services, Services all the all the sums collected through the available payment channels will be transferred from the Users' accounts immediately.
The Creator undertakes and warrants that the amounts collected in the course of the campaign shall be used only for the purposes described in the Project.
Project duration is decided by the Company only. The Creator must realize the Project and deliver the Rewards within 1 year from the end of the relevant campaign.
A Creator may withdraw his Project beforehand with a 30 days prior written notice to Musicraiser containing detailed reasons for such withdraw; notice will be delivered by certified e-mail or express mail with return receipt. In case of Pre-Order Services, following withdrawal, the Creator must return any amounts received from the Users.
The sums required from Users is divided into thresholds established by the Creators, subject to the Company's prior approval.
Each Reward corresponds to a different threshold. Rewards are strictly non-monetary in nature, with little economic value and can no longer be modified once the Project is uploaded on the Website.
Each User is free to decide the amount payable for the Project chosen and, therefore, the type of Reward.
In some cases the User shall be requested to provide additional personal information (such as mailing address or t-shirt size) to allow the delivery of Reward by the Creator.
The Creator is fully responsible for the delivery of Rewards to the Users and shall bear any related costs.
No reimbursements shall be given to Users should they fail to choose the targeted Reward; however Musicraiser may decide, in exceptional cases, whether to accept in whole or part to reimburse the User with the sums paid, provided that the Company is promptly informed.
Payments can be made through Stripe, all major credit cards, including prepaid cards, such as Postepay. Musicraiser makes no guarantees regarding the performance or operation of the Stripe payment platform. Musicraiser is not responsible for any errors or omissions in the information provided by the User when communicating payment data.
Payments may be subject to User's identity verification. The verification procedure may include interview and/or papers revision and may be subject to changes upon Company's discretion.
The money collection and payments management is in compliance with the applicable laws.
Musicraiser strives to constantly update its Site and implementing technical and organizational features in order to protect Users' personal information from accidental loss, unauthorized access, and usage, alteration, or unauthorized disclosure.
The Company, however, cannot guarantee that unauthorized third parties will be unable to defeat the security measures, or use Users' personal information for improper purposes.
The User agrees to accept the risk of providing his personal information to the Company and to the sites that may be linked to it.
The User acknowledges and agrees that the Service may include materials and information protected by copyright, trademarks, patents, trade secrets, and other intellectual property rights.
The User therefore undertakes to respect and preserve all of them and not to prevent their exercise by the legitimate owner. Musicraiser reserves the right to delete the Users' accounts that infringe upon third parties' intellectual property rights.
When a User believes his work has been copied, and is therefore suffering a copyright infringement, he must personally report the same to Musicraiser in writing, so that the Company may identify the infringement and the work at stake. The written notice must specify the description of the copyrighted work and/or copyright that the User believes has been infringed, where the work is located on the Website, the User's address, telephone number, and corresponding e-mail address.
The Creator represents and warrants that his contents published on the Website are not in breach of any third parties' rights, including intellectual property, confidentiality and privacy rights.
The Creator grants to Users the possibility to share his Project with third parties as well as any material contained thereto, without prejudice to any further Creator's right.
3. use, publishing and third parties' right to publish.
The above rights, limited to the Project uploaded on the Website, are irrevocable, royalty free, transferrable and with no territory limits.
As effect, the Company shall use the materials uploaded and published by the Creator on the Website with the purpose to distribute them, create derivative works, visualize related products without sort of limitation.
The Company makes no representations or warranties, express or implied, with respect to accuracy, completeness, authenticity, legality or decency of the contents and materials uploaded on the Website by the Users.
The Company makes no representations on the identity of Users that may use the Website or the Services offered. The Users acknowledges and undertakes the risks connected to use of, and navigation on, the Website.
Musicraiser shall not be liable, unless in cases of negligence or willful misconduct, for the Creator's activity on the internet, social network and his promotional activities of the Services, online or offline. The Creator shall bear responsibility for such contents uploaded by himself or the Users, and any other activity related to the use of the Website, including damages or losses suffered by third parties. The Company shall not be responsible for damages arising out, directly or indirectly, in connection with the Services.
The Company is not responsible for missed delivery of the Rewards by the Creator, events cancellation or failure to deliver tickets in case such activities are performed by third parties.
Users agree to keep Musicraiser indemnified and harmless against any dispute with the Creator or third parties. The same will apply to Musicraiser, its directors, employees or consultants in case of claims, damages, expenses and/or lawsuit that may arise in respect thereof.
In no way Musicraiser shall be responsible for the Services malfunctioning due to phone lines, electric lines or any other disruptive event or force majeure event. Musicraiser is completely extraneous and not subject to any responsibility or obligations with regard to any fiscal aspect, tax and/or accounting related and/or otherwise referable to the management of the sum received by the Creators. The Company does not provide or offers any financial, legal or consulting services, nor make public offerings or mediation or broker activities.
Musicraiser shall also be kept indemnified and harmless from any cost, expense, or duty or burden related to any claim between the User and third parties, including the third parties supplying Additional Services.
The Company shall be kept indemnified and harmless from any cost, expense, duty, burden in any way related to breach by the Creator of the provisions under Legislative Decree 196/2003, as further amended, with specific reference to the provisions relating to collection and processing of Users' personal data, or the use of the same not in compliance with the applicable laws and regulations.
The activities made by the Company through the Website are in compliance with the rules and regulations concerning (i) investment services; (ii) public offerings of financial services; (iii) promotion or placement as per Legislative Decree 58/1998, the Consob Regulation n. 11971/99 and n. 16190/2007 and further amendments.
Any Creator is granted with withdrawal rights, to be exercised in accordance with article 7 of the T&C.
(B)	cease order issued by public authorities relating to the Creator's activities.
Musicraiser is also entitled to terminate the relationship with the Creator in accordance with article 1456 of the Italian Civil Code and by means of written communication sent by mail with return receipt and anticipated by e-mail for Creator's breach of articles 5 I, IV and V of the Terms.
Upon termination or withdrawal the Creator shall not use the Platform or the Services supplied by the Company. Therefore the Creator shall take any measure that may be necessary to properly inform the Users on the Project interruption and, as the case may be, return any sums collected.
Within 30 days from termination, and upon express Creator's request, Musicraiser shall provide the Creator with a backup of all the date uploaded on the Website.
Musicraiser may be contacted for any questions, information and clarifications regarding the Services offered, as well as these T&C by using the contact form in the Website.
Musicraiser communicates to the Users by e-mail and/or post on the Website, and/or by express mail with return receipt.
The T&C and the Services are subject to, and interpreted in accordance with, the laws of the Republic of Italy.
Any legal action or proceedings that may arise or result from the application of the T&C will be subject to the exclusive jurisdiction of the Courts of Milan.
Pursuant to, and in accordance with articles 1341 and 1342 of the Italian Civil Code, the User acknowledges and expressly accepts articles 5, 9, 12, 13, and 15 of these T&C.
Payment processing services are provided by Stripe and are subject to the Stripe Connected Account Agreement, which includes the Stripe Terms of Service (collectively, the "Stripe Services Agreement"). By agreeing to these terms or continuing to operate as a Creator of a campaign on Musicraiser, you agree to be bound by the Stripe Services Agreement, as the same may be modified by Stripe from time to time. As a condition of Musicraiser enabling payment processing services through Stripe, you agree to provide Musicraiser accurate and complete information about you and your business, and you authorize Musicraiser to share it and transaction information related to your use of the payment processing services provided by Stripe.


text:
The Waiotaka River is a river of the Waikato Region of New Zealand's North Island. It flows northwest from its origins in the Kaimanawa Range to reach the southern shore of Lake Taupo  northeast of Turangi.

See also
List of rivers of New Zealand

References

Taupō District
Rivers of Waikato
Rivers of New Zealand

redpajama_set_name: RedPajamaWikipedia


text:
FRANCO-BRITISH SOCIETY
Proust & Ruskin 9/2/2022
Rosa Bonheur 25/1/22
Peter Ricketts - AGM 2021
Anti-Catholicism during in Cromwellian England
France and the UK: strategic twins? 1/07/21
Franco-Prussian War, 150 years on, 28/4/21
Mazarin and Cromwell 25.02.21 Dr K. MacKenzie
Versailles and the English 20.01.21 P. Mansel
AGM 2020 - Michael Peppiatt
French Impressions: Manet to Cézanne 5.03.2020
George IV 11.02.20
Marie-Antoinette 21.01.2020
Christmas drinks 2019
FBS Centenary Gala Dinner 17.10.19
The delights of the Alsace October 2019
Women and vote
Past events ( 2016-2019)
Joint Christmas Party 2018
Montmartre 13/11/2018
Delights of Biarritz, Bayonne, ST jean de Luz 2-6 Sept..
Brexit and London
J hardman Louis XVI 12.2.2018
New year 2018/ Galette des rois
Anne Sebba Les Parisiennes November 2017
Ian Davidson French Revolution 18.10.17
French film 18 September 2017
FB Lunch/Déjeuner 21 June 2017
TRIP TO BEAULIEU/EZE//NICE/MONTE CARLO MAY2017
AGM 11 MAY 2017
House of Lords and Sénat FEBRUARY 2017
EDITH PIAF JANUARY 2017
ALBERT CAMUS - EDWARD J. HUGHES
AGM AT THE RESIDENCE APRIL 2016
JOAN OF ARC: A HISTORY FEBRUARY 2016
TALK BY FRENCH ARTIST PIERRE SKIRA AT THE REDFERN GALLERY JANUARY 2016
DRINKS AT THE HOUSE OF LORDS DECEMBER 2015
DAY TRIP TO LE MANOIR AUX QUAT'SAISONS ROUSHAM HOUSE AND GARDEN JULY 2015
LE LYCEE FRANCAIS CHARLES DE GAULLE DE LONDRES 1915-2015 JUNE 2015
WALK IN SOHO - ORGAN RECITAL MAY 2015
PAUL DURAND-RUEL INVENTING IMPRESSIONISM MAY 2015
ANNUAL GENERAL MEETING WITH FCO APRIL 2015
EVASION : An illustrated talk on French escapes from Britain in the Napoleonic period MARCH 2015
RESISTANCE ; Andree's war FEBRUARY 2015
TALK BY FRENCH ARTIST PIERRE SKIRA
AT THE REDFERN GALLERY
Tuesday 12th January 2016
5.15pm for 5.30pm to 8.00pm
20 Cork Street, London W1S 3HL (Nearest Tubes: Green Park or Piccadilly Circus)
Talk (in French) by renowned French artist Pierre Skira followed by a Private View of his exhibition at the Redfern Gallery.
pay by cheque
Photographs copyright Louise Skira
Pierre Skira (b.1938) is one of the most distinguished living exponents of the medium of pastel with his own unique forms and colours.
He was born in Paris, the son of the renowned Swiss publisher Albert Skira who worked with many of the leading European artists of the 20th Century including Matisse, Dalí and Picasso.
Having grown up in this environment Skira became inevitably drawn to the artistic and literary worlds. Formative childhood experiences included a week with Picasso in the South of France just after the war and watching Matisse at work on his paper cut-outs.
At the beginning of his artistic career in the early 1960s Skira chose to work largely in oils. In 1975 he abandoned oil in favour of pastel - a medium which came to dominate his practice and for which he is best known. His materials are of the highest quality available - those made by Roché, Paris – the oldest pastel manufacturer in the world.
Skira's artistic activities and interest in literature led him to collaborate with some of the most prominent contemporary French writers and philosophers such as Jean-François Lyotard, Gérard Macé, Pascal Quignard and Patrick Mauriès. He has in turn had his own work published including a novel - Les Orgues de Glace (Viviane Hamy, 2008).
Skira started exhibiting in 1962 and has since then shown extensively both in France and internationally – including with Jan Krugier in Geneva. His work is held in many public collections such as the Palais de l'Élysée and the Musée National d'Art Moderne, Centre Pompidou, Paris.
The Redfern Gallery founded in 1923 in the heart of London's Mayfair, has exhibited many leading 20th Century artists such as Barbara Hepworth, Graham Sutherland, Henry Moore, Paul Delvaux, Antoni Tàpies, Paul Jenkins, Chaim Soutine and Francis Bacon. The strong connections with artists working in France led to shows of Pierre Soulages, Georges Rouault, Maurice Estève, and Vieira da Silva. The gallery is very proud that this continues today with Pierre Skira.
redfern-gallery.com
pay by paypal


Who's leading the ecological revolution of landscape architecture?
For centuries, humans have chosen to force the natural environment into fitting our needs and desires. This attitude of transformation, rather than working alongside and conforming to nature, has led to a host of problems. The built environment has popped up without consideration of its surroundings, leading to inefficient energy use, pollution, and water shortages.
Within the last 10 years, there has been a trend toward more "sustainable," "ecological" and "resilient" designs that seek to work alongside the environment to improve the quality of our towns and cities. However, how do we tell the difference between a functionally robust design and one that looks good on the board but fails in the field?
How do we know what's truly sustainable?
Given that life is often complex, and that many of the natural systems we rely upon as we design are both unpredictable and continuously changing, how do we determine what is a minimally destructive impact?
As we think deeper about ecological design, we face more complex questions. Nevertheless, there is hope. Here are five firms that have paved the way in integrated landscape architecture and other design fields to show that as a profession, we can step forward in handling these complex issues.
The firm was formed in 1960, and since the beginning has been intrigued by the relationship between built form and the natural environment. In designing urban resorts, campuses, urban districts, or residential communities, EDSA takes a village-centered approach in its projects that foster social diversity and resource conservation.
Curiosity about the dynamic balance among environmental, economic, and social components of a place brings about the firm's willingness to generate long-term relationships between users and place, so that users also understand the value of doing what is right for the long-term wellbeing of the planet and its people.
At a time where desired vacation spots begin to take over more areas of remote and well-known countries, projects such as the Indura beach and golf resort and Castiglion del Bosco are only a few of the many examples of the firm's portfolio that demonstrate how such a big market of tourism is being guided in the right direction for the future.
Grant Associates gained its reputation from the incredible £500 million Gardens by the Bay project in Singapore. This firm puts a huge amount of effort into delivering creative approaches to ecological and sustainable landscape design and the integration of landscape with engineering and architecture to create highly distinctive places with a strong ecological character.
Its mission statement of bringing humans into closer contact with nature through landscape and urban design is embodied in a project such as Gardens by the Bay that begins to rekindle our human instincts about the beauty and wonder of nature and raises awareness for sustainability and conservation.
HOK is a big firm offering architecture, landscape architecture, engineering, interior design, urban planning, and consulting services. From residential to commercial to government projects, the firm tackles the most common spaces, such as office complexes, to ensure that when they speak about sustainability, ecology, and resilience designs, they are starting with these small-scale places.
With a strong belief in biomimicry to inform design solutions, the firm states: "When it comes to designing for efficiency, balance, and resiliency, nothing beats emulating nature". Master-planning projects such as a new hill town in India or Brunei Capital City are examples of how the influence of biomimicry has been deeply ingrained in HOK's practice of aiming for ecological, economic, and resilient designs.
Established in 1957, SWA Group is an international landscape architecture, planning, and urban design firm with offices around the world, from Los Angeles to Shanghai to the United Arab Emirates. The firm has an international reputation for excellence in environmental design and is a very good example of Landscape Urbanism in practice.
This forward-thinking, dynamic approach shows in the cityscape designs the firm creates. The firm is continuously seeking to understand and redefine what it means to design new and better forms of human habitation.
In particular for landscape architects and urban designers, what role do landscape and ecological systems play in creating healthy, productive, and integrative urban frameworks? Such questions are asked and tackled in SWA's large-scale design projects. Just take a look at the Suzhou Industrial Park Central Business District to see the kind of solutions that are being put forward by this firm.
The Turenscape concept is "Nature, man and spirits as one", and this firm was founded by Kongjian Yu to practice what he preached and support his research students. Now, as a leading ecological design firm in China, Turenscape has done well in restoring damaged or degraded landscapes.
Projects such as Liupanshui Minghu Wetland Park or Beach of Qinghuangdao City are just two of the several successful projects in which the firm hasn't been afraid to tackle ecological recovery. Aiming to wrestle with the environmental issues of China — starting with changing the national codes in order to make lasting design influences across the country — Kongjian Yu describes landscape, urbanism, and architecture as "an art of survival" in which "how we safeguard and recover an ecological, healthy environment" is a priority.
Even though our top five firms are numbered from five to one, there really isn't a simple and justifiable reason as to why they shouldn't all be represented as equals. In fact, what the list teaches us is that there is no singular approach that can be used to tackle the challenging environmental and ecological issues of today.
Ecological design concerns itself with the environment, for that is the foundation upon which we live on this tiny jewel of a planet. But it also involves the human issues of community, respect for differing perspectives, and a willingness to be changed by what you learn from another's point of view.
At its heart, ecological design is systemic design, and each of these five firms has simply planted its roots in its own approach based on experience and research. We can only hope and strive for more firms to do the same for our planet.


text:
Альбер Калонджи (; 1929—2015) — конголезский государственный деятель, глава самопровозглашенного государства Южное Касаи в годы конголезского кризиса. Принадлежал к народности луба. Начинал свою карьеру как сподвижник Патриса Лумумбы. Провозгласил независимость Южного Касаи, стал её президентом, но затем принял титул мулопве (короля) Южного Касаи.

См. также
 Национальное движение Конго

Примечания

Источники
 Peter Scholl-Latour, Mord am großen Fluß — Ein Vierteljahrhundert afrikanische Unabhängigkeit. DVA 1986, ISBN 3-421-06307-9
 Albert Kalonji Ditunga Mulopwe Congo 1960. La Sécession du Sud-Kasaï. La vérité du Mulopwe. L'Harmattan 2005. ISBN 2-7475-8132-2
 https://web.archive.org/web/20160304022524/http://acpcongo.com/acp/deces-de-m-albert-kalonji-ditunga-mulopwe/

Политики Демократической Республики Конго


text:
// Copyright (c) 2012, Event Store LLP
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// Redistributions of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
// Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
// Neither the name of the Event Store LLP nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
using System;
using System.Collections.Generic;
using EventStore.Common.Utils;
using EventStore.Core.Messaging;

namespace EventStore.Core.Messages
{
    public static class MonitoringMessage
    {
        public class GetFreshStats : Message
        {
            private static readonly int TypeId = System.Threading.Interlocked.Increment(ref NextMsgId);
            public override int MsgTypeId { get { return TypeId; } }

            public readonly IEnvelope Envelope;
            public readonly Func<Dictionary<string, object>, Dictionary<string, object>> StatsSelector;
            public readonly bool UseMetadata;
            public readonly bool UseGrouping;

            public GetFreshStats(IEnvelope envelope,
                                 Func<Dictionary<string, object>, Dictionary<string, object>> statsSelector,
                                 bool useMetadata,
                                 bool useGrouping)
            {
                Ensure.NotNull(envelope, "envelope");
                Ensure.NotNull(statsSelector, "statsSelector");

                Envelope = envelope;
                StatsSelector = statsSelector;
                UseMetadata = useMetadata;
                UseGrouping = useGrouping;
            }
        }

        public class GetFreshStatsCompleted : Message
        {
            private static readonly int TypeId = System.Threading.Interlocked.Increment(ref NextMsgId);
            public override int MsgTypeId { get { return TypeId; } }

            public readonly bool Success;
            public readonly Dictionary<string, object> Stats;

            public GetFreshStatsCompleted(bool success, Dictionary<string, object> stats)
            {
                Success = success;
                Stats = stats;
            }
        }

        public class InternalStatsRequest : Message
        {
            private static readonly int TypeId = System.Threading.Interlocked.Increment(ref NextMsgId);
            public override int MsgTypeId { get { return TypeId; } }

            public readonly IEnvelope Envelope;

            public InternalStatsRequest(IEnvelope envelope)
            {
                Ensure.NotNull(envelope, "envelope");

                Envelope = envelope;
            }
        }

        public class InternalStatsRequestResponse : Message
        {
            private static readonly int TypeId = System.Threading.Interlocked.Increment(ref NextMsgId);
            public override int MsgTypeId { get { return TypeId; } }

            public readonly Dictionary<string, object> Stats;

            public InternalStatsRequestResponse(Dictionary<string, object> stats)
            {
                Ensure.NotNull(stats, "stats");

                Stats = stats;
            }
        }
    }
}


The TTUHSC El Paso Institutional Review Board (IRB) reviews research involving human subjects. All human research studies are reviewed by the IRB before they begin and at least once annually to evaluate risks to subjects and compliance with federal regulations and institutional policies.
TTUHSC El Paso has a Federal-Wide Assurance (FWA) # 00020736 with the Department of Health and Human Services to protect the rights and welfare of participants involved in research affiliated with this institution. Two TTUHSC El Paso IRBs serve the El Paso campus: El Paso IRB #1-00009945 and El Paso IRB #2-00009946.


text:
'No crisis - prison safe', says High Down's Governor
Exclusive by Hardeep Matharu
The Epsom Guardian was given exclusive access to HMP High Down
Offering more to prisoners who want to engage and less to those who do not is right and necessary, according to the governor of High Down prison.
Following concerns raised about the prison with the Epsom Guardian in the last month, the newspaper was invited to spend the day at High Down last Friday, March 28.
The Government has repeatedly denied there is a crisis at the prison, on the border between Banstead and Sutton, caused by staff shortages and prisoners staying locked in their cells - something its governor Ian Bickers also refuted.
"To have a proper clean-up, you have to make a good mess", he said, adding that the changes introduced to the prison estate by the Government in the past year have been a huge culture shock for staff who were set in their ways.
"Time for change"
"Time for change" is the prison's motto and it is certainly living up to this at the moment.
The Independent Monitoring Board's (IMB) report for 2013, published on March 18, said it had been a "dreadful year" for the prison and asked the minster whether he had "truly taken on board the effects that these cuts will inevitably make on the avowed policy of rehabilitation?"
Mr Bickers, who took over as governor last January, said: "It was a balanced report which demonstrates the prison has gone through significant change.
"But it's fair to say the majority of criticisms have been dealt with."
The 46-year-old left school at 16 with no qualifications and started "hanging round on street corners". After 20 years in the private sector and having completed a Psychology degree at the Open University in his 30s, he jumped ship to the prison service 10 years ago.
He has worked as a prison officer, as a head of security and operations, learning and skills and resettlement, and as a policy advisor to the Home Office. As well as posts at Bullingdon, Woodhill, Spring Hill, Grendon and Aylesbury prisons, he served as deputy governor at Wandsworth.
Mr Bickers, a dynamic and enthusiastic governor, well known around the prison, clearly knows the prison system inside-out and spoke at length about what the changes have involved.
On a two-hour tour of the prison, he emphasised his transparent and honest approach, but did add that, as a civil servant, he would not share his personal views.
Up until November 2012, a governor allocated a prison's budget. Now, it is determined based on a model for each type of prison, formulated by the Government - a practice known as bench-marking.
"It was certainly no crisis"
Last February, High Down was told it had to lose 30 prison officers from its 185. At the same time, 30 prison officers applied for the Government's voluntary redundancy scheme, and left - achieving the staffing cuts required.
But with 13 other officers being promoted and another 12 leaving through retirement or dismissal subsequently, Mr Bickers explained that there is currently a shortfall of 25 posts waiting to be filled.
Now with 130 prison officers, the prisoner-to-prison officer ratio is 1:30.
Mr Bickers said the changes have meant that prison officers now have to work much harder "and think" - something he said a minority had not welcomed with open arms.
He said: "My aim is to keep the prison in the public sector, but times will change.
"In some ways we have to lock people up for longer and not offer as many things and there is less staff because that's what's being asked of us.
"There have been problems with the right staff being in the right place at the right time. Within a month we got the issues sorted.
"In September the prison wasn't quite getting it right, but it was certainly no crisis and things have now started to settle and bed-in."
"We should be giving more to people who want to engage"
As part of the changes, a new core day for each type of prison was introduced last September and 'association' during the afternoons was axed.
All prisoners are still given a "domestic period" of at least four hours out of their cells, spread throughout the day - something Mr Bickers said the prisoners at High Down receive, though he admitted that operational pressures may mean this is not always possible.
But the "free-for-all" socialising - which saw cell doors unlocked all afternoon and prisoners playing games - has gone.
The change means that those prisoners who do not want to go to classes or work within the prison will spend longer behind bars.
Should the prison service be motivating these men into rehabilitation? "That's a question about the role of prisons, a debate for society as a whole," said Mr Bickers.
"We are doing a good job in what the Government wants us to deliver.
"Yes, we close the gym from time to time and sometimes classes are empty. But I have no significant concerns and feel in absolute control of it," he said.
"The changes are right. We should be giving more to the people who want to engage."
"Things get more stretched but the basics are there"
Mr Bickers asked all the prison staff and prisoners this newspaper was allowed to meet to rate the safety of the prison out of 10. Not one gave an answer below eight.
One prisoner, in the substance misuse wing, who has been inside for 15 months and works in High Down, said: "When I first came here there was a bit of bang-up. Everyone knows about the staff shortages.
"I have had every opportunity to get out of my cell and do education and work every day. I don't know where the criticisms have come from."
But he added: "Access to the gym has been quite bad. We know staff cut backs have affected things but it's getting better.
"There's quite a lot on offer. If you don't want to engage with it you stay banged up all day. If you want to work you can."
Another prisoner, who works in the reception and has been in High Down for 10 months, said: "With the staff shortages more things get stretched, but the basics are there.
"Some are not using their initiative themselves. But some people are like that on the out too."
The governor said the period covered by the IMB's 2013 report saw the implementation of the changes and raised difficulties, but that things have now improved.
No radical measures have been introduced, he said, but the system is now starting to adjust properly to the changes.
In December, High Down was asked to take another 60 prisoners from London and will be receiving 22 extra staff members on April 6 to manage this, while the lengthy public sector recruitment for 25 permanent posts continues.
While rehabilitation is a personal passion of the governor's, Mr Bickers believes the public at large "does not care" but still want to see reoffending figures fall.
"Instilling a real world attitude about what life is"
Following lunch in the prison's pioneering restaurant The Clink - which is run by High Down's prisoners - Mr Bickers responded to concerns raised by relatives of inmates and ex-prison officers with this newspaper over the last month.
He said educational classes are available to prisoners every day and 81 per cent of spaces had been full the day before - compared to a 30 per cent average in January 2013.
All convicted prisoners at High Down must attend work or education, while those on remand can choose whether to do so.
The courses on offer - ranging from dog ownership and industrial cleaning, textiles and recycling, to Maths and English, personal hygiene and Open University degrees - are a shift away from the cognitive behavioural therapy programmes run by prisons 10 years ago when it was about "bums on seats".
The governor said every prisoner is entitled to one hour in the gym a week, but, beyond this, it is a privilege, and sometimes outweighed by other operational difficulties which are part and parcel of prison life.
He said: "It's tight and efficient and when things happen, for example when staff get assaulted or take days off, it will impact on the running of the regime."
"It's about weighing the priorities," he added.
"It's also about instilling a real world attitude about what life is."
He said an example of this approach was the introduction of packed lunches instead of hot lunches in the prison last year.
One of the serious concerns raised by the IMB's report was that prisoners missed hospital appointments because staff shortages were so severe.
The governor said that, at one point last year, eight prisoners needed admitting to hospital and required prison guards by their hospital beds. This took a significant number of officers out of the prison.
"We work damn hard to provide safe prisons"
Mr Bickers said problems with the visitors' booking system had been fixed and so many visits are now being requested that the prison will start running an extra session.
He said prisoners eating in their cells has always been normal, that the showers may be old but were clean, and the problem of mice in the visitors' hall had been solved.
He also dismissed as "absolutely ridiculous" claims he has sanctioned unlawful force to be used against prisoners, saying anyone who did so would be dismissed.
One prison officer told the Epsom Guardian: "As a prison service we have to change and things move on.
"I felt very frustrated reading your article because we work damn hard to supply a safe regime for prisons.
"It's about working smarter. Utilising and making sure staff are used to their best abilities.
"It's been a massive culture change, but the Government said they wanted the change made."


by Winston C. Lancaster, Ph.D.
If there were one universal thing that all humans dream of doing, I would wager that thing would be to fly. I used to dream of flying every night as a child and I still do on occasion today. To look at a bird is to marvel at a wondrous feat of engineering that seems to border on magic. To wish to be a bird is to wish for what appears to be ultimate freedom from the regular constraints of us terrestrial organisms; but what type of bird to wish to be? A falcon built for speed, a vulture built to soar, a flycatcher built for acrobatics or a kingfisher built to dive. For that matter, why should a wish to be a bird be the only manner in which we can satisfy that desire for flight? Insects fly. Bats fly. Surely we need not be limited to birds!
What I find to be truly amazing about flight is that different lineages of organisms have developed ways to fly in different ways. That is why flight is the inspiration for this edition of the Journal of the Sierra College Natural History Museum. Flight is a great example of convergent evolution, which is the evolution of similar adaptations to similar conditions in unrelated organisms. What convergent evolution means for flight is that this ability developed in three separate lineages of organisms, which is no small feat. It would be incorrect to assume that all flighted lineages achieved this ability in the same way. Bats and birds gave up their arms to flight, but insects did not. Birds have an aerodynamic wing, but bats do not. And what of flying reptiles, those extinct masters of the sky? Flight has been achieved in different ways many times. Even within individual groups of organisms, such as the birds, where the characteristic of flight is a homologous characteristic, meaning that the characteristic has a shared heritage, the design of the wing and the body can be quite different from species to species.
In this edition you will find articles that highlight the ways in which these different groups of organisms fly. Richard Hilton gives us an article on flight in extinct reptiles. Dr. Winston Lancaster provides this issue with a wonderful explanation of not only flight in bats but also the two main theories as to how flight evolved. Nature writer, Gareth Huw Davies, provides an examination of the ancestry of birds and then goes on to discuss some of the wonderful adaptations and diversity that can be found within this group. Finally, this edition wraps up with a journal tradition where we focus on one of the courses that we teach at Sierra College. This edition features one of my favorite classes, Biology 14: Natural History, Ecology and Conservation, a class that I think every person would enjoy taking.
It is my hope that you enjoy this edition and perhaps the next time you see an animal in flight you will have a whole new appreciation for that achievement. As always this journal would not exist if not for the creative thinking of Gary Noy and the technical assistance of Mike Price, without whom none of these editions would have come together.


(Reuters) – Tens of millions of Americans braved Arctic-like temperatures as low as minus 56 degrees Fahrenheit (minus 49 Celsius) on Thursday that paralyzed the U.S. Midwest and were blamed for at least 21 deaths.
Warmer weather was on the way, but that offered little comfort to vulnerable populations such as the homeless and elderly enduring cold that caused frostbite in minutes and made being outside potentially deadly.
Officials across multiple states linked numerous deaths to the frigid air. The death toll rose from a previous 12 after at least nine more people in Chicago were reported to have died from cold-related injuries, according to Dr Stathis Poulakidas at the city's John H Stroger Jr Hospital.
A University of Iowa student was found dead on campus of possible exposure early on Wednesday, according to university officials. The wind chill at the time police found Gerald Belz, 18, was minus 51 F (minus 46 C), according to the National Weather Service.
Homeless and displaced people were particularly at risk, with Chicago and other cities setting up warming shelters. But many toughed it out in encampments or vacant buildings. A 60-year-old woman found dead in an abandoned house in Lorain, Ohio, was believed to have died of hypothermia, Lorain County Coroner Stephen Evans said.
More than 30 record lows were shattered across the Midwest. Cotton, Minnesota, had the lowest national temperature recorded early on Thursday at minus 56 F (minus 48 C) before the weather warmed up, the weather service reported.
U.S. homes and businesses used record amounts of natural gas for heating on Wednesday, according to preliminary results from financial data provider Refinitiv.
In Detroit, General Motors Co suspended operations at 11 Michigan plants after a utility made an emergency appeal to conserve natural gas. Fiat Chrysler Automobiles NV also canceled a shift on Thursday at two of its plants.
Relatively balmier weather was on the horizon. By the weekend, Chicago was expected to bask in snow-melting highs in the mid-40s to low 50s Fahrenheit, along with other parts of the Midwest, the weather service said.


CliniCare Of Port Angeles Inc provides professional health and medical services for your needs. No appointment is required. Call us today at (360) 452-5000.
Had a great experience dealing with CliniCare Of Port Angeles Inc? Share how great it was.
Owner of CliniCare Of Port Angeles Inc? Click here to edit or enhance this listing.


text:
Gloria, 70, Chicago, IL, 2016 from To Survive on This Shore. Photograph: Image courtesy of projects+gallery and Jess T. Dugan
'I wanted to break stereotypes': the photographer capturing transgender life over 50
In a new book and exhibition, Jess T Dugan has taken portraits of trans and gender nonconforming people across the US, recording their stories
Nadja Sayej
Thu 30 Aug 2018 04.00 EDT
It was a lazy Sunday afternoon when Detroit-based Bobbi turned to her boyfriend Frank and said: "Oh, I got something to tell you."
Bobbi told Frank that she was transgender.
"He said: 'You're better than any woman I've ever met," recalled Bobbi. "He said: 'Now, come on Bobbi, we can drop that.' He didn't care a damn."
'We've been denied our identities': being trans in Argentina – in pictures
It's the story behind just one of 86 transgender portraits taken by St Louis-based photographer Jess T Dugan, released in a new photo book entitled To Survive on This Shore.
The book coincides with an exhibition opening at projects+gallery in St Louis on 13 September, featuring 22 selected portraits of trans people between the ages of 50 and 90, which were taken over the past five years.
It all began in 2012, when Dugan took a cross-country road trip with her partner Vanessa Fabbre, a social worker, who carried out interviews with every person photographed. "We started with 25 portraits, people we knew," said Dugan. "We built a website and over 100 people reached out."
The first portrait in the series is a photo of Grace Sterling Stowell, the executive director of the Boston Alliance of Gay, Lesbian, Bisexual and Transgender Youth, who sits in an armchair wearing pearls, specs and a purple cardigan.
As Sterling Stowell says in the book, she has seen huge change in the trans community over the past five decades. "In the 1960s, they called me a sissy; in the 1970s, they called me a faggot; in the 1980s, I was a queen; in the 1990s, I was transgender and in the 2000s, I was a woman," she said. "Now, I'm just Grace."
Louis, 54, Springfield, MA, 2014 from To Survive on This Shore.Photograph: Image courtesy of projects+gallery and Jess T. Dugan.
There is also a portrait of a Williamsburg-based woman named Michelle-Marie, 62, who shares a story about talking to her therapist, who asked: "What kind of a woman do you want to be after you transition?"
Michelle-Marie replied: "I don't have to think about that, I've always been that woman."
Another portrait shows Charley, 53, from Charlottesville, who had a tough time being accepted by his family. "The hardest part was, and still is, trying to get my family to accept," said Charley. "They still use the female pronouns and I don't think I'll ever get them to that point. But I've got to realize that they're on their own path, whatever path they're on, and I'm on mine."
The goal for Dugan and Fabbre is to shed light on an overlooked and underrepresented group of people. "People don't usually see images of transgender people, or they don't imagine what they look like later in life," said Fabbre. "There are few gender representations of older people in the trans and gender nonconforming community, so that was one motivation; we wanted to create that for younger trans people."
The duo went off the beaten path, traveling from coast to coast, from Boston to Birmingham, Los Angeles to Arkansas, documenting the lives of trans people living across America. It was partly to reveal how underrepresented this group really was.
"We also wanted to record the history, many people we photographed and interviewed had done significant activism and had helped us for where we are today," said Dugan. "Many of these people came out prior to the internet, but their stories have not been told."
The duo wanted to go beyond the more mainstream representations of trans, like Caitlin Jenner or the Emmy-winning show Transparent. "They have their benefits, but we wanted to focus on a trans experience outside of a celebrity culture or a Hollywood representation," said Dugan. "We wanted to look at everyday people and how they're living their lives."
Justin Vivian, 54, New York, NY, 2017 from To Survive on This Shore.Photograph: Image courtesy of projects+gallery and Jess T. Dugan.
The book features a compelling portrait of Justin Vivian Bond, an award-winning New York actor photographed at the age of 54, and Los Angeles-based personality Duchess Milan, photographed at 69, which Dugan defines as "self-possessed and strong".
Fabbre has done extensive research on the LGBT community and ageing, and recognizes the current moment we're in. "Right now, we're in a 'trans moment', but people have been doing this for decades," she said. "I wanted to break stereotypes of older people as being rigid or too binary, and it's not only about individuals, but the world we live in and how this world responds to gender, for better or for worse."
The book cover features a portrait of 70-year-old woman named Gloria wearing a fur coat in Chicago, a central figure to the LGBT community for running a Charm School.
"Gloria has mentored and taught primarily trans women of color how to be a lady," said Dugan. "She is much beloved by everyone there and is a legend, in some ways."
In another photo, Dugan recalls an "aha moment" while in rural Arkansas doing a shoot with a man named John, who received support from his family "as a small-town person", said Dugan. "It was such a profoundly moving story."
Some of the interviews tap into how complicated ageing is with the healthcare system in America. "If you're talking about healthcare for people as they age, you're also talking about financial stability and employment, and discrimination, that's still a struggle," said Fabbre. "We've made some advances thanks to trans advocacy and some policies have changed."
The struggle continues, though, and the book's title is a line from an Ani DiFranco song called Talk to Me Now from 1990. "A lot of trans communities are focusing on survival, trying to find housing and employment, it could be read in that way," said Dugan. "But it's also arriving at your authentic self after a journey."
To Survive On This Shore is now out to buy in the US and the exhibition begins on 13 September at projects+gallery in St Louis


It has been over a year since the final Gravity Falls episode aired, and I bet that some people are still not over it. But the often surreal adventures of Dipper and Mabel Pines, pre-teens on a summer vacation in the bizarre town of Gravity Falls, might return back to the hearts of the fans! Writer and creator of Gravity Falls, Ales Hirsch, are currently looking for fan artists who know how to do comics. Of course, it is possible that he is looking for artists for something else entirely, but this does seem to strongly suggest that some sort of Gravity Falls comic project is, if not officially in the works, but at least being considered. Which would be fantastic!
1. In a medium bowl, whisk together the flour, baking powder and salt. Set this bowl aside.
4. From here on you can choose two different options. You can either make the cookies pink with the pink food colouring or you can keep them 'white' and put pink icing on top after you have baked them.
5. Carefully add the flour mixture into the rest and mix it together.
6. Mix it on medium high, until the dough is all combined together into a ball.
7. Wrap the dough in plastic wrap and chill it in the fridge for at least 30 minutes.
8. When the dough is ready to bake, preheat the oven to 175°C or 350 °F.
9. Line some baking sheets with parchment or silicone baking mats.
10. Roll the dough out to about half a centimetre thick. Cut out the sweater shaped with a cookie cutter or with a piece of cardboard and a knife, and place them onto the baking sheets.
11. Bake for about 10 minutes. After they are baked, let them cool completely.
12. If you haven't coloured your cookies pink, then you can start decorating the cookies by piping the outside of the sweater with pink icing before filling the entire shape.
12. Use the coloured icing to pipe the star and rainbow onto the cookies. Let the icing set completely before serving!


This wig is good quality, it is very soft and thick. The seller is very helpful, and the shipping time is excellent.
If I'm honest. The customer service is brilliant. Fast responding team and the lady who helped me with my order was very helpful. Would order again.
So i wanted wait some time to see the real quality bits. i have been very surprise gorgeous earrings are good qualities when they are on wet hair!!!!! seller is tuned as it meets all your questions. i price conseilles's top super and bits are top seller!!!!
This lace front wig is everything. The best quality great customer services and delivery was fast. I will definitely stick with this company to buy hair in the future.In the picture I haven't styled it yet but no shedding very thick . You will not be disappointed if buy this lace frony.
Wow hair is so soft and luscious couldn't ask for better quality. Ends of hair are thick and styled it so will upload pics. Delivery was so fast and got here before expected eta so thanks I shall definitely be buying again.
Love this hair company. This is my first lace front wig and they made it very easy to communicate with them. Front the initial conversation, all my questions were answered immediately. I was expecting at least a day before I recieved a response. It came in under a week. It had no smell and is really soft. True to length as well, 18 in. I've only bleached the knots and washed it. I plan to add highlights. Have not worn it yet. will update once installed.


text:
The Rift Valley's Otherworldly Soda Lakes: Recreating an Out of Africa Experience
Author: Alan J. Shannon | Posted at: 8:09 PM | Filed Under: Travel
There's a singular moment in the mid 80's movie Out of Africa that's always stuck with me. I'm not certain if Karen Blixen ever really did it, if she and Denys Finch Hatton flew a small plane over a shallow African lake thronged with brilliant pink flamingos, but this memorable bit of moviemaking made me hunger for a similar experience.
On my first trip to Kenya, I vowed to duplicate the trip. But with little time and no idea how to arrange such a trip, I had to rely on memories of the movie and my imagination.
On my second trip, though, my cousin Dan arranged for a plane to fly friends and me to the lake—though he made it clear that he found the movie sappy and stupid.
Lakes Bogoria and Nakuru—shallow soda lakes that serve as a wading pool for literally millions of lesser and greater pink flamingos—sit in the middle of the Great Rift Valley, the birthplace of man that cuts vertically and deeply across eastern Africa. The lakes can be reached via treacherous "roads" from Nairobi, but for purposes of recreating the movie scene, I needed to visit via plane.
In this former British colony, pilots for hire are seemingly as plentiful as wildebeests on the Serengeti. The country's pilots are part Han Solo, part Indiana Jones. Some will take you on a deluxe tour, a roller coaster ride in the sky, with the great plains, Rift Valley, or coastal beaches of Kenya spread beneath you. I was interested in doing a flyover of Lake Bogoria, where the locals told me that upwards of two million flamingos were congregating and feeding on the abundant algae that grow in the alkaline-rich soda lakes. (It's funny how Kenyans seem to know about these things: the weather on the coast, whether elephants are around and in which lake the highly social flamingos are congregating).
Dan made arrangements with a Tropic Air pilot named Buddy who was of broad grin, leathery skin, and a winning beer gut that barely fit beneath the plane's steering wheel.
Immediately after take-off, Buddy banked the plane and we passed directly over a perturbed herd of dusty elephants which pointed their trunks toward the sky. Instead of gaining altitude, we stayed low to the ground—probably between 50 and 100 feet. Heading west across grassy, acacia-dotted plains, I watched small herds of goats scatter. Zebra, giraffe, impala and ostrich raced across the grasslands below, stirring up clouds of red dust.
The windows remained open, allowing the grassy rich smell of the equatorial highlands to sweep through the plane.
Buddy steered the plane into a near dive as we head into a deep, narrow gorge that took us all the way down to the bottom of the Rift. I feared for my life, wondering if one of the strong currents racing down the gorge would smash us into one of the rock walls, but he rode the waves as if he were surfing.
Nothing prepared me for my first glimpse of Lake Bogoria. At first, the light-colored band along the edges nearest appeared to be beaches, but as we flew closer, small bands of white along the lakeshore became large swaths of pulsating, flying and wading pink birds.
In every direction there was activity. Birds wading, birds swimming, birds flying toward the center of the lake, birds flying toward shore, birds congregating on shore and birds scurrying in all directions—all a vibrant pink that contrasted sharply with the bleached out, dun color of the desert-like, volcanic ridges that cupped the lakes. Just a few million Greater and Lesser Flamingos, an occasional eagle, and our small plane—oh, and as I was to find out, some swifts.
As we glided along the shoreline, peering at the vista below, there was a sudden thud on the right wing. I waited for us to begin falling from the sky.
"Never had that happen before," Buddy casually remarked. "That was a swift."
Once I was assured we weren't going to plunge to the ground, I was able to enjoy the ride again.
We followed the shore line of the cigar-shaped lake to its southern terminus and then Buddy banked the plane toward the eastern shore which was packed with more of the brightly colored birds. Here, sulfurous fumes from the springs and geysers far below crept through the cabin while rivulets of steam rose from the black volcanic rock. Flamingos flew in every direction and glided above the dark waters of the lake with wingspans that seemed as wide as our plane's.
Flanking the lake's eastern shore, the rocky, serrate escarpment that rises abruptly from the dark waters of Bogoria forms the arid, western extent of the mythical Aberdares (where Hemingway and the Price of Wales hunted) and resembles a lunar landscape.
We circle the lake a few times, but I never tired of watching the birds and the spectacle they created en masse: the unreal splotches of muted and dusty pink from a distance, and the constantly-moving, pulsating blobs and clusters of vibrant rose, cerise, and coral directly below us.
I struggled to compare the spectacle to something familiar, to some experience or something I'd seen somewhere. Sure it was familiar to me from the scene in Out of Africa that brought me there, after all. But as if often the case with movies, even an image projected onto a surface 35 feet wide and drenched in color can't adequately capture the feel and look of the real thing.
You might be tempted to think of the lake as a giant bee hive—albeit occupied by giant pink, graceful birds—but, as we rode the air currents above the primeval body of water, I decided it resembled a school of tropical fish as much as the skies above a busy airport. In the end, I realized that such a spectacle of nature can't really be compared to some fish or an airport. The lake really can't be compared to anything at all.
When Buddy dropped my friends and me back at the airstrip, it was as if the movie had ended and the house lights had been raised. I was still trying to digest what I'd seen as the plane buzzed us before heading off to the south and Nairobi.
Though my feet were planted firmly on the red Kenyan soil, I felt as if I were still flying.
Details: Tropic Air pilots can pick you up at or near most Kenyan ranches and resorts (really, anywhere with an airstrip). http://www.tropicairkenya.com/
Never Mind the Hype, Café Deux Magots Worth a Visit
Every city has its overrun tourist destinations. New York has the Empire State, Rome the Colosseum, and Sydney its opera house. And after these iconic sites exist a bunch of next-tier, but often similarly-overrun spots. While many travelers choose to avoid such attractions, some find enough authenticity in the spots to make them worth a visit.
Paris' Café Deux Magots, one of the City of Light's famous and historic cafés, is just such a place.
During a recent reading of Julia Child's biography, I was reminded of the Latin Quarter standby. Like the famous American chef, I consider the Left Bank café a favorite.
Child, who visited the café on her first Saturday in Paris, admired the morning sun striking the chimneypots of the city's grand apartment houses while she and her husband ate buttery croissants and drank café complet.
Many tourists visit the institution for its history: Hemingway, Sartre, and hundreds of writers, artists, poets and glitterati sipped a coffee, wine or beer at one of the small wooden tables in the high ceilinged rooms indoors—under the sage gaze of two Eastern Magi statues—or al fresco at one of the even tinier sidewalk tables in traditional wicker café chairs.
Deux Magots has changed little since it opened in 1914, though its prices no longer allow for many struggling artists to visit. If you balk at paying inflated prices for breakfast, consider that your check includes entry to a historic destination as well an amusement park ride for adults. And unlike the rides at Six Flags, the experience here lasts as long as you'd like—you can sit at your table and sip your coffee or wine for twenty minutes or two hours.
And then there's the food—the incomparable croissants and baguettes, the pastries, the eggs, but most of all, the coffee. Order it plain, as an espresso, au lait or a cappuccino and whatever you sip will rock your world.
Café-sitting in the Left Bank offers manifold pleasures. The world comes to Paris but the city seemingly could care less as its citizens ebb and flow along its streets like colorful, ever-shifting tides. Sure, you might see a movie star stroll past, but the real pleasure is observing life.
Sip a flavorful coffee and catch a glimpse of a dead ringer for Catherine Deneuve being led by three French bulldogs on the sidewalk and suddenly, eighteen euro for a continental breakfast seems a bargain.