As a new business owner, communication with existing and potential customers is important to the businesses bottom line. Every customer is important and should be treated that way, because they keep a business running. Staying in contact will also help the owner develop friendships, which keep the customers coming back and the business growing. Thanks to new technology, many ways exists to keep in contact with a loyal customer or attract new ones.
A business owner can send a friendly email, in order to update a customer or let them know that the business owner cares about their business. Currently, many types of email marketing software are available for anyone to use and they have many features. Unfortunately, the owner must shop around, because he or she must choose the best software for their individual company. In addition, whatever program you choose should allow the customer to opt-out of receiving the emails.
A newsletter can be sent monthly, in order to update the customer about special sales or discounts on each product. The owner should also include information and reviews about their new products, along with a picture of the product. Another way to make the customer feel special is to offer coupons or discounts for the loyal subscribers. However, each newsletter should contain a picture of the business owner and offer a short message about him or her.
An occasional phone call to a new or existing customer can build a business relationship and personal friendship. Fortunately, at the time of purchase, the business owner can ask for the customer's telephone number. After about a week, they can follow up with the customer and ask if they are still satisfied with their purchase. This way, the customers will feel important and keep coming back with their friends.
The perfect way to communicate with an existing customer is to send a greeting card, especially for you. This way, the customer knows that the business owner appreciates their loyalty. They can start sending greeting cards for birthdays and seasonal holidays. Also, enclose a coupon or discount certificate inside of the card, just for the customer and one for a friend. Then, the customer will feel like the business owner values his or her business and friendship.
These little cards are perfect reminders for appointments or updates for your customers. In fact, they can be used for many other reasons too, which will help the business owner. In addition, the business owner will develop a line of communication that will work to his or her advantage. Take a few moments to send a simple "Thank you" to a new customer and they will keep coming back. All customers enjoy knowing his or her business is appreciated.
To sum it up, friendly communications of all kinds will improve the business owner's relationship with the customer. A simple post card or greeting card can make a customer's day, while letting them know they are special to the business owner. A simple yet professional newsletter should be used to feature only the products on sale. Therefore, communication is the key to catching a customer's eye and keeping their business.


Do you feel like giving an original and different touch to your bedroom? Then the decorating ideas that we are going to see today will interest you. It may be enough to introduce small details that give a completely different air to the room. Also, it is not necessary to spend a lot of money on it, in fact, sometimes, the most economical can become something very interesting to give a greater personality to the environment, because it is usually things done by yourself that give you that differentiating touch. Let's see how you can get it. Too easy! You just have to tap into creativity.
The stairs can help you to decorate in an original way and, in addition, quite practical. You can design a chulsimo hanger with shelves with an open wooden staircase. Place a bar at the top, from where you can hang some hangers with your clothes, and put several shelves held between the steps to leave your shoes and other utensils. Functional and decorative at the same time.
The bedside tables can play a lot. It is one of the elements that can help you to give that different touch to your bedroom. You can put a few concrete bricks to create an original industrial-style bedside table, a wooden pickled chair to give it a vintage touch, old suitcases, a safe or a hanging shelf like the one in the photo. There are plenty of options!
Using the bricks we discussed earlier, we can create a structure that will serve as a base for your bed. In addition, you can use the holes to save and tidy your shoes. It will look great if you fancy an industrial bedroom, for example.
You'll see later in the gallery, but another idea that I liked a lot is to take advantage of that typical piece of wall that is left unused to create an original shoemaker. You only have to place some diagonal shelves to leave your shoes on. You can take them to the roof to get the most out of the whole surface vertically.
If with the tables we can play at the time of making a different decoration, the same happens with the headboards. You have, once again, several possibilities. If you like reading make a headboard made up of books. If you prefer the sport, you can put some surfboards or skis, for example. Try vinyls, they are the most fun. For a rustic or vintage decoration, you will find great wooden pallets, or wooden boards placed horizontally or vertically. The barn doors are also a chulada.
A very original idea is the one you could see in the photo that heads this article. It is about creating an original lamp for the bedside table through a pulley. At the end you can put a tulip or you can leave the bulb in the air, which also looks great.


While it may seem small to us the White-Clawed Crayfish is one of the UK's largest freshwater invertebrates and is an important part of our water systems. This often invisible and largely defenceless species is globally endangered due to non-native competitors joining the pool and widespread habitat loss.
As pressure mounts on crayfish they have started to isolate themselves in small headwaters and in still ponds where they are slightly more protected from the North American Signal crayfish and the crayfish diseases it spreads. However, these small endangered creatures need our help and the South West Peak Landscape Partnership and the Staffordshire Wildlife Trust have a plan.
The South West Peak is an ideal location for the crayfish to recover their numbers. The area has numerous isolated streams and ponds dotting the landscape where crayfish can take refuge and ensure their survival long into the future.
With the leadership of the Staffordshire Wildlife Trust, this project will survey and monitor crayfish populations and try to find the best locations for White-Clawed Crayfish to call home. When these idyllic crayfish communities are identified the project will provide first-class transportation for the crayfish to migrate into these new homes and continue to recover their numbers. The goal is to eventually establish a new permanent and stable population in the South West Peak.
How to help White Claws!
Help ensure the long term survival of white-claws by Checking, Cleaning and Drying.
Learn more about how to stay safe around rivers, streams and reservoirs.
Remember to Leave No Trace and pack out all your trash when picnicking or walking along our beautiful rivers. Healthy streams mean healthy crayfish!
If you happen to see a White-Clawed Crayfish make sure you report it to our staff.
Learn more about the White-Clawed Crayfish.
Learn more about the White-clawed Crayfish and how you can help save their home!
The underside of the claws of a white-clawed crayfish are actually off-white to buff coloured.
White-clawed crayfish are classed on the IUCN Red List as endangered, that's the same conservation status as blue whales and tigers!
Do you love spending time around the water? Maybe you enjoy fishing or have even spotted a White-Clawed Crayfish yourself?
Share a picture of your watery adventures!
Help us ensure the health and diversity of our rivers and streams by protecting the White-Clawed Crayfish.


Frank Lampard entered an exclusive Three Lions club by earning his 100th cap in the 0-0 draw with Ukraine on Tuesday night.
Lampard was named alongside Steven Gerrard in midfield for the crucial qualifier in Kiev, and paid tribute to his late mother before and during the game.
He joins an elite band of England players: Peter Shilton, David Beckham, Bobby Moore, Sir Bobby Charlton, Billy Wright, Ashley Cole and Steven Gerrard.
He made his debut in 1999 under Kevin Keegan's stewardship, a 2-1 victory over Belgium at the Stadium of Light.
And the former West Ham man is the only player from that squad still playing football now, a testament to his longevity, professionalism and raw talent.
Lampard looked every bit assured in Kiev as he ever has in an England shirt, proving he is very much in Roy Hodgson's plans for the World Cup next summer, if his side are to get there.
But Lampard has never forgotten his roots in football and behind the scenes. It was fitting that he paid tribute to his mother Pat, too, with Lampard having 'Mum' stitched into his boots for the game.He also had '100th cap' stitched on his shirt.
His mother passed away just days before Chelsea's Champions League semi-final against Liverpool at Stamford Bridge in 2008.
Lampard has reached a milestone, but don't write this off as his last major highlight in an England shirt.
He even had the chance to grab the winner in the dying moments and all but secure England's passage to Brazil, but spurned his chance wide.


Whether you're feeling a little low or just fancy an indulgent yet healthy treat, smoothies are the perfect answer. If you're looking for a few quick and easy recipes that taste mouthwateringly good, check out the blends below!
Are you one for skipping brekky? For a quick, easy and simply delicious start to the day, whizz up this amazing concoction—you'll be full right up until lunchtime!
Green fruits and vegetables are packed with healthy antioxidants, which can help keep your immune system fighting fit. For a great recipe, blitz together the ingredients below!
An oldie but a goodie, there's nothing better than a sweet strawberry and banana smoothie. Perfect as a mid-morning pick-me-up, this delicious blend will be sure to impress!
Perfect for vegetarians, vegans and those who are lactose intolerant, this nutty butter and soy smoothie is packed with protein and fibre—not to mention it's absolutely delicious! Try it for yourself today!
Now you've had your smoothie, it's time for a tasty lunch! If you live in Darwin, we suggest heading to one of the amazing cafes below.
For a fabulous selection of tasty food, coffee and treats, make sure you visit the friendly faces at Transit Lounge Cafe. Located in Winnellie, this locally run business offers customers a relaxing cafe environment that's perfect for both breakfast and lunch. Whether you're in the mood for a fresh gourmet salad or a tasty and indulgent burger, this Darwin cafe can deliver. Busy schedule? Swing by and pick up a takeaway coffee on the go. Whatever you decide, you're bound to enjoy your experience at Transit Lounge Cafe.
Keen to indluge in food that's both healthy and delicious? Then we suggest visiting Karma Cafe and Fitness this week. Specialising in meals that are packed with nutrition, whether you fancy a filling burger or a light salad, you're sure to find something to enjoy here. Just because the food's healthy, doesn't mean you can't treat yourself. For a mouthwatering sweet that's sure to impress, dive into a slice of their banana and strawberry bread—delish! Serving awesome food, perfect coffees and even a selection of smoothies, don't miss out on this fantastic Darwin cafe.
What's your go-to smoothie? Tell us your secret recipe in the comments below!


If you're looking to establish your very own pecan orchard, there are many things you need to consider before going into this possible business endeavor. Pecan orchards take a lot of time, careful planning and management, and a well-planned, well organized orchard will always prove to be more efficient and require less input than one which is not. To help you along your journey as a proud pecan orchard owner, we've decided to go over a few basics and characteristics your pecan orchard should have to get you started.
One of the most important aspects of a successful and flourishing pecan orchard is good soil. It is also helpful to have a firm understanding of root growth in relation to soil conditions when selecting the location for your orchard. For instance, pecan growth tends to increase drastically in the spring, peaking in late May and early June, and will steadily decline around mid-September, though the growth will continue into the winter, just at lower levels. For the best rooting and production, it is best for the soil to be deep, fertile, and well drained, with a good holding capacity, and pecans prefer soil with a sandy loam texture.
To prepare the land, you must clear and level the site, improve drainage, fertilize, lime, and subsoil the entire site for planting. The site will fare best when cleared completely of all trees and brush, and while you can burn this debris, it's best to do so away from the planting area, as wood ash can raise the pH balance of the soil and lead to nutrient imbalances. To harvest efficiently requires a smooth surface, so be sure that you level the area carefully, and always take soil samples to test nutrient availability before planting.
There are a few different ways you can design your orchard layout, and the way you lay it out is important. The layout should be ideal for providing proper pollination, ease in operation, and aid in future tree thinning. They can be arranged in a square, rectangle, diagonal shapes, or in a quincunx, triangle, or contour shape. While square is the most common, any of these patterns can prove successful as long as your rows are spaced properly to allow a good distance between rows.
As far as management goes, it really depends on the cultural inputs, the level of pest management needed for the area, and the economic returns expected. For more information on pecan orchard management and growth, you can find a full guide here.


text:
Tyson Slocum
Director, Energy Program
@TysonSlocum
Tyson Slocum is director of Public Citizen's Energy Program, covering the regulation of petroleum, natural gas and power markets. Tyson promotes an equitable energy transition that provides distributed renewable energy generation and sustainable transportation solutions for working families. Tyson serves on the U.S. Commodity Futures Trading Commission's Energy & Environmental Markets Advisory Committee, and frequently intervenes before the Federal Energy Regulatory Commission representing the interests of household consumers. Tyson presents his research in congressional testimony and appears regularly in the media. Tyson is a member of the faculty at the University of Maryland Honors College, where he teaches energy and climate policy. Prior to joining Public Citizen in 2000, Tyson served as an analyst with the Institute on Taxation & Economic Policy. Tyson is an expert in issues dealing with regulation and deregulation of energy markets, the impact of mergers and lax regulations over electricity, petroleum and natural gas and federal energy legislation.
Media Appearances:
Tyson has appeared on CNN, CNBC, MSNBC, Fox News and Comedy Central's "Colbert Report," and has been quoted in publications such as Forbes, CNNMoney.com, The Hill, The New York Times, The San Francisco Chronicle, The Associated Press and Los Angeles Times.

redpajama_set_name: RedPajamaCommonCrawl


Maternity Nightgowns - Nothing should come between an expectant mother and a good night's sleep. Luxurious and comfortable maternity sleepwear is a must for any mama-to-be and we've got the inside secrets on how to pick the best styles for your pregnancy.
Look for stretchy and soft styles like cotton nightgowns that will easily accommodate your changing body and remain comfortable whether you are sitting or sleeping.
Pregnancy can be a time of major discomfort for many women, so slipping on your sleepwear should feel like a sigh of relief after a long day.
Opt for nightgowns made from natural fabrics like cotton or silk. These materials will breathe and keep you cooler than sweaty synthetics like polyester.
Look for styles in fabrics that have a bit of stretch to them. This will maximize your comfort and make wearing your nightgown feel like pure relaxation.
No matter the time of year, more often than not you'll hear pregnant women complaining about being hot. Save yourself from tossing and turning in nighties that are too toasty and choose sleeveless gowns that keep you cool.
Styles that are too covered up will only add to the extra heat and you'll banish them to the back of your lingerie drawer in favor of something cooler, so look for maternity nightgowns with a little less coverage that will become easy favorites.
Many maternity nighties have a clip on each strap that allows for the exposure of one breast when undone; this offers easier access to the breasts.
A growing bust can make for uncomfortable nights when you're unsupported in a loose fitting nightgown.
Many expectant mothers choose to wear a bra to bed, but this can be equally uncomfortable after a long day.
The solution? Try a maternity nightgown with a built in shelf bra. You'll get the extra support you need without the hooks and closures that make regular bras bothersome in bed.
We all hope for that radiant glow during pregnancy but the reality is that it's often a time where women don't feel their best.
No worries, it's temporary! Forget about skin problems, greasy hair, or puffy feet. Push all of that aside and opt for a glamorous and feminine nightgown that makes you feel pretty and pampered.
Going to bed is an opportunity to treat yourself and feel relaxed and luxurious, and spoiling yourself with beautiful sleepwear is a great way to instantly feel better.
A maternity nightgown should be roomy enough so that you can sleep comfortably without constriction, and also to accommodate your tummy as you progress in your pregnancy.
A couple of maternity nightgowns can last your entire pregnancy if you choose a size that will grow with you and won't become too tight or cumbersome the further along you get.
Many women opt for a larger size than they typically wear to accommodate growing bellies and keeping comfortable.
Maternity night gowns aren't just for before the baby. Make your sleepwear last when you splurge for a matching robe or kimono, and make it a sleepwear set.
You'll love being able to quickly drape it around your shoulders when you have company, and especially at night when you have to get up. The added coverage will keep you toasty as you tend to your baby in the wee hours.
Plan ahead and treat yourself to a coordinating cotton robe that will make you feel pampered and pretty, even on those sleepless nights. Remember, a new maman needs to take of herself too.


text:
/* Interface */
#include "v__networkQueue.h"

/* Implementation */
#include "os_report.h"
#include "os_process.h"
#include "c_base.h"
#include "kernelModuleI.h"
#include "v_networkReaderEntry.h"
#include "v_networkReaderStatistics.h"
#include "v_entity.h"    /* for v_entity() */
#include "v_group.h"     /* for v_group()  */
#include "v__reader.h"    /* for v_reader() */
#include "v_readerQos.h" /* for v_readerQosNew() */
#include "v_entry.h"     /* for v_entry()  */
#include "v_state.h"
#include "v_subscriber.h"
#include "v_groupSet.h"
#include "v_topic.h"
#include "v_message.h"
#include "v_messageQos.h"
#include "v_fullCounter.h"
#include "v__processInfo.h"
#include "v__kernel.h"

#define MIN_SLEEPTIME {0, 0}
#define MIN_SLEEPPERIOD 0

#define CONDWAIT_UNTIL(cvRef, mutexRef, until) \
    v_networkQueueCondWaitUntil(cvRef, mutexRef, until)

#define v_networkQueueSample(o) (C_CAST(o,v_networkQueueSample))
#define v_networkStatusMarker(o) (C_CAST(o,v_networkStatusMarker))

/* ------------------------------- v_networkQueue ------------------------------ */

#define v_networkQueueItem(o)   (C_CAST(o, v_networkQueueItem))

#define V_SEC_TO_MSEC(sec)   ((c_ulonglong)(sec)*1000)
#define V_MSEC_TO_SEC(msec)  ((c_ulong)((msec)/1000))
#define V_NSEC_TO_MSEC(nsec) ((c_ulonglong)((nsec)/1000000))
#define V_MSEC_TO_NSEC(nsec) ((c_ulong)((nsec)*1000000))

#define TIMEE_TO_MSEC(time, msec) \
    msec = (c_ulonglong)(OS_TIMEE_GET_VALUE(time) / OS_TIME_MILLISECOND)

#define TIME_TO_MSEC_ULONG(time, msec) \
    msec = (c_ulong)(V_SEC_TO_MSEC(time.seconds) + V_NSEC_TO_MSEC(time.nanoseconds))

static void
v_networkQueueUpdateNextWakeup(
    v_networkQueue queue,
    c_bool *hasChanged)
{
    os_timeE now;
    os_timeE newWakeup;
    c_ulonglong msecsTime;
    c_ulonglong msecsResult;
    c_ulonglong msecsLeftOver;

    *hasChanged = FALSE;
    if (queue->periodic) {
        now = os_timeEGet();
        TIMEE_TO_MSEC(now, msecsTime);
        /* Do a ++ because we are doing a ceil and TIME_TO_MSEC is doing a trunc.
         * Only if time was an exact multiple of milliseconds, this approach is
         * not completely correct. But it saves us the hassle and this works fine
         */
        msecsTime++;
        msecsLeftOver = (msecsTime - queue->phaseMilliSeconds) % queue->msecsResolution;
        msecsResult = msecsTime - msecsLeftOver + queue->msecsResolution;
        newWakeup = OS_TIMEE_MILLISECONDS((os_duration)msecsResult);
        if (os_timeECompare(newWakeup,queue->nextWakeup) == OS_MORE) {
            queue->nextWakeup = newWakeup;
            *hasChanged = TRUE;
        }
    }
}

#define dataExpired(queue) \
        (os_timeECompare(queue->nextWakeup, \
                       queue->firstStatusMarker->sendBefore) == OS_MORE)

#define v_networkQueueHasExpiringData(queue) \
        (queue->firstStatusMarker ? \
            (queue->periodic ? dataExpired(queue) : \
                               TRUE) : \
            FALSE)

v_networkQueue
v_networkQueueNew(
    c_base base,
    c_ulong queueSize,
    c_ulong priority,
    c_bool reliable,
    c_bool P2P,
    os_duration resolution,
    v_networkQueueStatistics statistics)
{
    v_networkQueue result = NULL;
    c_type type;
    c_bool hasChanged;
    os_timeE now;

    type = c_resolve(base, "kernelModuleI::v_networkQueue");
    assert(type);
    result = v_networkQueue(c_new(type));
    c_free(type);

    if (result) {
        /* Queue properties */
        result->maxMsgCount = queueSize;
        result->currentMsgCount = 0;
        /* Cached type */
        result->statusMarkerType = c_resolve(base, "kernelModuleI::v_networkStatusMarker");
        assert(result->statusMarkerType != NULL);
        result->sampleType = c_resolve(base, "kernelModuleI::v_networkQueueSample");
        assert(result->sampleType != NULL);
        /* Linked list of in-use marker items */
        result->firstStatusMarker = NULL;
        result->lastStatusMarker = NULL;
        /* Linked list of free marker and message items */
        result->freeStatusMarkers = NULL;
        result->freeSamples = NULL;
        /* Init cv stuff */
        (void)c_mutexInit(c_getBase(result), &result->mutex);
        c_condInit(c_getBase(result), &result->cv, &result->mutex);
        /* Currently no differentiation wrt qos */
        result->priority = priority;
        result->reliable = reliable;
        result->P2P = P2P;

        result->statistics = c_keep(statistics);

        if (OS_DURATION_ISZERO(resolution)) {
            result->periodic = FALSE;
            result->resolution = OS_DURATION_INFINITE;
            result->msecsResolution = 0xFFFFFFFF;
            result->phaseMilliSeconds = 0;
            result->nextWakeup = OS_TIMEE_INFINITE;
        } else {
            assert(resolution > 0);
            result->periodic = TRUE;
            result->resolution = resolution;
            result->nextWakeup = OS_TIMEE_ZERO;
            result->msecsResolution = (c_ulong)(resolution / OS_DURATION_MILLISECOND);
            /* A semi-random phase to avoid wake-ups at the same time */
            now = os_timeEGet();
            result->phaseMilliSeconds = ((c_ulong)((double)(OS_TIMEE_GET_NANOSECONDS(now)/1000000) * 1.618)) % result->msecsResolution;
            v_networkQueueUpdateNextWakeup(result, &hasChanged);
            assert(hasChanged);
        }
        result->threadWaiting = FALSE;
    } else {
        OS_REPORT(OS_ERROR,
                  "v_networkQueueNew",V_RESULT_INTERNAL_ERROR,
                  "Failed to allocate network queue.");
        assert(FALSE);
    }
    return result;
}

c_bool
v_networkQueueWrite(
    v_networkQueue queue,
    v_message msg,
    v_networkReaderEntry entry,
    c_ulong sequenceNumber,
    v_gid sender,
    c_bool sendTo, /* for p2p writing */
    v_gid receiver)
{
    c_bool result = TRUE;
    c_bool wasEmpty;
    c_bool found;
    v_networkStatusMarker *currentMarkerPtr;
    v_networkStatusMarker currentMarker;
    v_networkStatusMarker marker;
    v_networkQueueSample newHolder;
    c_ulonglong msecsTime;
    c_ulonglong msecsResult;
    c_ulonglong msecsLeftOver;
    os_timeE sendBeforeNoTrunc;
    os_timeE sendBefore;
    c_ulong priorityLookingFor;
    os_compare eq;
    c_bool sendNow = FALSE;

    V_MESSAGE_STAMP(msg,readerInsertTime);

    c_mutexLock(&queue->mutex);
    sendBefore = OS_TIMEE_ZERO;

    if (queue->statistics) {
        queue->statistics->numberOfSamplesArrived++;
    }

    /* When the network queue is full then the message should be rejected.
     * The exception is an UNREGISTER message. The UNREGISTER message should
     * always be accepted because rejecting it may bring the system into an
     * inconsistent state (an instance cannot be NO_WRITERS for some readers
     * and still alive for the network reader). Because state changes as a
     * result of invalid message do not count towards resource limits this
     * is a valid exception. The DISPOSE message does not need to fall into
     * the same category because the group never acts on only the DISPOSE
     * messages. It is the transition to the NO_WRITERS state that potentially
     * triggers the purge mechanism.
     */
    if (!v_messageStateTest(msg,L_UNREGISTER)) {
        if (queue->currentMsgCount >= queue->maxMsgCount) {
            c_mutexUnlock(&queue->mutex);
            if (queue->statistics) {
                queue->statistics->numberOfSamplesRejected++;
            }
            return FALSE;
        }
    }

    currentMarkerPtr = &(queue->firstStatusMarker);
    currentMarker = *currentMarkerPtr;

    if (queue->threadWaiting) {
        wasEmpty = !v_networkQueueHasExpiringData(queue);
    } else {
        wasEmpty = FALSE;
    }

    marker = NULL;
    found = FALSE;

    priorityLookingFor = (c_ulong) v_messageQos_getTransportPriority(msg->qos);
    if (queue->periodic) {
        if (v_messageQos_isZeroLatency(msg->qos)) {
            sendNow = TRUE;
        } else {
            sendBeforeNoTrunc = os_timeEAdd(msg->allocTime, v_messageQos_getLatencyPeriod(msg->qos));
            TIMEE_TO_MSEC(sendBeforeNoTrunc, msecsTime);
            msecsLeftOver = (c_ulonglong)((msecsTime - queue->phaseMilliSeconds) % queue->msecsResolution);
            msecsResult = (c_ulonglong)(msecsTime - msecsLeftOver);
            sendBefore = OS_TIMEE_MILLISECONDS((os_duration)msecsResult);
        }
        while ((currentMarker != NULL) && (!found)) {
            eq = os_timeECompare(sendBefore, currentMarker->sendBefore);
            switch (eq) {
            case OS_MORE:
                currentMarkerPtr = &currentMarker->next;
                currentMarker = *currentMarkerPtr;
            break;
            case OS_EQUAL:
                if (priorityLookingFor < currentMarker->priority) {
                    currentMarkerPtr = &currentMarker->next;
                    currentMarker = *currentMarkerPtr;
                } else {
                    found = TRUE;
                    if (priorityLookingFor == currentMarker->priority) {
                        marker = currentMarker;
                    }
                }
            break;
            case OS_LESS:
                found = TRUE;
            break;
            default:
                assert(FALSE);
            break;
            }
        }
    } else {
        if (currentMarker) {
            sendBefore = OS_TIMEE_ZERO;
            if (OS_TIMEE_ISZERO(currentMarker->sendBefore)) {
                marker = currentMarker;
            }
        }
    }
    /* Insert after end of list */
    if (marker == NULL) {
        if (queue->freeStatusMarkers == NULL) {
            marker = v_networkStatusMarker(c_new(queue->statusMarkerType));
            if (marker == NULL) {
                OS_REPORT(OS_ERROR,
                          "v_networkQueueWrite",V_RESULT_INTERNAL_ERROR,
                          "Failed to allocate v_networkStatusMarker object.");
                c_mutexUnlock(&queue->mutex);
                return FALSE;
            }
        } else {
            marker = queue->freeStatusMarkers;
            queue->freeStatusMarkers = marker->next;
        }

        marker->sendBefore = sendBefore;
        marker->priority = priorityLookingFor;
        marker->firstSample = NULL;
        marker->lastSample = NULL;
        marker->next = *currentMarkerPtr; /* no keep, transfer refCount */
        if (marker->next == NULL) {
            queue->lastStatusMarker = marker; /* no keep, not reference counted */
        }
        *currentMarkerPtr = marker; /* no keep, transfer refCount */
    }
    V_MESSAGE_STAMP(msg,readerLookupTime);
    assert(marker != NULL);
    if (queue->freeSamples == NULL) {
        newHolder = c_new(queue->sampleType);
    } else {
        newHolder = queue->freeSamples;
        queue->freeSamples = newHolder->next;
    }

    queue->currentMsgCount++;

    if (queue->statistics) {
        queue->statistics->numberOfSamplesInserted++;
        v_fullCounterValueInc(&queue->statistics->numberOfSamplesWaiting);
    }

    newHolder->message = c_keep(msg);
    newHolder->entry = c_keep(entry);
    newHolder->sequenceNumber = sequenceNumber;
    newHolder->sender = sender;
    newHolder->sendTo = sendTo;
    newHolder->receiver = receiver;

    if (marker->lastSample != NULL) {
        newHolder->next = v_networkQueueSample(marker->lastSample)->next; /* no keep, transfer refCount */
        v_networkQueueSample(marker->lastSample)->next = newHolder; /* no keep, transfer refCount */
    } else {
        newHolder->next = marker->firstSample; /* no keep, transfer refCount */
        marker->firstSample = newHolder; /* no keep, transfer refCount */
    }
    marker->lastSample = newHolder;

    /* Write done, wake up waiters if needed */
    if (wasEmpty && queue->threadWaiting) {
        if (sendNow || v_networkQueueHasExpiringData(queue)) {
            c_condBroadcast(&queue->cv);
        }
    }

    c_mutexUnlock(&queue->mutex);

    return result;
}

#undef V_SEC_TO_MSEC
#undef V_MSEC_TO_SEC
#undef V_NSEC_TO_MSEC
#undef V_MSEC_TO_NSEC

c_bool
v_networkQueueTakeFirst(
    v_networkQueue queue,
    v_message *message,
    v_networkReaderEntry *entry,
    c_ulong *sequenceNumber,
    v_gid *sender,
    c_bool *sendTo, /* for p2p writing */
    v_gid *receiver,
    os_timeE *sendBefore,
    c_ulong *priority,
    c_bool *more)
{
    c_bool result = FALSE;
    v_networkStatusMarker currentMarker;
    v_networkQueueSample sample;

    *more = FALSE;

    c_mutexLock(&queue->mutex);

    currentMarker = queue->firstStatusMarker;
    /* NOTE: the current design expects that this function has been preceded
     *       by a NetworkReaderWait. Therefore, the currentMarker should never
     *       be NULL.
     */

    if (currentMarker != NULL) {
        sample = currentMarker->firstSample;
        assert(sample != NULL);
        result = TRUE;

        V_MESSAGE_STAMP(sample->message,readerDataAvailableTime);

        /* Copy values */
        *message = sample->message; /* no keep, transfer refCount */
        sample->message = NULL; /* clean reference because of  refCount transfer */
        *entry = sample->entry; /* no keep, transfer refCount */
        sample->entry = NULL; /* clean reference because of refCount transfer */
        *sequenceNumber = sample->sequenceNumber;
        *sender = sample->sender;
        *sendTo = sample->sendTo;
        *receiver = sample->receiver;
        *sendBefore = currentMarker->sendBefore;
        *priority = currentMarker->priority;

        /* Remove and free holder */
        queue->currentMsgCount--;

        if (queue->statistics) {
            queue->statistics->numberOfSamplesTaken++;
            v_fullCounterValueDec(&queue->statistics->numberOfSamplesWaiting);
        }

        currentMarker->firstSample = sample->next; /* no keep, transfer refCount */
        sample->next = queue->freeSamples;
        queue->freeSamples = sample;
        if (currentMarker->firstSample == NULL) {
            queue->firstStatusMarker = currentMarker->next; /* no keep, transfer refCount */
            currentMarker->next = queue->freeStatusMarkers;
            queue->freeStatusMarkers = currentMarker;
            if (queue->firstStatusMarker == NULL) {
                queue->lastStatusMarker = NULL;
            }
        }
        *more = (queue->firstStatusMarker != NULL);
    } else {
        *message = NULL;
        *entry = NULL;
        *more = FALSE;
    }
    c_mutexUnlock(&queue->mutex);

    return result;
}

c_bool
v_networkQueueTakeAction(
    v_networkQueue queue,
    v_networkQueueAction action,
    c_voidp arg)
{
    v_networkStatusMarker currentMarker;
    v_networkQueueSample sample;
    c_bool proceed = TRUE;

    c_mutexLock(&queue->mutex);
    currentMarker = queue->firstStatusMarker;
    while ((currentMarker != NULL) && proceed) {
        sample = currentMarker->firstSample;
        assert(sample != NULL);

        if (sample != NULL) {
            proceed = action(sample, arg);
            queue->currentMsgCount--;
            if (queue->statistics) {
                queue->statistics->numberOfSamplesTaken++;
                v_fullCounterValueDec(&queue->statistics->numberOfSamplesWaiting);
            }

            currentMarker->firstSample = sample->next; /* no keep, transfer refCount */
            sample->next = queue->freeSamples;
            queue->freeSamples = sample;
            if (currentMarker->firstSample == NULL) {
                currentMarker->lastSample = NULL;
                queue->firstStatusMarker = currentMarker->next; /* no keep, transfer refCount */
                currentMarker->next = queue->freeStatusMarkers;
                queue->freeStatusMarkers = currentMarker;
                if (queue->firstStatusMarker == NULL) {
                    queue->lastStatusMarker = NULL;
                }
            }
        }
        currentMarker = queue->firstStatusMarker;
    }
    c_mutexUnlock(&queue->mutex);
    proceed = action(NULL, arg);

    return proceed;
}

v_networkReaderWaitResult
v_networkQueueWait(
    v_networkQueue queue)
{
    v_networkReaderWaitResult result = V_WAITRESULT_NONE;
    v_result rs;
    c_bool hasChanged;
    os_duration interval;
    os_duration minSleepTime = OS_DURATION_ZERO;
    os_compare eq;

    c_mutexLock(&queue->mutex);

    /* First update nextWakeup */
    v_networkQueueUpdateNextWakeup(queue, &hasChanged);
    if (hasChanged) {
        result |= V_WAITRESULT_TIMEOUT;
    }

    /* With the new nextWakeup, check if any data is expiring */
    if ((int)v_networkQueueHasExpiringData(queue)) {
        result |= V_WAITRESULT_MSGWAITING;
    }

    /* Also check if no request has been issued lately */
    if ((int)queue->triggered) {
        result |= V_WAITRESULT_TRIGGERED;
    }

    /* Now go to sleep if needed */
    while (result == V_WAITRESULT_NONE) {
        if (queue->periodic) {
            os_timeE org =  os_timeEGet();
            interval = os_timeEDiff(queue->nextWakeup,org);
            eq = os_durationCompare(minSleepTime, interval);
            if (eq == OS_LESS) {
                queue->threadWaiting = TRUE;
                rs = v_condWait(&queue->cv, &queue->mutex, interval);
                queue->threadWaiting = FALSE;
            } else {
                rs = V_RESULT_TIMEOUT;
            }
            if (rs == V_RESULT_TIMEOUT) {
                result |= V_WAITRESULT_TIMEOUT;
                queue->nextWakeup = os_timeEAdd(queue->nextWakeup, queue->resolution);
            }
        } else {
            /* Wait infinitely if the queue is not periodic */
            queue->threadWaiting = TRUE;
            rs = v_condWait(&queue->cv, &queue->mutex, OS_DURATION_INFINITE);
            queue->threadWaiting = FALSE;
        }
        /* Test current status of queue */
        if ((rs != V_RESULT_OK) && (rs != V_RESULT_TIMEOUT)) {
            result |= V_WAITRESULT_FAIL;
        } else {
            if ((int)queue->triggered) {
                result |= V_WAITRESULT_TRIGGERED;
            }
            if (v_networkQueueHasExpiringData(queue)) {
                result |= V_WAITRESULT_MSGWAITING;
            }
        }
    }
    queue->triggered = 0;

    c_mutexUnlock(&queue->mutex);

    return result;
}

void
v_networkQueueTrigger(
    v_networkQueue queue)
{
    c_mutexLock(&queue->mutex);
    queue->triggered = 1;
    if (queue->threadWaiting) {
        c_condBroadcast(&queue->cv);
    }
    c_mutexUnlock(&queue->mutex);
}

redpajama_set_name: RedPajamaGithub


New Feature: Now You Can Disable the Download Option!
In these past few days we introduced an important feature that you've long been waiting for.
It may have taken some time to release, but we're happy to tell you that now you're free to disable the download feature if you don't want to give listeners access to your files.
Tell your friends about the news, and start checking which tracks to enable or not!


text:
Inside America's Most Dangerous Nuclear Power Plant
Posted By Jeffrey St. Clair On January 17, 2004 @ 12:00 am In article,articles 2014 onward | Comments Disabled
These are desperate days for Entergy, the big Arkansas-based power conglomerate that owns the frail Indian Point nuclear plant, located on the east bank of the Hudson River outside Buchanan, New York-just 22 miles from Manhattan.
First, a scathing report by a nuclear engineer fingered Indian Point as one of five worst nuclear plants in the United States and predicted that its emergency cooling system "is virtually certain to fail."
This damning disclosure was hotly followed by the release of a study conducted by the Los Alamos National Laboratory for the Nuclear Regulatory Commission which ominously concluded that the chances of a reactor meltdown increase by nearly a factor of 100 at Indian Point because the plant's drainage pits (also known as containment sumps) are "almost certain" to be blocked with debris during an accident.
"The NRC has known about the containment sump problem at Indian Point since September 1996, but currently plans to fix it only by March 2007," says David Lochbaum, a nuclear safety engineer with the Union of Concerned Scientists who. "The NRC cannot take more than a decade to fix a safety problem that places millions of Americans at undue risk."
Entergy and the NRC both downplayed the meltdown scenario and defended the leisurely pace of the planned repairs, which won't start until 2007. Entergy says that there's no rush to fix the problems with the emergency system because a breakdown isn't likely in the first place.
But that's flirting with almost certain disaster. Entergy and the NRC are staking the lives of millions on odds of a single water pipe not breaking under pressure. The problem is that these very kinds of pipes have corroded and been breached at other nuclear plants featuring similar pressurized water design. At the Davis-Bessie plant near Toledo, Ohio, a vessel head on one of the cooling water pipes had been nearly corroded away by acid and was dangerously close to rupturing.
The cooling water in these pipes is kept at a pressure of 2,200 pounds per square inch. If a pipe breaks, the 500-degree water would blow off as steam, tearing off plant insulation and coatings. The escaped water will pour into the plant's basement, where sump pumps are meant to draw the water back into the reactor core. But the Los Alamos tests showed that the cooling water would collect debris along the way that will clog up the mesh screens on the pipes leading back into the reactor. If this happens, the cooling of the reactor fuel would stop, the radioactive core would start to melt and the plant will belch a radioactive plume that will threaten millions downwind.
All this would happen very fast. The Indian Point 2 reactor would exhaust all of its cooling water in less than 23 minutes, while the number 3 reactor would consume all of its water in only 14 minutes. Try getting a nuclear plumber that quickly.
Yes, it sounds trite, but that's essentially what Entergy proposes as its quick fix to the meltdown scenario. Jim Steets, Entergy's spokesman on Indian Point matters, told the New York Times last month that the company was training its workers to scour the plant for flaking paint and potential debris and that if an accident occurred they would pump the water into the core more slowly, a plan that would buy plant managers and executives a few more minutes to flee the scene.
Where people would go and how they would get there in the event of a nuclear meltdown or other radioactive release at Indian Point is unclear. In September 2002, New York Governor George Pataki commissioned a report on Indian Point's evacuation plan. He picked James Lee Witt, the former Rose Law Firm attorney who served as head of FEMA during the Clinton administration, to oversee the investigation. At the time, Pataki said that he would support closure of the plant if Witt's report revealed that communities near the plant could not be safely evacuated.
Witt submitted his report on January 10, 2003. While somewhat timid and cautious, Witt concluded that Entergy's off-site evacuation plans for Indian Point were woefully inadequate.
Witt wrote: "It is our conclusion that the current radiological response system and capabilities are not adequate to overcome their combined weight and protect the people from an unacceptable dose of radiation in the event of a release from Indian Point, especially if the release is faster or larger than the design basis release."
In the end, Witt concluded that it was not possible to fix the evacuation plan, given the problems at the plant, the density of the nearby communities and looming security threats.
This sobering scenario was followed by news that a review of the company's security record revealed that Entergy, in cahoots with the Nuclear Regulatory Commission, faked a test designed to determine whether the plant is vulnerable to a terrorist attack.
In an August letter, the NRC assured members of Congress that Entergy had developed a "strong defensive strategy and capability" for the plant and passed with flying colors a so-called "force-on-force" test, a mock assault.
In turns out, however, that the NRC gave Entergy officials months of advance warning about the test and then, as the Indian Point team cribbed for the exam, dumbed down the assault to ensure that they would pass.
Most assessments by the CIA and other intelligence agencies suggest that an assault on a nuclear plant would require a squad-sized force of between 12 and 14 attackers, who would assault the plant by night, armed with explosives, machine guns with armor-penetrating bullets, and rocket-propelled grenades.
This isn't the attack that was repelled by the Entergy security team. Instead, Entergy's men battled off a squad of 4 mock terrorists, armed only with hunting rifles, who assaulted the plant in broad daylight. Moreover, the attacking squad weren't former Delta Force operatives trained in terrorist tactics, but security officers from a nearby nuclear plant who assault the plant from only one point after crossing open fields in plain view of Indian Point's security guards.
Just to make sure that there were no surprises, the Entergy security team, which consisted largely of guards hired only for the test, was warned that a mock attack would take place sometime within the next hour. Even under these rigged conditions, Entergy barely passed the security test.
Environmentalists and anti-nuke activists living near the plant hoped this would be the final straw for the aging reactor. They marshaled their evidence of safety violations, inept evacuation plans and lax security and headed off to offices of the most powerful Democrat in America, Hillary Clinton.
But Hillary has remained about reserved as Pataki on Indian Point, issuing robotic requests for more studies but refusing to call for the plant's closure. Not that her words mean much. Last month, she pledged to filibuster the nomination of Utah governor Mike Leavitt for director of the EPA. She ended up voting to confirm his nomination.
Of course, Hillary's ties to Entergy are almost primal. The Little Rock-based Entergy Corporation, which once employed John Huang, the infamous conduit to the Lippo Group, was one of Bill Clinton's main political sponsors, shoveling more than $100,000 into his political coffers from 1992 to 1996.
The more plaintive the cries for Indian Point's closure, the more money Entergy spreads around to politicians with reputation for flexibility in these matters. Already this year, Entergy's New York Political Action Committee-ENPAC New York-has doled out more than $25,000 to New York politicians alone. Everyone got into the act from Pataki and Clinton to Democratic congressman Eliot Engel to lowlier footsoldiers for the nuclear plant, including two state assemblymen, commissioners from Westchester and Orange counties, Bronx Borough president Adolfo Carrion and state comptroller Alan Hevesi, whose election campaign was endorsed by the Sierra Club.
Political money isn't the only tool in Entergy's bag of tricks. In late October, community activists in the Bronx reported that emissaries from Entergy were canvassing black and Hispanic neighborhoods in New York City and Westchester County with an ominous warning: if Indian Point closes, air quality in urban areas will deteriorate and more blacks and Hispanics will develop respiratory illnesses. The Entergy reps told people that new coal-fired power plants would be built in their neighborhoods and urged them to sign a petition.
"In recent years, nearly all proposals for new power plants in New York state have been in or adjacent to areas with high concentrations of people of African descent and Latinos," a memo handed out at the door warns. There is, naturally, much truth to this claim. and Entergy is in a unique position to know. since throughout the southeast it has targeted its power plants in black neighborhoods, where it has heralded them as bringing economic engines for impoverished communities.
The canvassers also carried cellphones as they went from door to door. They hit the speed dial number of a local legislator, handed the phone to the resident and then prompted them on how to express their concerns about the possible closure of Indian Point.
The petition drive, which discreetly by-passed the 13 predominately white districts in Westchester County, was run by a group calling itself by the lofty-sounding name: the Campaign for Affordable Energy, Environmental & Economic Justice. The group was supposedly based in Manhattan. In fact, it was created and wholly funded by Entergy.
"This is a sham front group fabricated by the nuclear industry to scare black and low income people," says Susan Tolchin, a staffer for Westchester County Executive Andrew Spano, who supports closing the Indian Point plant. "It's an outrageous and disgusting attempt to exploit the minority community for corporate greed."
JEFFREY ST. CLAIR is the author of Been Brown So Long It Looked Like Green to Me: the Politics of Nature.
URL to article: https://www.counterpunch.org/2004/01/17/inside-america-s-most-dangerous-nuclear-power-plant/


text:
Re:Zero – Starting Life in Another World The Prophecy of the Throne gets a second character trailer
Posted on 2 months ago by Bryce(@brodee922) in Switch eShop, Videos | 0 comments
Spike Chunsoft has released another trailer for the upcoming visual novel Re:Zero – Starting Life in Another World The Prophecy of the Throne. This nearly a minute and a half trailer details over 20 characters coming to the game and gives glimpses of gameplay.
Feel free to check out the trailer below.
Re:Zero – Starting Life in Another World The Prophecy of the Throne launches on January 28, 2021 for the Switch in Japan and January 29, 2021 in North America. Europe will get it on February 5, 2021.
More: Re: Zero - The Prophecy of the Throne, Spike Chunsoft
Shiren the Wanderer: The Tower of Fortune and the Dice of Fate overview trailer, physical version confirmed
Posted on 2 months ago by Brian(@NE_Brian) in News, Switch, Videos | 0 comments
Spike Chunsoft has passed along a new overview trailer for Shiren the Wanderer: The Tower of Fortune and the Dice of Fate, an upcoming roguelike for Switch. We have the video below.
You'll be able to pick up Shiren the Wanderer: The Tower of Fortune and the Dice of Fate digitally from the Switch eShop on December 2, and pre-orders are open now. Spike Chunsoft has confirmed that Limited Run Games will be producing a physical version later.
Catch up on new details regarding Shiren the Wanderer: The Tower of Fortune and the Dice of Fate here.
Source: Spike Chunsoft PR
More: Shiren the Wanderer: The Tower of Fortune and the Dice of Fate, Spike Chunsoft
Shiren the Wanderer: The Tower of Fortune and the Dice of Fate footage
Posted on 3 months ago by Brian(@NE_Brian) in Switch, Videos | 0 comments
As part of Game Live Japan 2020, Shiren the Wanderer: The Tower of Fortune and the Dice of Fate was shown off with plenty of footage. Check out all of the gameplay below.
Shiren the Wanderer: The Tower of Fortune and the Dice of Fate launches for Switch on December 2.
Re:Zero – Starting Life in Another World: The Prophecy of the Throne receives release date, new details, new trailer
Spike Chunsoft has provided a substantial update on Re:Zero – Starting Life in Another World: The Prophecy of the Throne. The biggest piece of news confirms the game's release date, which is set for January 29, 2021 in North America and February 5, 2021 in Europe.
We also have a bunch of details as well as a new trailer. Find the full roundup below.
More: Re:ZERO – Starting Life in Another World: The Prophecy of the Throne, Spike Chunsoft
Shiren the Wanderer: The Tower of Fortune and the Dice of Fate gets more details on new bonus dungeons and added features
Spike Chunsoft has shared more details about the new bonus dungeons and added features in the upcoming port of Shiren the Wanderer: The Tower of Fortune and the Dice of Fate for Switch.
Here's the full rundown:
Shiren the Wanderer: The Tower of Fortune and the Dice of Fate details – Live Exploration Display, new features and dungeons
This week's issue of Famitsu provides an update on Shiren the Wanderer: The Tower of Fortune and the Dice of Fate. Aside from providing information on a Live Exploration Display feature, the magazine also outlines new features and a trio of dungeons that have been added.
Here's the full roundup, courtesy of Gematsu:
Shiren the Wanderer: The Tower of Fortune and the Dice of Fate launches December 2 in the West, December 3 in Japan
Posted on 4 months ago by Elias in Switch | 0 comments
The enhanced port for Shiren the Wanderer: The Tower of Fortune and the Dice of Fate now sees a release date of December 3, 2020 for Japan. English, Japanese, Traditional Chinese, and Simplified Chinese language options will all be supported, as announced by developer Spike Chunsoft. The physical edition will cost 3,980 yen, and the digital edition will cost 2,709 yen respectively. The physical edition will include both a 60-page booklet and outer box sleeve which can be seen in the featured image above. We will keep an eye out for a verified Western launch date, but until then you can read our previous coverage of this mystery dungeon port here.
Update: A release date for the West is confirmed to be December 2.
More: Shiren the Wanderer: The Tower of Fortune and the Dice of Fate Plus, Spike Chunsoft
Shiren the Wanderer: The Tower of Fortune and the Dice of Fate – New illustration
A new illustration has been released by Spike Chunsoft for Shiren the Wanderer: The Tower of Fortune and the Dice of Fate. The game is releasing worldwide some time in 2020, and you can take a look at the overview found by Gematsu, here:
Shiren The Wanderer: The Tower of Fortune and the Dice of Fate is the latest installment in the storied franchise. Legend has it that Reeva, god of Destiny, holds sway over the past, present, and future. Said to dwell in the mysterious Tower of Fortune, Reeva decides the fates of all mankind with a trio of magic dice…
Lead Shiren The Wanderer and his sidekick Koppa in their quest to conquer the Tower of Fortune in this enhanced port of the PlayStation Vita classic with exclusive new dungeons!
Classic Roguelike Gameplay – Each defeat brings you closer to victory as you learn new strategies and skills.
Gorgeous Retro Graphics – Beautiful 2D graphics and colorful characters highlight your quest.
Enhanced Port – Contains bonus dungeons not found in the original release.
Re:ZERO – Starting Life in Another World: The Prophecy of the Throne gets key visual by series artist
Series artist Shinichirou Otsuka has drawn the key visual above exclusively for the game. Spike Chunsoft released the image today, featuring the main characters of the series, as well as a few that will be exclusive to the brand-new storyline that the game follows. The new story itself is fully supervised by the series author Tappei Nagatsuki, so players can expect a familiar touch to this tactical adventure game.
You can read more of our past coverage for this title here, here, and here.
Jump Force Deluxe Edition – Hunter x Hunter character Meruem announced as DLC fighter
The latest issue of Weekly Jump has revealed the first DLC character for Jump Force to be Meruem from Hunter x Hunter. Jump Force is already out on other platforms, but the Deluxe Edition that includes Character Pass 1 is due out for Switch on August 27 in Japan and August 28 in North America and Europe. What other DLC characters do you hope to see? Special thanks to Gematsu for the screenshot and information.
More: Jump Force, Namco Bandai, Spike Chunsoft


The group formed June 15th, 1993. Today's members consist of founder Bob C. (Keyboard ~ Guitar ~ Vocals), Theron J. (Keyboards ~ Vocals), Bryan W. (Saxophone ~ Horns ~ Vocals), Ed A. (Percussion), Troy C. (Bass), and Joe Y. (Bass).
The group has played various festivals, such as Grove City Summer Sizzle Concert Series, the Franklin County Fair, and Arts in the Alley.
Bits and Pieces has appeared on television multiple times, and done work for corporations such as The Kroger Company. The group plays local venues all over Central Ohio, and has performed live for wedding ceremonies and receptions.


text:
Iain Dale: The case for Davis leading the Leave Campaign
By Iain Dale
Follow @IainDale
Iain Dale: How Harry and Meghan sunk Barry Gardiner's Labour leadership bid
Iain Dale: Downing Street is keeping a beady eye on the BBC
Iain Dale is Presenter of LBC Drive, Managing Director of Biteback Publications, a columnist and broadcaster and a former Conservative Parliamentary candidate.
The EU Referendum campaign continues – albeit with the Prime Minister still rigging things in his favour. He still feels free to opine on the issue, and yet bars any minister who takes a different view from speaking.
His ridiculously pathetic attempt to scare us into believing that the Calais Jungle would suddenly become the Folkestone Jungle was quite a sight to behold. Good for the French in immediately making it clear they wouldn't seek to rip up the bilateral arrangement, which has absolutely bugger all to do with the EU. The mayor of Calais was no doubt doing her nut.
The latest scare story comes not from Cameron but from Hilary Benn, who has tried to make out that Vladimir Putin would be secretly rather pleased if we left the EU. You've got to laugh. As if Putin would give a toss either way.
There is a view that if the Prime Minister recommends we stay in (and let's face it, he's not going to do anything else) then that's game, set and match for the Remain campaign. I take a different view. If you have the political establishment, big business, the BBC, the Church and the beautiful people all advocating one thing, don't be surprised if the people do the exact opposite. We've become a suspicious bunch and far less deferential to those supposedly know better than us.
But there is still a leadership problem for Leave. Those speaking out in favour of leaving still resemble people attending the disastrous John Redwood leadership election campaign launch in 1995. Where are those who can articulate why we should leave without frothing at the mouth and their eyes resembling the aftermath of a Ketamin intake?
Well, there have been two significant developments recently. First, David Davis gave a lengthy 'death by powerpoint' lecture to the Centre for Policy Studies during which he carefully went through all the positive reasons for leaving, and scotching many of the scare stories. It was immediately interpreted as a bid to lead the Leave campaign. Whether it was or not (and I genuinely don't know), it could do far worse.
Secondly, Sarah Wollaston, previously a self-confessed Euro-enthusiast, wrote a brilliant article on Wednesday's Times articulating why she has decided that we now have to leave. She described Cameron's EU deal as a "threadbare offering" and asks "What use are "emergency breaks" when the driver has no control or "red cards" that have no credible chance of being deployed?"
She concluded: "If they are to have any hope of persuading the undecideds, the leave campaigns must settle their differences and inspire. We need a clear blueprint for Britain working alongside the EU in a constructive new partnership. We would join as the world's fifth largest economy, not isolated but confident, outward-looking and open for business."
And this is the challenge for the Leave campaign. Unite, inform, inspire. Are they up for the challenge?
When you're in a campaign you need to want to win it. You need to look as if you want to win it. You need to have all guns blazing. Radiate optimism. Inspire your campaign workers.
At the moment, Zac Goldsmith is doing none of these. He looks as if he'd rather be anywhere else but doing what he's doing. It appears that being in a bathtub with Mrs Brown would be preferable to sitting in a studio answering questions on his vision for London. Cameron needs to give Zac a lesson on how to appear being 'pumped up'.
The common consensus is that Sadiq Khan is having the better of the campaign so far. But all is not lost by any stretch. Assuming that Zac discovers his Mojo, he also has a powerful ally. Don't laugh, but his name is George Galloway. Galloway knows he won't win, but he can inflict some significant damage on Khan in some of the inner London Boroughs.
I am told that his supporters are encouraging voters just to use their first preference vote, and leave the rest of the ballot paper blank. Neither of the main two candidates is likely to win on the first ballot. If enough Galloway supporters don't use their second or even third preferences for Sadiq, that could let Zac through the back door. Stranger things have happened.
In March I am publishing David Laws' book on the history of the coalition. It's imaginatively titled 'Coalition'. I finished reading the unedited manuscript recently. I know I'm the publisher and I am biased, but it certainly doesn't disappoint. There is one politician who comes out of it very badly indeed and won't be a happy bunny. Such a tease…
If you've never listened to the Alex Salmond Phone-in (Wednesday at 4 on LBC), you're missing a treat. This week Mr S couldn't remember his salary as First Minister and was challenged to a fight on air by a certain William Wallace of Brentwood.
Och aye, we even bring back people from the dead on LBC. It's no doubt part of the reason David Mellor and Ken Livingstone have a show! Just my little joke. I actually think their Saturday morning show is one of the best shows on the station. It ought not to work, but it really does. Tune in on Saturday mornings from 10 and judge for yourself. Class bantz.
125 comments for: Iain Dale: The case for Davis leading the Leave Campaign


I found your site through a webcrawl, to see who else out there remembered Doctor Who, and was surprised by your article about Who fans in America. As an American Who fan myself, it was interesting to read your findings.
As an update on the matter here, times have not been good for the faithful who are out of touch with each other. When the Beeb priced old episodes out of everyone's hands, the outlets who had carried it (the PBS stations, and then later cable's Sci-Fi Channel) were forced to drop it. Recently, it came back on the digital outlet BBC America — at 0800 hours on weekdays! There aren't enough devoted Who fans who are willing to be late for work and school five days a week to keep it on the air here. The impression we get in America because of all this is that, yes, the BBC is proud of Doctor Who, but also embarrassed by it, and they try and kill it after it builds some audience. The fact that the TV movie with Paul McGann over here only got a 5.6 Nielsen was cited as why they never produced a new series just reinforces this perception.
I at least try and keep the faith as best I can. I recently sold a Doctor Who-based story to the webzine Roofttop Sessions, entitled 'Act Naturally', in the hope of keeping interest up. I actually heard back from a fellow contributor to the zine, who said the piece brought back all her memories about the show. A woman I'd known for years, and only with this one piece do I find that she's also a fan of the Doctor!


"There's such an array of questions ... One of the big ones is, 'Do I have to have my file?'"
Upcoming information sessions may offer answers to anyone wondering if they qualify for compensation as part of Canada's Sixties Scoop Settlement Agreement.
A settlement was reached between some Sixties Scoop survivors and the federal government in August; the settlement was an agreement to compensate eligible survivors for their loss of cultural identity. Now Collectiva Class Action Services, the claims administrator, is in the middle of a cross-country tour holding information sessions and gathering data on who is actually eligible for the compensation.
It is making stops in Saskatoon on Tuesday and in Regina on Wednesday.
Rod Belanger, a board member for the Sixties Scoop Indigenous Society of Saskatchewan, has been helping organize Regina's session. He said anyone even thinking of filing a claim should attend the event.
"There's such an array of questions … One of the big ones is, 'Do I have to have my file?'" said Belanger, referring to the file opened for every child when they entered the province's care during the Sixties Scoop. These files can be used to determine eligibility for compensation.
Belanger said many people are also wondering if they can submit claims for loved ones who were part of the Sixties Scoop but have recently passed away.
The Sixties Scoop Indigenous Society of Saskatchewan has been doing its best to answer people's questions, said Belanger, but it can't always help.
"We don't have all the answers for everything and in this part, especially the compensation part, this has always been tossed around and kind of chaotic in the right answers to give," he said.
The session will also give people the chance to chat with someone from the Aboriginal Financial Officers Association (AFOA).
"(The AFOA) are coming in for the afternoon to speak a little bit about finances and to give those that want information on what they can do with their claim," said Belanger.
The deadline for claim submissions as a part of this information gathering is the end of August, and Collectiva hopes to let people know if they are eligible or not by early 2020.
Saskatoon's session is being held at the Saskatoon Indian & Metis Friendship Centre on Feb. 12 from 9:30 a.m. to 4 p.m. Regina's session will take place at the Mâmawêyatitân Centre on Feb. 13 from 9:30 a.m. to 4 p.m.
Collectiva began this tour in December and is making a total of 21 stops across Canada.


text:
Prącie człowieka, także członek, penis – zewnętrzny męski narząd kopulacyjny człowieka rozumnego, który odpowiada również za wydalanie moczu z organizmu.

Budowa
Wewnętrzna budowa członka składa się z trzech kolumn: dwóch ciał jamistych oraz jednego ciała gąbczastego. Na zewnątrz częściami narządu są: żołądź, napletek, wędzidełko napletkowe i ujście cewki moczowej oraz trzon, który tworzą wcześniej wymienione, wewnętrzne części.

Żołądź

Zwieńczenie prącia, w postaci ukrwionej, bardzo wrażliwej na dotyk "główki". Jest ona zakończeniem ciała gąbczastego przebiegającego pomiędzy dwoma ciałami jamistymi. Żołądź jest ważną męską strefą erogenną, której stymulacja doprowadza do orgazmu.

Napletek

Fałd skórny osłaniający częściowo lub całkowicie żołądź prącia. Pełni funkcje ochronne względem wędzidełka i żołędzi, zapewniając odpowiednią wilgotność i osłaniając od uszkodzeń. Może być ściągnięty za żołądź, dlatego można go zsuwać i wsuwać na prącie. Podczas wzwodu w prawidłowych warunkach napletek zsuwa się, odsłaniając bogato unerwioną żołądź. Niektórzy mężczyźni posiadają jednak dłuższy napletek przez co podczas erekcji ich żołądź nie jest w pełni osłonięta lub w większości zasłonięta. Może to utrudnić stosunek seksualny. U małych dzieci napletek jest sklejony z żołędzią (konglutynacja). Napletek może zostać usunięty przez obrzezanie. Zabieg ten wykonuje się, kiedy męski narząd dotknięty jest chorobą. Niekiedy mężczyźni poddają się obrzezaniu, żeby zwiększyć higienę członka, gdyż pod napletkiem gromadzą się resztki łoju, potu, moczu i spermy – tzw. mastka, której zapach jest intensywny i nieprzyjemny. Innym powodem może być zbyt krótkie wędzidełko napletkowe lub jego zerwanie, a także chęć poprawy jakości życia seksualnego. Odsłonięta żołądź staje się mniej podatna na bodźce dotykowe, dzięki czemu mężczyzna jest w stanie dłużej utrzymać erekcję i wydłużyć stosunek.

Wędzidełko napletkowe

Niewielki cienki fałd skórny łączący napletek z żołędzią prącia. Znajduje się na dolnej (cewkowej) powierzchni członka i jest szczególnie czuły na dotyk. Jest jedną z wrażliwszych męskich stref erogennych.

Ujście cewki moczowej
Cewka moczowa oraz nasieniowody doprowadzają mocz, spermę oraz niekiedy także preejakulat do ujścia cewki, przez co płyny wydostają się na zewnątrz ciała.

Erekcja

Usztywnienie i powiększenie się członka w wyniku zwiększonego dopływu i zmniejszonego odpływu krwi z organu. Ma miejsce na skutek podniecenia seksualnego lub bodźców mechanicznych (dotykanie genitaliów) lub podczas snu, w fazie REM. W trakcie tej fazy snu zmniejsza się w organizmie wydzielanie noradrenaliny, która normalnie zwiększa ciśnienie tętnicze i w ten sposób blokuje erekcję. Erekcja umożliwia kopulację. W czasie wzwodu członek powiększa się o około 60 procent. U niektórych mężczyzn występuje impotencja, przez co mają oni problem z prowadzeniem normalnego życia seksualnego. Zaburzenia erekcji mogą także zapowiadać poważne choroby z układem krążenia.

Średnia długość i grubość

Średnia długość prącia Europejczyka w stanie wzwodu wynosi około 13 cm (długość zazwyczaj w przedziale 11–17 cm). Odchylenia od tej normy zdarzają się bardzo rzadko. U Azjatów ta średnia jest niższa, natomiast u mieszkańców Afryki, wyższa. Zwykle synowie dziedziczą rozmiar przyrodzenia po swoich ojcach. Niektórzy mężczyźni posiadają kompleks małego członka i obawiają się, że w przyszłości nie zaspokoją pragnień swoich partnerów/partnerek. Uważają swojego członka za mniejszego niż średnia, choć zazwyczaj tak nie jest. Dodatkowo kompleksy zaczynają się już w wieku dojrzewania, a prącie rośnie zwykle do 20. roku życia. Są też mężczyźni, którzy mierzą prącie w stanie spoczynku, a ta długość nie ma nic wspólnego z długością we wzwodzie. Obwód członka w stanie erekcji to około 11–14 cm.

Metody wydłużenia i pogrubienia
Jedyną potwierdzoną przez specjalistów możliwością powiększenia narządu jest operacja. Pierwszy jej rodzaj polega na chirurgicznym wykonaniu półowalnego cięcia brzusznego, przez które lekarz nacina więzadła mocujące prącie. W efekcie wysuwa się część cewki moczowej, która wcześniej znajdowała się pod fałdem brzusznym, a członek wydaje się być dłuższy i grubszy. Powikłaniami po zabiegu mogą być krwiaki, krwawienia oraz zakażenia genitaliów. Istnieje także zabieg mający na celu pogrubienia członka. Polega na przeszczepieniu tkanki tłuszczowej z innej partii ciała pod skórę członka. Zabieg nie jest trwały i efekty utrzymują się maksymalnie do 3 lat. Podobny efekt przynosi przeszczepienie specjalnie przygotowanego, egzogennego żelu lub kwasu hialuronowego.

Choroby i schorzenia

 Mastka – biała maź tworząca się pod napletkiem spowodowana brakiem higieny; wymieniana jest jako jedna z przyczyn raka prącia. Niewymywana prowadzi także do stanów zapalnych cewki moczowej, dróg moczowo-płciowych i prostaty.
 Zespół nabytego niedoboru odporności, nazywany AIDS – śmiertelna choroba spowodowana przez wirus HIV przenoszony m.in. przez kontakt seksualny.
 Chlamydie – choroba, którą można zarazić się przez kontakt seksualny (wszystkie jego rodzaje) bez prezerwatywy. Objawy zakażenia to zazwyczaj: bóle w trakcie oddawania moczu, pieczenie w cewce moczowej i śluzowo-ropny wyciek z cewki moczowej. Zakażanie może jednak przejść bezobjawowo. Powikłania mogą doprowadzić do bezpłodności. Uważa się również, że osoby chore na chlamydię są bardziej podatne na zakażenie wirusem HIV.
 Kiła – choroba przenoszona głównie drogą płciową. Osoba może być zakażona, jeśli odbywała kontakty seksualne (wszystkie jego rodzaje) bez prezerwatywy, połykała nasienie czy uprawiała rimming.
 Rzeżączka – choroba zakaźna przenoszona drogą płciową, której objawami mogą być: ropny wyciek z cewki moczowej, pieczenie i ból przy oddawaniu moczu. Można się nią zarazić także w wyniku zakażenia pośredniego (np. przez używanie ręcznika zarażonej osoby, siadanie na muszli klozetowej, na której bytują bakterie itp.), bowiem bakterie wywołujące rzeżączkę są w stanie przeżyć poza organizmem swojego właściciela aż 4 godziny. Nieleczona u mężczyzn może prowadzić do niepłodności.
 Zapalenie napletka/zapalenie żołędzi może pojawić się z błahych przyczyn, takich jak nadmierna lub niewystarczająca higiena intymna czy nieodpowiednie mydło. Wywołują je także niektóre infekcje narządów płciowych, co dodatkowo stanowi zagrożenie dla partnerki. Nieleczone może za sobą nieść powikłania.
 Stulejka – zwężenie ujścia napletka, które uniemożliwia (stulejka całkowita) lub utrudnia (stulejka częściowa) ściąganie napletka (we wzwodzie lub w stanie spoczynku penisa), przez co żołądź jest zasłonięta. Skutkami stulejki są m.in.: brak możliwości prawidłowego prowadzenia życia seksualnego i niemożność wymywania mastki.
 Załupek – niemożność sprowadzenia napletka z powrotem na żołądź prącia. Sytuacja może wystąpić w wyniku zbyt częstej aktywności seksualnej czy masturbacji. Powoduje to trudności przy oddawaniu moczu, złe ukrwienie oraz niedotlenienie tkanek.
 Złamanie prącia – rzadka forma urazu prącia (około 1-2% jego urazów), polegająca na przerwaniu ciągłości błony białawej ciała jamistego w trakcie wzwodu członka, najczęściej w wyniku nieostrożnego stosunku płciowego, onanizmu czy błahego urazu.
 Skrzywienie penisa – może być wrodzone lub nabyte. Większość przypadków, kiedy penis jest krzywy, nie wymaga leczenia. Skrzywienie prącia może powodować bolesne erekcje, a także problemy podczas stosunku. W zależności od przyczyny prostowanie penisa przeprowadza się metodami farmakologicznymi lub operacyjnie.
 Choroba Peyroniego – objawami choroby są m.in. bolesne wzwody prącia czy skrzywienie prącia podczas erekcji. Leczenie operacyjne polega na usunięciu skrzywienia prącia, w celu umożliwienia odbywania prawidłowych stosunków płciowych.
 Difalia – rzadkie schorzenie, które objawia się posiadaniem dwóch penisów. Szacuje się, że na świecie żyje 100 mężczyzn z dodatkowym prąciem.
 Mikropenis – rzadko występujący objaw kliniczny polegający na posiadaniu penisa, którego długość jest krótsza niż średnia. U noworodków płci męskiej urodzonych o czasie o mikropenisie mówimy, gdy długość penisa (po rozciągnięciu) wynosi mniej niż 1,9 cm, natomiast u dorosłych mężczyzn są to długości rzędu 2–4 cm (mierzone podczas wzwodu prącia). Przyczyny wystąpienia mikropenisa ciągle nie są do końca jasne i poznane. Najprawdopodobniej jest to skutek zaburzeń natury hormonalnej oraz wad genetycznych.
 Przedwczesny wytrysk – dysfunkcja seksualna polegająca na ejakulacji po minimalnej stymulacji seksualnej, osiągniętej wcześniej, niż mężczyzna chce. Zazwyczaj przedwczesny wytrysk dotyczy mężczyzny, który kończy stosunek seksualny po 3 minutach lub krócej.
 Impotencja – choroba dotykająca głównie mężczyzn powyżej 40. roku życia polegająca na niezdolności do wywołania czy utrzymania erekcji.
 Trwały wzwód – występuje np. na skutek źle wykonanej operacji powiększenia członka.
 Zakażenia opryszczkowe – małe, wypełnione surowiczym płynem pęcherzyki, które z czasem pękają i pojawiają się owrzodzenia. Opryszczkę narządów płciowych powoduje wirus, który występuje w dwóch postaciach – jeden jest przyczyną owrzodzeń wokół ust w przebiegu przeziębienia, drugi powoduje powstanie owrzodzeń wokół członka oraz odbytu. Zakażenie rozprzestrzenia się przez pocałunek oraz stosunek płciowy (wszystkie rodzaje).

Zobacz też

 korona żołędzi prącia
 prącie

Przypisy

Prącie

redpajama_set_name: RedPajamaWikipedia