See that giant cabbage? That thing has been sitting in my refrigerator for a little less than a month.
I bought it because I wanted to try my hand at making homemade egg rolls. It was one of those weeks when we were just too busy to go to the grocery store, so I put an order in through Fresh Direct instead. I love Fresh Direct; I love being able to select and "do my groceries" at my desk while eating lunch and knowing that they'll show up the next day within my desired window. Actually, I love grocery delivery services in general. When I lived in DC I used to order from Peapod constantly, and would occasionally--just for fun--spend an evening ticking off an imaginary shopping list and adding it to my virtual cart. Think of it as my Fantasy Football.
The quality of food from these services is generally pretty fantastic, but there is one tiny problem to ordering groceries online; it's difficult to properly gauge sizes. Without fail, each time the groceries arrive and Eugene and I go into the kitchen to unpack and put things away, I'll find myself pulling out a ridiculously tiny bottle of honey or olive oil that on the page had seemed like a good bargain but which in reality is actually just...small.
This time, though, it was totally the opposite. Among the bags of tomatoes and cucumbers I'd ordered, I found a head of cabbage the size of a watermelon.
"What the heck?!" I cried as I hefted the baby-sized object out of the box. Eugene looked at it and noted, "that's a lot of cabbage." I checked the tag; seven pounds! The irony of it all being that I'd ordered this particular type because the price had been very low (less than a dollar a pound). I'd assumed I'd be spending perhaps 3 or 3.50 for the cabbage. Certainly not $7!
Storage also posed another problem as it did not fit into the crisper. I finally wedged it onto the top shelf among the milk and yogurt, where it remained until this weekend, when I realized it was time to do something about it.
I'd long since lost the energy or enthusiasm that homemade egg rolls required, so instead I hunted around the Internet for "easy cabbage recipes." I was lucky to stumble onto this recipe for Jeremy Fox's Savoy cabbage slaw via The Wednesday Chef and used that as a basis for my own version. What appealed to me was the fact that unlike the slaws of my youth--those overly-sweet diner variety slathered in mayonnaise and inexplicably served with just about everything you order--this one was actually quite elegant and exciting on the palate.
The dressing itself is a mustard-based vinaigrette that marries beautifully with the toasted pecans (the original recipes called for walnuts, but it's what I had on hand). It's warm and cozy and tastes of autumn. I served it with some slices of baked ham that I simmered in a bouillon of chicken stock, apple butter, and herbs, for a perfect marriage of sweet, salty, and tangy.
Eugene, who has an ironic distaste for vinegar (despite his love of all things pickled), was hesitant at first, but quickly could not stop commenting on the way the pecans, ham, and slaw all went perfectly together. And just look at how he cleaned his plate! If you make this, please don't skip the nuts (unless you're allergic, of course).
1. Make the vinaigrette: In a bowl, mix together mustard, salt, vinegar, apple butter and honey. Slowly whisk in olive oil a little at a time until the dressing emulsifies into a creamy golden hue. Taste and adjust for seasoning, then set aside.
2. Make the salad: Put the cabbage in a large bowl.
3. Core , but don't peel, the apple and shred in the food processor or with box grater. Put the shredded apple into a bowl filled with lemon juice and 2 cups water, to prevent apple from browning. Strain and then add to the cabbage.
4. Toss the slaw with the vinaigrette and serve topped with the toasted pecans.
That happens to me with freshdirect too. Once got 7 pounds of lamb shoulder when I was expecting 4...when it's something expensive, you can complain to them if their estimate was off and they charged you way more than expected.
How can someone dislike vinegar but love pickled things? Tell Eugene i need to have a talk with him. :) Having said that, that looks like a terrific recipe. Craving..
delicious.. I loved the tangyness of the apple cider vinegar! Yummy. The [pecans are great too.


Is South Lebanon the best Oregon city for your business?
Now you can skip hours of internet research and jump straight to getting answers with our meaningful at-a-glance Demographics Spreadsheet Report. With the most current & most popular demographic data, it's the perfect starting point for your research about South Lebanon and the rest of Oregon.
All South Lebanon population data above are from the US Census Bureau.
The population data for South Lebanon are from the Census' American Community Survey 2017 5-year estimates and the Census' 2017 Population Estimates. The demographic data for Culver, Foots Creek, Roseburg North, Selma, Trail, and Waldport are the most current, comparable demographics available from the US Census Bureau, are from the American Community Survey 2017 5-year estimates, and were downloaded on 6 December 2018. Check out our FAQ section for more details.
With 704 people, South Lebanon is the 231st most populated city in the state of Oregon out of 375 cities. But watch out, South Lebanon, because Foots Creek with 693 people and Trail with 699 people are right behind you.
The largest South Lebanon racial/ethnic groups are White (96.3%) followed by Hispanic (3.7%) and Two or More (0.0%).
In 2017, the median household income of South Lebanon residents was $45,268. South Lebanon households made slightly more than Culver households ($45,000), Roseburg North households ($44,968), Selma households ($45,000), and Waldport households ($45,000) . However, 31.7% of South Lebanon residents live in poverty.
The median age for South Lebanon residents is 53.3 years young.
Looking for South Lebanon, OR Starter Report PDF? Click Here.


text:
#include "stdafx.h"
#include "SkeletalViewer.h"
#include "resource.h"
#include <mmsystem.h>

static const COLORREF g_JointColorTable[NUI_SKELETON_POSITION_COUNT] =
{
    RGB(169, 176, 155), // NUI_SKELETON_POSITION_HIP_CENTER
    RGB(169, 176, 155), // NUI_SKELETON_POSITION_SPINE
    RGB(168, 230, 29), // NUI_SKELETON_POSITION_SHOULDER_CENTER
    RGB(200, 0,   0), // NUI_SKELETON_POSITION_HEAD
    RGB(79,  84,  33), // NUI_SKELETON_POSITION_SHOULDER_LEFT
    RGB(84,  33,  42), // NUI_SKELETON_POSITION_ELBOW_LEFT
    RGB(255, 126, 0), // NUI_SKELETON_POSITION_WRIST_LEFT
    RGB(215,  86, 0), // NUI_SKELETON_POSITION_HAND_LEFT
    RGB(33,  79,  84), // NUI_SKELETON_POSITION_SHOULDER_RIGHT
    RGB(33,  33,  84), // NUI_SKELETON_POSITION_ELBOW_RIGHT
    RGB(77,  109, 243), // NUI_SKELETON_POSITION_WRIST_RIGHT
    RGB(37,   69, 243), // NUI_SKELETON_POSITION_HAND_RIGHT
    RGB(77,  109, 243), // NUI_SKELETON_POSITION_HIP_LEFT
    RGB(69,  33,  84), // NUI_SKELETON_POSITION_KNEE_LEFT
    RGB(229, 170, 122), // NUI_SKELETON_POSITION_ANKLE_LEFT
    RGB(255, 126, 0), // NUI_SKELETON_POSITION_FOOT_LEFT
    RGB(181, 165, 213), // NUI_SKELETON_POSITION_HIP_RIGHT
    RGB(71, 222,  76), // NUI_SKELETON_POSITION_KNEE_RIGHT
    RGB(245, 228, 156), // NUI_SKELETON_POSITION_ANKLE_RIGHT
    RGB(77,  109, 243) // NUI_SKELETON_POSITION_FOOT_RIGHT
};

void CSkeletalViewerApp::Nui_Zero()
{
    m_hNextDepthFrameEvent = NULL;
    m_hNextVideoFrameEvent = NULL;
    m_hNextSkeletonEvent = NULL;
    m_pDepthStreamHandle = NULL;
    m_pVideoStreamHandle = NULL;
    m_hThNuiProcess=NULL;
    m_hEvNuiProcessStop=NULL;
    ZeroMemory(m_Pen,sizeof(m_Pen));
    m_SkeletonDC = NULL;
    m_SkeletonBMP = NULL;
    m_SkeletonOldObj = NULL;
    m_PensTotal = 6;
    ZeroMemory(m_Points,sizeof(m_Points));
    m_LastSkeletonFoundTime = -1;
    m_bScreenBlanked = false;
    m_FramesTotal = 0;
    m_LastFPStime = -1;
    m_LastFramesTotal = 0;
	m_Timer = -1;
}

HRESULT CSkeletalViewerApp::Nui_Init()
{
    HRESULT                hr;
    RECT                rc;

    m_hNextDepthFrameEvent = CreateEvent( NULL, TRUE, FALSE, NULL );
    m_hNextVideoFrameEvent = CreateEvent( NULL, TRUE, FALSE, NULL );
    m_hNextSkeletonEvent = CreateEvent( NULL, TRUE, FALSE, NULL );

    GetWindowRect(GetDlgItem( m_hWnd, IDC_SKELETALVIEW ), &rc );
    int width = rc.right - rc.left;
    int height = rc.bottom - rc.top;
    HDC hdc = GetDC(GetDlgItem( m_hWnd, IDC_SKELETALVIEW));
    m_SkeletonBMP = CreateCompatibleBitmap( hdc, width, height );
    m_SkeletonDC = CreateCompatibleDC( hdc );
    ::ReleaseDC(GetDlgItem(m_hWnd,IDC_SKELETALVIEW), hdc );
    m_SkeletonOldObj = SelectObject( m_SkeletonDC, m_SkeletonBMP );

    hr = m_DrawDepth.CreateDevice( GetDlgItem( m_hWnd, IDC_DEPTHVIEWER ) );
    if( FAILED( hr ) )
    {
        MessageBoxResource( m_hWnd,IDS_ERROR_D3DCREATE,MB_OK | MB_ICONHAND);
        return hr;
    }

    hr = m_DrawDepth.SetVideoType( 320, 240, 320 * 4 );
    if( FAILED( hr ) )
    {
        MessageBoxResource( m_hWnd,IDS_ERROR_D3DVIDEOTYPE,MB_OK | MB_ICONHAND);
        return hr;
    }

    hr = m_DrawVideo.CreateDevice( GetDlgItem( m_hWnd, IDC_VIDEOVIEW ) );
    if( FAILED( hr ) )
    {
        MessageBoxResource( m_hWnd,IDS_ERROR_D3DCREATE,MB_OK | MB_ICONHAND);
        return hr;
    }

    hr = m_DrawVideo.SetVideoType( 640, 480, 640 * 4 );
    if( FAILED( hr ) )
    {
        MessageBoxResource( m_hWnd,IDS_ERROR_D3DVIDEOTYPE,MB_OK | MB_ICONHAND);
        return hr;
    }

    hr = NuiInitialize(
        NUI_INITIALIZE_FLAG_USES_DEPTH_AND_PLAYER_INDEX | NUI_INITIALIZE_FLAG_USES_SKELETON | NUI_INITIALIZE_FLAG_USES_COLOR);
    if( FAILED( hr ) )
    {
        MessageBoxResource(m_hWnd,IDS_ERROR_NUIINIT,MB_OK | MB_ICONHAND);
        return hr;
    }

    hr = NuiSkeletonTrackingEnable( m_hNextSkeletonEvent, 0 );
    if( FAILED( hr ) )
    {
        MessageBoxResource(m_hWnd,IDS_ERROR_SKELETONTRACKING,MB_OK | MB_ICONHAND);
        return hr;
    }

    hr = NuiImageStreamOpen(
        NUI_IMAGE_TYPE_COLOR,
        NUI_IMAGE_RESOLUTION_640x480,
        0,
        2,
        m_hNextVideoFrameEvent,
        &m_pVideoStreamHandle );
    if( FAILED( hr ) )
    {
        MessageBoxResource(m_hWnd,IDS_ERROR_VIDEOSTREAM,MB_OK | MB_ICONHAND);
        return hr;
    }

    hr = NuiImageStreamOpen(
        NUI_IMAGE_TYPE_DEPTH_AND_PLAYER_INDEX,
        NUI_IMAGE_RESOLUTION_320x240,
        0,
        2,
        m_hNextDepthFrameEvent,
        &m_pDepthStreamHandle );
    if( FAILED( hr ) )
    {
        MessageBoxResource(m_hWnd,IDS_ERROR_DEPTHSTREAM,MB_OK | MB_ICONHAND);
        return hr;
    }

    // Start the Nui processing thread
    m_hEvNuiProcessStop=CreateEvent(NULL,FALSE,FALSE,NULL);
    m_hThNuiProcess=CreateThread(NULL,0,Nui_ProcessThread,this,0,NULL);

	m_Timer = -1;

    return hr;
}

void CSkeletalViewerApp::Nui_UnInit( )
{
    ::SelectObject( m_SkeletonDC, m_SkeletonOldObj );
    DeleteDC( m_SkeletonDC );
    DeleteObject( m_SkeletonBMP );

    if( m_Pen[0] != NULL )
    {
        DeleteObject(m_Pen[0]);
        DeleteObject(m_Pen[1]);
        DeleteObject(m_Pen[2]);
        DeleteObject(m_Pen[3]);
        DeleteObject(m_Pen[4]);
        DeleteObject(m_Pen[5]);
        ZeroMemory(m_Pen,sizeof(m_Pen));
    }

    // Stop the Nui processing thread
    if(m_hEvNuiProcessStop!=NULL)
    {
        // Signal the thread
        SetEvent(m_hEvNuiProcessStop);

        // Wait for thread to stop
        if(m_hThNuiProcess!=NULL)
        {
            WaitForSingleObject(m_hThNuiProcess,INFINITE);
            CloseHandle(m_hThNuiProcess);
        }
        CloseHandle(m_hEvNuiProcessStop);
    }

    NuiShutdown( );
    if( m_hNextSkeletonEvent && ( m_hNextSkeletonEvent != INVALID_HANDLE_VALUE ) )
    {
        CloseHandle( m_hNextSkeletonEvent );
        m_hNextSkeletonEvent = NULL;
    }
    if( m_hNextDepthFrameEvent && ( m_hNextDepthFrameEvent != INVALID_HANDLE_VALUE ) )
    {
        CloseHandle( m_hNextDepthFrameEvent );
        m_hNextDepthFrameEvent = NULL;
    }
    if( m_hNextVideoFrameEvent && ( m_hNextVideoFrameEvent != INVALID_HANDLE_VALUE ) )
    {
        CloseHandle( m_hNextVideoFrameEvent );
        m_hNextVideoFrameEvent = NULL;
    }
    m_DrawDepth.DestroyDevice( );
    m_DrawVideo.DestroyDevice( );
}

DWORD WINAPI CSkeletalViewerApp::Nui_ProcessThread(LPVOID pParam)
{
    CSkeletalViewerApp *pthis=(CSkeletalViewerApp *) pParam;
    HANDLE                hEvents[4];
    int                    nEventIdx,t,dt;

    // Configure events to be listened on
    hEvents[0]=pthis->m_hEvNuiProcessStop;
    hEvents[1]=pthis->m_hNextDepthFrameEvent;
    hEvents[2]=pthis->m_hNextVideoFrameEvent;
    hEvents[3]=pthis->m_hNextSkeletonEvent;

    // Main thread loop
    while(1)
    {
        // Wait for an event to be signalled
        nEventIdx=WaitForMultipleObjects(sizeof(hEvents)/sizeof(hEvents[0]),hEvents,FALSE,100);

        // If the stop event, stop looping and exit
        if(nEventIdx==0)
            break;

        // Perform FPS processing
        t = timeGetTime( );
        if( pthis->m_LastFPStime == -1 )
        {
            pthis->m_LastFPStime = t;
            pthis->m_LastFramesTotal = pthis->m_FramesTotal;
        }
        dt = t - pthis->m_LastFPStime;
        if( dt > 1000 )
        {
            pthis->m_LastFPStime = t;
            int FrameDelta = pthis->m_FramesTotal - pthis->m_LastFramesTotal;
            pthis->m_LastFramesTotal = pthis->m_FramesTotal;
            SetDlgItemInt( pthis->m_hWnd, IDC_FPS, FrameDelta,FALSE );
        }

        // Perform skeletal panel blanking
        if( pthis->m_LastSkeletonFoundTime == -1 )
            pthis->m_LastSkeletonFoundTime = t;
        dt = t - pthis->m_LastSkeletonFoundTime;
        if( dt > 250 )
        {
            if( !pthis->m_bScreenBlanked )
            {
                pthis->Nui_BlankSkeletonScreen( GetDlgItem( pthis->m_hWnd, IDC_SKELETALVIEW ) );
                pthis->m_bScreenBlanked = true;
            }
        }

        // Process signal events
        switch(nEventIdx)
        {
            case 1:
                pthis->Nui_GotDepthAlert();
                pthis->m_FramesTotal++;
                break;

            case 2:
                pthis->Nui_GotVideoAlert();
                break;

            case 3:
                pthis->Nui_GotSkeletonAlert( );
                break;
        }
    }

    return (0);
}

void CSkeletalViewerApp::Nui_GotVideoAlert( )
{
    const NUI_IMAGE_FRAME * pImageFrame = NULL;

    HRESULT hr = NuiImageStreamGetNextFrame(
        m_pVideoStreamHandle,
        0,
        &pImageFrame );
    if( FAILED( hr ) )
    {
        return;
    }

    NuiImageBuffer * pTexture = pImageFrame->pFrameTexture;
    KINECT_LOCKED_RECT LockedRect;
    pTexture->LockRect( 0, &LockedRect, NULL, 0 );
    if( LockedRect.Pitch != 0 )
    {
        BYTE * pBuffer = (BYTE*) LockedRect.pBits;

        m_DrawVideo.DrawFrame( (BYTE*) pBuffer );

    }
    else
    {
        OutputDebugString( L"Buffer length of received texture is bogus\r\n" );
    }

    NuiImageStreamReleaseFrame( m_pVideoStreamHandle, pImageFrame );
}

void CSkeletalViewerApp::Nui_Snapshot( )
{
	// 5 seconds timer...
	m_Timer = 30*10;
}

void CSkeletalViewerApp::Nui_GotDepthAlert( )
{
    const NUI_IMAGE_FRAME * pImageFrame = NULL;

    HRESULT hr = NuiImageStreamGetNextFrame(
        m_pDepthStreamHandle,
        0,
        &pImageFrame );

    if( FAILED( hr ) )
    {
        return;
    }

    NuiImageBuffer * pTexture = pImageFrame->pFrameTexture;
    KINECT_LOCKED_RECT LockedRect;
    pTexture->LockRect( 0, &LockedRect, NULL, 0 );
    if( LockedRect.Pitch != 0 )
    {
        BYTE * pBuffer = (BYTE*) LockedRect.pBits;

        // draw the bits to the bitmap
        RGBQUAD * rgbrun = m_rgbWk;
        USHORT * pBufferRun = (USHORT*) pBuffer;
        for( int y = 0 ; y < 240 ; y++ )
        {
            for( int x = 0 ; x < 320 ; x++ )
            {
                RGBQUAD quad = Nui_ShortToQuad_Depth( *pBufferRun );
                pBufferRun++;
                *rgbrun = quad;
                rgbrun++;
            }
        }

		if (m_Timer < 10 && m_Timer >= 0)
		{
			char filename[256];
			sprintf(filename, "snapshot/snapshot%d.sht", 10-m_Timer);
			FILE *fid = fopen(filename, "w");
#if 0
			USHORT *pBufferRun = (USHORT*) pBuffer;
			for( int y = 0 ; y < 240 ; y++ )
			{
				for( int x = 0 ; x < 320 ; x++ )
				{
					fprintf(fid, "%d", (int)(*pBufferRun));
					if (x < 319) fprintf(fid, " ");
					pBufferRun++;
				}
				fprintf(fid, "\n");
			}
#else
			//for (int t = 0; t < 320*240; t++)
			//{
				//pBuffer[t] >>= 3;
			//}
			fwrite(pBuffer, sizeof(USHORT), 320*240, fid);
#endif
			fclose(fid);
		}

        m_DrawDepth.DrawFrame( (BYTE*) m_rgbWk );
    }
    else
    {
        OutputDebugString( L"Buffer length of received texture is bogus\r\n" );
    }

    NuiImageStreamReleaseFrame( m_pDepthStreamHandle, pImageFrame );

	if (m_Timer >= 0) m_Timer -= 1;
}

void CSkeletalViewerApp::Nui_BlankSkeletonScreen(HWND hWnd)
{
    HDC hdc = GetDC( hWnd );
    RECT rct;
    GetClientRect(hWnd, &rct);
    int width = rct.right;
    int height = rct.bottom;
    PatBlt( hdc, 0, 0, width, height, BLACKNESS );
    ReleaseDC( hWnd, hdc );
}

void CSkeletalViewerApp::Nui_DrawSkeletonSegment( NUI_SKELETON_DATA * pSkel, int numJoints, ... )
{
    va_list vl;
    va_start(vl,numJoints);
    POINT segmentPositions[NUI_SKELETON_POSITION_COUNT];

    for (int iJoint = 0; iJoint < numJoints; iJoint++)
    {
        NUI_SKELETON_POSITION_INDEX jointIndex = va_arg(vl,NUI_SKELETON_POSITION_INDEX);
        segmentPositions[iJoint].x = m_Points[jointIndex].x;
        segmentPositions[iJoint].y = m_Points[jointIndex].y;
    }

    Polyline(m_SkeletonDC, segmentPositions, numJoints);

    va_end(vl);
}

void CSkeletalViewerApp::Nui_DrawSkeleton( bool bBlank, NUI_SKELETON_DATA * pSkel, HWND hWnd, int WhichSkeletonColor )
{
    HGDIOBJ hOldObj = SelectObject(m_SkeletonDC,m_Pen[WhichSkeletonColor % m_PensTotal]);

    RECT rct;
    GetClientRect(hWnd, &rct);
    int width = rct.right;
    int height = rct.bottom;

    if( m_Pen[0] == NULL )
    {
        m_Pen[0] = CreatePen( PS_SOLID, width / 80, RGB(255, 0, 0) );
        m_Pen[1] = CreatePen( PS_SOLID, width / 80, RGB( 0, 255, 0 ) );
        m_Pen[2] = CreatePen( PS_SOLID, width / 80, RGB( 64, 255, 255 ) );
        m_Pen[3] = CreatePen( PS_SOLID, width / 80, RGB(255, 255, 64 ) );
        m_Pen[4] = CreatePen( PS_SOLID, width / 80, RGB( 255, 64, 255 ) );
        m_Pen[5] = CreatePen( PS_SOLID, width / 80, RGB( 128, 128, 255 ) );
    }

    if( bBlank )
    {
        PatBlt( m_SkeletonDC, 0, 0, width, height, BLACKNESS );
    }

    int scaleX = width; //scaling up to image coordinates
    int scaleY = height;
    float fx=0,fy=0;
    int i;
    for (i = 0; i < NUI_SKELETON_POSITION_COUNT; i++)
    {
        NuiTransformSkeletonToDepthImageF( pSkel->SkeletonPositions[i], &fx, &fy );
        m_Points[i].x = (int) ( fx * scaleX + 0.5f );
        m_Points[i].y = (int) ( fy * scaleY + 0.5f );
    }

    SelectObject(m_SkeletonDC,m_Pen[WhichSkeletonColor%m_PensTotal]);

    Nui_DrawSkeletonSegment(pSkel,4,NUI_SKELETON_POSITION_HIP_CENTER, NUI_SKELETON_POSITION_SPINE, NUI_SKELETON_POSITION_SHOULDER_CENTER, NUI_SKELETON_POSITION_HEAD);
    Nui_DrawSkeletonSegment(pSkel,5,NUI_SKELETON_POSITION_SHOULDER_CENTER, NUI_SKELETON_POSITION_SHOULDER_LEFT, NUI_SKELETON_POSITION_ELBOW_LEFT, NUI_SKELETON_POSITION_WRIST_LEFT, NUI_SKELETON_POSITION_HAND_LEFT);
    Nui_DrawSkeletonSegment(pSkel,5,NUI_SKELETON_POSITION_SHOULDER_CENTER, NUI_SKELETON_POSITION_SHOULDER_RIGHT, NUI_SKELETON_POSITION_ELBOW_RIGHT, NUI_SKELETON_POSITION_WRIST_RIGHT, NUI_SKELETON_POSITION_HAND_RIGHT);
    Nui_DrawSkeletonSegment(pSkel,5,NUI_SKELETON_POSITION_HIP_CENTER, NUI_SKELETON_POSITION_HIP_LEFT, NUI_SKELETON_POSITION_KNEE_LEFT, NUI_SKELETON_POSITION_ANKLE_LEFT, NUI_SKELETON_POSITION_FOOT_LEFT);
    Nui_DrawSkeletonSegment(pSkel,5,NUI_SKELETON_POSITION_HIP_CENTER, NUI_SKELETON_POSITION_HIP_RIGHT, NUI_SKELETON_POSITION_KNEE_RIGHT, NUI_SKELETON_POSITION_ANKLE_RIGHT, NUI_SKELETON_POSITION_FOOT_RIGHT);

    // Draw the joints in a different color
    for (i = 0; i < NUI_SKELETON_POSITION_COUNT ; i++)
    {
        HPEN hJointPen;

        hJointPen=CreatePen(PS_SOLID,9, g_JointColorTable[i]);
        hOldObj=SelectObject(m_SkeletonDC,hJointPen);

        MoveToEx( m_SkeletonDC, m_Points[i].x, m_Points[i].y, NULL );
        LineTo( m_SkeletonDC, m_Points[i].x, m_Points[i].y );

        SelectObject( m_SkeletonDC, hOldObj );
        DeleteObject(hJointPen);
    }

    return;

}

void CSkeletalViewerApp::Nui_DoDoubleBuffer(HWND hWnd,HDC hDC)
{
    RECT rct;
    GetClientRect(hWnd, &rct);
    int width = rct.right;
    int height = rct.bottom;

    HDC hdc = GetDC( hWnd );

    BitBlt( hdc, 0, 0, width, height, hDC, 0, 0, SRCCOPY );

    ReleaseDC( hWnd, hdc );

}

void CSkeletalViewerApp::Nui_GotSkeletonAlert( )
{
    NUI_SKELETON_FRAME SkeletonFrame;

    HRESULT hr = NuiSkeletonGetNextFrame( 0, &SkeletonFrame );

    bool bFoundSkeleton = true;
    for( int i = 0 ; i < NUI_SKELETON_COUNT ; i++ )
    {
        if( SkeletonFrame.SkeletonData[i].eTrackingState == NUI_SKELETON_TRACKED )
        {
            bFoundSkeleton = false;
        }
    }

    // no skeletons!
    //
    if( bFoundSkeleton )
    {
        return;
    }

    // smooth out the skeleton data
    NuiTransformSmooth(&SkeletonFrame,NULL);

    // we found a skeleton, re-start the timer
    m_bScreenBlanked = false;
    m_LastSkeletonFoundTime = -1;

    // draw each skeleton color according to the slot within they are found.
    //
    bool bBlank = true;
    for( int i = 0 ; i < NUI_SKELETON_COUNT ; i++ )
    {
        if( SkeletonFrame.SkeletonData[i].eTrackingState == NUI_SKELETON_TRACKED )
        {
            Nui_DrawSkeleton( bBlank, &SkeletonFrame.SkeletonData[i], GetDlgItem( m_hWnd, IDC_SKELETALVIEW ), i );
            bBlank = false;
        }
    }

    Nui_DoDoubleBuffer(GetDlgItem(m_hWnd,IDC_SKELETALVIEW), m_SkeletonDC);
}

RGBQUAD CSkeletalViewerApp::Nui_ShortToQuad_Depth( USHORT s )
{
    USHORT RealDepth = (s & 0xfff8) >> 3;
    USHORT Player = s & 7;

    // transform 13-bit depth information into an 8-bit intensity appropriate
    // for display (we disregard information in most significant bit)
    //BYTE l = 255 - (BYTE)(256*RealDepth/0x0fff);
	int l;
	if (RealDepth > 0)
	{
		int tmp = 700 - (RealDepth >> 2);
		//if (tmp > 255) tmp = 255;
		if (tmp < 0) tmp = 0;
		l = tmp;
	}
	else
	{
		l = 0;
	}

    RGBQUAD q;
	int qrgbRed, qrgbGreen, qrgbBlue;
    qrgbRed = qrgbBlue = qrgbGreen = l;
	qrgbBlue = l/4;
	qrgbGreen = l/2;

	if (m_Timer > 0) qrgbBlue = qrgbGreen = 0;

	if (qrgbBlue > 255) qrgbBlue = 255;
	if (qrgbRed > 255) qrgbRed = 255;
	if (qrgbGreen > 255) qrgbGreen = 255;

	q.rgbBlue = qrgbBlue;
	q.rgbRed = qrgbRed;
	q.rgbGreen = qrgbGreen;

#if 0
	switch( Player )
    {
    case 0:
        q.rgbRed = l / 2;
        q.rgbBlue = l / 2;
        q.rgbGreen = l / 2;
        break;
    case 1:
        q.rgbRed = l;
        break;
    case 2:
        q.rgbGreen = l;
        break;
    case 3:
        q.rgbRed = l / 4;
        q.rgbGreen = l;
        q.rgbBlue = l;
        break;
    case 4:
        q.rgbRed = l;
        q.rgbGreen = l;
        q.rgbBlue = l / 4;
        break;
    case 5:
        q.rgbRed = l;
        q.rgbGreen = l / 4;
        q.rgbBlue = l;
        break;
    case 6:
        q.rgbRed = l / 2;
        q.rgbGreen = l / 2;
        q.rgbBlue = l;
        break;
    case 7:
        q.rgbRed = 255 - ( l / 2 );
        q.rgbGreen = 255 - ( l / 2 );
        q.rgbBlue = 255 - ( l / 2 );
    }
#endif

    return q;
}

redpajama_set_name: RedPajamaGithub


Free download Tyga ft. Justin Bieber - Wait For A Minute (Explicit) # mp3 or listen online music. Free download Justin Bieber - Wait For A Minute (feat. Tyga) # mp3 or listen online music. Justin Bieber download; Justin Bieber Ft. Tyga - Wait for a Minute Lyrics download; Justin Bieber ft Tyga - Wait For A Minute (lyrics on screen) download.
Justin Bieber Ft. Tyga - Wait For A Minute. Bieber Ft. Tyga – Wait For A Minute. Descargar/Bajar: Justin Bieber Ft. Tyga – Wait For A Minute. NEW MUSIC: JUSTIN BIEBER FT. TYGA - WAIT FOR A MINUTE. NEW MUSIC: JUSTIN BIEBER FT. TYGA - WAIT FOR A MINUTE. Justin-Bieber_Ft_Tyga_Wait- centraldocorpocaloso.com3 Powered by Phoca Download. Tyga ft Justin Bieber Wait For A Minute (Clean). genre: Hip-Hop. length: bpm: key: 2d. October 30, Sign Up to Download.
Stream Tyga Feat. Justin Bieber - Wait For A Minute (Robin Selecta Bootleg) by robinselecta from desktop or your mobile device. Check out Wait For A Minute [Feat. Justin Bieber] by Tyga & Justin Bieber on Amazon Music. Stream ad-free or purchase CD's and MP3s now on centraldocorpocaloso.com .


text:
Tag: Christina
Ant Anstead Defends Himself After Christina Hall Fans Attack Him Over Photos of Son Hudson
Christina Hall and Ant Anstead | Michael Kovac/Getty Images for Discovery Channel On Oct. 13, Ant Anstead shared an Instagram post showing several pictures of his son Hudson, whom he shares with his ex-wife, HGTV star Christina Hall. The seven photos showed the three-year-old with his grandfather, and Anstead explained in the caption that his […]
Ant Anstead Shares New Photos of Son Hudson After Christina Hall Vows to Keep Him Off Social Media
Christina Hall and Ant Anstead | Allen Berezovsky/Getty Images Ant Anstead shared several new photos of his and Christina Hall's son, Hudson On Oct. 13, Ant Anstead shared an Instagram post containing several pictures of his three-year-old son, Hudson, whom he shares with his ex-wife, Flip or Flop star Christina Hall. Christina Hall and Ant […]
'Wednesday': Everything We Know About Christina Ricci's Character – Marilyn Thornhill
Christina Ricci as Marilyn Thornhill in 'Wednesday' series | via Netflix Christina Ricci appears in the 'Wednesday' trailer with ginger hair, glasses, and a sinister smile Ricci's role in the Tim Burton series has been kept secret, just like Fred Armisen's role as Uncle Fester. But the time finally came for fans to see the […]
October 9, 2022 Sara
7 Facts about Sadie Grace Lenoble, Christina Applegate's Daughter
Sadie Grace LeNoble gives her mother, Christina Applegate, much joy and gratitude. The actress adores her little girl and has admitted that nothing else matters compared to her precious daughter. Actress Christina Applegate | Christina Applegate and Daughter Sadie Grace Lenoble | Source: Getty Images | twitter.com/1capplegate Christina Applegate has faced many challenges in her […]
Ant Anstead Likes Fan Comment Calling Christina Hall a 'Narcissist' and Accusing Her of 'Gaslighting'
Christina Hall and Ant Anstead | JB Lacroix/GC Images Christina Hall and Ant Anstead have been in a custody battle for months Former couple Christina Hall and Ant Anstead have been fighting over custody of their three-year-old son Hudson for months. In April, the Wheeler Dealers star filed for emergency custody, claiming his ex-wife endangered […]
Christina Hall Slams Ex-Husband Ant Anstead By Sharing Fan Message About 'Post-Separation Abuse'
Ant Anstead and Christina Hall | Noel Vasquez/Getty Images Christina Hall said she will no longer film her and Ant Anstead's son for Instagram or TV Former couple Christina Hall and Ant Anstead have been fighting for custody of their three-year-old son Hudson for months. In April, Anstead filed for emergency custody and claimed Hall […]
Christina Hall Shares a Cryptic Message About 'A**holes' Amid Ant Anstead Custody Battle
Christina Hall and Ant Anstead | Michael Kovac/Getty Images Ant Anstead accused ex-wife Christina Hall of 'exploiting' their son Christina Hall and Ant Anstead divorced in 2021, and they share custody of their three-year-old son, Hudson. In April, the Wheeler Dealers star filed for emergency custody and accused his ex-wife of endangering their child and […]
Summer Rain Rutler Is a Little Artist – More about Christina Aguilera's Daughter
Christina Aguilera welcomed her second child, Summer Rain Rutler, after finding love again. The singer passed down her creativity gene to her daughter, who is already showing an artistic streak. Christina Aguilera, Summer Rain Rutler and Max Liron Bratman | Source: youtube.com/NintendoofAmerica After taking the role of chief culture officer at Fun Wine, Christina Aguilera […]
Christina Hall Accuses Ant Anstead of 'Manipulation Tactics,' Says She'll Keep Son Hudson Off TV and Instagram
Ant Anstead and Christina Hall | Tommaso Boddi/Getty Images Ant Anstead claimed Christina Hall 'exploits' their three-year-old son amid custody battle Christina Hall and Ant Anstead have been in a custody battle over their son Hudson for months. In April, the English TV presenter filed for emergency custody and accused his reality star ex-wife of […]
September 30, 2022 Sara
Christina Aguilera Honored With Spirit of Hope Award at 2022 Billboard Latin Music Awards
It's been a really special night for Christina Aguilera, who not only took our breath away with a killer performance of her ranchera song "La Reina," from her new Spanish-language, Grammy-nominated album, "Aguilera," at the 2022 Billboard Latin Music Awards on Thursday, Sept. 29, but she was also honored with the Spirit of Hope award. […]

redpajama_set_name: RedPajamaCommonCrawl


text:
import { connect } from 'react-redux';
import React, { PureComponent } from 'react';
import { fetchTicketById, updateTicketDetails, fetchTicketNotes } from '../../../helpers/cw';
import { getPhases } from '../helpers';
import { editIcon, spinnerIcon } from '../../../helpers/svgs';
import EditForm from './EditForm';
import EditModal from './EditModal';

class EditTicketForm extends PureComponent {
  state = {
    budget: '',
    description: '',
    expanded: false,
    fullName: '',
    hasChangedPhase: false,
    hasCompletedTicket: false,
    loading: false,
    notes: '',
    phases: [],
    phaseValue: '',
    summary: '',
    ticketDetails: '',
    updatingTicket: false,
  }

  getTicketDetails = () => {
    this.setState({
      loading: true
    });

    fetchTicketById(this.props.ticketNumber).then(res => {
      const phases = getPhases(res, this.props.tickets)

      this.setState({
        budget: res.budgetHours,
        description: this.state.description,
        expanded: true,
        fullName: res.company.name + ' - ' + res.project.name,
        loading: false,
        phaseValue: res.phase.name,
        summary: res.summary,
        ticketDetails: res,
        phases,
      });

      this.getDescription()
    }).catch((e) => {
      this.setState({
        loading: false,
      });
      console.log(e)
    });
  }

  updateTicketDetails = () => {
    this.setState({
      updatingTicket: true,
    });

    this.setTicketCompleted();
    updateTicketDetails({
      ticketId: this.props.ticketNumber,
      budget: this.state.budget,
      initialDescription: this.state.description,
      phase: this.state.hasChangedPhase ? this.state.selectedPhase : this.state.phases.filter(phase => phase.id === this.state.ticketDetails.phase.id),
      summary: this.state.summary,
    }).then(() => {
      this.setState({
        updatingTicket: false,
      });
    }).catch((e) => {
      console.log(e);
    })
  }

  getDescription = () => {
    fetchTicketNotes(this.props.ticketNumber).then(results => {
      if (!results || !results[0] || !results[0].text) {
        return;
      }

      this.setState({
        description: results[0].text
      });
    }).catch((e) => {
      console.log(e);
    })
  }

  toggleEditModal = () => {
    this.setState({
      expanded: !this.state.expanded,
      hasCompletedTicket: false,
    });
  }

  setDescription = description => {
    this.setState({
      description
    });
  }

  setPhaseValue = phaseValue => {
    this.setState({
      hasChangedPhase: true,
      phaseValue,
      selectedPhase: this.state.phases.filter(phase => phase.path === phaseValue),
    })
  }

  setSummary = summary => {
    this.setState({
      summary
    });
  }

  setBudget = budget => {
    this.setState({
      budget
    });
  }

  setTicketCompleted = () => {
    this.setState({
      hasCompletedTicket: true
    });
  }

  render() {
    return (

          <button type="button" className="btn btn-default" onClick={this.getTicketDetails}>
            {this.state.loading ? spinnerIcon : editIcon}
          </button>

        <EditModal
          contentLabel="Edit Ticket Modal"
          expanded={this.state.expanded}
          toggleEditModal={this.toggleEditModal}
        >
          <EditForm
            budget={this.state.budget}
            description={this.state.description}
            fullName={this.state.fullName}
            hasCompletedTicket={this.state.hasCompletedTicket}
            phases={this.state.phases}
            phaseValue={this.state.phaseValue}
            setBudget={this.setBudget}
            setDescription={this.setDescription}
            setPhaseValue={this.setPhaseValue}
            setSummary={this.setSummary}
            summary={this.state.summary}
            ticketDetails={this.state.ticketDetails}
            toggleEditModal={this.toggleEditModal}
            updateTicketDetails={this.updateTicketDetails}
            updatingTicket={this.state.updatingTicket}
          />
        </EditModal>

    )
  }
}

const mapStateToProps = state => ({
  tickets: state.tickets.flattened,
});

export default connect(mapStateToProps)(EditTicketForm);


The crocodile is a prehistoric reptile that has survived for 200 million years through several ice ages and has seen the dinosaur come and go. By 1971 crocodiles were hunted close to exctinction for their skins and their numbers had dwindled to about 3000 but nowadays they are protected and the croc population now believed to exceed 75,000. Ironically enough their protection was not a result of environmental awareness but people were being worried the might disappear as a resource. Nowadays there is no danger of extinction as their numbers have increased dramatically to the point where many people are calling for them to be culled to get the numbers down as they now often stray into territory close to people. In 2003 Territory Parks and Wildlife officers caught 180 crocodiles ranging from 2.5 to 4 metre in the 19 traps they manage around Darwin harbour.
Although crocodiles are protected 600 are killed annually in the territory by licensed hunters for their skins and in March 2004 a delegation of Aborigines, politicians and tourism experts from the Northern Territory headed to Canberra to argue the case for Australia to re-introduce big-game safaris targeting the deadly saltwater crocodile, if succcesful this would see 25 of the area's largest "trophy" crocs hunted every year.
Nowadays there is a thriving crocodile industry, they are farmed very successfully in farms that maintain small breeding populations, and raise the hatchlings until they reach around a meter in length. The main products of crocodile farms are leather and meat.
The reputation of the appetite of crocodiles was received a bit of a dent when early March 2004 the bodies of two prostitutes were found in the Adelaide River near Darwin. They had been thrown off a bridge alive but had drowned and their intact bodies were found by a boatload of croc-spotting tourists 30 hours later.
Scientists are also trying to work out how crocodiles survive their injuries. In territorial disputes they often end up with horrific injuries ranging from bites and deep gashes to entire limbs ripped off, but their bodies usually heal themselves without infections. In August 2005 scientists took blood from 50 Northern Territory crocodiles to work out how it fights infections, even those resistant to known antibiotics.
Some people like Mick Pitman, around the remote wilderness of the Cape York peninsula better known as Crocodile Mick, have made a career out of crocodiles. He makes a living as crocodile hunter, taxidermist and producer of crocodile products, and also specializes in crocodile capture.You can see more photos like above and read some wild adventures, on his website crocodilemick.com .
Saltwater crocodiles live around the northern parts of the country, roughly north of Mackay, in waterways where, despite being called a 'salty' , they can travel hundreds of kilometres inland but they are also known to travel through the ocean and have been spotted a long way offshore. Fortunately they do not attack people in the ocean, only in inland waterways so it is still safe to swim in the ocean ( as long as it is not stinger season). There is not many incidences of anyone having been eaten by a croc while swimming in the ocean.
They have perfected their hunting techniques for millions of years and can swim under water at 30 km/h withhout a ripple on the surface and then burst out and on a short distance can outrun a horse. If a prey puts up too much resistance they will do the "death roll" to get it off its feet. They even jump out of the water to catch low flying birds and, as you can see on the "jumping crocodile tours" in the Northern Territory raise themselves out of the water and "stand" on their tail for a few seconds to grab a piece of meat.
Many crocodiles are large enough to catch and kill animals as big as cows, horses and water buffaloes, females can grow up to 4 meters in length, males can reach 7 meters in length and weigh over 1,000kg. On average one person a year in Australia is killed, usually by ignoring some of the common sense safety rules.
Crocodiles are confirmed to have swum through city streets in Cairns at a king tide and in Katherine during the big flood in 1998.
Salties breed in the wet season (November-March). Males occupy large territories, even swimming through the ocean between rivers to breed with more females. Females will lay up to 50 eggs in a large pile of vegetation, sand and soil, usually on the banks of a river, swamp or estuary. They will hang around the nest to guard it during the three-month incubation period, and can be quite aggressive; (should you come across a big pile of vegeation on a riverbank in your explorations of Australia then get the f#%! out of there real quick).
The best time to see crocodiles when you go on a boat cruise is in the dry season (winter) when the water is cold and the cold blooded reptiles come out of the water to absorb heat from sunshine.
In Darwin the Territory Insurance Office offers crocodile insurance which you can take out to top up your normal travel insurance.
Legend has it that in the Normanton river, several kilometres from the town of Normanton, NW Queensland, there was a ginormous croc. Krystina Pawloski, a woman of small build but handy with the gun, shot a crocodile measuring 8.63 metres in the Norman River in July 1958. There is an awesome replica in the main street of Normanton which the locals swear is true to size, reportedly the actual skin was used for this statue as a 'mould' to make sure of correct size and proportions, the skin is still kept in Townsville, north Queensland. Check out the size of the mouth on the picture below!
The crocodile below was shot near Borroloola in the Northern Territory when he kept on circling a fisherman's boat.
It measures no less than 6.325 meters and weighed in at 1855 kilogram!
It started annoying one of the local barramundi fishermen by eating the prop off his outboard. He reckons it was circling the 5 metre tinny (boat) for 20 minutes before the decision to kill it was made by him and a very frightened decky.
The freshwater crocodile, (officially Johnstone's Crocodile but usually referred to as 'freshie') lives in inland freshwater areas of Australia's northern parts and sometimes in the tidal parts of rivers. Their range does overlap with saltwater crocodiles, and they can be found in the same locality and often become dinner for the "salties'.
Male freshwater crocodiles grow up to 3 meters in length, females are smaller up to 2 meters. They eat all the smaller animals you find near in and rivers; insects, fish, frogs, turtles, waterbirds and snakes. Small mammals that drink at rivers are also taken. People are not on the menu as the crocs are too small but the occasional person has been bitten by a freshie if they scared them jumping on them while swimming or a woman that floated on top of one on an air mattress in Edith Falls in the Northern Territory. In the Northern Territory people swim in waterholes and waterfalls where you can actually see the freshwater crocodiles swimming around so if you want to brag to your friends back home you have swum with crocodiles in Australia then this is the place to go.
They breed during the months of July and August in the dry season. Females will dig a hole in a sandy riverbank and lay up to a dozen eggs that will hatch in two to three months. The timing of hatching is the start of the wet season when food for the young (mostly insects) is abundant. The gender of the young is determined by the incubation temperature, high incubation temperature produce females, low temperatures produce males.


Download our Clip, Cut & Save Coupons for even more savings!
Have you seen our add in the Brighton Buzz?
Call us today at 720-530-6290 or click here to schedule your free personal consultation now!
Don't trust your cherished art to the local hobby store!
Sure, all of your images are digital these days. They're easy to share and they can't turn yellow or get scratched, folded or destroyed. But what about your print collection, those old scrapbooks filled with images from your childhood, grandma and grandpa and your children growing up?
It's not only beneficial for passing along your cherished memories to your children and grandchildren, it's easy and affordable to have your old photographs digitized and retouched if necessary to restore them back to their original condition. You can make multiple copies of your photo DVD and store them in different locations or with friends and family so that you never have to worry about losing your cherished memories to fire, flood or some other disaster.
Using state of the art equipment, we will expertly digitize your old photograph(s) at a resolution appropriate to the size of the current image and the size of the reproduction that you desire from the reproduction (up to 9600 dpi). Every print image digitally recreated will have the smallest details reproduced. The cost for digitizing your photograph collection is dependant on the size of the original and the type of scan desired. Please refer to our price list for the cost to professionally digitize your photograph collection.


text:
Basti Masim gizi Bagirova (Bağçakürd, 10 de abril de 1906 – Bağçakürd, 27 de fevereiro de 1962; ) foi uma produtora de algodão e política do Azerbaijão. Ela é conhecida como uma das primeiras stakhanovistas na RSS do Azerbaijão.

Trabalho
Em 1930 Bagirova começou a trabalhar no artel agrícola de Voroshilov, que mais tarde se tornaria uma propriedade coletiva. Esta propriedade acabaria por receber o nome de Bagirova. Em 1953, Bagirova foi eleita presidente da propriedade coletiva. Ela ocupou esta posição até à sua morte em 1962.

Política
Basi Bagirova foi membro do Partido Comunista a partir de 1937. Ela foi membro do Soviete Supremo da União Soviética da 1.ª à 3.ª convocação. Ela também foi membro do Soviete Supremo da RSS do Azerbaijão durante as 4.ª e 5.ª convocações, e membro do Presidium durante a 5.ª convocação. Bagirova foi também membro do Comité Central do Partido Comunista do Azerbaijão. Foi delegada ao 20.º Congresso do Partido Comunista da União Soviética e aos XXIII, XXIV e XXV congressos do Partido Comunista do Azerbaijão.

Ordem de Lenin
Heróis do Trabalho Socialista
Mortos em 1962
Nascidos em 1906
!Mais Teoria da História na Wiki (Wikiconcurso de edição)

redpajama_set_name: RedPajamaWikipedia


Suspense went through several major phases, characterized by different hosts, sponsors and director/producers. There were a few rules which were followed for all but a handful of episodes: Protagonists were usually a normal person suddenly dropped into a threatening or bizarre situation. Evildoers must be punished in the end. The program made only occasional forays into science fiction and fantasy. Among its science fiction entries were "The Man who Went Back to Save Lincoln" (a time travel fantasy) and an adaptation of Curt Siodmak's Donovan's Brain, as well as an adaptation of an H.P. Lovecraft short story, "The Dunwich Horror".
On the second presentation of July 22, 1940, Forecast offered a mystery/horror show titled Suspense. With the co-operation of his producer Walter Wanger, Alfred Hitchcock received the honor of directing his first radio show for the American public. The condition agreed upon for Hitchcock's appearance was that CBS make a pitch to the listening audience about his and Wanger's latest film, Foreign Correspondent. To add some flavour to the deal, Wanger threw in Edmund Gwenn and Herbert Marshall as part of the package. All three men (including Hitch) would be seen in the upcoming film, which was due for a theatrical release the next month. Both Marshall and Hitchcock decided on the same story to bring to the airwaves, which happened to be a favorite of both of them: Marie Belloc Lowndes' "The Lodger." Alfred Hitchcock had filmed this story for Gainsborough in 1926, and since then it had remained as one of his favorites.
Herbert Marshall portrayed the mysterious lodger, and co-starring with him were Edmund Gwenn and character actress Lurene Tuttle as the rooming-house keepers who start to suspect that their new boarder might be the notorious Jack-the-Ripper. [Gwenn was actually repeating the role taken in the 1926 film by his brother, Arthur Chesney. And Tuttle would work again with Hitchcock exactly 20 years later, playing Mrs Al Chambers in Psycho.] Character actor Joseph Kearns also had a small part in the drama, and Wilbur Hatch, head musician for CBS Radio at the time, composed and conducted the music specially for the program. Adapting the script to radio was not a great technical challenge for Hitchcock, and he cleverly decided to hold back the ending of the story from the listening audience in order to keep them in suspense themselves. This way, if the audience's curiosity got the better of them, they would write in to the network to find out whether the mysterious lodger was in fact Jack-the-Ripper. For the next few weeks, hundreds of letters came in from faithful listeners asking how the story ended. Actually a few wrote threats claiming that it was "indecent" and "immoral" to present such a production without giving the solution.
In the early phase, the program was hosted by "The Man in Black" (played by Joseph Kearns or Ted Osborne) and many episodes written or adapted by the prominent mystery author John Dickson Carr. Escape was a similar anthology thriller and suspense program. Both occasionally adapted the same stories, though Escape had lower budgets--and thus, fewer sound effects and name actors.


text:
November 9, 2019 July 20, 2021 thebeaconbeat
Gun Violence in Entertainment Media: How on the Screen Translates off the Screen
By Esme Laster
After 27 students and teachers were gunned down at the Sandy Hook elementary school in Newton, CT in 2012, the head of the Motion Picture Association of America pledged to curb violence in society. "Those of us in the motion picture and television industry want to do our part to help America heal," Christopher Dodd said.
Since Dodd spoke 7 years ago, there have been 2,173 mass shootings throughout the U.S. and a growing population of disheartened citizens have become wary of the entertainment industry as gun violence's greatest perpetuator. Researchers, parents and even politicians blamed the MPAA for misleading America's youth on the dangers of gun violence.
The MPAA, the self proclaimed "voice of the film and television industry," devises a national rating system for film and television designed to protect children.
The Parents Television Council (PTC) recently asked the government to reevaluate the rating system of all entertainment media, claiming the TV content rating system can be "outright deceptive." The Federal Communications Commission asked a TV monitoring board to consider the accuracy of television's content rating system.
Researchers also complain about the entertainment industry's flawed rating system. "Showing all the violence in a sanitized form displays the behavior in a way that makes it seem less harmful," says Daniel Romer, research director of the Annenberg Public Policy Center. Romer is especially concerned about how PG-13 content is rated. Take PG-13 rated movies "Skyfall" (2012), or "Jack Reacher" (2012). In both of these blockbuster films, guns harm characters, yet, the blood and gore that would typically follow a gunshot is conspicuously concealed from viewers' eyes. This sanitized footage "is making the use of violence seem justified," Romer concluded in a 2018 study.
Distorted violence can severely harm children, says Brad Bushman a communication professor at Ohio State University. In his 2019 study of 220 children aged 8-12, Bushman found that the children who played violent video games were more likely to touch and hold longer a real handgun as opposed to children who played non-violent video games.
This misguided portrayal of gun violence can be especially harmful when targeted to a specific demographic. In 1999, the Federal Trade Commission's review of the entertainment industry found that 80% of its 44 violent movies surveyed were targeted to children under 17. The report also uncovered that 70% of the 118 video games reviewed were targeted primarily to males aged 12-17.
Recently, Romer and Bushman's groundbreaking social psychological findings were brought to the national stage. Featured in the FCC's 2019 report on the TV ratings system, the Romer and Bushman's work called for a radical restructuring of how entertainment media is marketed to the youth.
Now, Romer and Bushman want America to adopt the Netherland's content rating system. Called Kijkwijzer, the system consolidates TV, movies, and videogames and assigns specific ages to various content. It also uses symbols to indicate what makes the content inappropriate for certain ages. Content would also be delegated by child development experts rather than corporate executives under Kijkwijzer.
Regulating content as strictly as Kijkwijzer entails could encroach upon the constitution. The first amendment protects citizens' right to freedom of speech or expression and entertainment can be interpreted as a form of expression. So the government can only do so much to regulate it. The Supreme Court struck down a California law in 2011 that required violent or sexually explicit video game content to be labeled "18." Video games were held as a "means of expression" by the court.
Esme Laster
Previous A Closer Look at the SHSAT: How it Helps and Hurts NYC Students
Next Kanye West – "Jesus Is King" Review


there are lots of things slowing down the physical release on city state tapes of "plod & play, vol. 1", but the bandcamp download is available now. free download codes to the first batch of folks who show up at dreamland tonight. beep!
i'm playing a show on saturday the 21st of february at dreamland here in louisville to celebrate the release of city state tapes vol. 1. this is a batch of cassettes that all 5 of us will hopefully have out in time for the show. the facebook event can be found here. i put up a tune from the cassette that you can listen to below.
i have a show coming up in a few weeks but i don't know many details right now. until i know more, here's my set from last week if you're curious where my head can go sometimes. this show was with cher von at haymarket whiskey bar for the kickoff party of do502's free week.


text:
California urges COVID booster shots for all…
California urges COVID booster shots for all adults
State public health director: 'Do not turn a patient away who is requesting a booster'
OAKLAND, CA – MARCH 11: California Department of Public Health Director and State Public Health Officer Dr. Tomás Aragón receives his Johnson & Johnson Janssen one-dose vaccine during a press conference at the Oakland Coliseum vaccination site in Oakland, Calif., on Thursday, March 11, 2021. The event is part of the state's efforts to increase vaccine acceptance among groups that are less likely to be vaccinated. (Jane Tyska/Bay Area News Group)
By John Woolfolk | jwoolfolk@bayareanewsgroup.com | Bay Area News Group
PUBLISHED: November 11, 2021 at 12:51 p.m. | UPDATED: November 11, 2021 at 12:57 p.m.
State officials are urging COVID-19 vaccine providers to give booster shots to pretty much any adult who wants one, in a messaging shift toward loosely interpreting their own guidance that recommends the shots only for those 65 and older, in poor health or who live or work in a high-risk setting.
"Do not turn a patient away who is requesting a booster" who's at least 18 years old and last had the Pfizer or Moderna shot 6 months ago or the Johnson & Johnson shot 2 months ago, California Public Health Director Dr. Tomás J. Aragón said in a Nov. 9 memo to local health jurisdictions and providers.
The memo with the subject line "Booster Messaging," Aragón said, "clarifies the state's expectations for administering COVID-19 vaccine boosters and patient eligibility," and says providers should "allow patients to self-determine their risk of exposure."
Pharmacies like CVS said Thursday they too are following the CDC's eligibility guidance for boosters.
Officially, the state recommends boosters for those who received their second Pfizer or Moderna dose at least six months ago and are 65 or older, or 18 or older and live in long-term care settings, have underlying medical conditions, are at increased risk due to social inequity, or work or live in high-risk settings.
California Health and Human Services Secretary Mark Ghaly on Wednesday hinted at the new "Booster Messaging" during a news conference in Los Angeles, stressing there is vaccine supply available and the state is concerned about rising hospitalizations heading into the holiday season
"If you think you will benefit from getting a booster shot, I encourage you to go out and get it," Ghaly said Wednesday.
The state defines high-risk jobs to include healthcare workers, firefighters, police, congregate care staff, teachers, school support staff, daycare workers, food and agriculture workers, manufacturing workers, correctional officers, public transit workers, postal workers and grocery workers. That guidance remained unchanged on the agency's website Thursday.
It's not clear that anyone who wanted a booster has been turned away.
But Santa Clara County Health Officer Dr. Sara Cody said Wednesday that the guidance is "quite complicated" and likely discouraging people from getting booster shots. Only 20% of Santa Clara County residents who are 6 months past their last Pfizer or Moderna shots or 2 months past their last Johnson & Johnson shots have gotten boosters, she said.
CDC data show only about one in three Californians 65 or older have gotten a booster vaccine, similar to figures in Texas, Florida, and many other states. Among all adults 18 and older, the figures drop to 14%.
Cody and state health officials cited concerns the state may be heading into another rise in COVID-19 cases this winter, with numbers once again trending upward.
California throws more money at COVID-19 contact tracing, but is it too late?
Trucker vaccine rule is making freight and fruit pricier
President Biden in August announced plans for all vaccinated Americans to get boosters starting in September once they are eight months past their initial doses.
The booster campaign has been controversial from the start, with many health experts across the country arguing it would distract from the far more important goal of getting shots into the unvaccinated, and further fuel skepticism about the vaccines' effectiveness.
Expert advisers to the CDC and the Food and Drug Administration recommended the shots only for older, chronically ill or otherwise high risk people who originally had the Pfizer or Moderna shots, positions the agencies for the most part adopted. The advisers agreed Johnson & Johnson vaccine recipients should get a second shot after two months because of evidence of waning immunity.
Pfizer this week asked the FDA to amend its booster authorization to include all adults, citing results of a new clinical trial that shows it's safe and effective. Those results have yet to be peer reviewed or published.
John Woolfolk | Reporter
John Woolfolk is a reporter for the Bay Area News Group, based at The Mercury News. A native of New Orleans, he grew up near San Jose. He is a graduate of the UC Berkeley School of Journalism and has been a journalist since 1990, covering cities, counties, law enforcement, courts and other general news. He also has worked as an editor since 2013.
jwoolfolk@bayareanewsgroup.com
Follow John Woolfolk	@JohnWoolfolk1


New York, NY and Berkeley, CA, August 14, 2008/ Citi Community Capital, a division of Citi, and Helio Micro Utility today announced the creation of the Green Energy Community Investment Fund to initially finance up to four megawatts of solar electricity production this year. Through this new initiative, solar power systems will be installed on qualifying commercial and public sector facilities throughout the U.S., with an emphasis on underserved communities. Helio mU, headquartered in Berkeley, CA, provides solar electricity to commercial, residential and not-for-profit customers with little or no initial capital outlay through long term Power Purchase Agreements (PPAs).
The first of its kind in the clean energy sector, the Green Energy Community Investment Fund™ puts a special focus on commercial, non-profit and public entities in low and moderate income areas. The Fund will follow the same model as the established Helio Green Energy Plan™, enabling qualifying entities to buy the power generated from a solar installation rather than the panels themselves, thus providing upfront savings and smoothing the path to solar adoption.
In 2007 Citi Community Capital (CCC), formerly Citibank Community Development, provided up to $5 billion for affordable housing and community revitalization projects in locations around the country. The Green Energy Community Investment Fund is part of Citi's U.S. initiative to support business and community improvement with programs that also include environmentally positive objectives.
Solar projects that can be completed prior to the end of 2008 so that the benefits of the Federal Incentive Tax Credit (ITC) program can be applied to the solar power system installation cost.
Customer sites that are owner occupied or have more than 10 years remaining on the building lease.
Sites that have adequate roof space for a solar electricity system capable of generating at least 50 kW, or approximately 9,000 square feet of space.
Sites that have unobstructed sun exposure year round.
Sites that are paying over $2,000 per month in electricity bills.
Tom Millhoff, Vice President of Business Development for Helio mU will lead the qualification process of facilities for the fund. "We will move quickly to evaluate building sites and install solar power systems this year. We encourage interested customers to contact us, particularly for projects that can be completed by the end of this year. In addition to end customers, solar power integration firms who have non-residential projects which might qualify for support from the Green Energy Community Investment Fund™ should contact us immediately," said Mr. Millhoff.
The community development division of Citi was created to fulfill the diverse community development lending and investment activity in one distinct business unit. The business, now called Citi Community Capital (CCC), was launched in 2000. In 2007, CCC merged with the Affordable Housing unit of the Municipal Securities Division which made available an even wider array of financial products that can be structured to fit our clients' objectives.
CCC helps community development financial institutions, real estate developers, national intermediaries and non-profit organizations achieve their goals through a broad, integrated platform of debt and equity offerings. Within CCC is a dedicated investment team that specializes in renewable energy, New Markets, and other community development oriented investing. For more information, please visit www.citi.com/citigroup/citizen/community or contact Danielle Romero-Apsilos at 212-816-2264.
Helio mU is a green power pioneer, selling solar energy without the upfront cost of panels. The Company provides solar electricity to commercial, residential and not-for-profit customers with little or no initial capital outlay through its Green Energy Plan TM. The Helio Green Energy Plan guarantees customers receive cost-effective and predictable energy pricing and maximum system performance over the life of the agreement. Helio mU is headquartered in Berkeley, CA. For more information please visit: www.HeliomU.com and www.BuyPowerNotPanels.com or call toll free at 1.866.862.2806.


tally repetitions. This could easily be used over multiple days between therapy sessions if using the date/ time column for exercises on consecutive days.
Click the button below to add the Patient Exercise Tracker to your wish list.


text:
La Síntesis digital directa (DDS) es un método empleado por sintetizadores de frecuencia utilizado para crear formas de onda arbitrarias a partir de un único reloj de referencia de frecuencia fija. DDS se utiliza en aplicaciones tales como generación de señal, osciladores locales en sistemas de comunicación, generadores de funciones, mezcladores, moduladores, sintetizadores de sonido y como parte de una lazo de seguimiento de fase (PLL) digital.

Visión general

Un sintetizador digital directo consiste en una referencia de frecuencia (a menudo un oscilador de cristal o un oscilador de onda acústica superficial), un oscilador controlado numéricamente (NCO) y un convertidor digital a analógico (DAC)  como se muestra en la Figura 1.

El oscilador de referencia proporciona una base de tiempo estable para el sistema y determina la precisión de frecuencia del DDS. Proporciona el reloj al NCO que produce en su salida una versión cuantificada de tiempo discreto de la forma de onda de salida deseada (a menudo una sinusoide) cuyo período es controlado por la palabra digital contenida en el Registro de Control de Frecuencia. El DAC convierte la forma de onda digital muestreada en una forma de onda analógica. El filtro de reconstrucción de salida rechaza las réplicas espectrales producidas por la retención de orden cero inherente al proceso de conversión analógica.

Rendimiento
Un DDS tiene muchas ventajas sobre su contraparte analógica, el lazo de seguimiento de fase (PLL), que incluye una agilidad de frecuencia mucho mejor, ruido de fase mejorado y un control preciso de la fase de salida a través de las transiciones de conmutación de frecuencia. Las desventajas incluyen respuestas espurias principalmente debido a los efectos de truncamiento en el NCO, espurios cruzados resultantes de imágenes Nyquist de alto orden (> 1) y un piso de ruido más alto en grandes desplazamientos de frecuencia debido principalmente al convertidor digital a analógico.

Debido a que un DDS es un sistema muestreado, además de la forma de onda deseada a la frecuencia de salida Fout, también se generan imágenes de Nyquist (la imagen principal está en Fclk-Fout, donde Fclk es la frecuencia de reloj de referencia). Para rechazar estas imágenes no deseadas, generalmente se utiliza un DDS junto con un filtro de paso bajo de reconstrucción analógica como se muestra en la Figura 1.

Agilidad de frecuencia
La frecuencia de salida de un DDS está determinada por el valor almacenado en el registro de control de la frecuencia (FCR) (ver la Figura 1), que a su vez controla el tamaño del paso del acumulador de fase del NCO. Debido a que el NCO opera en el dominio de tiempo discreto, cambia su frecuencia instantáneamente en el borde de la señal del reloj coincidente con un cambio en el valor almacenado en el FCR. El tiempo de establecimiento de la frecuencia de salida del DDS está determinado principalmente por la respuesta de fase del filtro de reconstrucción. Un filtro de reconstrucción ideal con una respuesta de fase lineal (lo que significa que la salida es simplemente una versión retardada de la señal de entrada) permitiría una respuesta de frecuencia instantánea en su salida porque un sistema lineal no puede crear frecuencias no presentes en su entrada.

Ruido de fase y fluctuación de retardo
El rendimiento superior de ruido de fase de cierre de un DDS se debe al hecho de que es un sistema de alimentación hacia adelante. En un lazo de seguimiento de fase tradicional (PLL), el divisor de frecuencia en la ruta de retroalimentación actúa para multiplicar el ruido de fase del oscilador de referencia y, dentro del ancho de banda del bucle PLL, imprime este exceso de ruido en la salida del VCO. Un DDS por otro lado, reduce el ruido de fase del  reloj de referencia en una proporción de  debido a que su salida es derivada de la divisíón fraccional de la señal de reloj. La fluctuación de retardo del reloj de referencia se traslada directamente a la salida, pero esta fluctuación es un porcentaje más pequeño del periodo de la señal de salida (por la proporción ya mencionada). Ya que la frecuencia máxima de salida está limitada a , el ruido de fase de salida en los desplazamientos de cierre siempre es al menos 6 dB por debajo del ruido de fase del reloj de referencia

En desplazamientos muy alejadas de la portadora, el piso de ruido de fase de un DDS está determinado por la suma de potencia del piso de ruido de cuantificación DAC y el piso de ruido de fase del reloj de referencia.

Referencias

Enlaces externos

Procesamiento digital de señales


Like sleeping on a cloud but way warmer.
The lightweight Klymit Insulated Static V Sleeping Pad's innovative V-chamber design utilizes body mapping technology, which mimics the muscular structure of your back to limit pressure points, air movement, and heat loss for an incredibly warm and comfy night's sleep. If you get to the campsite later than planned, and both daylight and energy are lacking, it only takes 10-12 breaths to get your bed-away-from-home set up.
This is a huge upgrade from my previous roll up sleeping pad. It will save a lot of weight and space in my pack. Looking forward to trying it out.
I think it has been exactly what I was hoping for. It is light enough, warm insulated, and comfy. Glad we got them!
This is a great pad!
I've been a guy trying to camp on foam in single digit weather on foam for years. I grew up using inflatable pads but have never owned one, let alone a insulated pad. I decided that I'm finally getting out enough to get a good foam pad. This guy was my choice. 4 days in on this pad and I'm very happy with it. The high R value keeps you super warm at night and even when you're side sleeping it accommodates your body to keep you off the ground.
This isn't the most expensive pad, but it does its job so well, there's really no need to buy anything else. It has an R value as high or higher than pads 5 times the price.
Sure, you can't kneel on this without your knees hitting the ground, but you can side sleep at any angle. IT'S SO COMFORTABLE.
I've used super cheap pads and very expensive ones and this beats them all. It is solid, comfortable, doesn't lose air in the night, and compact so you can take it anywhere. It takes like 2 seconds to blow up and its super easy to roll back up when you're done.
Gift for the hiking husband, perfect pack size! Easy to inflate and deflate. Haven't used it on a trip yet but tested at home. Super comfy reviews from our kiddos!
Paired perfect with my Sierra Designs Backcountry Bed. Kept warm and comfortable with back, stomach, and side sleeping. Replaced my ancient Therm-a-rest pad that served me well for 8 years, hope this pad lives up to that sort of high expectation.
Great and light sleeping pad. Awesome R value. Nice and comfortable for a side sleeper. Had an air leak problem. Sent it in to Klymit. They replaced the valve and had it back in no time. Great customer service.
Stop searching - Im convinced this is the best backpacking pad out there! It is super comfy and warm and when stored it is very light and so tiny! I love that I can sleep on my side without touching the ground... finally a good nights sleep in the backcountry.
I picked this up for backpacking over the static V lite, I wanted more comfort and I knew I'd be okay with the small amount of added weight. It took around 10 breathes to fully inflate the sleeping pad and it packs down super small. It actually fit into my sleeping bag pocket of my pack along with my sleeping bag and pillow (also a Klymit). I am very impressed thus far and I am looking forward to taking this out in the winter to see how this gear holds up. The R-value on this pad is great as well. Feel free to reach out if you have questions.
I loved that I could roll onto my side and not grind my boney hips into the ground. The V chambers were great at providing the lift from the cold ground and it never felt like I wasn't sleeping on a continuous mattress surface. The fact that the mat packs down to about the size of a nalgene bottle was great for traveling. This would be a great car camping mat or backpacking mat as long as you don't mind the weight (25 oz). I'm looking forward to many more nights camping on this mat.
Well, I do not have a giant person's lungs, so it took me more like 20 breaths to blow this up...BUT it is still super easy and fast to inflate. I like this because it rolls up and stores super small, it is lightweight, and it is warm. I have used a Thermarest pad for years, but this is the new pad I'll be using for quite a while!
First off, this pad is super easy to inflate. As it says, only about 10 breaths fill it. The whole thing is pretty comfy.
This Pad is great. I have no complaints. Used it for a backpacking trip three weeks ago and a five day Moab trip that i just got back from yesterday. IT holds air really well and never seemed to deflate. So comfy for how small it packs.
Awesome comfort for the size and price!
I'm not surprised that this is out of stock because at that price point, you're not going to find much that's warmer and comfier!
I haven't actually gotten to sleep on it yet because on a recent four-day camping trip in Montana my boyfriend stole it to try it out first, so this is his take on it.
He switched to this from the classic self-inflating pad that everyone's had forever and was immediately stoked on how very little room it takes up in comparison and how light it is. Blowing it up took absolutely no time at all, which was awesome. He had this thing fully inflated in about a third of the time I did mine.
For packing down small, it's pretty thick (2.5 inches) and warm (the R-value felt accurate). The V-formation of the channels was really cool and comfy to sleep on and if it's inflated fully and you're not a side sleeper, you're not going to be touching the ground much in the night.
The fabric that the pad is made of is really awesome because it's got a texture that makes it a little grippy so you won't be sliding around on it and it won't be sliding around on the tent floor... cool feature!
The one complaint that he has was that the air valve was pretty big and sticks out quite a bit which made it feel a little fragile and also made it a little poke-y.
All in all, it's awesome and you're not gonna find more bang for your buck for under $90 elsewhere!
Great to see this model on sale, but color is too strong for me. (hence on sale). Can this pad be flipped over so I sleep on the gray side and not the orange? Is the 75D poly on both sides of this? Does one side have more texture?
Will the nozzle get squished if it's pointing down?
If you flip it, the nozzle will not get squished, but the grey material is a bit more durable than the Orange side.
How noisy is this pad when you move around in the night? Also, is it slippery on the tent floor?
In my experience with owning it, it's not noisy and I've never noticed it slipping around, but i don't move much.


text:
Appeal of Final Order Approving Calfrac's Recapitalization Transaction Heard in Court Today; Court Reserves Decision
CALGARY, AB, Nov. 25, 2020
CALGARY, AB, Nov. 25, 2020 /CNW/ - Calfrac Well Services Ltd. ("Calfrac" or the "Company") (TSX: CFW) confirms that a hearing was held today, in the Alberta Court of Appeal, to consider the appeal by Wilks Brothers, LLC, of the Final Order issued by the Court of Queen's Bench of Alberta on November 2nd, approving the Company's plan of arrangement, under the Canada Business Corporations Act.
The Court has reserved its decision, and Calfrac will provide a further update upon its release.
Calfrac's common shares are publicly traded on the Toronto Stock Exchange under the trading symbol "CFW". Calfrac provides specialized oilfield services to exploration and production companies designed to increase the production of hydrocarbons from wells drilled throughout western Canada, the United States, Argentina and Russia.
This press release contains forward-looking statements and forward-looking information within the meaning of applicable securities laws. The use of any of the words "expect", "anticipate", "continue", "estimate", "may", "will", "project", "should", "believe", "plans", "intends" and similar expressions are intended to identify forward-looking information or statements. More particularly and without limitation, this press release contains forward-looking statements and information relating to the timing of the Court's decision in respect of the appeal. These forward-looking statements and information are based on certain key expectations and assumptions made by Calfrac in light of its experience and perception of historical trends, current conditions and expected future developments as well as other factors it believes are appropriate in the circumstances, including, but not limited to, that the Amended Recapitalization Transaction will be completed as proposed. Although Calfrac believes that the expectations and assumptions on which such forward-looking statements and information are based are reasonable, undue reliance should not be placed on the forward-looking statements and information as Calfrac cannot give any assurance that they will prove to be correct. Since forward-looking statements and information address future events and conditions, by their very nature they involve inherent risks and uncertainties. Actual results could differ materially from those currently anticipated due to a number of factors and risks. These include, but are not limited to, risks associated with: Calfrac's ability to continue to manage the effect of the COVID-19 pandemic on its operations; actions taken by Wilks Brothers, LLC; decisions by Canadian securities regulators and/or the courts; default under the Company's credit facilities and/or the Company's senior secured notes due to a breach of covenants therein; failure to reach any additional agreements with the Company's lenders; the impact of events of defaults in respect of other material contracts of the Company, including but not limited to, cross-defaults resulting in acceleration of amounts payable thereunder or the termination of such agreements; failure to receive any applicable regulatory approvals in respect of the Amended Recapitalization Transaction; global economic conditions; along with those risk and uncertainties identified under the heading "Risk Factors" and elsewhere in the Management Information Circular dated August 17, 2020, as supplemented by the Material Change Report dated September 25, 2020, and the Company's annual information form dated March 10, 2020, each as filed on SEDAR at www.sedar.com.
The forward-looking statements and information contained in this press release are made as of the date hereof and Calfrac does not undertake any obligation to update publicly or revise any forward-looking statements or information, whether as a result of new information, future events or otherwise, unless so required by applicable securities laws. This press release is not an offer of securities for sale in the United States. Securities may not be offered or sold in the United States absent an exemption from registration under the Securities Act of 1933.
SOURCE Calfrac Well Services Ltd.
View original content: http://www.newswire.ca/en/releases/archive/November2020/25/c0805.html


By Midori. This is their take on the classic bullet pencil design. The brass section encases the pencil, allowing it to be carried in a bag whilst protecting the point. Comes with a 75mm HB pencil and a pink eraser. Once the cap is posted on the end of the pencil, it makes it a comfortable length for writing/drawing.
Also, a great way to get the most use out of your favourite pencils!


text:
Mixed-use building in heart of Ranelagh village for €725,000
Property comprises barber shop producing rent of €24,000 and two floors of offices
The mixed-use building in Ranelagh village extends to 149sq m over three storeys
Justin Comiskey
Wed Oct 10 2018 - 02:30
A mixed-use investment in the heart of Ranelagh village in Dublin 6 is on the market through agent Knight Frank for €725,000.
It extends to 149sq m (1,600sq ft) over three storeys. The 60sq m (650sq ft) ground floor is let to barber Gmale at an annual rent of €24,000 and has renewed its 10-year lease with a break option in year five. The rent breaks back at €397.19 per sq m (€36.90 per sq ft).
The ground floor is fitted out to a high standard to provide salon, treatment rooms and staff facilities. It also benefits from side access to Ashfield Road.
Overhead, two floors of offices are vacant and could be upgraded or converted to residential use. These also have separate access off Ashfield Road.
At the quoted price, 73 Ranelagh offers a net initial yield of about 3 per cent and a capital value of €450 per sq ft.
Surrounding occupiers include Smyths Pub, Butlers Chocolate, TriBeca and McSorley's. The Luas is about 300 metres away.
Butlers ChocolateSmythsTribecaKnight Frank
Baggot Street Georgian on extensive site primed for development at €3m
Sweaty Betty signs lease for flagship store on South Anne Street
Cairn Homes secures €131m from sale of Greystones apartments
An Post signs for additional office space at Dublin's tallest office building
South Dublin residential development site guiding at €8m
Tom Brady retires from the NFL 'for good'
Our weekly personal finance digest will provide you with the insight you need to save money and make smart spending decisions


No-one could have predicted the current economic revolution - and it is a revolution. Capitalism is in crisis, exposed as a bankrupt system. This study explores the implications of the crash for all, encompassing economic thought as well as the social, moral, ecological and philosophical changes that are already beginning to emerge. Ransom brings togther exciting and radical thinkers including Walden Bello and Susan George to set the agenda for economic democratisation.


The Morristrown Regional Sales Center is located in the historic area of town on South Street, a few blocks from the train station and 1 mile from the Town Green. An outstanding community with an abundance of restaurants, shops and fabulous arts and cutural events thoughout the year add to the character and charm. The office is comprised of sales professionals that live throughout Morris County, with an indepth knowledge of the uniqueness of each community we serve. An ideal commuters location, there is convenient public transportation to New York City and easy highway access throughout northern New Jersey.
A Realtor who has been in business in Morris County for over 40 years.


Discovering who you are is a journey and one that I don't think has a final destination.
I recently posted a selfie on Instagram captioning it: Sometimes, I'm happy with who I am. Becoming who I'm meant to be. A lovely friend responded that I don't need to change and become anything else, that I am great as I am.
This set me thinking. Self-acceptance has always been something I struggled with – I've always felt out of place, odd, different, and just not for this world. For years I felt lost, cast-aside, and solitary, but as I've got older I've learned to love myself, to embrace who I am and to continually search for my own truth.
I don't think this is a journey that has a final destination. We don't stay the same, we don't reach perfection, we don't become someone and remain that person for the rest of our lives. We move on, we change, we learn, we grow, and we become who we're meant to be at that moment in time.
I write a lot about being who you want to be, about self-acceptance and being yourself: Never Changing Who I Am, Who am I and Who are You, and Belonging, Being a Loner, and Finding your Tribe, are just a few posts.
We must never dilute who we are, because intrinsically, whatever it is that makes your heart sing is you… and that you is exactly who you're meant to be.
In Beneath the Distant Star, Jasmine is fighting to become herself. Jasmine lost her older sister, Freya, in the first book in the Surviving Hope series, but now, at fifteen-years-old, she can barely remember her sister and her frustrations grow as her mother doesn't seem to accept her for who she is. Jasmine feels she's always battling a ghost and losing.
Knowing and becoming who you are isn't always easy. I used to think once I'd got out of my teens it'd be easy to discover myself… Not strictly so, like I said, finding out who you are is a journey and as your life changes, so do you.
It's a long standing thing for us – as human beings – to want to better ourselves, and society is always telling us that if we were this or that we'd be better, or if we bought whatever (they're probably selling) we'd be happy, but life is a rollercoaster, sometimes we're better, stronger, more confident, and sometimes we're weaker, less confident, and we struggle. That's completely normal and exactly as life should be. We rise and fall with our circumstances.
Even when you're strong, weakness can prevail, those are the times that others need to step in and help you on your journey.
I dislike change. I struggle without a prescriptive routine, and when things change my life melts down. To illustrate that, my favourite body lotion was recently discontinued. I even tweeted to confirm, then I panicked. My favourite toothpaste vanished a year or two ago and I'd been using that brand since I was about twelve. It took me weeks to choose another, just staring at the choice on the supermarket toothpaste shelf wondering if they'd taste okay, feel okay, and just be right for me was hell. Now it's happening again. I just bought the last seven bottles of body lotion that I could find from several shops in town. I'm not neuro-typical, but that's okay, that's my journey.
But when it comes to being who I am, change is appropriate and I embrace it.
I've been dyeing my hair since my thirties; when that silver strand appeared and wouldn't go away, I dyed it. Now, fifteen years later, I'm fed up with colouring my hair. I'm forty-seven and all about embracing myself, so I decided it was time to stop and see what hid beneath the dirty brown. Change is scary. Change can point you out as different, buck the trend, make you stand out. I found a supportive Instagram page: Grombre and I went for it. I stopped dyeing.
I used to look in the mirror as my white roots appeared and I believed I looked ten years older. I actually gazed at my face and it looked greyer and physically older. Turns out you can fool yourself. Now, silver highlights are appearing like glittered stars in my hair and I love it. I look in the mirror as my grey grows and I'm no different to who I was when I coloured my hair. There is no age difference, I look the same!
I can't wait to discover what lies beneath, quite literally, and after a lifetime of dark hair, I will be able to play with colours, maybe I'll have blue tips, or lilac hair, or maybe I'll go dusky pink – whatever I choose it'll be me for a while. I'll embrace who I am at that moment in my life.
Brene Brown said: Because true belonging only happens when we present our authentic, imperfect selves to the world, our sense of belonging can never be greater than our level of self-acceptance.
Accept who you are – right now.
Light up the world by being You. Be the star.
Beneath the Distant Star is published by BHC Press and is a novel that will enthral you.
This entry was posted in Beneath the Distant Star, Happiness, Positivity, Surviving Hope and tagged becoming you, being yourself, Beneath the Distant Star, books, self acceptance, Surviving Hope on 2nd January 2019 by Lisa Shambrook.
It doesn't matter what the weather, I spied a meadow through a gate swathed in fog and it made the most beautiful picture. The Elan Valley was cold and crisp when Bekah and I visited and the walk was stunning. A simple dog walk through local roads and fields conjure up joy especially when you're wrapped up warm. The girls and I went up to Brechfa Forest to do a photoshoot for Cait's art, the mist and rain offered a haunting vista through the woods.
Vince and I escaped to London for a weekend, it rained, but The Phantom of The Opera made it memorable along with the sights and sounds of the city. Seeing the Shard disappear up into fog was beautiful. The seagulls perching atop George IV's head and horse in Trafalgar Square were highly amusing as the statue itself had anti-bird spikes about the plinth, didn't bother the birds, George's head will do just fine!
I mentioned being wrapped up warm. Winter is cold, and my Scottish fingerless gloves were invaluable during the cold. My Stargazer pyjamas, I don't think I've ever owned nightwear up 'til now, but I love these! My grey scarf was a must this season, and I got Dr Martens, Cherry Red Arcadia for Christmas and matched them up with this cute burgundy tulle skirt to feel especially good!
Those fingerless gloves helped keep my fingers typing during my edits, even if Raven wanted attention instead. Writing and reading brings me great joy and tapping away at the keyboard during winter months is one of my favourite things. I redrew my maps and sketched for my new work in progress The Seren Stone.
The best thing is getting out in the cold is for a Hot Chocolate and weekdays means my kids joining me at Pethau Da in Carmarthen.
The other thing I spent a lot of winter doing was painting, some are secret projects, but I treated myself to some gorgeous art this Christmas from Tahina Morrison and J Edward Neill's Hither The Wind and Amanda Makepeace's Winter Raven. My children bought Vince and I the best anniversary gift with a print of the constellations on our wedding day. The stars are my thing!
Then nature gives us the most spectacular displays. In December we had a Super Blue Blood Moon and as it shone over the River Towy, I stood totally entranced. It snowed, briefly in Carmarthen, but much more the country over, and just crunching in the little snow we had brought me joy! Snowdrops have just begun to nod their stunning heads, and chasing rainbows has always brought glorious moments.
Lastly, there are moments of joy in unexpected places. Discovering baby reindeer in town at Christmas, finding Jack Frost's handiwork on your car windscreen when you get up, holding a baby dragon in an acorn cup… and the beauty in things that aren't always beautiful, the rainbows of colour in an oil spill on the pavement.
simple and, sometimes, small things that bring me great joy.
Where did you find joy this winter?
This entry was posted in animals, Art, Crystals, Family, Flowers, Gemstones, Happiness, Nature, Winter, Writing and tagged Cats, dogs, Family, happiness, joy, places, Winter on 21st March 2018 by Lisa Shambrook.
I'm a loner. I'm not alone, I'm not lonely – just a loner.
But when I find my people, I am one with them and of them.
I've always wanted to belong. I ache to belong, to find my place. Outside of my family, this has been so difficult. In Real Life, except for inside my own four walls, I've never felt I belonged anywhere. For a long time, for many years this saddened me. I spent my early adult years longing for an attachment outside of my family and this yearning crushed me.
An introvert by nature with severe social anxiety meant close friends would always be hard to find and maintain. I held back, fearful of pushing myself where I wasn't wanted, or of people leaving. I developed the skills of being a loner. I knew I could always trust myself, so my own company became comfortable, along with the close companionship of my husband and children. The only place I belonged was with them.
I used to be lonely in real life, but I lost myself in writing, in creating worlds and characters, and with each word, line by line, chapter by chapter, I became a fulfilled loner. I value my time alone, as much as I adore my time out with my family. I relish time to sit and be me, as much as I love sitting in a coffee shop with one of my children. I jealously guard my own time.
But this doesn't mean I'm antisocial, or adverse to friendships. In real life I have, maybe three people, outside my own family, who I feel I could go for a hot chocolate with and chat when I need to. And this is okay, because the pressure to physically socialise doesn't weigh me down. I can still develop real life friendships.
I often hear that technology has ruined communication, or made us lazy, or stopped us from developing relationships. You'll never find me blaming tech when it has exponentially enhanced my life in so many ways! As a loner with social anxiety I avoid social events and activities as much as I can. Tech doesn't change that. That's who I am. If I was a gregarious extrovert, I might be out partying, but I'm not, so, much of my social life is technological. I socialise online.
People talk with frowns of teens being glued to their phones and not getting out and enjoying themselves. Have you ever stopped to discover that the extroverts are still actually out having fun in person with their friends – they never stopped doing that – and the introverts with their noses stuck to their phones are also conversing, messaging, laughing, and sharing and having fun with their friends? Some love to go out and watch a movie with mates then go for a drink afterwards. Others are watching movies in sync on Netflix with their friends in other countries or towns then chatting about it after in the comfort of their own homes. We are perhaps, via tech, the most sociable and informed society ever!
I discovered my people on social media. My friends, my tribe, are right there at my fingertips whenever I need them. They span my own country, they live in Wales, England, Scotland, and Ireland, and they live further afield – in the US, Canada, Australia, Israel, Europe, and in many other places. They are moments away from me when I need a virtual hug (I get plenty of real ones at home), advice, laughter, news, deep conversation, superficial conversation, and best of all – love.
They love me for who I am, I don't need to fit into their schedule, we don't need to answer private messages immediately, tech offers us relationships with people we'd never have discovered at home without it.
Social media is not perfect, but it helped me belong. It helped this loner discover a plethora of like-minded people, of people with differences, people who disagree with me but love me anyway, people who have time for me. I know some of these people in real life, some I will never meet, but they all have a place in my heart. And I am never lonely.
Are you happy with your place in life and who you are?
This entry was posted in Family, friends, Happiness, Social Media and tagged belong, belonging, friends, happiness, loner, social anxiety, social media, your people, your tribe on 7th March 2018 by Lisa Shambrook.
I have lived a life of clutter, of clinging on, of holding onto things that are no longer important. I've been attached to physical items for much longer than they were fruitful, and I've spent time in my life living in the past. How long have we lived amongst things that have outlived their value, or people and relationships that have become toxic, or stayed connected to past events that no longer benefit us, or remained within groups and communities that no longer make us happy?
A few years ago it became very popular to embrace minimalism, to clear out your clutter, to live with fewer material possessions. Books were published helping us declutter, to purge the objects that no longer satisfied us, and remove the distractions that stopped us being happy.
Surely, this question is one we should ask ourselves in most aspects of life. There will always be things we have to do that don't make us happy or spark joy, we have to work for a living, and we cannot remove all the negative or problems from our lives. But when there are things we can change we should create as much joy in our lives as we can. I don't want to live my life missing out on happiness, fun, and joy.
I am moving forward after years of severe depression and moments of psychosis, and allowing myself to let go. I am slowly progressing through my home removing things that no longer hold emotional value and if they don't spark joy, they will go. I am re-evaluating, working out what makes me happy and what doesn't. There are things that are important to me, yet they have brought me great sadness rather than the joy they should. Sometimes, letting go means releasing things that were once important – if they still are, you'll find them again. I'm going back to basics in many ways, in an attempt to remove the negativity in my life and replace it with positivity and joy.
I'm learning to let go.
Have you ever ditched something from your life which has made you infinitely happier?
How easy do you find letting go?
This entry was posted in Happiness, Positivity and tagged change, happiness, Happy, let go, letting go, positivity, release on 17th January 2018 by Lisa Shambrook.
How will you be kind-hearted the whole year through?
I wrote about how Kindness is the recipe for keeping romantic relationships alive, The Most Valuable Way to a Happy and Successful Relationship, and it appears it is perhaps one of the best ways to be happy in all our relationships – whether they are life-long or just passing.
In Charles Kingsley's tale of the Water-babies, Mrs Do-As-You-Would-be-Done-By was a lovely lady who treated the babies as she wished to be treated, with unconditional love and treats. In contrast, Mrs Be-Done-By-As-You-Did was hard and sharp and treated the babies as they treated others, until they learned the lesson of treating others well. Which would you prefer to have around?
We have turned into a society of people who wish to do whatever we want without consequences and that includes how we treat those around us. We need to reassess our ethics. We can fight for and rise to catch our dreams, we can work to succeed, and we can push ourselves, but we don't need to do it at the expense of others. We can fight to help others reach their potential, help them to succeed, and support those who need it. We can work together, and kindness and compassion are paramount to achieving that.
Kindness is a base response, it's automatic, it's a default we should all have.
Kindness doesn't need explaining. If you ask any child, especially small children, how you should treat others they will almost always say with kindness. Be kind. If they get it, why don't we?
Kindness covers so many things – when you search the thesaurus you come up with a plethora of words, including: affection – altruism – benevolence – courtesy – decency – compassion – gentleness – goodwill – goodness – grace – graciousness – hospitality – humanity – patience – sweetness – sympathy – tenderness – tolerance – understanding – unselfishness – charity – consideration – heart – helpfulness – kindliness – philanthropy – tact – thoughtfulness.
What are you going to do today…and tomorrow?
Make Kindness your built-in default.
This entry was posted in charity, Emotions, friends, Happiness, Love, Positivity and tagged caring, happiness, Happy, kind, kindness, love, world kindness day on 8th November 2017 by Lisa Shambrook.
Autumn is the season that inspires me – a season of falling autumn leaves, woollies, hats and gloves, boots, hot chocolate and autumn tone jewellery, cosy cats, apples, acorns, conkers, Halloween and pumpkins, candles, toadstools, and autumn colours of bronze, brown, red, amber, yellow, silver, and gold.
the river takes to the sea, the yellow drift of leaves.
Fallen leaves are autumn's equivalent to snow – they bring out the child in you.
the berry's cheek is plumper, the rose is out of town.
The maple wears a gayer scarf, the field a scarlet gown.
Lest I should be old-fashioned, I'll put a trinket on.
and if I were a bird I would fly about the earth seeking the successive autumns.
Colors burst in wild explosions, fiery, flaming shades of fall.
in hordes of a thousand and one.
The bleeding, unwearing their masks to the last notes of summer.
Their flutes and horns in nightly swarming. Colors burst within.
What are you loving this autumn?
This entry was posted in Autumn, Chocolate, colours, Halloween, Happiness, Nature, Oak and tagged acorns, autumn, autumn colours, autumn leaves, boots, Cats, conkers, falling leaves, Halloween, jewellery, pumpkins, woollies on 27th September 2017 by Lisa Shambrook.