text:
Windy debate on state gems
Charlotte Observer - Jack Betts - July 19, 2009 * Opinion
Impact on Landscape North Carolina
The debate has its roots in a condominium project that popped up on a mountain ridge in the 1980s. There were no mountain area zoning laws to prevent it, and when the Sugar Top project emerged to stick out like a sore thumb, the General Assembly quickly acted. It adopted the Ridge Law, intended to stop the erection of excessively tall structures atop mountain ridges in altitudes of 3,000 feet or greater.
RALEIGH -- When Martin Nesbitt got up in the Senate the other day to argue against allowing industrial wind farms atop mountain ridges, I flashed back to a day in Congress in the 1970s when other North Carolinians were arguing for preserving the beauty of the mountains.
I think it was then-Rep. Jim Martin, R-N.C. who got to the crux of the matter. He argued that the House should allow debate on a bill to stop a hydroelectric project on the New River in Western N.C. and Southwestern Virginia by putting the river in the National Wild and Scenic Rivers system. Don't flood one of the oldest rivers in the world and ruin its dramatic run through Ashe and Alleghany counties. Don't, he warned, make the mistake of trading our birthright for "a mess of wattage."
Those attuned to Bible stories got the allusion to Esau's hasty trade for a bowl of pottage. In time the state saved the New River from a hydro plant that would have produced a mess of wattage but destroyed one of Eastern America's most gorgeous rivers.
High-powered debate
But just as that 1970s-era fight pitted Western N.C. residents against advocates of cheap and clean electric power and split some environmentalists, so is the debate over Senate... more [truncated due to possible copyright]
But just as that 1970s-era fight pitted Western N.C. residents against advocates of cheap and clean electric power and split some environmentalists, so is the debate over Senate Bill 1068 driving a wedge between traditional conservationists and environmentalists who want to give up some mountain slopes for sustainable wind energy. And like the debate over the hydro plant, this debate carries some high-voltage rhetoric.
Wind turbines are "visual pollution" that would ruin "the crown jewels" of the state, says Nesbitt.
This is evolving technology, says another mountain lawmaker, Sen. Steve Goss, D-Watauga. "Don't kill it before it starts."
The debate has its roots in a condominium project that popped up on a mountain ridge in the 1980s. There were no mountain area zoning laws to prevent it, and when the Sugar Top project emerged to stick out like a sore thumb, the General Assembly quickly acted. It adopted the Ridge Law, intended to stop the erection of excessively tall structures atop mountain ridges in altitudes of 3,000 feet or greater. It exempted such things as windmills and other staples of the rural landscape, and gave counties a year to opt out of the law if they chose. None did. It's a good law that has helped maintain mountain vistas North Carolinians have loved for hundreds of years.
What's a windmill?
A few years ago Attorney General Roy Cooper's office issued an opinion that the Ridge Law's exemption of windmills applied to what we used to think of as farmstead windmills helping pump water. It did not exempt from the law the new generation of wind turbines, some of them hundreds of feet tall from their base to the tips of their rotors. I thought that interpretation was appropriate, too - in line with what the House and Senate intended when they adopted the law preserving the mountain crests.
But the state has also adopted a law requiring that increasing amounts of power be generated by means other than burning carbon. Wind power is one way, and in this state there are two general locations where the wind blows a lot: the coastal area, where Senate President Pro Tem Marc Basnight envisions a series of wind farms with hundreds of tall wind turbines,, and a much smaller area on mountain ridge tops where there's enough wind to generate power.
Some state officials think the coast may be the best place for large wind farms. Windmills would be less visible offshore, and perhaps not as objectionable visually in the sounds. And there's room to put many more wind turbines on the coast than the mountains. "It does no good to put 10 up. You have to put up hundreds," says Basnight, who has talked with Duke Energy about its plans for a pilot project off Hatteras or Oregon Inlet.
Stirring passions
Putting wind turbines on mountain ridges has stirred passions - and led to the current debate over interpreting the Ridge Law.
There are windmill issues other than size, of course: reliability of wind, the likely need for other baseline plants when the wind doesn't blow, noise and even the flicker of shadows caused by blades turning while the sun shines. Proponents of wind energy argue that new developments in wind energy - and even in the design of wind turbines - are likely to resolve these problems.
Here's the crux. Are there places on or near ridge tops where wind turbines can get enough wind to operate without ruining the magnificent vistas God gave us? Goss thinks so, and wants to find a way to amend the legislation to allow wind farms without adversely affecting the mountain views that have inspired millions of Americans for generations.
Nesbitt is less confident. The Ridge Law has been a good way to prevent the conversion of our mountaintops to anthills, he says. He notes the bill would allow small windmills up to 100 feet tall for individual homes. He's even willing to talk about allowing wind turbines near the crests of mountain ridges. But he's a lifelong mountain man - "and if there is such a mountain, I don't know about it."
Maybe they'll find a way to allow wind farms up there without killing what we cherish most. But they have to get this one right. Otherwise, they risk destroying the heritage of every North Carolinian.
Source: http://www.charlotteobserve...
https://www.windaction.org/posts/21290-windy-debate-on-state-gems


text:
Q: How would you convert this mutable tree into an immutable one? How would you convert type Node into an immutable tree?
This class implements a range tree that does not allow overlapping or adjacent ranges and instead joins them. For example if the root node is {min = 10; max = 20} then it's right child and all its grandchildren must have a min and max value greater than 21.  The max value of a range must be greater than or equal to the min. I included a test function so you can run this as is and it will dump out any cases that fail.
I recommend starting with the Insert method to read this code.
module StackOverflowQuestion

open System

type Range =
    { min : int64; max : int64 }
with
    override this.ToString() =
        sprintf "(%d, %d)" this.min this.max

[<AllowNullLiteralAttribute>]
type Node(left:Node, right:Node, range:Range) =
    let mutable left = left
    let mutable right = right
    let mutable range = range

    // Symmetric to clean right
    let rec cleanLeft(node : Node) =
        if node.Left = null then
            ()
        elif range.max < node.Left.Range.min - 1L then
            cleanLeft(node.Left)
        elif range.max <= node.Left.Range.max then
            range <- {min = range.min; max = node.Left.Range.max}
            node.Left <- node.Left.Right
        else
            node.Left <- node.Left.Right
            cleanLeft(node)

    // Clean right deals with merging when the node to merge with is not on the
    // left outside of the tree.  It travels right inside the tree looking for an
    // overlapping node.  If it finds one it merges the range and replaces the
    // node with its left child thereby deleting it.  If it finds a subset node
    // it replaces it with its left child, checks it and continues looking right.
    let rec cleanRight(node : Node) =
        if node.Right = null then
            ()
        elif range.min > node.Right.Range.max + 1L then
            cleanRight(node.Right)
        elif range.min >= node.Right.Range.min then
            range <- {min = node.Right.Range.min; max = range.max}
            node.Right <- node.Right.Left
        else
            node.Right <- node.Right.Left
            cleanRight(node)

    // Merger left is called whenever the min value of a node decreases.
    // It handles the case of left node overlap/subsets and merging/deleting them.
    // When no more overlaps are found on the left nodes it calls clean right.
    let rec mergeLeft(node : Node) =
        if node.Left = null then
            ()
        elif range.min <= node.Left.Range.min - 1L then
            node.Left <- node.Left.Left
            mergeLeft(node)
        elif range.min <= node.Left.Range.max + 1L then
            range <- {min = node.Left.Range.min; max = range.max}
            node.Left <- node.Left.Left
        else
            cleanRight(node.Left)

    // Symmetric to merge left
    let rec mergeRight(node : Node) =
        if node.Right = null then
            ()
        elif range.max >= node.Right.Range.max + 1L then
            node.Right <- node.Right.Right
            mergeRight(node)
        elif range.max >= node.Right.Range.min - 1L then
            range <- {min = range.min; max = node.Right.Range.max}
            node.Right <- node.Right.Right
        else
            cleanLeft(node.Right)

    let (|Before|After|BeforeOverlap|AfterOverlap|Superset|Subset|) r =
        if r.min > range.max + 1L then After
        elif r.min >= range.min then
            if r.max <= range.max then Subset
            else AfterOverlap
        elif r.max < range.min - 1L then Before
        elif r.max <= range.max then
            if r.min >= range.min then Subset
            else BeforeOverlap
        else Superset

    member this.Insert r =
        match r with
        | After ->
            if right = null then
                right <- Node(null, null, r)
            else
                right.Insert(r)
        | AfterOverlap ->
            range <- {min = range.min; max = r.max}
            mergeRight(this)
        | Before ->
            if left = null then
                left <- Node(null, null, r)
            else
                left.Insert(r)
        | BeforeOverlap ->
            range <- {min = r.min; max = range.max}
            mergeLeft(this)
        | Superset ->
            range <- r
            mergeLeft(this)
            mergeRight(this)
        | Subset -> ()

    member this.Left with get() : Node = left and set(x) = left <- x
    member this.Right with get() : Node = right and set(x) = right <- x
    member this.Range with get() : Range = range and set(x) = range <- x

    static member op_Equality (a : Node, b : Node) =
        a.Range = b.Range

    override this.ToString() =
        sprintf "%A" this.Range

type RangeTree() =
    let mutable root = null

    member this.Add(range) =
        if root = null then
            root <- Node(null, null, range)
        else
            root.Insert(range)

    static member fromArray(values : Range seq) =
        let tree = new RangeTree()
        values |> Seq.iter (fun value -> tree.Add(value))
        tree

    member this.Seq
        with get() =
            let rec inOrder(node : Node) =
                seq {
                    if node <> null then
                        yield! inOrder node.Left
                        yield {min = node.Range.min; max = node.Range.max}
                        yield! inOrder node.Right
                }
            inOrder root

let TestRange() =
    printf "\n"

    let source(n) =
        let rnd = new Random(n)
        let rand x = rnd.NextDouble() * float x |> int64
        let rangeRnd() =
            let a = rand 1500
            {min = a; max = a + rand 15}
        [|for n in 1 .. 50 do yield rangeRnd()|]

    let shuffle n (array:_[]) =
        let rnd = new Random(n)
        for i in 0 .. array.Length - 1 do
            let n = rnd.Next(i)
            let temp = array.[i]
            array.[i] <- array.[n]
            array.[n] <- temp
        array

    let testRangeAdd n i =
        let dataSet1 = source (n+0)
        let dataSet2 = source (n+1)
        let dataSet3 = source (n+2)
        let result1 = Array.concat [dataSet1; dataSet2; dataSet3] |> shuffle (i+3) |> RangeTree.fromArray
        let result2 = Array.concat [dataSet2; dataSet3; dataSet1] |> shuffle (i+4) |> RangeTree.fromArray
        let result3 = Array.concat [dataSet3; dataSet1; dataSet2] |> shuffle (i+5) |> RangeTree.fromArray
        let test1 = (result1.Seq, result2.Seq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)
        let test2 = (result2.Seq, result3.Seq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)
        let test3 = (result3.Seq, result1.Seq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)

        let print dataSet =
            dataSet |> Seq.iter (fun r -> printf "%s " <| string r)

        if not (test1 && test2 && test3) then
            printf "\n\nTest# %A: " n
            printf "\nSource 1: %A: " (n+0)
            dataSet1 |> print
            printf "\nSource 2: %A: " (n+1)
            dataSet2 |> print
            printf "\nSource 3: %A: " (n+2)
            dataSet3 |> print
            printf "\nResult 1: %A: " (n+0)
            result1.Seq |> print
            printf "\nResult 2: %A: " (n+1)
            result2.Seq |> print
            printf "\nResult 3: %A: " (n+2)
            result3.Seq |> print
            ()

    for i in 1 .. 10 do
        for n in 1 .. 1000 do
            testRangeAdd n i
        printf "\n%d" (i * 1000)

    printf "\nDone"

TestRange()

System.Console.ReadLine() |> ignore

Test cases for Range
After         (11, 14)      |   | <-->
AfterOverlap  (10, 14)      |   |<--->
AfterOverlap  ( 9, 14)      |   +---->
AfterOverlap  ( 6, 14)      |<--+---->
 "Test Case"  ( 5,  9)      +---+
BeforeOverlap ( 0,  8) <----+-->|
BeforeOverlap ( 0,  5) <----+   |
BeforeOverlap ( 0,  4) <--->|   |
Before        ( 0,  3) <--> |   |
Superset      ( 4, 10)     <+---+>
Subset        ( 5,  9)      +---+
Subset        ( 6,  8)      |<->|

This is not an answer.
I adapted my test case to run against Juliet's code.  It fails on a number of cases however I do see it passing some test.
type Range =
    { min : int64; max : int64 }
with
    override this.ToString() =
        sprintf "(%d, %d)" this.min this.max

let rangeSeqToJTree ranges =
    ranges |> Seq.fold (fun tree range -> tree |> insert (range.min, range.max)) Nil

let JTreeToRangeSeq node =
    let rec inOrder node =
        seq {
            match node with
            | JNode(left, min, max, right) ->
                yield! inOrder left
                yield {min = min; max = max}
                yield! inOrder right
            | Nil -> ()
        }
    inOrder node

let TestJTree() =
    printf "\n"

    let source(n) =
        let rnd = new Random(n)
        let rand x = rnd.NextDouble() * float x |> int64
        let rangeRnd() =
            let a = rand 15
            {min = a; max = a + rand 5}
        [|for n in 1 .. 5 do yield rangeRnd()|]

    let shuffle n (array:_[]) =
        let rnd = new Random(n)
        for i in 0 .. array.Length - 1 do
            let n = rnd.Next(i)
            let temp = array.[i]
            array.[i] <- array.[n]
            array.[n] <- temp
        array

    let testRangeAdd n i =
        let dataSet1 = source (n+0)
        let dataSet2 = source (n+1)
        let dataSet3 = source (n+2)
        let result1 = Array.concat [dataSet1; dataSet2; dataSet3] |> shuffle (i+3) |> rangeSeqToJTree
        let result2 = Array.concat [dataSet2; dataSet3; dataSet1] |> shuffle (i+4) |> rangeSeqToJTree
        let result3 = Array.concat [dataSet3; dataSet1; dataSet2] |> shuffle (i+5) |> rangeSeqToJTree
        let test1 = (result1 |> JTreeToRangeSeq, result2 |> JTreeToRangeSeq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)
        let test2 = (result2 |> JTreeToRangeSeq, result3 |> JTreeToRangeSeq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)
        let test3 = (result3 |> JTreeToRangeSeq, result1 |> JTreeToRangeSeq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)

        let print dataSet =
            dataSet |> Seq.iter (fun r -> printf "%s " <| string r)

        if not (test1 && test2 && test3) then
            printf "\n\nTest# %A: " n
            printf "\nSource 1: %A: " (n+0)
            dataSet1 |> print
            printf "\nSource 2: %A: " (n+1)
            dataSet2 |> print
            printf "\nSource 3: %A: " (n+2)
            dataSet3 |> print
            printf "\n\nResult 1: %A: " (n+0)
            result1 |> JTreeToRangeSeq |> print
            printf "\nResult 2: %A: " (n+1)
            result2 |> JTreeToRangeSeq |> print
            printf "\nResult 3: %A: " (n+2)
            result3 |> JTreeToRangeSeq |> print
            ()

    for i in 1 .. 1 do
        for n in 1 .. 10 do
            testRangeAdd n i
        printf "\n%d" (i * 10)

    printf "\nDone"

TestJTree()

A: Got it working!  I think the hardest part was figuring out how to make recursive calls on children while passing state back up the stack.
Performance is rather interesting.  When inserting mainly ranges that collide and get merged together the mutable version is faster while if you insert mainly none overlapping nodes and fill out the tree the immutable version is faster.  I've seen performance swing a max of 100% both ways.
Here's the complete code.
module StackOverflowQuestion

open System

type Range =
    { min : int64; max : int64 }
with
    override this.ToString() =
        sprintf "(%d, %d)" this.min this.max

type RangeTree =
    | Node of RangeTree * int64 * int64 * RangeTree
    | Nil

// Clean right deals with merging when the node to merge with is not on the
// left outside of the tree.  It travels right inside the tree looking for an
// overlapping node.  If it finds one it merges the range and replaces the
// node with its left child thereby deleting it.  If it finds a subset node
// it replaces it with its left child, checks it and continues looking right.
let rec cleanRight n node =
    match node with
    | Node(left, min, max, (Node(left', min', max', right') as right)) ->
        if n > max' + 1L then
            let node, n' = right |> cleanRight n
            Node(left, min, max, node), n'
        elif n >= min' then
            Node(left, min, max, left'), min'
        else
            Node(left, min, max, left') |> cleanRight n
    | _ -> node, n

// Symmetric to clean right
let rec cleanLeft x node =
    match node with
    | Node(Node(left', min', max', right') as left, min, max, right) ->
        if x < min' - 1L then
            let node, x' = left |> cleanLeft x
            Node(node, min, max, right), x'
        elif x <= max' then
            Node(right', min, max, right), max'
        else
            Node(right', min, max, right) |> cleanLeft x
        | Nil -> node, x
    | _ -> node, x

// Merger left is called whenever the min value of a node decreases.
// It handles the case of left node overlap/subsets and merging/deleting them.
// When no more overlaps are found on the left nodes it calls clean right.
let rec mergeLeft n node =
    match node with
    | Node(Node(left', min', max', right') as left, min, max, right) ->
        if n <= min' - 1L then
            Node(left', min, max, right) |> mergeLeft n
        elif n <= max' + 1L then
            Node(left', min', max, right)
        else
            let node, min' = left |> cleanRight n
            Node(node, min', max, right)
    | _ -> node

// Symmetric to merge left
let rec mergeRight x node =
    match node with
    | Node(left, min, max, (Node(left', min', max', right') as right)) ->
        if x >= max' + 1L then
            Node(left, min, max, right') |> mergeRight x
        elif x >= min' - 1L then
            Node(left, min, max', right')
        else
            let node, max' = right |> cleanLeft x
            Node(left, min, max', node)
    | node -> node

let (|Before|After|BeforeOverlap|AfterOverlap|Superset|Subset|) (min, max, min', max') =
    if min > max' + 1L then After
    elif min >= min' then
        if max <= max' then Subset
        else AfterOverlap
    elif max < min' - 1L then Before
    elif max <= max' then
        if min >= min' then Subset
        else BeforeOverlap
    else Superset

let rec insert min' max' this =
    match this with
    | Node(left, min, max, right) ->
        match (min', max', min, max) with
        | After         -> Node(left, min, max, right |> insert min' max')
        | AfterOverlap  -> Node(left, min, max', right) |> mergeRight max'
        | Before        -> Node(left |> insert min' max', min, max, right)
        | BeforeOverlap -> Node(left, min', max, right) |> mergeLeft min'
        | Superset      -> Node(left, min', max', right) |> mergeLeft min' |> mergeRight max'
        | Subset        -> this
    | Nil -> Node(Nil, min', max', Nil)

let rangeSeqToRangeTree ranges =
    ranges |> Seq.fold (fun tree range -> tree |> insert range.min range.max) Nil

let rangeTreeToRangeSeq node =
    let rec inOrder node =
        seq {
            match node with
            | Node(left, min, max, right) ->
                yield! inOrder left
                yield {min = min; max = max}
                yield! inOrder right
            | Nil -> ()
        }
    inOrder node

let TestImmutableRangeTree() =
    printf "\n"

    let source(n) =
        let rnd = new Random(n)
        let rand x = rnd.NextDouble() * float x |> int64
        let rangeRnd() =
            let a = rand 15000
            {min = a; max = a + rand 150}
        [|for n in 1 .. 200 do yield rangeRnd()|]

    let shuffle n (array:_[]) =
        let rnd = new Random(n)
        for i in 0 .. array.Length - 1 do
            let n = rnd.Next(i)
            let temp = array.[i]
            array.[i] <- array.[n]
            array.[n] <- temp
        array

    let print dataSet =
        dataSet |> Seq.iter (fun r -> printf "%s " <| string r)

    let testRangeAdd n i =
        let dataSet1 = source (n+0)
        let dataSet2 = source (n+1)
        let dataSet3 = source (n+2)
        let result1 = Array.concat [dataSet1; dataSet2; dataSet3] |> shuffle (i+3) |> rangeSeqToRangeTree
        let result2 = Array.concat [dataSet2; dataSet3; dataSet1] |> shuffle (i+4) |> rangeSeqToRangeTree
        let result3 = Array.concat [dataSet3; dataSet1; dataSet2] |> shuffle (i+5) |> rangeSeqToRangeTree
        let test1 = (result1 |> rangeTreeToRangeSeq, result2 |> rangeTreeToRangeSeq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)
        let test2 = (result2 |> rangeTreeToRangeSeq, result3 |> rangeTreeToRangeSeq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)
        let test3 = (result3 |> rangeTreeToRangeSeq, result1 |> rangeTreeToRangeSeq) ||> Seq.forall2 (fun a b -> a.min = b.min && a.max = b.max)

        if not (test1 && test2 && test3) then
            printf "\n\nTest# %A: " n
            printf "\nSource 1: %A: " (n+0)
            dataSet1 |> print
            printf "\nSource 2: %A: " (n+1)
            dataSet2 |> print
            printf "\nSource 3: %A: " (n+2)
            dataSet3 |> print
            printf "\n\nResult 1: %A: " (n+0)
            result1 |> rangeTreeToRangeSeq |> print
            printf "\nResult 2: %A: " (n+1)
            result2 |> rangeTreeToRangeSeq |> print
            printf "\nResult 3: %A: " (n+2)
            result3 |> rangeTreeToRangeSeq |> print
            ()

    for i in 1 .. 10 do
        for n in 1 .. 100 do
            testRangeAdd n i
        printf "\n%d" (i * 10)

    printf "\nDone"

TestImmutableRangeTree()

System.Console.ReadLine() |> ignore

A: It looks like you're defining a binary tree which is basically a union of a bunch of ranges. So, you have the following scenarios:
     (10, 20)              left                    (10, 20)
    /       \                -->                   /      \
(0, 5)       (25, 30)      (7, 8)             (7, 8)      (25, 30)
                                             /
                                        (0, 5)

     (10, 20)              right                   (10, 20)
    /       \                -->                   /      \
(0, 5)       (25, 30)      (21, 22)           (0, 5)      (21, 22)
                                                                 \
                                                                  (25, 30)

     (10, 20)              subset                  (10, 20)
    /       \                -->                   /      \
(0, 5)       (25, 30)      (15, 19)           (0, 5)      (25, 30)

     (10, 20)              R-superset               (10, 30)
    /       \                -->                   /
(0, 5)       (25, 30)      (11, 30)           (0, 5)

     (10, 20)              L-superset                (0, 20)
    /       \                -->                           \
(0, 5)       (25, 30)      (0, 10)                          (25, 30)

     (10, 20)              LR-superset               (0, 30)
    /       \                -->
(0, 5)       (25, 30)      (0, 30)

The L- R- and LR-superset cases are interesting because it requires merging/deleting nodes when you insert a node whose range already contains other nodes.
The following is hastily written and not tested very well, but appears to satisfy the simple definition above:
type JTree =
    | JNode of JTree * int64 * int64 * JTree
    | Nil

let rec merge = function
    | JNode(JNode(ll, lmin, lmax, lr), min, max, r) when min <= lmin -> merge <| JNode(ll, min, max, r)
    | JNode(l, min, max, JNode(rl, rmin, rmax, rr)) when max >= rmax -> merge <| JNode(l, min, max, rr)
    | n -> n

let rec insert (min, max) = function
    | JNode(l, min', max', r) ->
        let node =
            // equal.
            // e.g. Given Node(l, 10, 20, r) insert (10, 20)
            if min' = min && max' = max then JNode(l, min', max', r)

            // before. Insert left
            // e.g. Given Node(l, 10, 20, r) insert (5, 7)
            elif min' >= max then JNode(insert (min, max) l, min', max', r)

            // after. Insert right
            // e.g. Given Node(l, 10, 20, r) insert (30, 40)
            elif max' <= min then JNode(l, min', max', insert (min, max) r)

            // superset
            // e.g. Given Node(l, 10, 20, r) insert (0, 40)
            elif min' >= min && max' <= max then JNode(l, min, max, r)

            // overlaps left
            // e.g. Given Node(l, 10, 20, r) insert (5, 15)
            elif min' >= min && max' >= max then JNode(l, min, max', r)

            // overlaps right
            // e.g. Given Node(l, 10, 20, r) insert (15, 40)
            elif min' <= min && max' <= max then JNode(l, min', max, r)

            // subset.
            // e.g. Given Node(l, 10, 20, r) insert (15, 17)
            elif min' <= min && max >= max then JNode(l, min', max', r)

            // shouldn't happen
            else failwith "insert (%i, %i) into Node(l, %i, %i, r)" min max min' max'

        // balances left and right sides
        merge node
    | Nil -> JNode(Nil, min, max, Nil)

JTree = Juliet Tree :) The merge function does all the heavy lifting. It'll merge as far as possible down the left spine, then as far as possible down the right spine.
I'm not wholly convinced that my overlaps left and overlaps right cases are implemented properly, but the other cases should be correct.

redpajama_set_name: RedPajamaStackExchange


Are you over forty years of age and single in Nantyglo?
Gwent Senior Dating Group provides a simple and secure way for those of us in Nantyglo who are young enough to want to meet new people and rediscover the joy of romance and old enough to have the wisdom to grasp the modern technology to achieve it. We have thousands of Senior Nantyglo singles over fifty years of age all over Gwent. You will be surprised at the number of single mature men and women online who are still interested in dating. Initial registration is very quick, very simple and it's FREE to try!!!


Sunshine was removed from her home by law enforcement, and the courts awarded her to BEHS along with her herdmates. She was adopted in October 2010 and returned when she didn't work out for novice riders in her home. She was adopted in 2011 but returned when she was aggressive with another horse. She moved to a new foster home several months ago, and they've fallen in love with her. She's found a good fit and a family who loves her! Thank you to all those who fostered her in the past and to Lorraine for giving her a forever home!


text:
Your password has been reseted.

	Your new password is:
	{$SM_STR_NEWPW}

redpajama_set_name: RedPajamaGithub


The U.S. Defense Advanced Research Projects Agency (DARPA) recently held a competition in which 16 teams had to develop robots to complete a series of tasks inspired by challenges faced in cleaning up the destroyed Fukushima-Daiichi nuclear power plant. "I think setting up these tasks and challenges is a good way to motivate people to work on hard problems and try to bring together the best hardware and software to make these machines do useful tasks," says Google scientist James Kuffner. He notes that to date, robotics has been very brittle, and it is going to take advanced software and hardware to make robots achieve the same level of performance and agility that humans and animals have. Although the tasks in the DARPA competition may look easy, they are very difficult for robots. "I feel like in the last 20 years there's been incredible acceleration, and I'm really excited to see this much effort and attention being paid to try and make the robots do something practical," Kuffner says.


Hi folks! Apologies for the lack of posts for the last month or so. Of course this back-to-school experiment has been keeping me busy, and when I'm writing papers I'm rarely in the mood to sit down and write posts, but that's not all of it. I hurt my knee hiking on the Stiles Cove Path trail about a month ago, and since I haven't been able to hike much, especially with the beautiful weather we've been having, I've been too frustrated to blog about hiking. I'm currently in recovery mode: I tried a couple of short hikes, and tested myself with a slightly longer one, and I'm still feeling some pain. I'm continuing to rest and exercise my knee, but it's frustrating to say the least! At any rate, I do have some nice pics from the last couple of hikes to post, so on to more pleasant fare, and hopefully my knee improves quickly so I can get out there more often to take more pics!
I had a spectacular Saturday for the Stiles Cove Path! I parked in the lot of the church in Flatrock, and got a cab up to the other trailhead in Pouch Cove. I was pretty stoked about getting out on the trail: I had hiked portions of this trail on a number of occasions in the past, but never the whole thing; there was a section of five or six kilometers in the middle of the trail that I had never seen before, including the trail's namesake.
The cutaway section a km or two from the Pouch Cove trailhead has gotten larger. I'm not sure what the point of all that destruction is, but some forward thinking might have been in order: if they're planning residences, there are folks like me who actually like having trees on our property, and we're the type who would gladly share our property with the ECT. And as for things I comment on whenever I hike this section of the trail, that strange metal mesh object is still in the woods approaching Shoe Cove. Weird.
I was climbing down the hill towards Shoe Cove, just coming off the steps, when I heard someone frantically calling a dog. I quickened my pace and hurried towards the river at the bottom of the hill, and the frantic shouting continued from the other side of Shoe Cove, from the trail as it descended towards the cliffs of the cove. Suddenly, I saw a big, fat chocolate Lab chasing something through the woods at the edge of the cliff, and then back towards the trail. By the time I got to the bridge, the dog had rejoined his frantic owner on the trail and was approaching me, breathless, from the other side of the river. I stopped and chatted with him while they both caught their breath. I'm not sure what the dog was chasing, but it was big enough that I thought it may have been another dog; I asked, but it was just the two of them, so a fox or a coyote, perhaps? At any rate, that was very close to a disaster, folks: the ECT can be a very dangerous place for animals, and it's best you keep yours on leash!
At any rate, I was treated to some spectacular weather and scenery. The trail is spectacularly beautiful from start to finish, and at 15 km, it's certainly something most relatively-in-shape hikers can accomplish in a day. I certainly wasn't worried about it. I started feeling some knee pain at the 7 or 8 km mark, though. I had felt this particular type of pain before, and wasn't too worried, but by the time I was approaching the last couple of kilometers of hiking, I was in significant pain, and had no other choice but to finish the hike. Uphill hiking was fine, but downhill was painful, and steps were agony. And this trail basically ends with steps. I grinded the last couple of kilometers out but I wasn't feeling good by the time I got back to my car.
I'm starting to feel better, at any rate, and I did get to see some spectacular trail! I managed to snap some great pics to add to my collection from along this trail. Check them out!
The End of the ECT Snowshoeing Season?
Despite the beautiful, cloudless sky, I found it hard to get motivated to head out for a long hike yesterday. Deciding on a short snowshoe into Shoe Cove along the Stiles Cove Path out of Pouch Cove, I strapped the snowshoes to my pack and headed out. The first part of the trail, alongside the ocean, was free from snow. So far so good. I kept expecting to see snow as I rounded each corner, but the trail was basically clear! Instead of a short jaunt to Shoe Cove, I made far better time than I thought I would due to the lack of snow, and so I continued onto Blackhead Cove before doubling back and heading back to Pouch Cove for a nice little 10k hike. My snowshoes stayed strapped to the pack the whole way.
Once I was on the trail I was glad I had gotten out. Not a cloud in the sky and no snow on the trail, the scenery was simply spectacular. I was so surprised to find the trail free of snow after the difficult trekking of the last two weeks that I was almost running the trail. I made such good time that ended up covering twice as much ground as I figured I'd end up snowshoeing.
I heard them tearing around the community as I made the return trip, but for the most part they were far enough away that I was in relative peace and quiet for the majority of the return trip.
Spectacular hiking! I suspect that there's still snow on some of the Southern Shore legs of the ECT, but if Stiles Cove is any indication, the hiking season has officially begun on the ECT! Check out some of the pics below!
Hi folks! I got a question about the pic of the Snowy Owl above, taken at Red Head on the Stiles Cove Path trail of the East Coast Trail. This was a late fall hike, snow was on the ground, as you can tell, and we came out of the woods to find a pair (male and female) of Snowy Owls. We stood back and took a few pictures as best we could (I had left my zoom lens at home so I did what I could with my 18-55mm), and the owls obliged us by flying close by a couple of times. We didn't stick around for long, thinking they were probably stressed by our proximity, so we made a wide berth around them… a little too wide, because we ended up taking a community path away from Red Head and getting sidetracked by a half hour or so!
We had heard about the "Snowy Owl Invasion of 2013", and this was our encounter with it! You can read more about the Snowy Owl Invasion at this link. Bruce Mactavish, the article's author, is a local birdwatching expert.
The best of the pictures I took that day can be found here, on my Tumblr. Cheers!


Google has tweaked its iPhone Google Mobile App for the iPad, optimizing it for the device's larger screen.
The revamped app, at its core, is the same as the existing iPhone Google Mobile App that offers mobile search tools such as search by voice and search by My Location, which uses your device's location for local business searches. The big iPad optimization takes place with Web apps like Gmail, Google Reader, Maps, and Buzz.
Google says it is also working on improving its application to take advantage of iPad-specific features. However, Google did not specify which iPad features it wanted to exploit or when the next version of its iPad-optimized search application would be coming out. But earlier this month, a post on the Google Mobile Blog said the company was "excited about the promise of tablet computers " like the iPad because of the form factor's "larger touchscreens, increased portability and rich sensors." The blog post then highlighted Google's new HTML 5 iPad-optimized Gmail Web app that uses a double-pane layout similar to some native iPad applications like Contacts and Mail.
Given Google's preference for Web apps and cloud-based services, it's likely that any further tweaks to Google's iPad services will be focused on better Web applications as opposed to improving its downloadable program for iPad and iPhone.
So far Google is the only major search provider to place an iPad-optimized search application in the iTunes Store. Bing has an iPhone application that is usable on the iPad, but Microsoft has yet to produce anything that is specifically for the iPad. If a Bing for iPad application ever does show up, it would be nice to see Microsoft unify some of the company's other Web-based services into one application including Hotmail, Windows Live Calendar and SkyDrive.


It's important to consider the engine when purchasing outdoor power equipment. When you choose power equipment with a Briggs & Stratton engine, you're getting over 90 years of experience and expertise behind it. ALL of them are Briggs & Stratton OEM Intake Manifolds.


It's so cliché to think that it is only the showbiz industry which serves up fashion inspiration. But, hey, that's not the case, when it comes to Amruta Fadnavis, wife of Maharashtra's 18th CM Devendra Fadnavis. One look at her Instagram profile will undo all those stereotypes.
Yep! This first picture speaks volumes on how the socialite loves to look flawless. Wearing a dark green figure-hugging gown, Amruta looks nothing less than a film star.
If you thought that only Kareena Kapoor Khan can slay it in a fur themed attire, darlings, you must be kidding. This deep blue number makes her look charming.
The lady also knows how to risk it in the fashion department while still getting lauded by the fashion police. Her alluring blue couture is a proof. What a beauty!
Even when she dials the ethnic number game, she knows exactly which colour palette and style is in-vogue.
With a hint of a coy smile, ravishing red lips, one cannot let the black belted gown go unnoticed. Amruta is surely the answer to those who think that corporate women have no fashion sense. Take that haters!
Amruta also knows how to caste a fashion spell when it comes to western wear. The Revolution is Female!


you to work in a clinical capacity, without the responsibility of becoming a nurse. Becoming a nursing assistant is not just a stepping stone any longer. It can be a fulfilling and lucrative career, if that is what you choose to do.
Be a Big Part of the Team!
A nursing assistant is an integral piece to any medical team. They are responsible for the comfort, and care, of the patient. Monitoring the statistics and vitals of patients, you are the liaison between the nurses, the doctors, and the patient. Overall, they make a huge impact on the experience of the patient. If you are looking for a great career without the huge responsibility, a nursing assistant degree program may be the best place for you to begin your career.


UNITED NATIONS, March 1 – Chinese Permanent Representative to the UN Li Baodong, negotiating a resolution on the North Korean nuclear test, met with "the US this morning in consultations, now we are close," Li told Inner City Press midday on March 1.
Inner City Press asked if this would involve new sanctions under Chapter 7 of the UN Charter.
Li and two members of China's Mission to the UN were on the way to meet Vitaly Churkin of Russia, Security Council president for March.
February's Council President Kim Sook of South Korea told Inner City Press of the "hot potato" of the North Korean nuclear test being dealt with during his month, or handed off to Russia. Now it's been handed over.
Russia has scheduled for March 19 a ministerial level debate, involving Minister Sergey Lavrov, on the topic of Afghanistan. Watch this site.


One day after tuneNow has been launched, it already encountered some speed issues. All page requests have been replaced with the relatively new technique AJAX, which will speed up the loading of pages a little. Furthermore, if the speed keeps being an issue, there will be a search for another provider.
After some testing, tuneNow is finally ready to be launched for the public. Of course tuneNow will be watched for performace and technical problems. Please, if you find any, let us know!


Make the heads turn as you step out when you adorn this pair of green coloured sandals by Nell. Featuring multi-directional grip and comfortable sole, this pair will allow free movement. Team perfectly with a midi skirt and a floral crop top for an ultimate look.


Making the World Safe for Existence presents an in-depth description of the cult of the saints as practiced in Chignaulta, an Indian community in the central highlands of Mexico. Data gathered over twenty years of field research and the rich interpretations offered allow the reader to explore Chignauteco cosmology as it is revealed in the elaborate rituals held to honor the saints. The primacy the author assigns to the perception and the Indians have of their world and the place of the saints within it reveals the vitality of an indigenous worldview that has endured since the time of the Conquest.
Making the World Safe for Existence will interest specialists in Mesoamerican studies, anthropologists, sociologists, and social psychologists.
". . . a vital and challenging study of a contemporary native people, all the more intriguing as it explores the effects of economic development, social change, and in general, the secularization of life in the Mexican countryside."
"Anthropologists working in Mexico have long taken note of the central role of saint celebrations in indigenous communities. Slade offers one of the most thorough studies available of such celebrations, based on more than two decades of research among Nahuat people of Puebla."
16 pages of maps, photographs, tables.


"Parking and the City," a follow-up to Don Shoup's 2005 publication, "The High Cost of Free Parking" was reviewed recently on the planning-related Planetizen website. "More than just providing an abridged version of 'The High Cost of Free Parking,' however, 'Parking and the City' passes the torch of parking reform to a new generation of academics, professional planners, and transportation engineers," writes reviewer James Brasuell. Of the nearly 50 book contributors, 11 are former UCLA Luskin Urban Planning master's and doctoral students. Meanwhile, other media outlets continue to cite Shoup's research in stories about the subsidization of parking by cities, including a recent opinion piece by Bloomberg.


text:
Etheridge Named T.R. Miller Head Coach
Pell City coach Keith Etheredge was officially named Friday as the new head football coach at T.R. Miller High School. Etheredge replaces Andrew Thomas who resigned last month.
Etheredge comes to Miller after two years at Pell City where his teams went 12-10 and made two playoff appearances. He had great success at Leeds, his alma mater, when he served as head coach for ten seasons. His 107-34 record included state championships in 2008, 2010, 2014 and 2015.
Etheredge told AL.com Thursday that he wasn't necessarily looking for a new job this off season, but "when a place like T.R. Miller calls you have to listen." He hopes to return the Class 3A Tigers to the glory years they had in the 27-year tenure of Jamie Riggs, who led the school to four state titles before retiring in 2015.
"It's a good move for my family and I," Etheredge said. "T.R. Miller is a place with a lot of tradition. They've had a lot of great players. We want to get it back to the level where it expects to be year in and year out."
"He just fit so many of the boxes we were looking to check," T.R. Miller principal Ron Snell said. "His record is second to none. Also, when you call around and ask about him, everyone makes it clear how much he invests his heart and soul into the kids and the community, and that is what is expected in Brewton and at T.R. Miller. The people here are very supportive, but they are also demanding. They demand excellence. Keith is a great fit for T.R. Miller and I think just as importantly T.R. Miller is a great fit for Keith and his family."
Etheredge is expected to begin his new post in mid January.
Coaching Hires Continue
Coaching Legend Robert Herring Passes Away
Sam Shade Hired at Pinson Valley

redpajama_set_name: RedPajamaCommonCrawl


text:
New Single from Foot Squeaker Out Now
Date December 3, 2020 .
Three different decades, three lives, three minds brought into a room to feel the ever exciting chill of creation satisfaction. Foot Squeaker love to rock, to expand, grow and feed off their musical explorations, to do it for themselves.
Formed in 2018, Diarmuid and Mike spent that full year sculpting their songs and all the while Mike would quality control the riffage. Mick Byrne joined on bass in early 2019.
Citing musical influences such as Neil Young, Foo Fighters, Nirvana, Alice in Chains, Paul Weller, Queens Of The Stone Age, Pearl Jam, Weezer, Supergrass, Blur and Beck, the band scatter flecks of the above across their songs whilst maintaining their own rock recipe shaped by their individual experience and styles.
In January 2020 the band headed to Hellfire Studios, Dublin, to record four tracks with Ivan Jackman (Chad Channing, Sinéad O' Connor, Girlband). The band released two singles 'No Connection' and 'Wayside' over summer 2020 garnering radio play across Ireland and countries across the world including Scotland, Canada and New Zealand. Their latest single, 'Specimen', has just been released.
Diarmuid talks about 'Specimen' –
"'Why are you crying?'
'He told me I was some specimen 'cos of my hair.'
'Don't listen to that shite, you can do whatever you want with your hair.' That's what I told my son.
After I had played him the song I wrote for him for the first time we cried together in sadness and hope. (Spoiler alert) Specimen appears to be the most mellow tune in our set but by God does it tear you new ear canals in the second half.
We are looking forward to a sold out show in our local theatre as soon as restrictions allow. A striped back live video version of 'Specimen' comes out to accompany the single just days after its release."
A few tickets remain for Foot Squeaker's headline show in Gorey Little Theatre which has been postponed until sometime early next year, so join the mailing list on their website www.footsqueaker.com to keep up to date with show details. When the live scene returns Foot Squeaker hope to share the stage with some of their favourite Irish rockers: Fangclub, Silverbacks, Bitch Falcon, Thumper and Fontaines DC to name a few.
www.footsqueaker.com
facebook.com/footsqueaker
instagram.com/footsqueakerband
twitter.com/footsqueaker


text:
Home Market Data
Surgical Strikes 2.0: After Kargil, Mirage 2000s again come handy for IAF
Updated : February 26, 2019 05:12 PM IST
CNBC-TV18
The Indian Air Force (IAF), the world's fourth-largest air service, committed the Mirage 2000H fighters capable of delivering laser-guided bombs during the Kargil conflict with Pakistan.
The air support provided by the IAF were instrumental in India winning the conflict. They instantly boosted the morale of India's beleaguered ground troops and facilitated an early recapture of their outposts at Muntho Dhalo and Tiger Hill, according to an account by Benjamin Lambeth in his book, Airpower at 18,000': The Indian Air Force in the Kargil War.
The French-made Dassault Mirage-2000 fighter jets were again used by IAF for a strike on Pakistan on Tuesday.
Here is everything you need to know about the planes, explained in one chart
Tags chart of the day data Indian Air Force Kargil Mirage 2000H fighters
Revenue secretary holds high-level meeting, asks tax...


text:
Q: Command to drop all columns in a database that have prefix test_ to run How I can run a command in phpMyAdmin which will drop all columns in a database that have the prefix test_.

A: To drop a column from a table, use the syntax:
alter table <tablename> drop column <columnname>

To find all the columns in a table in a database that start with test_, do the following:
select column_name
from INFORMATION_SCHEMA.columns
where table_name = <table_name> and
      table_schema = <schema_name> and
      left(column_name, 5) = 'test_'  -- not using "like" because '_' is a wildcard char

If you were doing this manually, I would recommend running the following query and then pasting the results in to a mysql query interface:
select concat('alter table ', table_name, ' drop column ', column_name)
from INFORMATION_SCHEMA.columns
where table_name = <table_name> and
      schema_name = <schema_name> and
      left(column_name, 5) = 'test_'

You can do something similar in code, by running the query, returning the results and then running each row as a query.

A: If you actually want to drop the columns from your schema, you will need to generate the necessary SQL commands dynamically from MySQL's information schema tables.  Whilst it is possible to do that within a MySQL stored procedure using SQL prepared statements, which I demonstrate below, you may well find it easier to implement/understand in your preferred development language (which you do not mention in your question):
DELIMITER ;;

CREATE PROCEDURE dropMatchingColumns(IN pattern VARCHAR(64))
BEGIN
  DECLARE done INT DEFAULT FALSE;
  DECLARE cur CURSOR FOR
    SELECT   CONCAT(
                 'ALTER TABLE `', REPLACE( TABLE_NAME, '`', '``'), '` ',
               GROUP_CONCAT(
                 'DROP COLUMN `', REPLACE(COLUMN_NAME, '`', '``'), '`'
               )
             )
    FROM     INFORMATION_SCHEMA.COLUMNS
    WHERE    COLUMN_NAME LIKE pattern AND TABLE_SCHEMA = DATABASE()
    GROUP BY TABLE_NAME
  ;
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

  OPEN cur;

  read_loop: LOOP
    FETCH cur INTO @sql;
    IF done THEN
      LEAVE read_loop;
    END IF;
    PREPARE stmt FROM @sql;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;
  END LOOP;

  CLOSE cur;
END;;

DELIMITER ;

With this procedure defined, one need only CALL dropMatchingColumns('test\_%'); in order to drop all the columns prefixed with test_ from the current database.

A: If you have MySQl Workbench then you can delete multiple columns by simply do a mass selection and telling workbench to do a mass deletion of the selected columns

A: I would like to explain or simplify this answer for those like me who were having trouble with this.
I was having trouble dropping a column with the name 'seq' in all tables in my database 'demo'.
You can create a selection with the commands formatted for each table using something like this:
Select concat('alter table ', table_name, ' drop column ', 'seq;')
from (select table_name
from INFORMATION_SCHEMA.tables
where table_name = table_name and
table_schema = 'demo') as t

This creates the alter table command for each table in the 'demo' database.
You have to select the result, copy it, and paste it back into the query editor.
It's a two step process, but if you have to do this several times, save the commands in a text file to run again later.


Looking for a shopping list to start your Japanese cooking adventures. Start here. Bento fans should also check Where and how to buy bento boxes and equipment on our sister site, Just Bento. A frequently heard lament: Help. I can't find [insert Japanese ingredient] at an Asian store. A general Asian. History of the Hooters restaurant franchise - the 21st Century Visit Grandma's main bakery at 1765 Buerkle Road, White Bear Lake, or our retail bakery and coffee shop 2184B Fourth Street, White Bear Lake. Niagara Falls Premiere Resort Hotel. The Best Western Plus Cairn Roulette russe rihanna parole Hotel is conveniently located in the heart of Niagara Falls on historic Roulette russe rihanna parole Lane, lady gaga poker face grammys 2010 one and a quarter mile 3 patti slot world-famous Roulette russe rihanna parole Falls and minutes away from dozens of the citys most popular attractions. Going on a trip rihwnna. If so youll surely visit rouletts few local food stores. Call it an addiction or just part of the job, everyone in grocery checks out roulette russe rihanna parole when they travel. The Tunica casino restaurants. Hartnett Company Grocery Distribution Center neom slot our facility located in Weatherford, Texas. Russse 22, 2018nbsp;0183;32;An Israeli startup is arming grocery chains with robot infrastructure to fight Amazon. Bear Moon Lodge is a 3 bedroom, 2. 5 bath luxury log cabin with a hot tub, fire pit, pool table and more. Dayum. This is good. And I actually enjoyed making my Soupa de Mariscos (Mexican Seafood Soup) The hardest part was finding the tomatoes. The local grocery store was having a great sale on their seafood (thanks for the tip, I checked the sales online before leaving the house : ) Came home and got to work.
Find concrete cutter Postings in South Africa. Search Gumtree Free Classified Ads for the latest concrete cutter listings and more. Cultivo. Se rihnna propagar por semillas (propagaci243;n sexual) roulette russe rihanna parole por esquejes (propagaci243;n ag225;mica, asexual, tambi233;n llamada multiplicaci243;n), roulette russe rihanna parole de … Adrenaline, also known as adrenalin or epinephrine, is a hormone, neurotransmitter, and medication.
Epinephrine is normally produced by … End the year off in Style at any of these amazing roulette russe rihanna parole venues. Plan something unique and spend the day having fun with your team at Pococks Action Beach. TMCARDS help to make your own Custom Playing Vide grenier angers geant casino, Plastic Playing Cards black jack pershing quotes Personalized playing cards with unique deck of cards design at lowest rate.
Our fine-tuned processes and printing capabilities come from over 40 years of experience making personalized playing cards and customized playing cards being one of the most … Program Possibilities. We have several different categories of Program Possibilities from which to choose. Select paarole topic below. Mit poker star slots seit den 1990er Jahren existierenden Begriff Cybersex (CS) werden verschiedene Formen der virtuellen Erotik, sexueller Interaktion und Pornografie bezeichnet, die mit Hilfe eines Computers oder 252;ber das Internet ausgelebt werden.
The Herpetarium staff at the Gladys Porter Zoo is extremely pleased to announce that the pair of rare crocodiles who made a roulette russe rihanna parole mile road trip from Canada to Brownsville, Texas in October 2011 have produced their first offspring. Billy Wilder, Writer: The Apartment. Originally planning to become a lawyer, Billy Wilder abandoned that career in favor of working as a reporter for a Roulette russe rihanna parole newspaper, using this experience to buying roulette chips to … The end of the year is fast approaching.
This year has definitely flown by and, of course, with year-end closing in, its time to start planning your … Ohio Benefits amp; Insurance Group provides comprehensive insurance solutions to individuals and businesses throughout Ohio. Contact us today to get started. Holland America Line gt; Koningsdam 21-day Norse Legends amp; Voyage Of The Midnight Roulette russe rihanna parole Departing From Amsterdam, The Netherlands; Holland America Line gt; Koningsdam 7-day Norse Legends Departing From Amsterdam, The Netherlands Las Vegas Conventions, Las Vegas Convention Calendar, Las Vegas Trade Shows.
Elwan, the new album from roulette russe rihanna parole kings of North African Desert Blues, Tinariwen, is available now. Azamara Club Cruises Cruise Deals. Get the best Azamara Cruise deals on all Azamara Cruises. Cruise. com offers exceptional Azamara Cruise deals including cash back, upgrades and more. Azamara Club Cruises offers destination rich itineraries throughout the world that even the most seasoned traveler would find enticing.
San Juan Water Beach Club Hotel Guide. Your source for great 16gb ram 1 slot in San Juan For cruise discounts on the world's finest cruise lines, visit Vacations To Go. We're America's discount cruise clearinghouse. Since 1984, our rhsse cruise agents have provided discount cruise vacations to hundreds of thousands of savvy cruise planners.
Roulette russe rihanna parole exclusive 90-Day Ticker lists last minute cruise roulette russe rihanna parole on all cruise lines and … With endless activites and gorgeous landscapes, The Keystone State is an ideal camping destination. Rouulette one of the 13 original colonies, this state has a rich history to roulette 34. From the urban to roulette russe rihanna parole outdoors, there's plenty to keep you busy on your next visit to Pennsylvania.
The Ultimate Mans Travel Guide To Angeles City. Travelers that are more price-conscious or simply prefer a more relaxed pace often travel to Angeles Roulette russe rihanna parole in the Philippines. MANILA, Philippines (UPDATED) The local partner of Chinese casino operator Galaxy Gambling michigan Group denied that they parolw abandoned plans to build an integrated casino and resort in Boracay.
With new shows every week. View jobs available on International Association of Amusement Parks and Attractions. Search for and apply to open jobs from International Association of Amusement Roulette russe rihanna parole and Attractions. Book the Choctaw Casino Resort Durant - Situated in Durant, this spa hotel is within 6 mi (10 km) of Durant Country Club, Three Valley … Dec 05, 2017nbsp;0183;32;As Siargao in the Philippines prepares to join the ranks of the toulette most desirable islands to visit, it will need to cope with the massive development wave that is about to hit its pristine shores.
Pampanga (Kapampangan: Lalawigan ning Pampanga; Filipino: Lalawigan ng Pampanga) is a province in the Central Luzon region of the Philippines. Lying on the northern shore of Manila Bay, Pampanga is bordered by Tarlac to the north, Nueva Ecija to the visa slots availability in delhi, Bulacan to the east, the Manila Bay to the central-south, Bataan to … Manpower Services for Overseas Filipino Workers, AB International Placement Recruitment Agency Licensed in Manila Philippines specializing in, Saudi Arabia, Pakistan, Iran, UAE.
Malaca241;ang poker face unplugged Thursday defended the governments approval of the construction of a casino-resort in Boracay even after President Roulette russe rihanna parole Duterte ordered a rehabilitation of the island paradise due to its worsening water pollution problem.
Apr 04, site-uri poker online, Philippines - A Philippine island that became famous for the white sand beaches and coral reefs that made it a haven for travelers, and then for the rapid development and pollution that threatened its idyllic shores, has been ordered closed to tourists for six months. President Rodrigo rihnna. PRIME movers in environmental initiatives and community roulette famous numbers programs of Taiheiyo Cement Rihanma, Inc.
riahnna and Solid Earth Development Corporation (SEDC) recently shared in public what they have championed for over the past decade in San Fernando, Cebu. Oct 07, 2017nbsp;0183;32;LAS VEGAS - Stephen Paddock was a contradiction: a gambler who took no chances. A rihqnna with houses everywhere who did not really live in any of them.
She was a possible DLC character, and in older concepts was planned to be one of the original roster. quot;You're like a nexu. One color when you're a baby, another when you're grown up!quot; Allana Solo, on the dappled fur of a growing Squib Het verhaal van Heroes is in opzet gelijk aan de verhalen in stripboeken. Net als in stripboeken heeft Heroes een grote alles omvattende verhaallijn en kleinere verhaallijnen binnen een hoofdverhaallijn. Fortune (JP: ), also referred to by her full name, Nadia Fortune, is a feline Feral, rendered undead by the Life Gem that she swallowed, although she is still capable of feeling pain. Fortune is a playable character in Skullgirls. Chaotix in Sonic Heroes. In Sonic Heroes Vector, Espio and Charmy had officially come together to form what became known as Team Chaotix and operated their own business: the Chaotix Detective Agency. Tihanna Rock Gusse City is set to open June 28, which is less than 16 months since the company acquired the former Trump Taj Mahal casino resort. Sands Casino Atlantic City, NJ - Adjacent to parold roulette russe rihanna parole famous Boardwalk, the Sands full tilt poker money owed one of Rihannq City's most esteemed names where every detail chaise haute bebe geant casino being designed with roulette russe rihanna parole enjoyment in mind. Nearest slot Atlantic City restaurants in ssd in wwan slot Atlantic City area roulette russe rihanna parole other cities such as Ocean City, Mays Landing, Egg Harbor, and more. Make restaurant reservations and read reviews. Save on Flights, Hotels roulette russe rihanna parole Packages. Casino melincue espectaculos 2015 Vacation Back with ORBITZ Find military vacation deals on Atlantic City Resorts at Armed Forces Roulette russe rihanna parole Club. We have MWR vacations and packages with discount hotels and resorts. The precursor to the modern hotel was the inn of medieval Europe. For a period of about 200 years from the mid-17th century, coaching … My-TAS | The Leading Independent School in Far North Queensland Book now at Oscar's Steakhouse at the Plaza Hotel amp; Casino in Las Vegas, NV. Explore menu, see photos and read 2054 reviews: quot;We had a 21st Birthday for our granddaughter and was a special night for her. Sports | For the first time, Aeromodelling will feature at the 2018 Alice Springs Masters Games. IMAC, Electric Gliders and Vintage Old Timers will all be catered for over a week of flying fun. game - traduction anglais-fran231;ais. Forums pour discuter de game, voir ses formes compos233;es, des exemples et poser vos questions.


On the 20th September 2018, an inter-agency collaboration meeting took place at Mirama Hills One Stop Border Post.
Agencies evaluated the operations of the OSBP since it's operationalisation. The UHC Kigali staff and the Border Management team attended the meeting.


text:
Q: Please verify that the package.json has a valid "main" entry, 'MODULE_NOT_FOUND' ERROR I get this error when I create my first react application.
npx create-react-app react-test --use-npm

Error: Cannot find module 'C:\Users\Admin\AppData\Local\npm-cache\_npx\c67e74de0542c87c\node_modules\through2\through2.js'. Please verify that the package.json has a valid "main" entry
    at tryPackage (node:internal/modules/cjs/loader:400:19)
    at Module._findPath (node:internal/modules/cjs/loader:613:18)
    at Module._resolveFilename (node:internal/modules/cjs/loader:981:27)
    at Module._load (node:internal/modules/cjs/loader:841:27)
    at Module.require (node:internal/modules/cjs/loader:1061:19)
    at Object.<anonymous> (C:\Users\Admin\AppData\Local\npm-cache\_npx\c67e74de0542c87c\node_modules\hyperquest\index.js:4:15)
    at Module._compile (node:internal/modules/cjs/loader:1159:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1213:10)
    at Module.load (node:internal/modules/cjs/loader:1037:32) {
  code: 'MODULE_NOT_FOUND',
  path: 'C:\\Users\\Admin\\AppData\\Local\\npm-cache\\_npx\\c67e74de0542c87c\\node_modules\\through2\\package.json',
  requestPath: 'through2'
}

I tried to reinstall node.js and delete my node_modules but I can't run npm i  after.


I am also a listener of books when driving. When I had a car without a tape deck, I bought a radio with a tape deck and kept it on the seat beside me. Of course, those kind of radios and tape players were easy to find then, but you might locate them through e-Bay and Amazon, although I did see one in a store not long ago. It was a radio, tape player, and CD player, and I should have bought it. I found a VCR tape rewinder on Amazon. Call me paranoid, but I bought two since they may disappear, and I still have lots of VCR tapes.


text:
Graduation a Mother's Day present for grad's mother: Ware-Roby plans to start doctoral work in the fall at ISU, would be third in family to receive doctorate from ISU
Geraldine Ware-Roby is giving her mother a Mother's Day present on Saturday. She's crossing the stage to receive her educational specialist degree from Indiana State University.
But she's not done giving.
Ware-Roby, of Gary, plans to start working toward her doctorate degree in curriculum, instruction and media technology in the fall. When she finishes, her mother will see her three daughters graduate with doctorate degrees from Indiana State.
Augusta DeNeal of Gary and Elonda Ervin of Terre Haute graduated from ISU in May 2008 with doctoral degrees in educational leadership, administration and foundations.
"They're always there pushing, pushing, pushing," Ware-Roby said with a laugh about her sisters.
Ervin said they are prepared to assist their sister in reaching her goal and that it will be "awesome" when they all have their doctorates.
"We're ready to help her in any way we can," she said.
The educational specialist degree earned by Ware-Roby, a middle school special education teacher in Gary, prepares her for leadership positions in education.
"Geraldine loves the children that she works with here in northwest Indiana," DeNeal said. "I have seen her go completely on the line for them in many, many situations. In order to be a part of the public school governing system where decisions are made about these children, she knew early on that an Ed.S. was necessary."
Ware-Roby, who has a master's degree in communication from Purdue University and special education degree from Indiana University, plans to continue listening to her older and younger sisters' advice as she works toward her goal of a doctorate degree.
"It's exciting because you never forget this is what you have got to do," she said.
Not only is she doing this for herself, her mother, her sisters, but also for her three children to show them the way.
"I'm determined to go all the way for my children so they don't stop," she said.
Her daughter has completed her master's degree while her son is looking at universities to work on his. The youngest son is a junior in high school.
The number of degrees accumulating in the family is noteworthy, according to one Indiana State professor.
"This is truly a rare occasion," said Mary Howard-Hamilton, ELAF professor, when DeNeal and Ervin finished their doctorates in 2008. "Two sisters have Ph.D.s. For an African-American family, that is rare. I've been a professor for 17 years and I haven't had that opportunity in teaching."
Each woman credits their parents, who sought a new life with opportunities for their children and encouraged them to pursue their educations.
"Neither of our parents finished high school," DeNeal said. "They moved from Mississippi to Gary to get away from racism."
Their parents wanted a better life for what would be their eight children.
"She didn't know how to tell us to get careers," DeNeal said about their mother. "If she pushed anything, she pushed us to get an education."
"Dad was a strong tower," Ervin added. "He believed in education. They wanted you to go to the max."
As they grew, Ware-Roby said they were made to finish their homework every day. If they claimed to not have any, their mother told them to read a book.
"Dad would work three jobs to support us," Ware-Roby added. "He said the only way we were going to make it was to get an education."
Although their father died before seeing them earn their degrees, DeNeal said striving toward educational goals has made them a closer family.
"We look back and realize how all of the family pulled together, encouraging each other during these 'hard' times," she said. "As a result, we all were able to finish our degrees with our mom watching us from the audience. Truly we could not have done it without her."
Already eyeing her next goal of a doctorate, Ware-Roby said she didn't plan to attend ISU's graduation on Saturday (May 9). Then because of her mother and family's excitement, she changed her mind.
"It's more so for my mom," she said. "We'll all be together for Mother's Day."
Contact: Geraldine Ware-Roby at 219-433-3915 or geriroby@comcast.net
Writer: Jennifer Sicking, Indiana State University, assistant director of media relations, at 812-237-7972 or jsicking@indstate.edu
Photo: http://ISUphoto.smugmug.com/photos/261856802_9JcVs-D.jpg
Cutline: Sisters Augusta DeNeal, Geraldine Ware-Roby and Elonda Ervin. DeNeal and Ervin completed their doctoral degrees at ISU during the spring of 2008. Ware-Roby finished her educational specialist degree and plans to begin her doctorate in 2009. ISU Photo/Marjorie Loomis
Photo: http://ISUphoto.smugmug.com/photos/261855968_cTKKG-D.jpg
Cutline: Elonda Ervin hugs Kandace Hinton, ISU assistant professor of educational leadership, administration and foundations while her sisters Geraldine Ware-Roby and Augusta DeNeal offer their congratulations. ISU Photo/Marjorie Loomis


PARIS -- Saudi Arabia's central bank is not interested in buying distressed or speculative assets such as troubled European debt and gold and the OPEC member's banks are well positioned to withstand the euro zone crisis, its head said on Saturday.
The world's No. 1 oil exporter like most of its Gulf Arab neighbors is a major holder of dollar assets as its riyal currency is pegged to the greenback and crude accounts for 85 percent of its budget revenue.
Asked if the Saudi Arabian Monetary Agency had considered buying European sovereign bonds such as Italian ones, Governor Muhammad al-Jasser told Reuters: "We do not buy specific bonds at all. We have not done it."
"We always have a much more integrated reserve investment strategy which looks at it in a continuous and dynamic way that values security, safety and liquidity and therefore we do not look opportunistically at distressed assets or special assets that come up one way or the other," Jasser said after a meeting of the Group of 20 countries in Paris.
The central bank of Saudi Arabia, which is the only Middle Eastern member of the G20 group of developed and emerging economies, rarely comments on its reserve strategy.
Gold, which has tumbled from a record high of above $1,920 an ounce, is another asset of little interest to the Saudi central bank due to its volatility, Jasser said.
"We have gold in our reserves but we have not bought and we have not sold it in a very long time. It has become a very speculative asset and we do not get into any speculative assets," he said.
Asked whether the central bank was going to stick to this strategy, Jasser said: "Yes".
Boosted by robust oil prices of above $100 per barrel this year, the Saudi central bank's net foreign asset reserves have climbed steadily to a record high of 1.879 trillion riyals ($500 billion) in August.
Gold reserves have been unchanged at 1.556 billion riyals since 2008, the central bank's data show.
Jasser also said U.S. Treasuries continued to be "an important safe haven and major asset" in global financial markets.
"62 percent of global reserves are still in U.S. assets. It is safe to say they are there to stay for a while," he said.
A downgrade of the United States' top-notch "AAA" credit rating by Standard & Poor's in August shocked the global markets but had no adverse impact on its bonds.
Jasser also said banks in the world's top Arab economy were well positioned to deal with any upcoming shocks as well as the European debt crisis. Capital adequacy for banks was north of 17 percent with most of it Tier 1 capital.
"That's very robust. Second, our banks sources of funding are predominantly domestic from domestic deposits which is a reasonably stable source of funding," he said, standing in front of the G20 meeting venue at a sprawling complex of Ministry of Economy, Finance and Industry.
"Most of the lending is domestic also so the exposure to the outside is very limited and therefore we are very confident that our banking system is well positioned to withstand any stress emanating from what's happening in Europe," he said.
Robust lending growth to the private sector of more than 9 percent in the first 10 months of the year indicated strong demand, while inflation has stabilized in a tight range of 4.6-4.9 percent and should begin trending down, Jasser said.
"Our economy is doing very well and is expected to continue next year. This year, I have forecast that we will have at least 5 percent growth and probably something close to that next year," he said.
Analysts polled by Reuters in September expected the $447 billion Saudi economy to expand by 6.5 percent this year and 4.5 percent in 2012 helped by an estimated $130 billion boost in social spending, or nearly 30 percent of GDP.
Jasser said interest rates settings were appropriate at the moment with no signs of inflation coming from monetary impetus.
"I still think it is an appropriate setting now until we see inflation due to monetary impetus," he said.
Asked whether that meant credit growth needed to be in double digits, Jasser said: "Something like that. And it also depends on credit whether it is going to productive activities and leading to growth one would not worry too much about it, if it is going to finance speculative activities one has to worry."
The Saudi central bank has been keeping its repo rate at 2 percent since January 2009 and reverse repo rate at 0.25 percent since June 2009. It needs to hold its key rates near U.S. benchmarks to avoid excessive pressures on its dollar peg.
Facing increasing competition from smart phone competitors, Apple has released the iPhone 4S. After testing the phone, Walt Mossberg finds a lot to like about it but says owners of the iPhone 4 may not need to upgrade.
Does Herman Cain's 9-9-9 plan add up?
Herman Cain described his 9-9-9 tax plan as one that will raise as much money as the current system, maybe more, and have more people paying taxes. John McKinnon discusses whether the plan really adds up.
It's what's inside that counts — such is true in the case of the new iPhone, the iPhone 4S. Should you upgrade? Walt Mossberg gives his assessment and tests the personal assistant feature, Siri.
As the S&P 500 closed below 1,100, sentiment was so bearish that, among contrarians, this scenario ended up being a support for higher prices, according to Mark Hulbert. Laura Mandaro reports.
Marc Andreessen, co-founder of Andreessen Horowitz, discusses Apple co-founder Steve Jobs's legacy with Alan Murray.
Newsletter editor Charles Allmon has been bearish and mostly in cash since the 1980s, and proves that you don't have to take huge risks to realize gains from the stock market, according to Mark Hulbert. Laura Mandaro reports.
Sir Paul McCartney married New York heiress Nancy Shevell in a civil ceremony Sunday in London. It was the third marriage for the former Beatle.
Walt Mossberg, Julia Angwin and others reflect on the life and work of Apple co-founder and visionary Steve Jobs, who died Wednesday at the age of 56.
Apple has launched the iCloud to allow users to store and replicate documents, music, apps and 1,000 recent photos on PCs, the iPhone, iPod touch and iPad. Katherine Boehret says it's a useful device with only minor drawbacks.
Pink Floyd drummer Nick Mason sits down with Jim Fusilli to discuss the new box set "Discovery," a career-spanning collection of the band's music.
The Obama administration has eliminated a long-term-care insurance program that was called for in the health-care reform law, saying that it is simply unworkable.
The Obama administration has launched the opening salvos of a new, more aggressive approach toward an Afghan insurgent group it asserts is supported by Pakistan's government, senior administration officials said.
The Iranian cousin of the man who allegedly attempted to organize the attack in D.C. is Abdul Reza Shahlai, a senior commander in the Quds Force linked to the killing of untold numbers of American troops in Iraq.
The president's reelection team will try to turn frustrations on the GOP as the Occupy protests grow.
A lack of consistent rating practices for mobile applications often leaves parents frustrated when programs aimed at children include inappropriate content.
About 100 U.S. military advisers will deploy to Uganda and nearby countries to help combat the Lord's Resistance Army and kill or capture its leader, Joseph Kony, who is accused of war crimes.
Robert Ford, the U.S. ambassador to Syria, says he's more worried about possible civil war, says Assad is exploiting sectarian tensions.
The agency presses for more disclosure, clarifying that companies must revel data breaches.
Wal-Mart's interest in building a 50,000-square-foot store in an area of Arlington County has prompted a few zoning questions.
The National Weather Service confirmed that seven tornadoes tore through the state Thursday, including one each in Prince William and Fairfax counties.
The measure proposed by Mayor Vincent C. Gray would end the arrest of drivers for having expired car registration.
Without huge investment, aging infrastructure and rising population will overwhelm the system.
Mitt Romney has dramatically accelerated spending on his campaign for the GOP presidential nomination, burning through nearly as much money as he raised in the third quarter.
A Treasury Department official urged Energy to consult with Justice before approving loan restructuring.
Senators with oversight of the federal workforce said Congress should freeze the pay of federal employees for a third year and recalculate federal retirement benefits to trim the federal deficit.
Does Herman Cain's 9-9-9 plan make for good marketing, but bad policy?
Herman Cain has experienced a meteoric rise in the polls, and now the candidate who has vaulted into the top tier of the GOP presidential primary will need to add substance to the catchy, yet untested 9-9-9 plan, which forms the backbone of his economic policy.
Six weeks in, one dater wonders whether things are going too fast.
"Lost and Found: The Secrets of Archimedes" is as much an exhibition about the effort to restore a 10th-century manuscript as what the book reveals about the mind of a great mathematician.
Erik Todd Dellums, a local actor and the announcer for Sunday's King Memorial dedication, has made waves with blog posts about his frustrations with President Obama.
The Freer and Sackler Galleries East-meets-West musical series continues with Daron Hagen's concerto for Japanese koto and Western string quartet.
Brewers infielder Jerry Hairston, a baseball lifer from a respected family of baseball lifers who had beenenjoying the month of his career, commits a crucial error in Game 5 of the NLCS.
Jaguars overcome sloppy field conditions to hold off Gaithersburg.
Devin Vandyke forced two turnovers and Andrew Rector recovered both, turning them into touchdowns for a key Virginia AAA Patriot District victory.
Cardinals Manager Tony La Russa makes all the right moves when it comes to pitching changes, helping guide St. Louis to a 7-1 win in Game 5 of the NLCS and a 3-2 series lead.
Lawmakers agree to pay back the central bank for bailing out Kabul Bank last year.
Armed with hand grenades, anti-tank rockets and assault rifles, five attackers, including two suicide bombers, launch the pre-dawn raid.
The iPhone 4S has been setting records, but some buyers can't enjoy their phones quite yet.
The blogs document the funniest interactions that Apple users have had with the AI personal assistant in the iPhone 4S.
Android Ice Cream Sandwich likely to be unveiled at AllThingsD's AsiaD conference in Hong Kong on Oct. 19.
Google is reportedly planning an Mp3 service.
Those looking to upgrade to iOS 5 should probably let others find the bugs in the system, AppleBlog's Darrell Etherington said Thursday.
His son writes about his legacy.
From Wall Street to Tahrir Square.
How profane should editors let language be?
Labor dispute illustrates an economic truth.
Steve Jobs showed the way.
The liquidator of Bernard L. Madoff's firm sued the Jewish Association for Services for the Aged for $5.2 million in fictitious profit over six years.
Ford Motor Co. hourly workers reversed course yesterday, with 54 percent voting to approve a proposed new four-year contract at the end of a day that started with 53 voting against, according to the United Auto Workers.
Friday's deadline for submitting recommendations to the congressional deficit-reduction panel prompted a flood of advice from lawmakers this week.
A growing number of lawyers and activists are questioning the willingness of the Egyptian military to ultimately submit to civilian authority.
Within a few square blocks around the Texas Capitol, Mike Toomey is respected and feared for his keen intellect, tough political tactics and relationship with Rick Perry.
"We will keep the power until we have a president."
MAJ. GEN. MAHMOUD HEGAZY, of Egypt, speaking of the military.
The erogenous zone of present-day fashion is the shoe. Guests put some of the amazing variety in the spotlight at the recent New York and Paris shows.
Should Insurers Pay for Eating Disorders?
Residential programs' effectiveness is in doubt. Their steep price is not.
Radiation from the Fukushima Daiichi nuclear power plant may have spread to places where Japan's government hasn't even thought to look.
Liam Fox resigned on Friday after days of searing headlines about revelations that he had given a close friend extensive access to his official activities.
President Obama said the deployment to Africa was meant to help regional forces combat the Lord's Resistance Army, which has terrorized villagers in at least four countries.
A "gas rush" is revitalizing parts of rural Pennsylvania. But it has had ill effects - on drinking water, roads and housing - and prompted worries about the long term.
Nationally, black babies are twice as likely as white infants to die before age 1. In Pittsburgh, where the racial disparity is even sharper, health officials face many hurdles.
At a Colorado offshoot of the Occupy Wall Street movement, the police met little resistance, though two dozen arrests were made.
Mr. Romney also spent more than $12 million during the summer, reflecting increased investments in states like New Hampshire and Nevada for the Republican primary season.
President Obama and President Lee Myung-bak of South Korea toured a G.M. plant as part of their free trade victory tour, and Mr. Obama's efforts to shore up political support.
The Obama administration says a long-term care program, known as Class, would be too costly.
As the demonstrations grow, the different worldviews of bankers show the wide chasms that have opened over who is to blame for economic malaise.
Finance ministers meeting in Paris faced new hurdles after ratings agencies issued warnings about European banks.
Michael Woodford lost his job after six months because his management style did not mesh with the Japanese camera maker's executive team.
YouTube is trying to evolve into a destination for professionally produced videos - and the advertisers that want to appear near them.
A Dutch court turned down Samsung Electronics' request for an injunction against all of Apple's mobile products that use 3G technology, denying it revenge over a similar move by Apple.
The Cardinals took a 3-2 series lead after the Brewers bounced and bobbled the baseball around the diamond.
Brandon Inge did not quit when he was sent to the minors; now he is hitting .333 in the postseason.
Heidelberg heads into its annual meeting with Mount Union, which has won 10 national titles in the past 17 years, with unusual optimism.
Michael Grandage, in his Metropolitan Opera debut, gave a tastefully safe staging of "Don Giovanni" after losing his lead, the Polish baritone Mariusz Kwiecien, to injury.
While Greece is grappling with its past and is increasingly uncertain about its future, the present is a wonderful moment of inspiration for the country's artists.
Rosie O'Donnell's new talk show, which began this week on OWN, sticks out on the network because it is colorful and spontaneous.
The abrupt reversal of plans to empty Zuccotti Park averted a clash at the southern tip of Manhattan.
New York education officials' legislative agenda will focus for the first time on the contentious topic of immigration.
The New York State Board of Regents is seeking to improve test security in an era of high-stakes exams and rising pressures on educators.
In Oxford, Miss., where Faulkner wrote and Archie Manning played, visitors can walk among legends, and eat fabulously while doing so.
One of the oldest cities in North America, Quebec City, with its revitalized parks and gleaming cultural centers, has emerged from the long shadow of its popular neighbor, Montreal.
Web sites are moving away from the one-size-fits-all approach to booking a flight.
Deficit reduction based on fiscal austerity has led to a flat-lining economy in Britain. It is the wrong strategy for Britain, and for the United States.
House Republicans keep pounding at the nation's bedrock protections, even including basic clean air and clean water laws.
The jail sentence imposed on Yulia Tymoshenko, the former prime minister of Ukraine, reeks of Soviet-style political revenge.
It is time for the United States to move to a policy of containment in Pakistan, which will mean a more hostile relationship.
Bullying isn't just a harmless game, it can be a deadly one, and we need to be reminded of that constantly.
Readers, readers everywhere. At this week's meeting of the Presidential Primary Book Club, we are discussing "This Is Herman Cain!"
On Oct. 15, 1964, it was announced that Soviet leader Nikita S. Khrushchev had been removed from office. He was succeeded as premier by Alexei N. Kosygin and as Communist Party secretary by Leonid I. Brezhnev.


With Bill Gates popularity and wealth, you would believe that he could actually do almost anything in this world that he wills. Well, that may be a wrong perception. Because there is something that Bill Gates dreams of doing but actually wasn't able to do so. Yes, it is about technology stuff. It is actually about a gadget which is thinner than a magazine and is touch screen. If you are thinking about iPad, yes that is exactly what this is about!
In 2005, Bill Gates had the vision of having a touch screen tablet that would rock the whole world called the Project Origami. His vision was to create a handy PC that is thin and could be effectively brought anywhere but still manage to perform excellent techie functions. This is what he envisioned of. But this is also what he was not able to do.
Samsung was able to defeat Gates with the said vision but has failed terribly in the aspect of its battery's life. Apple was so far the best that offered what Gates envisioned 5 years ago. Apple's iPad was widely accepted by technology and gadget enthusiasts all over the world. It is one of the gadgets that people would die for to have nowadays. And this is also the same gadget that Microsoft would work hard for just to be able to make and develop one.
The real deal with this is the fact that Microsoft seems to let the vision out of their grasp. There may be many factors which led to the failure of Microsoft to develop the said vision that Gates was sharing five years ago. And one of the said major reasons is that the Project Origami came in too early. Aside from this, many problems have bombarded Microsoft regarding their OS. Graphic, low-end hardware and short battery life have been some of the problems which Microsoft has encountered.
Moreover, with the existence of more competitions on smaller, cheaper yet good quality PCs, Microsoft seem to think that nothing will change and so they stick with their large and expensive PCs. With the existence of netbooks, the company is undergoing more troubles and difficulties.
Still, the fact remains that even though the company seems to foresee the future of having iPads and the like; the same company is not able to cope up with the swift development of the future. And despite the effort of the company and the current developments on the said tablet, the long wait seems to have been spoiled. In the present, Apple will be releasing its iPhone version four. Thus three versions have already passed by just with some small improvements from the Microsoft.
With the current lead of Apple in the field of the envisioned tablets, more efforts are to be required from Microsoft. The company has to do more than just convince the hardware companies to be the ones to build the Windows 7 tablets. Multi-touch support seems to be the big first step that the company has made. But it has a long way to run to outdo the leading Apple in the said field.


text:
NFL: 49ers looking for big things from heavyweight rookie class | The Honolulu Advertiser | Hawaii's Newspaper
Posted on: Sunday, May 2, 2010
NFL: 49ers looking for big things from heavyweight rookie class
SANTA CLARA, Calif. � A few young men are making a big impression this week at the San Francisco 49ers' rookie minicamp.
Of course, that's what the team expects after going big last week in the NFL draft.
The 49ers improved their size in practically every area of their offense during the annual college lottery, and offensive coordinator Jimmy Raye already is envisioning how the new parts will fit into an attack that ranked just 27th in the NFL last season.
"When you get 600 pounds of offensive linemen in the first round of the draft, then add another 240 pounds of runner to that, there would be room for optimism," Raye said Saturday.
San Francisco selected Rutgers offensive tackle Anthony Davis with the No. 11 overall selection last week, then grabbed Idaho guard Mike Iupati with the No. 17 pick.
As the first offensive linemen selected among the top 20 picks in the draft by the 49ers since the 1970 NFL/AFL merger, Davis and Iupati come to San Francisco with high expectations to make an impact on a unit that has struggled in recent seasons.
The team put Davis at right tackle and Iupati at left guard this week the positions at which they are expected to compete for starting roles this year once the rest of the veterans join the competition.
Against other rookies, undrafted free agents and tryout players, Davis and Iupati stand out in the trenches simply by their sheer size and talent.
"They've shown the athleticism, the quickness, the explosion, the power, the heavy hands, the ability to drop their weight, sink and anchor," Raye said. "In the drills, they've shown all that."
Actually, Raye was selling the pair a bit light in the size department. Davis carries 323 pounds on his 6-foot-5 frame and the 6-5 Iupati tips the scales at 331 pounds, making him the heaviest player on the San Francisco roster.
That's not by mistake. The 49ers are looking to get bigger and brawnier not just along their offensive line, but throughout their entire roster.
"(Coach Mike) Singletary, he brings in a lot of big guys," Iupati said. "From what I've seen from the veterans here, they're just big guys. I took 10 (pre-draft) visits, and this was the biggest offensive line group I saw."
That meets a clear objective for the 49ers, who envision themselves by design as a power rushing team. San Francisco, however, finished just 25th in the league last year in rushing offense despite featuring a Pro Bowl running back in Frank Gore.
"It makes it a little bit more obvious of what the coaches are doing here," Davis said. "We are going to run the ball. We will run the ball."
The 49ers got more help in that area during the draft by selecting running back Anthony Dixon and tight end Nate Byham in the sixth round.
The 233-pound Dixon led the Southeastern Conference in rushing last season at Mississippi State, and the 264-pound Byham was considered one of the nation's top blocking tight ends at the University of Pittsburgh.
Both also fit in well with the team's new persona. Byham will be used like a third tackle in some situations and Dixon adds size to the backfield in short-yardage and goal-line situations.
Dixon was the featured back during Saturday's drills, often pushing through bodies up the middle before running to daylight.
"If anybody was going to get in my way today, they was going to get ran over," Dixon said. "My main focus was just to run through everything, and I'm running through things from here on out."
That's how the 49ers like it. And, Raye said, there is a lot to like from the team's first peek at rookies who are expected to contribute by the time the season begins in September.
"Just physically looking at them is a good impression," Raye said. "They've done a good job of absorbing the system to this point. We have to make sure that we don't evaluate them in shorts and T-shirts, but these guys can make us a better football team."
&URL=http%3A%2F%2Fwww.honoluluadvertiser.com%2Fapps%2Fpbcs.dll%2Farticle%3FAID%3D%2F20100502%2FBREAKING02%2F305020013%2F-1%2FARCHIVE_BREAKING">


There are several message operations that can operate on multiple messages, including Forward and Delete, which are described in the Sections Forwarding Messages and Deleting Messages. exmh supports two different ways to select multiple messages. You can use the mouse to select multiple messages, or you can select messages based on their content.
To select multiple messages with the mouse, position the cursor at one end of a range in the table of contents, press and hold the first mouse button, and drag the cursor to the other end of the range. This selects a contiguous range of messages. You can add more messages to an existing selection by holding down the Shift key as you drag the mouse. You can add an individual message by holding down the Shift key as you click on the message. exmh lets you create a noncontiguous selection this way. If you Shift-click on a message that is already selected, then it becomes unselected. If you need to select a lot of messages, simply drag the mouse off the top or bottom of the window. The display scrolls automatically and the selection is extended.
The MH pick program can find messages based on their content, which is a powerful way to look through lots of mail. pick understands message header fields and date formats, and it lets you build up complex Boolean search expressions. exmh provides an interface to pick, and it selects the messages in the table of contents based on the results of the pick command.
Click the Pick button in the group of folder operation buttons. The dialog shown in The Figure below appears. Position this window where you want by using your window manager; exmh will remember its location for you.
The dialog contains entries for the Subject:, From:, To:, and Cc: header fields. If you leave any of these blank, the field is ignored. In the example figure, the subject is filled in with "windowing," so pick will search for all messages with the word "windowing" in their Subject: field.
The Before and After fields are date fields. You can find all messages before or after a given date by using these fields. Specify dates using the mm/dd/yy (month/date/year) format. Be sure to include the year. Dates can also be keywords like "today", "yesterday", "tomorrow", or any day of the week ("Sunday", "Monday", and so on).
The Search field is used to search over the body of your messages. This search method runs more slowly because pick must read through all of your messages, not just their headers.
If you fill in more than one field, pick finds messages that match all the criteria. In other words, it does the logical and of the search criteria. If you want to search for this or that, then click the Or button in the dialog. This adds another set of fields to the dialog, and pick will search for everthing that matches the first set or matches the second set.
The messages found by pick are selected in the table of contents. By default, the previous selection is cleared. If you choose the Add to sel checkbutton first, then the existing selection is preserved and the messages found by pick are added to the selection.
Once you have selected a set of messages, either by pick or with the mouse, you can shrink the table of contents so it only contains the selected messages. Click the New FTOC button in the Pick interface to do this. The advantage of doing this is that Next and Prev move you through this limited table of contents so you can easily browse the selected messages. The drawback of New FTOC is that a subsequent pick only finds messages in the reduced table of contents, not the whole folder. You have to select Rescan folder from the folder More... menu to restore the complete table of contents.
Because pick can be slow, exmh also implements fast searching over the current folder listing and current message body. If you click the Find button in the folder buttons, a small search dialog appears. Click the FTOC radio button to search over the table of contents, or click the Msg radio button to search over the message body. The search is case insensitive, which means that lowercase letters in the search pattern match uppercase letters, too. Uppercase letters in the pattern only match uppercase.
The fast search over the table of contents is quite limited in comparison to pick. It finds only things that are displayed in the window, and it selects only one message at a time. However, it is generally faster than pick.