they fight cause they LOVE what's behind it!!
Welcome to Drivel Over Coffee. A blog that focuses on nothing really. Born out of a caffeine induced coma from French Roast coffee and quite possibly a chocolate chip cookie. All the while the best music in the world – The '60's is reverberating in my brain.
The journey through life has not always been smooth, but with my music always with me, I have managed to age 71. My music of the 60's and early 70's from rock & roll to folk music to the music of the free spirits. This holiday time is especially bittersweet for me. I love the patriotism displayed during the 4th of July. The other side is the PTSD problems that bubble up with the fireworks and flashbacks. My music blasting in my ears as loud as necessary to block the explosions help me cope. May the 4th be with you.
Hancock and Charles Thomson. Most of the rest signed on August 2, but the last signature wasn't added until 5 years later.
• Twelve had their homes ransacked and burned.
• Two lost their sons serving in the Revolutionary Army; another had two sons captured.
• Nine of the 56 fought and died from wounds or hardships of the Revolutionary War. They signed and they pledged their lives, their fortunes, and their sacred honor. They signed the Declaration of Independence knowing full well that the penalty would be death if they were captured.
• Thomas McKean was so hounded by the British that he was forced to move his family almost constantly. He served in the Congress without pay, and his family was kept in hiding. His possessions were taken from him, and poverty was his reward.
• Vandals or soldiers looted the properties of Ellery, Hall, Clymer, Walton, Gwinnett, Heyward, Rutledge, and Middleton.
Such were the stories and sacrifices of the American Revolution. These were not wild-eyed, rabble-rousing ruffians. They were soft-spoken men of means and education. They had security, but they valued liberty more. Standing tall, straight, and unwavering, they pledged: "For the support of this declaration, with firm reliance on the protection of the divine providence, we mutually pledge to each other, our lives, our fortunes, and our sacred honor." They gave you and me a free and independent America.
The history books never told you a lot about what happened in the Revolutionary War. We didn't fight just the British. We were British subjects at that time and we fought our own government! Some of us take these liberties so much for granted, but we shouldn't. So, take a few minutes while enjoying your 4th of July holiday and silently thank these patriots. It's not much to ask for the price they paid. Remember freedom is never free!
A newlywed farmer and his wife were visited by her mother, who immediately demanded an inspection of the place. The farmer had genuinely tried to be friendly to his new mother-in-law, hoping that it could be a friendly, non-antagonistic relationship. All to no avail though, as she kept nagging them at every opportunity, demanding changes, offering unwanted advice, and generally making life unbearable for the farmer and his new bride.
While they were walking through the barn, during the forced inspection, the farmer's mule suddenly reared up and kicked the mother-in-law in the head, killing her instantly. It was a shock to all no matter their feelings toward her demanding ways.
1. Benjamin Franklin, John Adams and Thomas Jefferson served on the committee that picked the eagle for the national seal [Franklin wanted the turkey].
2. Bald eagles have few natural enemies and live only in North America.
3. Bald eagles get their white head and tail feathers about 4/5 years of age.
4. Bald eagles are not, and never were bald. The term comes from when "bald" meant "white-headed".
5. Their maximum speed: 40 mph or over 100 mph while in a dive.
6. They can lift roughly half their body weight.
7. The Bald Eagle is no longer considered endangered, and now only threatened.
8. The only other kind of eagle in North America is the golden eagle.
9. Bald eagles mate for life, but if one dies, the survivor will accept a new mate.
10. It is a felony to shoot an eagle.
It Hit Me Like A Ton Of Bricks!!!
I Just realized something, My dog sleeps about 20 hours a day. He has his food prepared for him. His meals are provided at no cost to him. He visits the Dr. once a year for his checkup and again during the year, if any medical needs arise. For this he pays nothing, and nothing is required of him. He lives in a nice neighborhood in a house that is much larger than he needs, but he is not required to do any upkeep. If he makes a mess, someone else cleans it up. He has his choice of luxurious places to sleep. He receives these accommodations absolutely free. He is living like a king and has absolutely no expenses whatsoever. All his costs are picked up by others who earn a living. I was just thinking about all this, and suddenly it hit me like a ton of bricks ~ MY dog is a CONGRESSMAN!!!
There was one little boy in the teacher's class who really struggled to learn. One day the teacher asked him who signed the Declaration of Independence, and of course he didn't know. The teacher asked him every day for a week but still he couldn't give the right answer.
A firefighter was working on the engine outside the station when he noticed a little girl nearby in a little red wagon with little ladders hung off the sides and a garden hose tightly coiled in the middle. The girl was wearing a firefighter's helmet. The wagon was being pulled by her dog and cat. The fire fighter walked over to take a closer look. "That sure is a nice fire truck." The firefighter said with admiration. "Thanks," the Girl replied. The firefighter looked a little closer and noticed the girl had tied the wagon to her dog's collar and to the cat's testicles.
At dinner, a little boy was asked to lead the prayer. "But I don't know how to pray," he replies. Just pray for your family members, friends and neighbors, the poor, etc.," says his father. "Okay." Stuttered the boy.
"Dear Lord, … Thank you for our visitors and their children, who finished all my cookies and ice cream. Bless them so they won't come again. Forgive our neighbor's son, who removed my sister's clothes and wrestled with her on her bed. This coming Christmas, please send clothes to all those poor naked ladies on my daddy's cell phone and provide shelter for the homeless men who use mom's room when daddy is at work. AMEN" – Dinner was cancelled.


Jessie Cat here. My human, Gina, just posted six more awesome photos of yours truly!!! ME!
There are 3 of me sitting on my new tower way up high…I have to admit, I was plopped up there. I'm still getting used to this tower thingy. Sometimes I'll hop up and sit on the middle platform but I like to be close to Mommy – er, I mean – my human! And, well, she doesn't exactly sit on that tower so I go pick a chair by her or lie on the couch and snuggle up to her.
And three other photos are of me playing with DaBird – which I truly LOVE!! Every night we play after supper dishes are done. I hear the water shut off and I know that's my signal to meow LOUDLY many times in a row, being sure to draw out the MMMMEEEEEEEEOOOOOOOWWWWWWWW so there's no way she'll miss hearing it. That's important. Since I'm the Boss, my order to play with me and DaBird is quickly taken care of.
Gina says: Yes, the entire neighborhood likely hears you Jessie…We hope the visitors enjoy the photos. And it is fun zipping DaBird around and watching Jessie chase it. Great exercise for her! As far as the tower goes, she uses the scratching posts and we just keep introducing her to the levels/platforms – getting her comfortable with the whole structure (which is so cool!), letting her understand it's okay to jump up on it.
Next Next post: Worth More Than $3??


text:
Anna Wallén (1980) é uma política do Partido Social-Democrata da Suécia.

Ela foi eleita membro do Riksdag e serviu entre 2010 e 2018, em representação do círculo eleitoral do condado de Västmanland pelos sociais-democratas.

Pessoas vivas
Nascidos em 1980
Políticos da Suécia

redpajama_set_name: RedPajamaWikipedia


Greely senior Sam Peck (5) is congratulated by classmate Dillon Trelegan after scoring a goal during the Rangers' 11-9 come-from-behind home win over Cheverus Saturday morning.
CUMBERLAND—Greely's boys' lacrosse team has been very competitive this spring, but the Rangers hadn't managed to produce a signature victory.
That changed in a big way Saturday morning.
Hosting red-hot Class A power Cheverus, Greely's hard work paid off and the Rangers served notice to the top contenders that they're in this for the long haul.
Greely rode senior goalie Dylan Sinclair's seven saves and sophomore Ben Kennedy's two goals to a 4-3 halftime lead.
The Stags roared to life in the second half and got three goals from senior Frankie Curran to go up, 8-5, but the Rangers, who haven't been able to answer in previous games against the top contenders, rallied and pulled within one when senior Alex Wetmore scored at the horn to cut the deficit to 8-7 with 12 minutes remaining.
Greely drew even on a goal from senior Sam Peck 28 seconds into the final stanza, but a Curran goal with 6:26 remaining gave Cheverus a 9-8 lead.
Again, the Rangers responded, tying the game with 4:27 left when senior Dillon Trelegan scored unassisted.
Then, with 3:05 to go, Peck bulled through the defense and finished to put Greely ahead to stay.
After Curran was denied by Sinclair, junior Josh Lawless iced it with 19.5 seconds showing and the Rangers went on to an inspirational 11-9 victory.
Kennedy and Peck had three goals apiece, Sinclair made 13 saves and Greely improved to 3-3, snapped the Stags' five-game win streak and dropped them to 5-2 in the process.
Cheverus and Greely's path don't traditionally cross. Both teams have been competitive this spring and the crossover contest figured to be a compelling one.
The Stags lost their opener, 11-6, at Thornton Academy, then came to life. Cheverus held off visiting Deering (8-6) and Kennebunk (9-7), posted an impressive 11-4 victory at two-time defending Western A champion South Portland, downed previously unbeaten host Gorham, 9-5, then Tuesday, rolled at home over Bonny Eagle, 15-1.
The Rangers won their first two games, 7-3, at NYA and 19-3, at home over Lake Region. Greely then held its own at home against perennial powers Yarmouth (16-10) and Cape Elizabeth 12-6. Thursday, Greely rallied late, but lost at Kennebunk, 6-5.
Saturday morning, in the first meeting between the teams since May 27, 2006 (a 12-6 Cheverus win in Cumberland), the Rangers got their first victory over the Stags since May 17, 2003 (14-12, in Portland).
In the early going, both goalies came up big, as Sinclair and Stags junior Sean Walsh both made four saves in the first nine minutes.
Cheverus broke the ice with 5:36 to go in the first period, when sophomore Max Coffin set up classmate Jesse Pierce for a 1-0 lead.
The Stags then went man-up and had a chance to add to their lead, but the Rangers, who twice missed open nets in the early going, forced a turnover, then, in transition, junior Billy Borden fed Kennedy for the tying goal.
Greely took the lead with 1:05 to go in the first, when Peck weaved through the Cheverus defense and finished, but 31 seconds later, Curran showed off the physicality which made him such a force on the football field, fighting through two defenders before finishing to make it 2-2 after 12 minutes.
Five minutes into the second period, the Stags retook the lead when Curran scored unassisted, but with 4:38 to go in the half, senior Alex Kroot fed sophomore Tim Coyle at the far post and Coyle beat Walsh to tie the game again, 3-3.
Greely then went ahead courtesy a man-up goal, as Wetmore fed Kennedy with 52.4 seconds remaining and the Rangers took a 4-3 lead to the break.
In the first half, Cheverus won six of nine faceoffs and enjoyed a 23-16 advantage in ground balls, but the Stags turned the ball over nine times and seven Sinclair saves helped Greely, which had a 21-18 edge in shots, cling to a slight advantage.
The Stags surged to start the second half.
Cheverus pulled even 47 seconds in when again Curran had his way with the Rangers' defense, shaking free, then beating Sinclair to make it 4-4.
The Stags took a 5-4 lead with 9:27 to play in the third, when Pierce fed Coffin on the doorstep for a goal and with 7:06 remaining, after intercepting a pass, Curran drove to the goal with plenty of space in which to operate, and beat Sinclair again to make it 6-4, the first two-goal spread of the contest.
Out of a timeout, the Rangers answered, as after a turnover, Trelegan set up Kennedy for a rocket which got past Walsh.
Cheverus pushed the lead back to two when Pierce fed Curran for a man-up goal with 4:52 remaining in the third.
With 2:49 to go, Curran fed Pierce for a three-goal lead, but Greely roared back.
With 1:20 remaining in the third, Lawless finished Peck's feed to stem the tide and as time expired in the quarter, Lawless passed to Wetmore, who shot past Walsh to pull the Rangers within one, 8-7.
Greely completed its comeback just 28 seconds into the final stanza, as Peck danced around two defenders before beating Walsh to make it 8-8.
That score stood until 6:26 remained, when sophomore Finn Cawley set up Curran for a rocket which tickled the twine.
The Stags had a chance to add to their lead when they went man-up, but couldn't convert and Trelegan made them pay with an unassisted tally with 4:29 left.
Kennedy then bid for the lead, but was denied by Walsh, and at the other end, Pierce had a great look, but Sinclair made the save to preserve the tie.
Then, with 3:05 to go, Peck roared into the offensive zone, fought past a defender, then finished for a 10-9 lead.
After Pierce shot just wide with 1:28 left, Cheverus got a golden opportunity 11 seconds later when it went man-up, but a good look from Curran was saved by Sinclair and Greely got possession.
Out of a timeout, the Stags appeared to force a turnover, but they were offsides and the Rangers kept possession.
Then, with 19.5 seconds to go, Lawless took a pass from Peck and scored to ice it and Greely went on to prevail, 11-9.
Kennedy and Peck paced the offense with three goals apiece. Lawless scored twice and Coyle, Trelegan and Wetmore had one goal each.
Borden, Kroot, Lawless, Trelegan and Wetmore all had one assist.
Sinclair came up huge several times and wound up with 13 saves.
After the Rangers lost seven of the first nine draws, they turned to freshman Jackson Williams, who came up huge, winning nine of 14 opportunities.
Wetmore had a team-high five ground balls.
Cheverus got a huge game from Curran, who had six goals and one assist.
Pierce scored twice and Coffin had one goal.
Pierce had two assists, while Cawley and Coffin also had an assist.
The Stags had a 46-33 edge in ground balls, as senior Alex Nason had eight and they outshot the Rangers, 36-31 (Greely had a 22-19 advantage in shots on cage).
Cheverus hopes to bounce back when it has another key test Tuesday night at home versus Scarborough (the game will be played on Deering's turf field). After playing at Noble Friday, the Stags visit Westbrook, host Portland and close at home versus Marshwood.
Greely returns to action Tuesday at York and welcomes Freeport Thursday. After visiting Thornton Academy and Falmouth, the Rangers go to NYA and finish at home against Kennebunk.
This is a team that could be very dangerous come June.
"The biggest thing for us is just the mental stuff," Sinclair said.
Cheverus sophomore Max Coffin races toward the goal as Greely junior Ryan Sullivan defends.
Cheverus junior goalie Sean Walsh denies Greely sophomore Ben Kennedy.
Cheverus sophomore Finn Cawley attempts a shot.
Greely senior Sam Peck scores one of his three goals.
Cheverus sophomore Jesse Pierce is defended by Greely sophomore Andrew Eckhardt.
Greely junior Ryan Sullivan takes a shot.


text:
Mississippi doctor against vaccine mandate runs for governor
A Mississippi doctor who leads a group of physicians opposed to COVID-19 vaccine mandates has filed paperwork to challenge Mississippi Gov. Tate Reeves in the state's Republican primary.
Dr. John Witcher is the only Republican other than Reeves who has entered the gubernatorial primary so far. He's best known for founding Mississippi Against Mandates, a group of doctors opposed to requiring COVID-19 vaccines. Witcher has said he was fired from a Mississippi hospital in 2021 after switching patients' COVID-19 medication to ivermectin, an anti-parasite drug that is not authorized by the FDA for use against the novel coronavirus and which research shows doesn't work.
More:He was once labeled a danger to patients. Now he's protesting COVID-19 vaccine mandates
The Associated Press left a voicemail with Mississippi Against Mandates seeking comment from Witcher.
Reeves, who was elected governor in 2019, filed for reelection on Jan. 3. Former Mississippi Supreme Court Chief Justice Bill Waller Jr., who lost to Reeves in the 2019 Republican primary, has said he is considering another run.
Brandon Presley, a Democrat in his fourth term as a Mississippi utilities regulator, announced on Jan. 12 that he is seeking the Democratic gubernatorial nomination. Presley will face at least one candidate in the Democratic primary. Gregory Wash, who ran a low-budget race for governor in 2019, has filed to run again.
Feb. 1 is the qualifying deadline for an election that will include statewide offices, state district offices, legislative seats and county offices. Party primaries are scheduled for Aug. 8, with runoffs on Aug. 29. The general election is on Nov. 7, with runoffs on Nov. 28.
Mississippi, Louisiana and Kentucky are the only states electing governors this year.

redpajama_set_name: RedPajamaCommonCrawl


"Leave no man behind", is a motto that our military has always tried to uphold. This philosophy as well as legion posts lacking enough members to form a full chapter, is the motivation for forming the Tazewell County American Legion Riders. We are an effort to unite and combine the forces of all the Legion Riders in the Tazewell County area that don't have a full group, as well as any other Legion Riders in the Central Illinois region.
Our current members of the TCALR are from various posts throughout Central Illinois. They are proud to be part of a solid group of bikers dedicated to family, camaraderie, and supporting local veterans and their families both past and present. We welcome any Legion Rider (as well as anyone who qualifies to be a Legion Rider) that would like to be a part of cause greater than themselves, the support of our veterans.
To be an American Legion Rider you must be a member of the American Legion, Auxiliary, or Sons of the American Legion, be in good standing, and own a motorcycle 500cc's or larger.
TCALR participates in the Legacy Scholarship Run as well as hosting the R.E.D. Ride and HAWKS ride, also participating in many other events in the Illinois region that either directly benefit or supports local veterans and their families. Throughout the year you can find us assisting the local Patriot Guard with Honor Missions, and showing support for the local Honor Flights.
Being a member of the TCALR, you can be proud to be part of the network of American Legion Riders American Legion Riders chapters are well known for their charitable work, which has raised hundreds of thousands of dollars for local children's hospitals, schools, veterans homes, severely wounded service-members and scholarships. Since 2006, Riders nationwide have participated in the Legion Legacy Run, to annually raise money for the Legacy Scholarship Fund, established to provide scholarships to children of U.S. military personnel killed since Sept. 11, 2001.


The tSSL Symposium brings together renowned experts of academia and institutions as well as leading industry professionals across the country and around the world. As such, the organizer is committed to running energizing and informative programs. Furthermore, the sponsorship program is created to provide onsite and long lasting opportunities for you to share the features and benefits of your products and brand.
Your sponsorship and contribution is greatly appreciated!We look forward to your participation in this premier industry event and welcoming you at 2019 tSSL.
1. All items are available on a first-come, first-served basis. Once we receive your completed Sponsorship Commitment Form, the symposium secretariat will contact you shortly.
2. All artwork, specification and information for logos, printing, advertisements and promotional items shall be supplied by sponsor by the advised deadlines.
n Your help is greatly appreciated! Please fill out and submit this form by fax or email to tSSL symposium secretariat. The symposium secretariat will contact you shortly prior to invoicing.
n When you sign up as a sponsor, please send an electronic copy of your logo in .jpg or .ai format, at least 1M dpi to tSSL symposium secretariat. Furthermore, please cooperate with providing promotional materials required.
n Sponsorship may be paid by wire transfer or cash check.


text:
The US natural gas industry is leaking way more methane than previously thought
August 17, 2018 by Anthony J. Marchese and Dan Zimmerle
How big is the methane problem? A five-year research effort shows it's much bigger than has been assumed so far, write Anthony J Marchese and Dan Zimmerle of Colorado State Universtiy. They add that if the problem is not tackled, the climate benefits of gas will largely evaporate. Technology is not the bottleneck, though – the government will have to adopt the right regulations. Courtesy The Conversation.
Natural gas is displacing coal, which could help fight climate change because burning it produces fewer carbon emissions. But producing and transporting natural gas releases methane, a greenhouse gas that also contributes to climate change. How big is the methane problem?
For the past five years, our research teams at Colorado State Universityhave made thousands of methane emissions measurements at more than 700 separate facilities in the production, gathering, processing, transmission and storage segments of the natural gas supply chain.
The Energy Charter Treaty makes…
HYBRIT project: Sweden goes for…
Clean Trucks are coming: a…
A beginner's guide to European…
A methane leak rate of greater than 3 percent would result in no immediate climate benefits from retiring coal-fired power plants in favor of natural gas power plants
This experience has given us a unique perspective regarding the major sources of methane emissions from natural gas and the challenges the industry faces in terms of detecting and reducing, if not eliminating, them.
Our work, along with numerous other research projects, was recently folded into a new study published in the journal Science. This comprehensive snapshot suggests that methane emissions from oil and gas operations are much higher than current EPA estimates.
What's wrong with methane
One way to quantify the magnitude of the methane leakage is to divide the amount of methane emitted each year by the total amount of methane pumped out of the ground each year from natural gas and oil wells. The EPA currently estimates this methane leak rate to be 1.4 percent. That is, for every cubic foot of natural gas drawn from underground reservoirs, 1.4 percent of it is lost into the atmosphere.
This study synthesized the results from a five-year series of 16 studies coordinated by environmental advocacy group Environmental Defense Fund (EDF), which involved more than 140 researchers from over 40 institutions and 50 natural gas companies.
The effort brought together scholars based at universities, think tanks and the industry itself to make the most accurate estimate possible of the total amount of methane emitted from all U.S. oil and gas operations. It integrated data from a multitude of recent studies with measurements made on the ground and from the air.
Some scientists believe that the leakage rate could be even higher than this new estimate
All told, based on the results of the new study, the U.S. oil and gas industry is leaking 13 million metric tons of methane each year, which means the methane leak rate is 2.3 percent. This 60 percent difference between our new estimate and the EPA's current one can have profound climate consequences.
Methane is a highly potent greenhouse gas, with more than 80 times the climate warming impact of carbon dioxide over the first 20 years after it is released.
An earlier EDF study showed that a methane leak rate of greater than 3 percent would result in no immediate climate benefits from retiring coal-fired power plants in favor of natural gas power plants.
That means even with a 2.3 percent leakage rate, the growing share of U.S. electricity powered by natural gas is doing something to slow the pace of climate change. However, these climate benefits could be far greater.
Also, at a methane leakage rate of 2.3 percent, many other uses of natural gas besides generating electricity are conclusively detrimental for the climate. For example, EDF found that replacing the diesel used in most trucks or the gasoline consumed by most cars with natural gas would require a leakage rate of less than 1.4 percent before there would be any immediate climate benefit.
What's more, some scientists believe that the leakage rate could be even higher than this new estimate.
What causes these leaks
Perhaps you've never contemplated the long journey that natural gas travels before you can ignite the burners on the gas stove in your kitchen.
But on top of the 500,000 natural gas wells operating in the U.S. today, there are 2 million miles of pipes and millions of valves, fittings, tanks, compressors and other components operating 24 hours per day, seven days a week to deliver natural gas to your home.
That natural gas that you burn when you whip up a batch of pancakes may have traveled 1,000 miles or more as it wended through this complicated network. Along the way, there were ample opportunities for some of it to leak out into the atmosphere.
Natural gas leaks can be accidental, caused by malfunctioning equipment, but a lot of natural gas is also released intentionally to perform process operations such as opening and closing valves. In addition, the tens of thousands of compressors that increase the pressure and pump the gas along through the network are powered by engines that burn natural gas and their exhaust contains some unburned natural gas.
Since the natural gas delivered to your home is 85 to 95 percent methane, natural gas leaks are predominantly methane. While methane poses the greatest threat to the climate because of its greenhouse gas potency, natural gas contains other hydrocarbons that can degrade regional air quality and are bad for human health.
Inventory tallies vs. aircraft surveillance
The EPA Greenhouse Gas Inventory is done in a way experts like us call a "bottom-up" approach. It entails tallying up all of the nation's natural gas equipment – from household gas meters to wellpads – and estimating an annualized average emission rate for every category and adding it all up.
There are two challenges to this approach. First, there are no accurate equipment records for many of these categories. Second, when components operate improperly or fail, emissions balloon, making it hard to develop an accurate and meaningful annualized emission rate for each source.
"Top-down" approaches, typically requiring aircraft, are the alternative. They measure methane concentrations upwind and downwind of large geographic areas. But this approach has its own shortcomings.
The Trump administration's efforts to roll back regulations … will not only have profound climate impacts, they will jeopardize the health and safety of all Americans while undercutting efforts by the natural gas industry to cut back on the pollution it produces
First, it captures all methane emissions, rather than just the emissions tied to natural gas operations – including the methane from landfills, cows and even the leaves rotting in your backyard. Second, these one-time snapshots may get distorted depending on what's going on while planes fly around capturing methane data.
Historically, top-down approaches estimate emissions that are about twice bottom-up estimates. Some regional top-down methane leak rate estimates have been as high as 8 percent while some bottom-up estimates have been as low as 1 percent.
More recent work, including the Science study, have performed coordinated campaigns in which the on-the-ground and aircraft measurements are made concurrently, while carefully modeling emission events.
Helpful gadgets and sound policy
On a sunny morning in October 2013, our research team pulled up to a natural gas gathering compressor station in Texas. Using an US$80,000 infrared camera, we immediately located an extraordinarily large leak of colorless, odorless methane that was invisible to the operator who quickly isolated and fixed the problem.
We then witnessed the methane emissions decline tenfold – the facility leak rate fell from 9.8 percent to 0.7 percent before our eyes.
It is not economically feasible, of course, to equip all natural gas workers with $80,000 cameras, or to hire the drivers required to monitor every wellpad on a daily basis when there are 40,000 oil and gas wells in Weld County, Colorado, alone.
But new technologies can make a difference. Our team at Colorado State University is working with the Department of Energy to evaluate gadgetry that will rapidly detect methane emissions. Some of these devices can be deployed today, including inexpensive sensors that can be monitored remotely.
Technology alone won't solve the problem, however. We believe that slashing the nation's methane leak rate will require a collaborative effort between industry and government. And based on our experience in Colorado, which has developed some of the nation's strictest methane emissions regulations, we find that best practices become standard practices with strong regulations.
We believe that the Trump administration's efforts to roll back regulations, without regard to whether they are working or not, will not only have profound climate impacts. They will also jeopardize the health and safety of all Americans while undercutting efforts by the natural gas industry to cut back on the pollution it produces.
Anthony J. Marchese is Associate Dean for Academic and Student Affairs, Walter Scott, Jr. College of Engineering; Director, Engines and Energy Conversion Laboratory; Professor, Department of Mechanical Engineering and Energy Institute Affiliate Faculty, Colorado State University.
Dan Zimmerle is Senior Research Associate, Energy Institute, Colorado State University.
This article was first published on The Conversation and is republished here with permission from the authors and under a Creative Commons license of the publisher.
Filed Under: Energy, Oil, Gas & Coal Tagged With: climate change, coal power, energy transition, natural gas, shale gas, unconventionals, US energy policy
About Anthony J. Marchese
About Dan Zimmerle
an important story
Get our FREE weekly newsletter straight to your inbox


text:
Q: 'Call to a member function get() on a non-object'? Using symfony2. I have a listener class that is attempting to call a method from a different class (a controller) like so:
        $authenticate = new AuthenticationController();
        $authenticate->isTokenValid($token);

And the controller isTokenValid method:
public function isTokenValid($token) {

    $conn = $this->get('database_connection');

Is throwing the error
Fatal error: Call to a member function get() on a non-object in /home/content/24/9254124/html/newsite/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Controller/Controller.php on line 246

If i load the controller method the proper way (using routing in the url) it works fine.

A: Symfony2 uses Dependency Injection pattern, you have to inject container that holds all services (like database connection):
$authenticate = new AuthenticationController();
$authenticate->setContainer($this->container);
$authenticate->isTokenValid($token);

Of course I assume here that your listener class is ContainerAware
[+] To make your listener ContainerAware, pass @service_container to it (example form services.yml)
my.listener:
    class: ACME\MyBundle\ListenerController
    arguments: [ @service_container ]
    tags:
        - { name: kernel.event_listener, event: kernel.controller, method: onKernelController }
    kernel.event_listener:
        event: kernel.controller

and then in constructor of you listener class:
public function __construct($container = null){
    $this->container = $container;
}

A: I'm adding another answer because what @dev-null-dweller suggests is a bad practice: in almost every case you better to inject only the services you need — not the whole container:
use Doctrine\DBAL\Connection;

public function __construct(Connection $connection)
{
    $this->connection = $connection;
}

my_listener:
    arguments: [ @database_connection ]

redpajama_set_name: RedPajamaStackExchange


text:
Manwolves
Hailing from the outskirts of Chicago, IL, Manwolves, have been flourishing out of the Chicago scene in recent years. Known for their distinct genre-bending sound that fosters elements of rock, hip-hop, & jazz, the group has amassed over 57 million streams on Spotify with an average of 350,000 monthly listeners and have reached No.4 on Spotify's coveted Viral Chart.
Composed of lifelong friends Jamie (vocals), Eli (guitar), Henry (bass), Julian (drums), & Ari (keys), who initially bonded over their individual obsessions with music in middle school, they decided to see what would happen if they worked together. The result was electric and Manwolves were born…
With multiple sold out headlining shows in venues such as Thalia Hall, Lincoln Hall, Chop Shop, & Subterranean, playing alongside other major up and coming acts such as Ric Wilson and opening for acts such as Omar Apollo and Boy Pablo they have been deemed as one of the most exciting live acts in the city.
Manwolves released, 'Sleeping In' July 2022, which incorporates their incendiary live sound, thematically tackling the often troubling & unnatural relationship many of us have with the internet & social media.
Manwolves is seeking the following:
Gear Endorsement
PR/Publicity Agency
manwolvesband.com/


The Santa Cruz Chapter of Veterans for Peace welcomes Medea Benjamin to our monthly Armistice Celebration at the Town Clock Park!
November 11th, 2018 will mark the 100th anniversary of the declaration of Armistice Day, and a world without war, at the end of WWI - we celebrate on the 11th of each month as we move toward 11/11/2018 and making Armistice a reality!
The 100th Anniversary of Armistice Day is 11/11/1918. We are developing plans for events each month and a major event on November 11th, 2018.
Medea Benjamin, the cofounder of CodePink and Global Exchange, has served on the National Advisory Board to VFP for many years. Her newest book called "INSIDE IRAN" has just been released, and she has recently returned from the crossing of the DMZ in Korea. She will address the hot spots in the world to be most concerned about today, and what strategies we can embrace to create a lasting peace!
Music, poetry, spoken word, bells, flyers, banners and flags too!!
Please join us and bring others along!


text:
Witold Tadeusz Andruszewicz-Doliwa (ur. 16 czerwca 1890 w Barszczowicach, zm. 20 września 1939 w Tułowicach) – pułkownik artylerii Wojska Polskiego, kawaler Orderu Virtuti Militari.

Życiorys
Urodził się 16 czerwca 1890 w Barszczowicach, w ówczesnym powiecie lwowskim Królestwa Galicji i Lodomerii, w rodzinie Bolesława.

W czasie I wojny światowej walczył w szeregach cesarskiej i królewskiej Armii. Jego oddziałem macierzystym był Pułk Armat Polowych Nr 29, w 1916 przemianowany na Pułk Armat Polowych Nr 2, a dwa lata później na Pułk Artylerii Polowej Nr 2. W czasie służby w c. i k. Armii awansował na podporucznika ze starszeństwem z 1 stycznia 1916, a później porucznika ze starszeństwem z 1 lutego 1918 w korpusie oficerów rezerwy artylerii polowej i górskiej.

3 maja 1922 roku został zweryfikowany w stopniu majora ze starszeństwem z dniem 1 czerwca 1919 roku i 143. lokatą w korpusie oficerów artylerii, a jego oddziałem macierzystym był 11 pułk artylerii polowej. W 1924 roku dowodził III dywizjonem 11 pułku artylerii polowej w Stanisławowie. 31 października 1927 roku został przesunięty ze stanowiska dowódcy dywizjonu na stanowisko kwatermistrza. W kwietniu 1928 roku został przeniesiony z 11 pap do 25 pułku artylerii polowej w Kaliszu na stanowisko dowódcy III dywizjonu. 23 stycznia 1929 roku został mianowany podpułkownikiem ze starszeństwem z dniem 1 stycznia 1929 roku i 4. lokatą w korpusie oficerów artylerii. 27 kwietnia 1929 roku został przeniesiony do 3 pułku artylerii polowej Legionów w Zamościu na stanowisko zastępcy dowódcy pułku. 28 czerwca 1933 roku ogłoszono jego przeniesienie do 16 pułku artylerii lekkiej w Grudziądzu na stanowisko dowódcy pułku. Obowiązki dowódcy pułku łączył z funkcją prezesa tamtejszego oddziału Polskiego Związku Zachodniego. Na stopień pułkownika został awansowany ze starszeństwem z dniem 1 stycznia 1936 roku i 3. lokatą w korpusie oficerów artylerii. 9 listopada 1938 roku został dowódcą artylerii dywizyjnej 16 Dywizji Piechoty w Grudziądzu.

Na tym stanowisku walczył w kampanii wrześniowej 1939 roku. 20 września poległ w bitwie nad Bzurą, w nocnym natarciu w okolicach Tułowic. Pochowany na Cmentarzu Wojskowym na Powązkach (kwatera 10B-6-7).

Ordery i odznaczenia
 Krzyż Srebrny Orderu Wojennego Virtuti Militari
 Krzyż Oficerski Orderu Odrodzenia Polski (11 listopada 1937)
 Krzyż Walecznych (dwukrotnie)
 Brązowy Medal Zasługi Wojskowej z mieczami na wstążce Krzyża Zasługi Wojskowej (Austro-Węgry)
 Krzyż Wojskowy Karola (Austro-Węgry)

Przypisy

Bibliografia

 Rocznik Oficerski 1924, Ministerstwo Spraw Wojskowych, Oddział V Sztabu Generalnego Wojska Polskiego, Warszawa 1924, s. 657, 739.
 Rocznik Oficerski 1928, Ministerstwo Spraw Wojskowych, Warszawa 1928, s. 399, 452.
 Rocznik Oficerski 1932, Biuro Personalne Ministerstwa Spraw Wojskowych, Warszawa 1932, s. 177, 671.

Członkowie Polskiego Związku Zachodniego
Odznaczeni Krzyżem Oficerskim Orderu Odrodzenia Polski (II Rzeczpospolita)
Odznaczeni Krzyżem Srebrnym Orderu Virtuti Militari (II Rzeczpospolita)
Odznaczeni Krzyżem Walecznych (dwukrotnie)
Oficerowie 3 Pułku Artylerii Lekkiej Legionów
Oficerowie 11 Karpackiego Pułku Artylerii Lekkiej
Oficerowie 16 Pomorskiego Pułku Artylerii Lekkiej
Oficerowie 25 Pułku Artylerii Lekkiej
Oficerowie dowództwa 16 Pomorskiej Dywizji Piechoty
Pochowani na Powązkach-Cmentarzu Wojskowym w Warszawie
Polacy – oficerowie armii austro-węgierskiej
Polacy – żołnierze Cesarskiej i Królewskiej Armii w I wojnie światowej
Polacy odznaczeni Krzyżem Wojskowym Karola
Polacy odznaczeni Medalem Zasługi Wojskowej Signum Laudis
Polegli w kampanii wrześniowej (strona polska)
Pułkownicy artylerii II Rzeczypospolitej
Uczestnicy bitwy nad Bzurą (1939)
Urodzeni w 1890
Zmarli w 1939


text:
ATV DRAMA KHUDA GAWAH EPISODE 4
Media in Lahore Revolvy Brain revolvybrain. Shammi remained a sought-after with filmmakers when it came to goofy and comic roles,[5] especially in the period — and later from — Her last film appearance was in the film Gaja Gamini. Indian male television actors Revolvy Brain revolvybrain 21st-century Indian male actors Revolvy Brain revolvybrain Male actors in Hindi cinema Revolvy Brain revolvybrain. Shilpa Shirodkar born 20 November [3] is an Indian actress and former photo model who was active in Bollywood films from to Member feedback about Surendra Pal: Besides, connectivity with Gujarat ports provide Udaipur a strategic geographical advantage.
Pakistani drama television series Revolvy Brain revolvybrain. She was married to Ajoy Biswas, film director and actor, but they separated. Shammi remained a sought-after with filmmakers when it came to goofy and comic roles,[5] especially in the period — and later from — List of actors who have played multiple roles in the same film topic This is a list of actors who have played multiple roles in the same film. Family life Shilpa is the elder sister of actress and former Miss India Namrata Shirodkar, the daughter of the famous Marathi actress Gangu Bai, and grand-daughter of Meenakshi Shirodkar. In , Pal started a production company to produce and direct Bhojpuri films.
Gimli is on screen, but Treebeard is a voice-only role and Jennifer Tilly in Seed of Chucky as herself and Tiffany ; Non-speaking extras, or stock characters e.
Khuda Gawah (TV series) | Revolvy
atvv One of Pakistan's most popular and highest paid actresses, Qamar is the recipient of several accolades, including the Lux Style Award, Hum Award, and a Filmfare Award nomination. Thakur Karan Singh Police Lock-up God is my witness is a Pakistani action-romantic television series that was aired on on ATV.
SMOTRET FILM ONLINE DEVICHNIK V VEGASE
Outside theatre, he is best known as a character actor in Marathi and Hindi films, most notably, Mira Nair's Salaam Bombay!
Joshi Krishan Avtaar Antim Nyay uncredited Shirke has also worked in the Hindi television industry in the crime series C. Besides, connectivity with Gujarat ports provide Udaipur a strategic geographical advantage. He was cited as the "angry young man" for his roles in Deewaar and Zanjeer.
Member feedback about Udaipur: Inspector Shrikant Saajan Chale Sasural Chinky's Father Khuda Gawah Member feedback about Khuda Gawah TV series: Vikram Gokhale born 30 October is a well-known Indian Marathi-language film, television and stage actor, notable for his roles in Marathi theatre and Hindi films and television. Shilpa Shirodkar topic Shilpa Shirodkar born 20 November [3] is an Indian actress and former photo model who was active in Bollywood films from to Later on, Don's henchmen kidnap Iqbal, but before th Soon, Inspector Anwar and his wife Salma's only son Iqbal develops a heart condition which can only be cured with a pacemaker.
Bharat Kapoor topic Bharat Kapoor is an Indian film and television actor. Member feedback about Amitabh Bachchan: Gogia Advani Fauji Mehra Aatank Hi Aatank List of actors who have played multiple roles in the same film topic This is a list of actors who have played multiple roles in the same film.
Nargis Rabadi 24 April [2][3] — 6 Marchbetter known by her stage name Shammi,[4] was an Indian actress who appeared in over two hundred Hindi films. This does not include: He first gained popularity in the early s for films such as Zanjeer, Deewaar and Sholay, and was dubbed India's "angry young man" for his on-screen roles in Bollywood.
ORARI FILM CINEMA MAESTOSO LANCIANO
Sai Kumar actor, born topic Sai Kumar born Saikumara Sarma Pudipeddi is an Indian film actor, dubbing artist turned actor and television presenter. Studio publicity photograph of Bachchan in Amitabh Bachchan is an Indian film actor, playback singer, producer and television personality.
Member feedback about Bharat Kapoor: Shammi actress topic Nargis Rabadi 24 April [2][3] — 6 Marchbetter known by her stage name Shammi,[4] was an Indian actress who appeared in over two hundred Hindi films. Police Commissioner Rang Pakistani drama television series Revolvy Brain revolvybrain.
Atv Drama Serial Khuda Gawah 4/22
A film she had completed in the s titled Barood had Bollywood topic Hindi cinema, darma metonymously referred to as Bollywood, and formerly known as Bombay cinema,[6] is the Indian Hindi-language film industry, based in Mumbai formerly BombayMaharashtra, India. He has worked on many Hindi, Rajasthani and Gujarati films.
Since the only chemist selling the pacemaker belongs to Don, Inspector Anwar is blackmailed by Don's goons to release Don in exchange for the pacemaker. Career He deama been acting since and starred in the television series Bhagyavidhaata on India's Colors television channel between and She had been a leading actress playing main female lead or second female lead in Hindi films between — as well.
AANKH BHAR ASMAN EPISODE 97
AGADAM BAGDAM TIGDAM CAST
TAALASH EPISODE 97
GARDAB DRAMA ON ATV
CHINCHPOKLI TO CHINA COMEDY CIRCUS EPISODE 13
JHALAK DIKHLA JAA SEASON 6 PARTICIPANTS
OPERATION REPO NEW SERIES DMAX
PTV DRAMA ANOKHA BANDHAN LAST EPISODE
AMUL SUPER KUDUMBAM EPISODE 26
MERI BEHAN MERI DEVRANI LAST EPISODE 11 APRIL 2013
Categories History	Post navigation
FILM HERZTRANSPLANTATION WACH
TANI KINFE YORUBA MOVIE


text:
Filter your search by category. Current category: All
Show Applications Menu
Skip to Knowledge Base content
Academic Technologies
Digital Accessibility Resources
 Digital Accessibility Resources
Digital accessibility resources include creating accessible documents such as Word, PPT, HTML and PDF, Ally instructions for students and instructors, and using the D2L accessibility checker.
Accessibility Checker for Learn@UCO (D2L) HTML
Improve the accessibility of your course with the built-in accessibility checker in the HTML Editor. Accessible content improves the learning experience for all of your students, but especially those with disabilities. By using the accessibility checker, you can be sure you are on your way to creating an inclusive learning environment for all of your students.
Ally in Learn@UCO (D2L) - Instructors
Ally is a feature that promotes inclusivity for all learners. Ally integrates into D2L to gauge the accessibility of your content, while also providing guidance and tips for lasting improvements to your content accessibility.
Ally in Learn@UCO (D2L) - Students
Ally creates multiple alternative files from the original documents in your course. You can download these alternative formats anywhere that files are used.
Color Use and Contrast
Contrast and color use are vital to the accessibility of digital content. All users must be able to perceive content on the page, including those with visual disabilities such as low vision and color blindness. The following information will guide you on how to evaluate and understand the use of color and contrast in your digital content.
Create Accessible MS PowerPoint 2019 Presentations
Microsoft PowerPoint is one of the most popular tools used to create slide show presentations, typically during face-to-face meetings and lectures. However, PowerPoint can be used to organize thoughts for a lesson, present key points, and create handouts that can be printed. Because of this, the content will need to be accessible to those viewing the presentation live, those viewing printed versions of the slides, and those accessing the content electronically.
Create Accessible MS Word 2019 Documents
Microsoft Word is a commonly-used application and is reasonably accessible. The text within Word documents can be read by assistive technologies such as screen readers and electronic Braille devices. Word is often used as an authoring tool and can be converted to PDF and HTML files for websites. Good design makes documents more usable for everyone. The following best practices are provided to help you maximize the accessibility of your Word documents.
Create Accessible PDF Documents
PDFs can provide an accessible way to deliver content. They allow people to share documents created in practically any software with someone who does not own that software. If not created correctly, though, they can be completely inaccessible to people who use screen readers and present barriers to many more. The following best practices are provided to help you maximize the accessibility of your PDFs.
Designing an Accessible Online Course
Digital accessibility is the practice of designing and developing websites, applications and documents such that their presentation, content and functionalities are understandable and operable by as many people as possible. Following the best practices in this article will start you on a path in creating accessible digital content for your students.
Edit YouTube Auto-Captions
Many people use YouTube to post videos. When a video is uploaded to YouTube, automatic captions are generated by machine learning algorithms and, because of this, the quality of the captions may vary. It is important for the video creator to review the automatic captions and edit any parts that haven't been properly transcribed. Follow the directions below to edit your captions in YouTube.
Use Ally to OCR and Tag a Scanned PDF
Scanned PDFs are commonly used in the academic world. You may find yourself scanning from a textbook or a magazine article. Although the PDF looks like real text, the scan essentially creates an image of the text, which is completely inaccessible to students with visual impairments and can be problematic for everyone. The following practices using Ally in D2L can help you create a more accessible PDF document from a scanned image.
UCO Central - Mobile App
Students: Get Microsoft Office 365 - Free
Password Security at UCO
UCONNECT Access Information
View All Popular Articles
UCO Security Policy (Information Security Policy)
Online Proctoring Tools at UCO
Record/Share Videos for Instruction in D2L
Software Vendor Questionnaire
Computer Labs on Campus - General Information
View All Recent Articles
D2L (51)
Learn-UCO (39)
assignment (12)
Brightspace (12)
100 North University Drive, Edmond, OK 73034 | (405) 974-2000
For comments and suggestions, contact the UCO Service Desk at (405) 974-2255.
UCO Home
| Legal & Policies
Technician Sign In


text:
Het Luxemburgs voetbalelftal speelde in totaal vier interlands in het jaar 1982, waaronder drie wedstrijden in de kwalificatiereeks voor de EK-eindronde 1984 in Frankrijk, en verloor deze een voor een. De nationale selectie stond onder leiding van bondscoach Louis Pilot.

Balans

Interlands

Statistieken

Luxemburgs voetbalelftal
1982


Whether your order involves a small batch or thousands of individual parts Advanced Finishing USA production facility is designed to match our customer's needs. Few powder coat companies offer the product volume capability Advanced Finishing provides. We have processed high volume die springs & floor grates at a rate of 10,000 pieces per hour. Our multi-metal line can powder coat up to 6,000 square feet of material per hour. And our Architectural aluminum line can powder coat 2,500 square feet an hour.
The ability to accommodate large products is what separates Advanced Finishing, USA from competitors. Our multi-metal, Architectural Aluminum, Batch and Corrosion Facilities accommodate products up to 9,000 lbs. and over 40 ft. long. Our Architectural Aluminum line specializes in coating extrusions up to 25' long in single, or multi-color finishes or designer patterned finishes such as wood grain or marble.
Watch our video on our large product capacity.
The ability to control the thickness of the coating on the finished product is another distinguishing quality at Advanced Finishing USA. We can apply powder-coated material from 2 to 125 mils thick. When precision layer control is important, you can rely on Advanced Finishing to meet your specifications.
Advanced Finishing USA has perfected the application of multiple powder-coatings to meet the unique demands of our customers. From a highly protective primer coat, to one and two color coatings to a clear coat to provide that smooth final finish Advanced lives up to its name. Our two to three coat batch process has been the preferred technique for products as diverse as High Speed Rail Transit Cars & Locomotives to Exercise Equipment, Stadium Seating, Outdoor Furniture and Light Fixtures. Your imagination is our only limitation.


text:
The British Show The World How Silly They Are
sildenafil times, buy viagra serif;">The Bahamas Foreign Ministry issued a statement on 24th June in which it responded to the vote by the British to leave the European Union. The vote was a stupid act by the British. It was dumb. It was foolish and no amount of talking about democracy can cover that fact up. It is similar to the stupidity of the act by Bahamian voters with regard to the referendum in this country. It was simply foolish. Now they say that the British voters are seeking to backtrack but too late. A little country, with hardly any resources, Britain is much better off in a bigger group than alone in the world. It will take two years for them to disengage. The British Prime Minister David Cameron announced that he was gone. The loony toons in the Bahamas started calling afresh for the resignation of Prime Minister Perry Christie saying that is what should happen in The Bahamas after the failed referendum here. Not. The British economy is now on a rocky road . The Americans tried to calm the atmosphere by saying that the special relationship will remain. But how can it? Britain is simply not an important player anymore. They have reduced themselves down to two bits. Pity. But that's democracy they say.
PrevPreviousSt Agnes In Nassau Celebrates 170 Years At Government House
NextMitchell With The Sidney Poitier Essay WinnersNext


This half term in art we are focusing on the seaside artwork of a local artist called Zoe Emma Scott. This afternoon Year 2 were so lucky because Zoe Emma Scott actually came in to work with us on our own painting inspired by her artwork. She told us a little about her job as an artist and explained the process of planning and creating her paintings, from sketching outlines to adding detail with felt tip pens then painting the larger areas. We enjoyed using the different techniques to create some fantastic, colourful and bright paintings of seaside scenery. It was great to have Zoe here at St Aidan's to give us some helpful tips. Maybe some children in Year 2 will become artists in the future!


Welcome to Zupps Browns Plains Hyundai!
Zupps Browns Plains Hyundai have been operating for over 6 years supplying our customers with expert service and advice on all things Hyundai.
In 2007, we became part of something much bigger. we are now part of Automotive Holdings Group (AHG), Australia's largest motoring group with dealerships across Australia and New Zealand.
We stock a large range of Hyundai vehicles including the i30, Elantra, Accent, Santa Fe, Veloster, Tucson, iLoad, iMax, as well as a wide range of quality, late model used vehicles.
At Zupps Browns Plains Hyundai, we don't just sell cars, we also service them in brand new state-of-the-art service centre. Our highly skilled, factory-trained service technicians are authorised to service all Hyundai vehicles and conduct warranty repairs, meaning your Hyundai warranty remains untarnished.
Contact us today to book in your next test drive or ask one of our friendly staff members for assistance.


- Lattice type plants that produce runners. They are more sensitive to their environment and will require more specialization for plant propagation.
- Hardy plants that fit just about anywhere in the aquarium. They can be propagated with cuttings.
Aquarium plants make a beautiful well balanced fresh water fish tank, as well as a natural home for happy freshwater fish!
Quite simply, aquarium plants will make your tank healthier, more stable, and more beautiful. The benefits to aquarium stability and balance are numerous. Water plants produce oxygen through a process called photosynthesis, they absorb carbon dioxide, and they breakdown waste materials. Adding plants to your aquarium is one of the best things you can do for a stable fish tank.
Increase your enjoyment! A planted aquarium means better displayed fish!
Aquascaping your aquarium gives makes fish happy and healthy. Many tropical fish are native to a world that includes aquatic plants. Live aquarium plants serve as food for aquatic life and also provide fish and fish fry places for retreat. Your fish will behave more naturally, display better finnage and courtship behaviors, and have more intense coloring.
Best of all, by using water plants you create a unique aquarium design!
Selecting aquarium plants for the aquascape aquarium is not only fun, but is educational too. You can learn about the types of aquatic plants, the parts of a plant, and plant growth. The types of plants used in an aquarium consist of aquatic plants, amphibious plants, and land plants.
Here we have divided the types of plants into three groups; ferns and mosses which are the non-flowering plants, rosette plants, and stem plants, both of which are types of flowering plants.
All the types of aquatic plants can be used in the aquarium design. Getting started begins with planning your aquarium aquascape then selecting aquarium plants.
Ferns and Mosses: Fern, Moss, and Liverwort plants are non-flowering plants which propagate by microscopic spores. Ferns also propagated partly vegetatively, often producing roots from rhizomes that can attach to rocks or wood ornaments in the aquarium making them easy to be propagated by the aquarist.
Rosette Plants: Rosettes, beautiful leafy flowering plants, are the ornamental plants of the aquarium. They are spectacular used in groups or alone as a focal point in the aquarium design, but need a bit more specialized plant care.
Stem Plants: Stem plants are a diverse group of flowering plants that can be used almost anywhere in the aquarium design. These are some of the most popular aquarium plants. They have good plant growth and are fairly easy to propagate with simple cuttings.
Setting up a planted aquarium is similar to setting up a fish only tank. Like the fish tank, the planted aquarium will need lighting, heating and filtration. But it will also need a planting medium, or substrate. Once your tank is set up and you have it planted, you will need to provide plant food, usually a tablet or liquid fertilizer. Ongoing plant care will include water maintenance and keeping an eye out for anything hurting your plants like aquarium snails and other browsers, or plant diseases. With a good aquarium design and plant care, you will be rewarded with a lush, beautiful, well balanced aquarium which can soon be followed with plant propagation.


"Shri. V.K. Maheshwari , Former Registrar , Nainital Highcourt. Sir has delivered a guest lecture on the topic- ""Judicial Examination :- How to Prepare on 3rd April 2019. Guest Lecture was organised by Siddhartha Law College ,Dehrdaun UK."


text:
Did the New York AG Wait Too Long to Attack DFS Sites?
For those following the recent legal upheaval in the daily fantasy sports (DFS) industry, tomorrow will mark an important turning point in the battle over the future of DFS. A New York state court judge will hear arguments related to the New York Attorney General's request for an injunction prohibiting continued operations of several DFS sites. A flavor of the main arguments can be found on Legal Sports Report, or by following attorney Daniel Wallach on Twitter. As might be expected, the parties primarily spar over our old friend, the "skill game" argument (see HERE and HERE for my now well-aged discussions of the "skill game" argument in the context of poker).
There is one side argument that is worth additional discussion. In a recent op-ed piece in the New York Daily News, David Boies, the highly regarded attorney retained by DraftKings, argued:
"One major problem with the attorney general's argument is that he has been attorney general for six years, and for each of those years, FanDuel has operated openly in New York without a single suggestion from him or anyone else that its operations were at all legally suspect. DraftKings entered about four years ago and has likewise operated openly and continuously without question or complaint ever since.
During those years, major companies like NBC Sports, Fox Sports, Comcast and private equity firm KKR have invested hundreds of millions of dollars in building platforms to offer daily fantasy-sports contests; none of them had any doubts about the legality of those contests either."
DFS supporters have echoed these comments on social media, wondering why the New York Attorney General waited so long to act against the DFS industry if DFS were so clearly illegal. Some commentators have gone so far as to suggest it is too late for the Attorney General to act, that the industry cannot be attacked now after so many companies have invested so much money building up what they were led to believe was a legal enterprise condoned by the state (attorney Daniel Wallach declares this to be one of the best arguments for the DFS sites). But will this argument ultimately matter in court?
A. Laches and the Limits of Equity
At least on the surface, it seems unfair for the state of New York to sit back for several years and let the DFS industry grow, only to swoop in and declare that the entire business operations of several multi-million (or even billion) dollar companies are in violation of state gaming laws. Shouldn't the Attorney General have filed for an injunction years ago? Isn't it too late for the Attorney General to do anything now?
Some attorneys following the New York DFS case have suggested that the principle of laches might bar the Attorney General's lawsuit. [FN1]. Laches (pronounced "latches") is an equitable doctrine which prohibits a party from sitting on his rights to bring a legal claim until after others have acted to their detriment in reliance on the party's silence. Laches generally requires not just that there was a delay in asserting a legal right, but that the delay was both unreasonable and prejudicial. A classic example would be where a landowner knows his neighbor is constructing a building partially across a boundary line, but waits to assert a legal claim related to the property line until after the construction is completed.
Interestingly, laches can in some cases operate to bar a claim even where the claim is timely pursuant to a statute of limitations. For example, in the 2012 presidential primaries, a suit by several Republican candidates to be included on the Virginia primary ballot was rejected because the candidates had waited to file the suit until too close to the election date. The Fourth Circuit Court of Appeals cited the "disruption" to the electoral process and resulting "turmoil" to the nominating process caused by the "tardy" filing of the lawsuit at the "eleventh hour" as the basis for its decision to dismiss the suit on the basis of laches.
Although laches might appear to be an appealing argument in the New York DFS litigation, the reality is that laches would be a losing argument for the DFS sites. This is because principles of state sovereign immunity require courts to apply a different set of rules when the state is a litigant. In New York (as in most states), many equitable principles, including laches, simply do not apply against the state.
The principle that laches cannot be asserted against the state is well-established. For example, in State v. Tiraco, the New York Attorney General sought to enforce state securities registration laws against a company selling shares in a theatrical company; the appellate court needed only three sentences to summarily reject the defendants claim of laches: "Laches is not available as a defense as the prosecution is in the public interest." Similarly, in a more recent decision, a New York appellate court confirmed that "the equitable doctrine of laches may not be interposed as a defense against the State where, as here, it is acting in a governmental capacity to enforce a public right or protect a public interest." In re LaPine, 18 A.D.3d 552, 795 N.Y.S.2d 294 (N.Y. Sup. Ct. 2d Div. May 9, 2005). [FN2].
In sum, the doctrine of laches will be a non-starter in the pending DFS litigation.
B. The Florida Faircloth Decision—A Slender Reed
Legal commentators have also pointed to a Florida appellate case as authority for the position that a state's failure to enforce gambling laws against certain games over a period of years prevents the state from later taking a different position on the issue. Faircloth v. Central Florida Fair, Inc., 202 So. 2d 608 (Fla. Ct. App. 1967). The Faircloth court was presented with the question of whether certain carnival midway games were illegal under state gaming laws. The relevant passage from the court comes at the tail end of the opinion, after extensive statutory analysis (emphasis added):
"There is a further basis for our decision, suggested ironically by the defendant himself. As suggested, we discard the mantle of naivete and recognize that, if these midway games do come within the gambling laws, they have nevertheless been played throughout the state for years with the knowledge and consent of public officials, law enforcement officers and state legislators. We will not adopt an unnecessarily strict and artificial construction of our statutes which will result in further hypocritical noncompliance with our gambling law."
The Faircloth opinion will be of only limited value to the DFS sites in the pending litigation for several reasons. First, the decision was from a Florida court interpreting Florida gaming statutes; New York courts will give little weight to a decision involving significantly different state gaming laws.
Second, the court's language in Faircloth is supported only by a general citation to a law review article and a Mississippi appellate decision (State v. Wood) which really does not support the Faircloth court's argument. It is hardly surprising, then, that only one appellate court from another state (the Arizona supreme court) has ever cited Faircloth, and then only for the unrelated proposition that "wagers" or "bets" are legally distinguishable from "entry fees" for contests. State v. American Holiday Ass'n, 727 P.2d 807 (1986). [FN3]. No other appellate court has ever cited let alone adopted the Faircloth rationale that lax enforcement of gaming laws is relevant to an analysis of whether a particular game constitutes illegal gambling.
Third, and most important, the Faircloth decision ultimately turned on the language of the relevant Florida statutes. In Faircloth, a statute had authorized by name twenty-three specific carnival midway games which could be played at public fairs, and were subject to licensing requirements. The court concluded that this statute thereby implied a distinction between the specifically identified "games of skill" and those "games of chance" which were otherwise prohibited by law. In New York, by contrast, no statute exists which implicitly or explicitly suggests DFS is a game of skill or otherwise exempt from the state's general gambling prohibition statutes.
C. Legal Irrelevance
Ultimately, the issue of why the state of New York and its Attorney General have waited several years to pursue legal action against the DFS sites is nothing more than a legal red herring. If the DFS sites establish that DFS is legal under New York law, then whether the Attorney General improperly delayed in bringing the enforcement action becomes a moot issue.
On the other hand, however, if the court determines that DFS in fact is illegal gambling, there is no legal basis for the court to give the DFS sites a "get out of jail free card" and hold that the sites can continue to operate an active illegal gambling business merely because the state took its time to bring an enforcement action. [FN4]. Courts recognize that the state has limited resources and must make judgment calls as to how best use those resources. Just because the state does not arrest every driver who speeds or bust every home poker game does not mean that the state cannot enforce traffic or gaming laws in specific instances (absent an illegal discriminatory intent). [FN5]. Here, the state can plausibly argue that DFS was, until recently, sufficiently small-scale so as not to warrant the Attorney General's attention. The recent dramatic uptick in advertising and the claim of potential for "insider trading" and other unfair anti-consumer practices easily justify the Attorney General's decision to take a closer look at the DFS industry in recent weeks. Essentially, DFS sites got too big and too brazen to be ignored, much like the difference between small-stakes home poker games and multi-million dollar online poker businesses.
D. Rhetorical Value
David Boies is an exceptional attorney, and has to realize that the DFS sites' argument about the state's delay in bringing an enforcement action is ultimately beside the point as a legal argument. What, then, is the point of making this argument a cornerstone of the DFS defense?
Let's look at more of Boies' op-ed piece:
"Nothing has changed about the nature of the contests FanDuel and DraftKings offer.
What changed is that the attorney general's office suddenly decided without notice or discussion that daily fantasy sports contests represented a violation of the law and a threat to public morals that had to be stamped out.
There are many things wrong with that decision, but right or wrong, no one can pretend that the illegality of these contests is clear or obvious—it certainly was not clear or obvious to Schneiderman or his predecessor, who, for eight years, did not think there was a problem.
If the attorney general (or anyone else) doesn't like the law, the proper course of action is to get the law changed. Changing the law is up to the Legislature, not any single public official, no matter how well-intentioned. The attorney general is entitled to change his mind. He is not entitled to unilaterally change the law."
Boies' purpose for this argument is threefold. First, he wants to establish a sense of unfairness—his clients have been operating in New York for years, and now the Attorney General wants to change the rules without notice (though in fairness to the Attorney General, there was no actual "change" in opinion; the Attorney General went from having no opinion on the legality of DFS to determining DFS was illegal gambling under state law). This "innocent victim" rhetoric may not matter legally, but it can help generate both public support and political support; DFS's legal status will be a legislative rather than a judicial decision in the long run.
Second, and perhaps most important for the pending court cases, Boies wants to suggest to the judge that the legal status of DFS is, at best, murky under New York law. If DFS were clearly illegal, the state would have acted long ago. Boies' rhetoric thus is attempting to create judicial skepticism regarding the Attorney General's claims that DFS is unquestionably illegal gambling under New York law. This skepticism creates space for the DFS industry to not only advance their "skill game" arguments, but to otherwise highlight differences between DFS and traditional forms of gambling (notably sports gambling and poker).
Finally, Boies' rhetoric highlights the relative roles of the legislature and the courts. Although old laws are regularly applied to new technologies and industries, here Boies suggests that the state's delay in bringing an enforcement action demonstrates the ambiguity surrounding the status of DFS under New York's established gaming laws. Boies then argues the Attorney General was wrong to turn to the courts to resolve that ambiguity; instead, the issue of how to deal with the new DFS industry is best resolved by the legislature.
In an interview today with Fortune, Boies reiterated his rhetorical points about the perceived sudden "change" in the law, and declared: "We feel good about the position we're in. I think we look very strong. I'd rather have our hand than the Attorney General's hand." Boies is a brilliant lawyer, and he has some good arguments to make on the "skill game" issue. But the smart money, as always, is to bet on the state.
[FN1]. In law, principles of fairness are generally governed by the rules of equity. Years ago, there were separate courts of law and courts of equity. Courts of law were concerned with bright line rules; if you signed a contract, the law wouldn't care that you agreed to terrible terms, but would hold you to your obligations. Courts of equity, however, were concerned with issues of fairness, and operated to provide relief from overly harsh or technical applications of the law; if you could prove you signed a contract because of fraudulent misrepresentations by the other side, you could ask the court to rescind the contract.
Today, courts of law and equity have generally been combined, but the distinction between law and equity remains important, particularly in the realm of remedies. If a claim is brought at law, a court will generally be limited to awarding damages (money). If a claim is brought in equity, a court will award other forms of relief, such as restitution, rescission, injunctive relief, or declaratory relief.
[FN2]. Laches may be available against the state where the state is not acting in its governmental capacity, but instead is operating in a "private or proprietary capacity" (e.g., in a manner akin to a private company). Carney v. Newburgh Park Motors, 84 A.D.2d 599, 444 N.Y.S.2d 220 (N.Y. Sup. Ct. 3d Dep't 1981). Also, the legislature can limit the state's sovereign immunity by explicitly making the state subject to statutes of limitations or other time requirements. State v. Seventh Regiment Fund, Inc., 98 N.Y.2d 249, 774 N.E.2d 702 (N.Y. Ct. App. 2002). However, neither of these limited exceptions are applicable to the present DFS litigation.
[FN3]. Ironically, the Arizona opinion in American Holiday Ass'n also cites an old New York court of appeals decision, People v. Fallon, 152 N.Y. 12, 46 N.E. 296 (1897), for the proposition that there is a distinction between a wager and a contest entry fee:
"There is a plain and obvious distinction between a race for a prize or premium contributed [by the association] and a race where the stake is contributed by the participants alone, and the successful contestant is to have the fund thus created. The latter is a race for a mere bet or wager, while the former is for a prize offered by one not a party to the contest."
Considering the DFS model relies on participant entry fees going into a common prize pool with prizes being paid out of that pool (less house rake/fees), the Fallon decision is decidedly a negative for DFS operators in New York.
[FN4]. "[T]he doctrine of laches has no application when plaintiffs allege a continuing wrong." Capruso v. Village of Kings Point, 23 N.Y.3d 631, 16 N.E.3d 527, 992 N.Y.S.2d 469 (N.Y. Ct. App. 2014).
[FN5]. New York courts follow the rule that a selective enforcement claim will fail without evidence of improper discriminatory intent (In re Matter of 303 West 42nd v. Klein, 46 N.Y.2d 686 (N.Y. 1979)):
"The burden of proving a claim of discriminatory enforcement is a weighty one. Common sense and public policy dictate that it be so. The presumption is that the enforcement of laws is undertaken in good faith and without discrimination (see, e.g., United States v Falk, 479 F.2d 616, 620). Moreover, latitude must be accorded authorities charged with making decisions related to legitimate law enforcement interests, at times permitting them to proceed with an unequal hand. For example, it has been held that, in order to bring an appropriate case to test a new regulation or statute, or because of limited manpower or other resource inadequacies, or for the purpose of deterring other potential transgressors, certain violators may be selected for prosecution out of the class of all known violators (see People v Utica Daw's Drug Co., 16 A.D.2d 12, 21, supra; Comment, 61 Col L Rev 1103, 1119-1133). Such an enforcement strategy may also permissibly be directed at only serious violations (see English v Town of Huntington, supra, p 323 [enforcement of building and zoning codes only against buildings where fire and sanitary hazards had gone far beyond tolerable limits]) or those occurring in a geographic area where the probability or rate of violations is high (see, generally, Tieger, Police Discretion and Discriminatory Enforcement, 1971 Duke LJ 717). The reasoning goes that these instances of legitimate law enforcement should not be hampered by requiring that a hearing be held every time one subject to a regulatory or criminal penalty feels he has been unfairly singled out."
Posted by Grange95 at 11/24/2015 12:41:00 PM 7 comments: Links to this post
Labels: DFS, Law, New York
Did the New York AG Wait Too Long to Attack DFS Si...


The ORE Supergen Hub is part of a programme of initiatives being funded by the Engineering and Physical Sciences Research Council (EPSRC) and brings together the related research areas of wave, tidal and offshore wind.
Its aim is to maintain the UK's leading position in the field and to address any technical, environmental and interdisciplinary challenges which require a coordinated response at national and regional level.
The programme, which also includes hubs focusing on Bioenergy and Energy Networks and a new £1million network in solar energy, was announced on Thursday 26 July 2018 by the Prime Minister, Theresa May. In total, the four initiatives will involve academics from 19 universities and 70 stakeholder partners, including 22 from industry.
The ORE Supergen Hub will be led by Professor Deborah Greaves OBE, Head of the School of Engineering at the University of Plymouth, working alongside academics from The University of Aberdeen, University of Edinburgh, University of Exeter, University of Hull, University of Manchester, University of Oxford, University of Southampton, University of Strathclyde, and the University of Warwick.
The University of Hull's Aura initiative will be an active partner in the programme. Aura aims to support the developing offshore wind sector, building a vibrant industry in the Humber – the UK's Energy Estuary, for the benefit of the region and the country. Professor James Gilbert of Aura is a Co-Director of the ORE Supergen project, as such he will help steer the four-year programme as well as leading on the Equality, Diversity and Inclusion strand of the funding.


text:
/* TEMPLATE GENERATED TESTCASE FILE
Filename: CWE121_Stack_Based_Buffer_Overflow__CWE129_fscanf_62a.cpp
Label Definition File: CWE121_Stack_Based_Buffer_Overflow__CWE129.label.xml
Template File: sources-sinks-62a.tmpl.cpp
*/
/*
 * @description
 * CWE: 121 Stack Based Buffer Overflow
 * BadSource: fscanf Read data from the console using fscanf()
 * GoodSource: Larger than zero but less than 10
 * Sinks:
 *    GoodSink: Ensure the array index is valid
 *    BadSink : Improperly check the array index by not checking the upper bound
 * Flow Variant: 62 Data flow: data flows using a C++ reference from one function to another in different source files
 *
 * */

#include "std_testcase.h"

namespace CWE121_Stack_Based_Buffer_Overflow__CWE129_fscanf_62
{

#ifndef OMITBAD

/* bad function declaration */
void badSource(int &data);

void bad()
{
    int data;
    /* Initialize data */
    data = -1;
    badSource(data);
    {
        int i;
        int buffer[10] = { 0 };
        /* POTENTIAL FLAW: Attempt to write to an index of the array that is above the upper bound
        * This code does check to see if the array index is negative */
        if (data >= 0)
        {
            buffer[data] = 1;
            /* Print the array values */
            for(i = 0; i < 10; i++)
            {
                printIntLine(buffer[i]);
            }
        }
        else
        {
            printLine("ERROR: Array index is negative.");
        }
    }
}

#endif /* OMITBAD */

#ifndef OMITGOOD

/* goodG2B uses the GoodSource with the BadSink */
void goodG2BSource(int &data);

static void goodG2B()
{
    int data;
    /* Initialize data */
    data = -1;
    goodG2BSource(data);
    {
        int i;
        int buffer[10] = { 0 };
        /* POTENTIAL FLAW: Attempt to write to an index of the array that is above the upper bound
        * This code does check to see if the array index is negative */
        if (data >= 0)
        {
            buffer[data] = 1;
            /* Print the array values */
            for(i = 0; i < 10; i++)
            {
                printIntLine(buffer[i]);
            }
        }
        else
        {
            printLine("ERROR: Array index is negative.");
        }
    }
}

/* goodB2G uses the BadSource with the GoodSink */
void goodB2GSource(int &data);

static void goodB2G()
{
    int data;
    /* Initialize data */
    data = -1;
    goodB2GSource(data);
    {
        int i;
        int buffer[10] = { 0 };
        /* FIX: Properly validate the array index and prevent a buffer overflow */
        if (data >= 0 && data < (10))
        {
            buffer[data] = 1;
            /* Print the array values */
            for(i = 0; i < 10; i++)
            {
                printIntLine(buffer[i]);
            }
        }
        else
        {
            printLine("ERROR: Array index is out-of-bounds");
        }
    }
}

void good()
{
    goodG2B();
    goodB2G();
}

#endif /* OMITGOOD */

} /* close namespace */

/* Below is the main(). It is only used when building this testcase on
   its own for testing or for building a binary to use in testing binary
   analysis tools. It is not used when compiling all the testcases as one
   application, which is how source code analysis tools are tested. */

#ifdef INCLUDEMAIN

using namespace CWE121_Stack_Based_Buffer_Overflow__CWE129_fscanf_62; /* so that we can use good and bad easily */

int main(int argc, char * argv[])
{
    /* seed randomness */
    srand( (unsigned)time(NULL) );
#ifndef OMITGOOD
    printLine("Calling good()...");
    good();
    printLine("Finished good()");
#endif /* OMITGOOD */
#ifndef OMITBAD
    printLine("Calling bad()...");
    bad();
    printLine("Finished bad()");
#endif /* OMITBAD */
    return 0;
}

#endif

redpajama_set_name: RedPajamaGithub


text:
import logging
import os
import random
import sys

sys.path.append('..')
from common.document import Document
from common.model import Model
from common.ordered_sparse_topic_histogram import OrderedSparseTopicHistogram
from common.recordio import RecordReader
from common.recordio import RecordWriter
from common.vocabulary import Vocabulary

class SparseLDATrainGibbsSampler(object):
    """SparseLDATrainGibbsSampler implements the SparseLDA gibbs sampling
    training algorithm.  In gibbs sampling formula:

     (0) p(z|w) --> p(z|d) * p(w|z)
                --> (alpha(z) + N(z|d)) * p(w|z)
                 =  (alpha(z) + N(z|d)) * p(w|z) *
                    (beta + N(w|z)) / (beta * |V| + N(z))
                 =  alpha(z) * beta / (beta * |V| + N(z)) +
                    N(z|d) * beta / (beta * |V| + N(z)) +
                    (alpha(z) + N(z|d)) * N(w|z) / (beta * |V| + N(z))

     (1) s(z) = alpha(z) * beta / (beta * |V| + N(z))
     (2) r(z, d) = N(z|d) * beta / (beta * |V| + N(z))
     (3) q(z, w, d) = N(w|z) * (alpha(z) + N(z|d)) / (beta * |V| + N(z))

     (4) q_coefficient(z, d) = (alpha(z) + N(z|d)) / (beta * |V| + N(z))

    This process divides the full sampling mass into three buckets, where s(z)
    is a smoothing-only bucket, r(z, d) is a document-topic bucket, and
    q(z, w, d) is a topic-word bucket.

    The values of the three components of the normalization constant, s, r, q,
    can be efficiently calculated. The constant s only changes when update
    hyperparameters alpha(z). The constant r depends only on the document-topic
    counts, so we can calculate it once at the begining of each document and
    then update it by subtracting and adding values for the terms involving the
    old and new topic at each gibbs update. This process takes constant time,
    independent of the number of topics. The topic word constant q changes with
    the value of w, so we cannot as easily recycle earlier computation. We can,
    however, cache the coefficient q_coefficient for every topic, so calculating
    q for a given w consists of one multiply operation for every topic such that
    N(w|z) > 0.

    See 'Limin Yao, David Mimno, Andrew McCallum. Efficient methods for topic
    model inference on streaming document collections, In SIGKDD, 2009.' for
    more details.
    """

    def __init__(self, model, vocabulary):
        logging.basicConfig(filename = os.path.join(os.getcwd(),
                'log.txt'), level = logging.DEBUG, filemode = 'a',
                format = '%(asctime)s - %(levelname)s: %(message)s')

        self.model = model
        self.vocabulary = vocabulary
        self.word_prior_sum = self.model.hyper_params.word_prior * \
                self.vocabulary.size()
        self.documents = []  # item fmt: common.lda_pb2.Document

        # s(z), smoothing only bucket, indexed by topic z.
        self.smoothing_only_bucket = [0.0] * self.model.num_topics
        self.smoothing_only_sum = 0.0

        # r(z, d), document-topic bucket, indexed by topic z.
        self.doc_topic_bucket = [0.0] * self.model.num_topics
        self.doc_topic_sum = 0.0

        # q(z, w, d), topic-word bucket, indexed by topic z.
        self.topic_word_bucket = [0.0] * self.model.num_topics
        self.topic_word_sum = 0.0
        # q_coefficient(z, d), indexed by topic z.
        self.topic_word_coef = [0.0] * self.model.num_topics

    def load_corpus(self, corpus_dir):
        """Load corpus from a given directory, then initialize the documents
        and model.
        Line format: token1 \t token2 \t token3 \t ... ...
        """
        self.documents = []
        rand = random.Random()

        logging.info('Load corpus from %s.' % corpus_dir)
        for root, dirs, files in os.walk(corpus_dir):
            for f in files:
                filename = os.path.join(root, f)
                logging.info('Load filename %s.' % filename)
                fp = open(filename, 'r')
                for doc_str in fp.readlines():
                    doc_str = doc_str.decode('gbk')
                    doc_tokens = doc_str.strip().split('\t')
                    if len(doc_tokens) < 2:
                        continue
                    document = Document(self.model.num_topics)
                    document.parse_from_tokens(doc_tokens, rand, self.vocabulary)
                    if document.num_words() < 2:
                        continue
                    self.documents.append(document)
                fp.close()

        logging.info('The document number is %d.' % len(self.documents))
        self._initialize_model()

        self._compute_smoothing_only_bucket()
        self._initialize_topic_word_coefficient()

    def _initialize_model(self):
        self.model.global_topic_hist = [0] * self.model.num_topics
        self.model.word_topic_hist = {}
        word_topic_stat = {}

        for document in self.documents:
            for word in document.words:
                if word.id not in word_topic_stat:
                    word_topic_stat[word.id] = {}
                if word.topic not in word_topic_stat[word.id]:
                    word_topic_stat[word.id][word.topic] = 1
                else:
                    word_topic_stat[word.id][word.topic] += 1
                self.model.global_topic_hist[word.topic] += 1

        for word_id, topic_stat in word_topic_stat.iteritems():
            self.model.word_topic_hist[word_id] = \
                    OrderedSparseTopicHistogram(self.model.num_topics)
            for topic, count in topic_stat.iteritems():
                self.model.word_topic_hist[word_id].increase_topic(topic, count)

    def save_model(self, model_dir, iteration = ''):
        """Save lda model to model_dir.
        """
        if not os.path.exists(model_dir):
            os.mkdir(model_dir)
        self.model.save(model_dir + '/' + str(iteration))

    def save_checkpoint(self, checkpoint_dir, iteration):
        """Dump the corpus and current model as checkpoint.
        """
        if not os.path.exists(checkpoint_dir):
            os.mkdir(checkpoint_dir)
        checkpoint_dir += '/' + str(iteration)
        logging.info('Save checkpoint to %s.' % checkpoint_dir)
        if not os.path.exists(checkpoint_dir):
            os.mkdir(checkpoint_dir)

        # dump corpus
        corpus_dir = checkpoint_dir + '/corpus'
        if not os.path.exists(corpus_dir):
            os.mkdir(corpus_dir)
        c = 1
        fp = open(corpus_dir + '/documents.%d' % c, 'wb')
        record_writer = RecordWriter(fp)
        for document in self.documents:
            if c % 10000 == 0:
                fp.close()
                fp = open(corpus_dir + '/documents.%d' % c, 'wb')
                record_writer = RecordWriter(fp)
            record_writer.write(document.serialize_to_string())
            c += 1
        fp.close()

        # dump model
        self.save_model(checkpoint_dir + '/lda_model')

    def load_checkpoint(self, checkpoint_dir):
        """Load checkpoint form checkpoint_dir.
        """
        max_iteration = -1
        for sub_dir in os.listdir(checkpoint_dir):
            iteration = int(sub_dir)
            if iteration > max_iteration:
                max_iteration = iteration
        if max_iteration == -1:
            logging.warning('The checkpoint directory %s does not exists.'
                    % checkpoint_dir)
            return None
        checkpoint_dir += '/' + str(max_iteration)
        logging.info('Load checkpoint from %s.' % checkpoint_dir)

        assert self._load_corpus(checkpoint_dir + '/corpus')
        assert self._load_model(checkpoint_dir + '/lda_model')
        return max_iteration

    def _load_corpus(self, corpus_dir):
        self.documents = []
        if not os.path.exists(corpus_dir):
            logging.error('The corpus directory %s does not exists.'
                    % corpus_dir)
            return False

        for root, dirs, files in os.walk(corpus_dir):
            for f in files:
                filename = os.path.join(root, f)
                fp = open(filename, 'rb')
                record_reader = RecordReader(fp)
                while True:
                    blob = record_reader.read()
                    if blob == None:
                        break
                    document = Document(self.model.num_topics)
                    document.parse_from_string(blob)
                    self.documents.append(document)

        return True

    def _load_model(self, model_dir):
        if not os.path.exists(model_dir):
            logging.error('The lda model directory %s does not exists.'
                    % model_dir)
            return False
        self.model.load(model_dir)
        return True

    def gibbs_sampling(self, rand):
        """Perform one iteration of Gibbs Sampling.
        """
        for document in self.documents:
            self._compute_doc_topic_bucket(document)
            self._update_topic_word_coefficient(document)
            for word in document.words:
                self._remove_word_topic(document, word)
                self._compute_topic_word_bucket(word)
                new_topic = self._sample_new_topic(document, word, rand)
                word.topic = new_topic
                self._add_word_topic(document, word)
            self._reset_topic_word_coefficient(document)

    def _compute_smoothing_only_bucket(self):
        """s(z) = alpha(z) * beta / (beta * |V| + N(z))
        """
        self.smoothing_only_sum = 0.0
        for topic in xrange(self.model.num_topics):
            self.smoothing_only_bucket[topic] = \
                    self.model.hyper_params.topic_prior * \
                    self.model.hyper_params.word_prior / \
                    (self.word_prior_sum + self.model.global_topic_hist[topic])
            self.smoothing_only_sum += self.smoothing_only_bucket[topic]

    def _compute_doc_topic_bucket(self, document):
        """r(z, d) = N(z|d) * beta / (beta * |V| + N(z))
        """
        self.doc_topic_sum = 0.0
        self.doc_topic_bucket = [0] * self.model.num_topics
        for non_zero in document.doc_topic_hist.non_zeros:
            self.doc_topic_bucket[non_zero.topic] = \
                    non_zero.count * self.model.hyper_params.word_prior / \
                    (self.word_prior_sum +
                    self.model.global_topic_hist[non_zero.topic])
            self.doc_topic_sum += self.doc_topic_bucket[non_zero.topic]

    def _initialize_topic_word_coefficient(self):
        """q_coefficient(z) = alpha(z) / (beta * |V| + N(z)),
        """
        for topic in xrange(self.model.num_topics):
            self.topic_word_coef[topic] = \
                    self.model.hyper_params.topic_prior / \
                    (self.word_prior_sum + self.model.global_topic_hist[topic])

    def _update_topic_word_coefficient(self, document):
        """q_coefficient(z, d) = (alpha(z) + N(z|d)) / (beta * |V| + N(z))
        """
        for non_zero in document.doc_topic_hist.non_zeros:
            self.topic_word_coef[non_zero.topic] = \
                    (self.model.hyper_params.topic_prior + non_zero.count) / \
                    (self.word_prior_sum +
                    self.model.global_topic_hist[non_zero.topic])

    def _reset_topic_word_coefficient(self, document):
        """q_coefficient(z) = alpha(z) / (beta * |V| + N(z)),
        """
        for non_zero in document.doc_topic_hist.non_zeros:
            self.topic_word_coef[non_zero.topic] = \
                    self.model.hyper_params.topic_prior / \
                    (self.word_prior_sum +
                    self.model.global_topic_hist[non_zero.topic])

    def _compute_topic_word_bucket(self, word):
        """q(z, w, d) = N(w|z) * (alpha(z) + N(z|d)) / (beta * |V| + N(z))
                      = N(w|z) * q_coefficient(z, d)
        """
        self.topic_word_sum = 0.0
        ordered_sparse_topic_hist = self.model.word_topic_hist[word.id]
        for non_zero in ordered_sparse_topic_hist.non_zeros:
            self.topic_word_bucket[non_zero.topic] = \
                    non_zero.count * self.topic_word_coef[non_zero.topic]
            self.topic_word_sum += self.topic_word_bucket[non_zero.topic]

    def _remove_word_topic(self, document, word):
        self.model.global_topic_hist[word.topic] -= 1
        self.model.word_topic_hist[word.id].decrease_topic(word.topic, 1)

        self.smoothing_only_sum -= self.smoothing_only_bucket[word.topic]
        self.doc_topic_sum -= self.doc_topic_bucket[word.topic]
        updated_topic_count = document.decrease_topic(word.topic, 1)

        self.smoothing_only_bucket[word.topic] = \
                self.model.hyper_params.topic_prior * \
                self.model.hyper_params.word_prior / \
                (self.word_prior_sum + self.model.global_topic_hist[word.topic])
        self.smoothing_only_sum += self.smoothing_only_bucket[word.topic]

        self.doc_topic_bucket[word.topic] = \
                updated_topic_count * self.model.hyper_params.word_prior / \
                (self.word_prior_sum + self.model.global_topic_hist[word.topic])
        self.doc_topic_sum += self.doc_topic_bucket[word.topic]

        self.topic_word_coef[word.topic] = \
                (self.model.hyper_params.topic_prior + updated_topic_count) / \
                (self.word_prior_sum + self.model.global_topic_hist[word.topic])

    def _add_word_topic(self, document, word):
        self.model.global_topic_hist[word.topic] += 1
        self.model.word_topic_hist[word.id].increase_topic(word.topic, 1)

        self.smoothing_only_sum -= self.smoothing_only_bucket[word.topic]
        self.doc_topic_sum -= self.doc_topic_bucket[word.topic]
        updated_topic_count = document.increase_topic(word.topic, 1)

        self.smoothing_only_bucket[word.topic] = \
                self.model.hyper_params.topic_prior * \
                self.model.hyper_params.word_prior / \
                (self.word_prior_sum + self.model.global_topic_hist[word.topic])
        self.smoothing_only_sum += self.smoothing_only_bucket[word.topic]

        self.doc_topic_bucket[word.topic] = \
                updated_topic_count * self.model.hyper_params.word_prior / \
                (self.word_prior_sum + self.model.global_topic_hist[word.topic])
        self.doc_topic_sum += self.doc_topic_bucket[word.topic]

        self.topic_word_coef[word.topic] = \
                (self.model.hyper_params.topic_prior + updated_topic_count) / \
                (self.word_prior_sum + self.model.global_topic_hist[word.topic])

    def _sample_new_topic(self, document, word, rand):
        """Sampling a new topic for current word.

        Returns the new topic.
        """
        total_mass = self.smoothing_only_sum + self.doc_topic_sum + \
                self.topic_word_sum
        sample = rand.uniform(0.0, total_mass)

        # In general, self.topic_word_sum >> self.smoothing_only_sum
        # self.topic_word_sum >> self.doc_topic_sum
        if sample < self.topic_word_sum:
            ordered_sparse_topic_hist = self.model.word_topic_hist[word.id]
            for non_zero in ordered_sparse_topic_hist.non_zeros:
                sample -= self.topic_word_bucket[non_zero.topic]
                if sample <= 0:
                    return non_zero.topic
        else:
            sample -= self.topic_word_sum
            # self.doc_topic_bucket is sparse.
            if sample < self.doc_topic_sum:
                for non_zero in document.doc_topic_hist.non_zeros:
                    sample -= self.doc_topic_bucket[non_zero.topic]
                    if sample <= 0:
                        return non_zero.topic
            else:
                sample -= self.doc_topic_sum
                for topic, value in enumerate(self.smoothing_only_bucket):
                    sample -= value
                    if sample <= 0:
                        return topic

        logging.error('Sampling word topic failed.')
        return None


I can see Mahonia from my front window, and have seen bees still visiting the flowers even today. I'm intrigued by picture 18 – have no idea what these opening buds are… and want to know! Are you enjoying H is for Hawk? I read it when it went to paperback (not keen on hardbacks!) and thoroughly enjoyed it.
Hopefully all will be revealed when those buds open – if we have any fine days in December for me to go and look. Miserable weather at the moment!
Mahonia is one of my favourites – red admirals on Christmas Day is quite normal.
You have lots to be seen still.
I wonder how the Canadian got to Cardiff?
I guess I wondered, too, so I Googled.