If you have been following me on my blog for a while now, you'll know that it's no secret. For me, Christmas really is the most wonderful time of the year! I love everything about it. The food, the fun, the festive cheer. Everything about the Yuletide just makes me happy and revert back to a child-like state of immeasurable glee.
This year, unlike the past few, I actually have a pretty good idea of what I would like on my Christmas wishlist. The past couple of months my preferences have drastically changed, and whereas I would be drawn to lusting over fashion, I really am loving my beauty and lifestyle products.
No Christmas wishlist of mine would be complete without featuring some ESPA Skincare products. Scroll through my posts over the past year and ESPA have featured a lot. They are by far my most beloved skincare brand, and I could sing their praises til' the cows come home. Up there amongst my most favourite ESPA products are the Bergamot & Jasmine Foam Bath, Winter Spice Candle, and Skin Radiance Mask. So of course, these had to make it on to my wishlist.
Santa, if you're reading this, I think I've been an exceptionally good girl this year, so if you could hit me up with any of these beauties, I'll be oh-so very grateful!
I was manhandling the Hourglass palette last night in Space NK and it is oh so stunning and pretty in real life! The only downside was it seemed to be more packaging than product! They are some pretty, pretty highlighters though!


When I tell you that this dish definitely satisfies my craving for macaroni and cheese, that's a very big deal! Served alongside a tender roasted pork tenderloin or some delicious chicken breast filets, Minnie's Spaghetti Squash Au Gratin is a hearty full-flavored side dish that everyone in the family loves.
Served alongside a tender roasted pork tenderloin or some delicious chicken breast filets, this Spaghetti Squash Au Gratin is a hearty full-flavored side dish that everyone in the family loves.
Cut the spaghetti squash in half and remove the seeds. Place halves face down on microwave-safe dish and cook on high for 8-10 minutes, or until tender throughout.
Using two forks, scrape the insides of the squash and transfer to a small bowl.
Combine sour cream, cottage cheese, salt, pepper, and half of the cheddar cheese in food processor and blend until smooth, scraping down sides as needed.
Add sour cream mixture and EggBeaters to squash in bowl and mix well. Add additional seasonings if needed. Transfer the mixture to a buttered baking dish and top with the remaining cheddar cheese.
Place into a 375º oven for 25-30 minutes, until firm throughout and golden brown on top. Allow to cool for 10-15 minutes before serving. Yummy!


text:
Hurricane Florence - Millions of Americans warned to flee immediately
Scientists have warned millions of Americans throughout North Carolina, South Carolina and Virginia to board up their homes and flee for their lives at once ahead of Hurricane Florence.
The Category 4 storm — which meteorologists have called the "storm of a lifetime" — is expected to bring massive amounts of rainfall, flash flooding and havoc-wreaking winds.
Scientists also believe that the storm could also result in mudslides, due to the region's topography.
Hurricane-induced mudslides are a common effect when a tropical storm hits a mountainous region, such as the western half of North Carolina.
"This is one of the impacts you have to be worried about," Joel Cline, a meteorologist and tropical storm coordinator with the NOAA, told Fox News.
"This is going to be a Mike Tyson punch to the Carolina coast," Federal Emergency Management Agency associate administrator Jeff Byard said on Wednesday on CNN.
And it's coming soon and it doesn't matter if you've ridden out a storm in the past: "Today is the last good day to evacuate" he said.
Millions of people are expected to be without power once the storm hits, bringing the most powerful hurricane the region has seen in decades.
A state of emergency has been declared for much of the United States's mid-Atlantic seaboard as Hurricane Florence churns toward the coast.
Florence, a swirling spiral of more than 550 kilometers wide with winds gusting to more than 225 kilometers per hour, is expected to cause life-threatening flooding as it makes landfall on Friday, and 1.5 million people in the Carolinas and Virginia have already been ordered to board up their homes and flee for their lives.
Researchers at the universities and government facilities in Florence's predicted path are bracing for the storm.
Some are scrambling to protect sensitive samples against power outages and secure expensive instruments from winds and floods.
Others are rushing to deploy new experiments to collect as many data as possible before, during, and after the hurricane.

redpajama_set_name: RedPajamaCommonCrawl


Founded in 2009 by Mike Jandernoa, the former CEO of Perrigo Co., the program links local business owners at "second- and third-stage companies" with established business executives.
"Small and medium-sized businesses play a critical role in growing West Michigan's economy," said Jandernoa, who is also a JEM mentor.
Participants develop a one-on-one relationship with mentors, in addition to connecting with other new leaders through monthly group discussions and other activities.
Scott Crowley, owner of the Highland Group and a JEM participant, said the program held him accountable and challenged his traditional methods.
JEM mentors include 18 current for former CEOs and presidents of established companies, including Paul Boyer, former president of retailer Meijer Inc.; Jerry Scott, former president of Grand Haven manufacturer GHSP and Kathy Crosby, CEO of Goodwill Industries of Greater Grand Rapids.
The 2-year-old program served six entrepreneurs in its 2011 class and nine entrepreneurs in its 2010 class. The program charges a $3,500 fee to participants.
Persons interested in learning more about the program are invited to attend an informational meeting next Wednesday. The session will be from 5 p.m. to 7 p.m. at the University Club, 111 S. Lyon St. NW, Suite 1025. To register for the event, visit www.jandernoamentoring.org.


text:
package gw.internal.gosu.parser.statements;

import gw.internal.gosu.parser.Statement;
import gw.internal.gosu.parser.CannotExecuteGosuException;
import gw.lang.parser.statements.IBlockInvocationStatement;
import gw.lang.parser.expressions.IBlockInvocation;
import gw.lang.parser.statements.ITerminalStatement;

public class BlockInvocationStatement extends Statement implements IBlockInvocationStatement
{
  IBlockInvocation _invocation;

  public BlockInvocationStatement( IBlockInvocation invocation )
  {
    _invocation = invocation;
  }

  @Override
  public Object execute()
  {
    if( !isCompileTimeConstant() )
    {
      return super.execute();
    }

    throw new CannotExecuteGosuException();
  }

  public IBlockInvocation getBlockInvocation()
  {
    return _invocation;
  }

  @Override
  public String toString()
  {
    return _invocation.toString();
  }

  @Override
  protected ITerminalStatement getLeastSignificantTerminalStatement_internal( boolean[] bAbsolute )
  {
    bAbsolute[0] = false;
    return null;
  }

}

redpajama_set_name: RedPajamaGithub


How do you create a flipbook where the character is disintegrating? Add lots and lots of well-placed dots. This Disintegrating Flipbook animation tutorial from Laika stop-motion animator Andy Bailey of Andymation demonstrates with a LED light pad, a pencil, some paper and binding clips. And though making hundreds of dots to create the effect takes time and effort, as seen in the demo, it's well worth the result.
Previously: How to make a flipbook and more drawing inspiration, including stipple drawing by Miguel Endara.


text:
Infrastructure: Putting it all together
African Business
Mozambique, South Africa
The Japanese International Cooperation Agency (JICA) has agreed to provide an $84m loan and $31.5m grant to build and equip a new container terminal at the port of Nacala in Mozambique.
Construction projects are all very well but a wide range of infrastructure needs to be put in place in order to allow urban socio-economic life to function and prosper.
Road and rail networks need to be developed to move people and goods around a city; while ports and airports are needed for longer distance transport. The provision of ancillary infrastructure, such as water and power supplies, must be integrated into any urban vision at the outset, if it is not to become a white elephant that loses its shine after just a couple of years.
Of all strands of infrastructure, it is the port sector that continues to attract massive international investment, as new facilities are developed to cope with rising trade volumes across the continent. APM Terminals has begun work on expanding the annual handling capacity of Apapa Container Terminal, Lagos, to 1.2m TEU, which will make it the biggest container terminal in West Africa. A TEU or twenty-foot-equivalent units, is the standard size of container.
The terminal handled about 720,000 TEU last year, up from 600,000 TEU in 2011, so the additional capacity is badly needed. National container turnover in Nigeria stood at 1.4m TEU last year but APM Terminals expects this to reach 10m TEU a year within three decades. Nils Andersen, the chief executive of APM Terminals' parent company, Maersk, said: "Many efficiency measures and modernisations have been carried through in recent years, lifting the productivity and developing safety and transparency, so much so that we use it as a best practice example for terminals in other markets."
APM Terminals also plans to develop a new deepwater port at nearby Badagry by 2016, with an associated free trade zone, oil refinery and power plant. Anderson said: "The Badagry port project fits well into our strategy and competencies. "When Badagry is developed, we will have three ports to call with WAFMAX [the biggest vessels able to operate in West Africa], which will reduce waiting time for importers and exporters as well as pollution. We are very pleased with the support this project has received from authorities and key stakeholders."
Further south, Namibia's port operator, Namport, has received seven bids for the contract to construct the new container terminal at Walvis Bay. The port has had great success in attracting business from neighbouring states by improving road and rail links across the Southern African Development Community (SADC) region. It now requires additional capacity to cope with rising demand.
The bidders include three Chinese firms: Sino Hydro Corporation, China Gezhouba Group Company and China Harbour Engineering Company, highlighting the continued influence of Chinese companies in developing African infrastructure. When bids closed in February, Namport chief executive Bisey Uirab said: "The tender evaluation process has commenced immediately after the tenders were opened and is expected to be completed in a few months' time."
Apart from the design and construction of the new container terminal on reclaimed land, the successful bidder will be required to dredge the port harbour and build a new quay wall. The Japanese International Cooperation Agency (JICA) has agreed to provide an $84m loan and $31.5m grant to build and equip a new container terminal at the port of Nacala in Mozambique. A large coal terminal is expected to be built to help handle coal exports from the country's growing coal industry in Tete Province.
However, with the deepest natural harbour on the eastern coast of Africa, the government is also keen to see it develop as a container port. The loan is reported to have been provided on easy terms over 40 years with a 10-year grace period before repayments begin. With Maputo and Beira also scheduled for expansion, and a new port expected to be built near the mouth of the Zambezi to serve the coal industry, it might be expected that Mozambique will soon have all of the new port capacity that it can deal with.
Yet Prime Minister Alberto Vaquina has announced that another new port will be constructed at Techobanine, close to the South African border. It will principally handle coal exports from Botswana and probably South Africa but could also be used to export other mining commodities and land will be set aside for an industrial park. Vaquina said: "The Techobanine Port Complex envisages the construction from scratch of a deepwater port to handle very large ships, which will complement the port of Maputo."
Tax justice at last? Africa takes historic fight to the UN
A ground-breaking UN resolution put forward by African nations could pave the way for reforms to a global tax system that favours richer countries.
By Liam Taylor
UK's CDC rebrands amid new energy transition push
The CEO of the UK's development finance institution – soon to be known as British International Investment – describes its ambitious multi-billion dollar plans for Africa.
By Omar Ben Yedder
Global freight industry grapples with carbon emissions
The industry says that sustainable aviation fuel and renewable electrification projects can help bring it in line with stricter global climate goals expected to emerge from Cop27 in Egypt.
How banks can help South Africa avoid greylist
South Africa faces the possibility of being greylisted. Wendy Murray and Chris Oliver look at how banks can face the identified challenges head-on.
By Wendy Murray
PAFTRAC launches 2022 CEO Trade Survey
PAFTRAC's 2022 CEO Trade Survey found great optimism about the African Continental Free Trade Area amongst African CEOs. We bring you highlights of the launch and the following panel discussion by five leading experts.
Cameroon's global gamechangers
Cameroon has produced a number of outstanding leaders in a variety of disciplines who have gone on to have considerable influence not only in Africa but across the world. We profile some of them here.


text:
Bureau of Waste Site Cleanup | MassDEP
Find Out About a Contaminated Property
Waste Site Cleanup Advisory Committee
Guide Making Progress Cleaning Up Contaminated Properties
The Massachusetts Contingency Plan was significantly revised effective October 1, 1993 when a new, privatized approach was adopted. Since then, DEP has worked with private-sector Licensed Site Professionals (LSPs) to assess and cleanup sites. This page asks and answers questions about the progress of cleanups since 1993.
This information is current through Fiscal Year 2018.
Notifications - Summary
50,425 Releases Reported since 1984
How many releases have been reported to DEP?
Since 1984, over 50,000 releases have been reported to the Department.
What accounts for the most notifications: sudden releases (spills) or historic contamination?
Two-hour notifications, primarily related to new spills, account for 50 percent of all the notifications received since 2009. The balance of notifications is split between: 120-Day notifications, generally associated with finding historic contamination at concentrations above Reportable Concentrations; and 72-Hour notifications, which include (among other conditions) leaking tanks, groundwater contamination near a public well or near/at a private well, and actual/potential impacts to indoor air.
Are the numbers of spills increasing each year?
No. There has been an overall decline of all three types of notifications (2-Hour, 72-Hour and 120-Day) over time. This trend is consistent with better environmental management practices, upgrades in underground storage tanks, and a diminishing universe of undiscovered "historic" contamination. The notable increase in 72-Hour notifications in 1999 is attributable to the discovery of contamination related to leaking underground storage tanks driven by the federal deadline for the upgrade or replacement of underground storage tanks.
Cleanup & Closures - Summary
37,187 Sites Closed Since 1993
How many sites have been cleaned up since 1993?
37,187 sites, averaging over 1400 per year.
How many sites have been cleaned for unrestricted use?
A Permanent Solution with No Conditions has been achieved at 33,495 sites (or 90%), indicating that the site is suitable for unrestricted use. (This includes sites that have achieved Class A-1, A-2, and B-1 Response Action Outcomes – the closure categories that were in place prior to the 2014 regulatory changes.)
How many sites have achieved temporary solutions?
A Temporary Solution has been achieved at 779 (2%) of the sites cleaned up to date (6/30/18). (Temporary Solutions were referred to Class C RAOs prior to Spring 2014.)
At how many of the sites with a Permanent Solution was a deed notice or restriction (i.e., an Activity and Use Limitation) used as part of the remedy?
Between 1994 and 2018, 6% (2,146) of Permanent Solutions included an Activity and Use Limitation (AUL) as part of the final remedy.
How long does the cleanup process take?
Over 89% of the releases from FY95 to FY12 have achieved regulatory closures in less than six years from the time of notification. For the purpose of the chart below sites with regulatory closure include those with the compliance status of: Permanent Solution with No Conditions, Permanent Solution with Conditions, Adequately Regulated, Downgradient Property Status, RTN Closed, Memorandum of Understanding (DEPMOU), Not a Disposal Site (DEPNDS), DEP No Further Action (DEPNFA), LSP No Further Action (LSPNFA), Pending Not a Disposal Site (PENNDS), Pending No Further Action (PENNFA), Special Project (SPECPR), Utility-related Abatement Measure (URAM), Waiver Completion Statement (WCSPRM).
The chart below shows the length of time to achieve a Permanent or Temporary Solution from the time of notification by notification type (2-Hour, 72-Hour or 120-Day). The time required to achieve a Permanent or Temporary Solution is less than 6 years in the vast majority of cases and for all notification types (2 Hour - 97%, 72 Hour - 88%, 120 Day - 89%).
The chart below shows the current status of notifications made in FY2012. The chart shows that for the majority of sites for which the notification was made either a Permanent Solution has been achieved or a Permanent/Temporary Solution is not required within 6 years. (The most common reasons why a Permanent or Temporary Solution is not required is because the notification condition has been "linked" (i.e., response actions consolidated) under another notification and release tracking number. Other reason include the site is considered Adequately Regulated, Downgradient Property Status has been achieved or a Utility-related Abatement Measure is being conducted.)
Immediate Response Actions
Immediate Response Actions (IRAs) are required to address any condition that triggers a 2-Hour or 72-Hour notification to the Department. IRAs are expedited response actions that include at a minimum assessment, and where appropriate, actions to contain, isolate, or remove contamination from the environment that is the result of a release or address a threat of release. IRAs require approval by the Department. The chart below shows IRA approvals (both oral and written) by the Department by Fiscal Year (FY).
Since FY2000 MassDEP has conducted over 48,000 audits of response action submittals to evaluate and ensure compliance of those submittals and the associated response actions with the Massachusetts Contingency Plan. MassDEP conducts three different types of audits, which are referred to as Level 1 (Technical Screening Audit), Level 2 (Audit Inspection), and Level 3 (Comprehensive Audit). (Link to Audits Page) The majority of all audits conducted by MassDEP over time (over 80%) have been Level 1 Audits. The chart below shows the number of audits completed by fiscal year and the type of audit.
Notifications - Year-by-Year Data
2-Hour
120-Day
"None"
1985 0 0 0 21 21
1986 0 0 0 194 194
1987 0 0 0 1222 1222
1994 1044 707 225 945 2921
1995 1070 675 465 8 2218
1996 983 533 657 7 2180
1999 970 893 729 2592
2001 1136 411 663 2210
Total-to-Date: 21710 9409 12361 6944 50425
Cleanup & Closures - Year-by-Year Data
PSNCb
PSCb
TMPSb
1994 556 12 1 569
1995 1763 82 7 1852
1996 1486 102 8 1596
1997 1812 180 11 2003
2002 1603 96 25 1724
2014 988 98 43 1129
2015 902 141 41 1084
Grand Total 33495 2913 779 37187
For a complete explanation of the terms and acronyms used here, see the document, "Understanding the Waste Site/Release Look Up Search Results" below.
a Prior to June 20, 2014, the Massachusetts Contingency Plan (MCP) used different Response Action Outcome (RAO) classes to identify Permanent and Temporary Solutions. After the June 2014 MCP amendments, RAO classes were recategorized into types of Permanent or Temporary Solutions in accordance with the transition provisions at 310 CMR 40.1055 (see below).
310 CMR 40.1055 Transition Provisions
(1) As of June 20, 2014, all Class A-1, A-2 and B-1 Response Action Outcomes submitted to the Department prior to June 20, 2014 shall be Permanent Solutions with No Conditions.
(2) As of June 20, 2014, all Class A-3, A-4, B-2 and B-3 Response Action Outcomes submitted to the Department prior to June 20, 2014 shall be Permanent Solutions with Conditions.
(3) As of June 20, 2014, all Class C-1 Response Action Outcomes submitted to the Department prior to June 20, 2014 shall be Temporary Solutions as described in 310 CMR 40.1050(1)(e)1.
(4) As of June 20, 2014, all Class C-2 Response Action Outcomes submitted to the Department prior to June 20, 2014 shall be Temporary Solution as described in 310 CMR 40.1050(1)(e)2.
PSNC - Permanent Solution with No Conditions
PSC - Permanent Solution with Conditions
TMPS - Temporary Solution
Additional Resources for Cleanup & Closures - Year-by-Year Data
Open PDF file, 393.17 KB, for Understanding the Waste Site/Release Look Up Search Results (PDF 393.17 KB)
EEA Data Portal
The Data Portal provides access to search and interact with regulatory data, including MassDEP data pertaining to Permits, Facilities, Inspections, and Enforcements.
Key Actions for EEA Data Portal
Environmental Data Portal Dashboard
Image credits: Boston Light (Paul Locke)
Thanks, your message has been sent to Bureau of Waste Site Cleanup | MassDEP!


text:
Rumford's Experiments on the Heat Generated by Friction
Benjamin Thompson, also known as Count Rumford, undertook a series of experiments into the heating effects of friction. His conclusions were published in an essay, "An Inquiry Concerning the Source of the Heat Which is Excited by Friction" was presented to the Royal Society in 1788.
When a metal cannon is made, a hole is bored into a solid piece of metal. The metal gets very hot. The origin of the heat was supposed to be caloric released during the boring process.
In a set of experiments, Count Rumford measured the temperature change as a result of bring a cannon with the appratus illustrated below.
Caloric being a fluid, it was supposed, it should have a mass, so if it were released, there should be a mass loss during the experiment, but the total mass of metal aster the experiment equalled the mass of matter before. If caloric were a substance, it should have no mass – what sort of substance could it be?
By surrounding the end of the cannon with a water filled box, and measuring the temperature rise during the boring process, he showed that a blunt cutting tool produced a very large heating effect. He collected the metal cut from the cannon, and showed this could not have been the source of the caloric. Further experiments allowed him to rule out the water and the rest of the machinery as the source of the caloric.
He was able to observe that the heat generated by friction seemed to be inexhaustible – at odds with the idea that caloric is a substance of which there should be only a certain amount. Apparently friction could create this substance, and as much of it as desired.
His conclusion was that heat was a form of motion. We now know bodies have heat because of the random kinetic energy of their constituent atoms and molecules.


An extremely high performance cooling system, known as the "Herrington Stack", was developed and patented by Mobil Chemical back in the 1970's. Over the years, these stackable cooling systems produced billions of pounds of product for Mobil, but unfortunately, with downsides…high frequency gauge variation, high noise levels and difficulty in stabilization. Addex's Intensive Cooling Technology picks up where the Herrington Stack leaves off, and takes it way beyond. After a very intense R&D program here at Addex, we have solved the vibration and stability problems, and even added a stability and efficiency control capability!
It begins with a completely new Intensive Cooling Technology design, arranged in a stackable configuration to achieve higher output rate, each with divergent air flow along the bubble, both upward and downward, to provide high film holding forces and peak cooling efficiency. The high performance divergent cooling elements are assembled using simple spacer pipes that also provide a common feed of cooling air to each cooling element level. The stack mounts directly to the top of the die, forming a Short Stack topped with an Intensive Cooling Addex dual flow air ring.
Next, an enclosure is added to fully surround the stack, replacing the surrounding atmosphere with a very stable controllable ambient pressure. Each enclosure includes a very simple flapper style flow buffer and multiple low pressure, bladed fans to operationally set the pressure differential between the inside and outside of the bubble. The Intensive Cooling Technology includes easy-to-interpret operator feedback and adjustment for optimizing the stability and cooling efficiency of this enclosed, stacked cooling system.
The very high performance of the Intensive Cooling stacked system is assured by the multitude of divergent cooling elements, each providing a 10-15% increase in output rate over our conventional Addex dual flow air ring. Four (4) elements are provided standard, yielding a 30-60% increase in output, with high film quality assured by the enhanced stability of the Intensive Cooling Multi-level Stacked Technology design. Two (2) cooling elements are the minimum, but generally any number can be stacked to achieve the desired output.
Note: IBC output is considered separately and is added in addition to Intensive Cooling Dual Flow Air Ring output.
To remain competitive, blown film manufacturers must maximize output and quality, however cooling system performance has been a significant limiting factor…until now.
Many different commercially available cooling systems have been developed by OEMs, both external and internal to the bubble. To varying degrees these systems have achieved success. Internal cooling (IBC) systems have evolved significantly over the years, and together with external systems, generate significant additional output. Unfortunately, IBC systems cannot always be used, depending on such factors as operator skill, thermoplastic material properties, and the physical size and design of the associated die. In contrast, external systems are the cooling workhorse for the industry, providing the majority of cooling and stabilization across the full range of Blown Film processes.
The earliest external cooling element, known as a "Single Flow Air Ring", still in common use today, applies a single flow of cooling air around the bubble, and typically produces good film quality, but at lower output rate. By applying well known Bernoulli and Coandă principles, additional flows of cooling gas have been added over time to create various multi-flow cooling element designs, such as "Dual Flow", "Triple Flow" or even "Quad Flow" air rings. To gain additional output and/or stability, various cooling elements have been paired, depending on the application, to form what is generically known as a "Tandem Air Ring". Typically air rings are fixed in place, but in some cases are height adjustable above the die, to allow extending the cooled surface area along the bubble. This can produce even higher output, but also results in greater unsupported surface area above the die, which unfortunately, is the hottest and weakest portion of the bubble. This can lead to degraded stability, making it more difficult to operate the extrusion line.
This is the genesis of Intensive Cooling Technology.
All Addex air rings—LFR, MGC and EGC—are now available with Intensive Cooling technology!
Addex has taken air ring technology to a new level by integrating Intensive Cooling technology directly into the dual-flow air ring design. The new Intensive Cooling air rings typically deliver 10%-15% or greater output and better bubble stability—over and beyond Addex's already high performance, industry-standard dual-flow air ring design.
This newly adapted, patent-pending cooling technology replaces the standard lower lip with a single Intensive Cooling element on Addex's dual-flow air ring system. The previous low-velocity lower lip is transformed into a high-velocity air stream, creating two primary locking points instead of just one, to significantly improve bubble stability. The Intensive Cooling air rings also include all of the secondary air collar locking points found with the original air ring design. The units are simple and operator friendly, allowing a broad range of processes, blow-up ratios, thicknesses, and materials with minimal adjustments.
The new Intensive Cooling technology applies to all of Addex's air ring products including automatic profile External Gauge Control (icEGC), Manual Gauge Control (icMGC), and Laminar Flow (icLFR) air rings.
Guaranteed 10% – 15% greater output when Addex air rings are upgraded to Addex Intensive Cooling air rings!


ABOUT 100 children took part in the Kirklees Active Leisure Primary World Cup, which was held at Spenborough Pool and Sports Complex.
The event, which included a family fun day, was held to show support for the upcoming Rugby League World Cup and high profile guests included ex Great Britain international and Sky Sports presenter Mike 'Stevo' Stephenson and Huddersfield Giants' and ex GB international Stuart Fielden.
Throughout the day, money was raised for Forget Me Not Trust and Rugby League Cares through a charity raffle, with the chance to win family tickets to the Rugby League World Cup Grand Final, Dewsbury Rams and the England V Ireland game at the John Smiths Stadium.
Everyone who participated received a t-shirt representing one of the World Cup Nations, a goodie bag and a medal.


text:
Steven Emmanuel Godfroid Kunduma (born 16 March 1990) is a footballer who plays for Belgian club KSV Temse as a midfielder. Born in Belgium, he represents Rwanda at international level.

Career
Godfroid has played club football in Belgium for Charleroi, Jeunesse Turque and Saint-Gilloise. Godfroid joined KSV Temse ahead of the 2019–20 season.

He made his international debut for Rwanda in 2012, and has appeared in FIFA World Cup qualifying matches.

References

1990 births
Living people
Sportspeople from Charleroi
Footballers from Hainaut (province)
Belgian footballers
Rwandan footballers
Rwandan expatriate footballers
Rwanda international footballers
Association football midfielders
Royale Union Saint-Gilloise players
K.V. Woluwe-Zaventem players
Francs Borains players
Belgian people of Rwandan descent
Belgian sportspeople of African descent

redpajama_set_name: RedPajamaWikipedia


WOKING, England (Reuters) - McLaren indicated on Thursday that retired double Formula One world champion Fernando Alonso could stand in as a reserve driver for the team if needed this season.
The former champions have a new driver lineup this season, with 19-year-old British rookie Lando Norris and 24-year-old Spaniard Carlos Sainz, but have yet to name an official reserve.
Brazilian Sergio Sette Camara has been appointed as test and development driver but has yet to secure sufficient points to obtain the necessary super license.
Double world champion Alonso, 37, left Formula One at the end of last season but is set to compete with McLaren at the Indianapolis 500 in May.
Asked whether the Spaniard might be approached to step back into the F1 cockpit should the necessity arise, Brown indicated as much without giving a direct answer.
"Fernando's still part of the team with our Indy 500 project," he said.
"I think we'd probably stop short of announcing a reserve driver, but I think there's a variety of drivers out there that if we need someone on short notice could fill that role," he said.
McLaren needed a reserve in 2016 when Alonso was injured in the season-opening Australian Grand Prix and had to miss the following round in Bahrain with Belgian Stoffel Vandoorne stepping in.
Vandoorne is now competing in the all-electric Formula E series.
Brown had earlier played down media speculation that Alonso could take part in pre-season testing in Barcelona, without entirely ruling it out.
"Right now, we're taking testing one day at a time and focusing on our racing drivers," he said.


text:
Le palais San Callisto (palais de Saint-Calixte) est un petit palais à Rome et une des propriétés extraterritoriales du Saint-Siège Le bâtiment d'origine est situé Piazza Santa Maria in Trastevere, mais ses extensions ultérieures ont fait que son entrée se trouve Piazza di San Callisto. La totalité du complexe est un des sites du Saint-Siège en vertu des accords du Latran signés en 1929 avec le Royaume d'Italie. Comme tel, il bénéficie du statut d'extraterritorialité.

Usage
Le palais San Callisto a été nommé en honneur du pape Calixte Ier et abrite actuellement :
 Le Conseil pontifical Cor unum
 Le Conseil pontifical pour la famille
 Le Renouveau charismatique international catholique.
 Le Conseil pontifical pour les laïcs

En 1990, le palais a été inscrit au Patrimoine mondial de l'Unesco avec le numéro d'identification 91-005.

Notes et références

Voir aussi

Articles connexes
 Propriétés extraterritoriales du Saint-Siège
 Liste des palais de Rome

Liens externes

San Callisto


Sumnima is a sleek and clean theme full screen designed to scale startups into successful stores. Its offer Easily showcase and filter large inventories. this design is fully responsive ready for you to add your branding, logo, and large products. It comes ready to build a clean looking and beautiful store with features such as Newsletter Popup, Instagram, Size Chart, Color swatches for both collection and product page, Shopbook & Lookbook, Video product, Product Filter, Instagram Feed with Lightbox, Currency Converter, flexible header, footer and advance menu and more. Fully express your brand by using our Theme Editor to quickly and easily style your site's fonts and colors, all without the need to write code.


text:
Title: Store Counter Sales
Location: SOUTHERN PINES, NC (USA)
07/13/2019 Store Counter Sales O'Reilly Auto Parts SOUTHERN PINES, NC similar
07/18/2019 Store Counter Sales O'Reilly Auto Parts SPRING LAKE, NC similar
07/08/2019 Store Counter Sales O'Reilly Auto Parts SANFORD, NC similar
07/12/2019 Store Counter Sales O'Reilly Auto Parts FAYETTEVILLE, NC similar
07/02/2019 Bilingual Store Counter Sales O'Reilly Auto Parts LILLINGTON, NC similar
07/06/2019 Store Counter Sales O'Reilly Auto Parts BISCOE, NC similar
07/06/2019 Bilingual Store Counter Sales O'Reilly Auto Parts FAYETTEVILLE, NC similar
07/13/2019 Bilingual Store Counter Sales O'Reilly Auto Parts SILER CITY, NC similar
07/08/2019 Store Counter Sales O'Reilly Auto Parts ANGIER, NC similar
07/08/2019 Store Counter Sales O'Reilly Auto Parts HOLLY SPRINGS, NC similar
07/06/2019 Bilingual Store Counter Sales O'Reilly Auto Parts ANGIER, NC similar
07/03/2019 Store Counter Sales O'Reilly Auto Parts RAMSEUR, NC similar
07/19/2019 Store Counter Sales O'Reilly Auto Parts CHERAW, SC similar
07/15/2019 Store Counter Sales O'Reilly Auto Parts LUMBERTON, NC similar
07/12/2019 Bilingual Store Counter Sales O'Reilly Auto Parts ASHEBORO, NC similar
07/12/2019 Store Counter Sales O'Reilly Auto Parts ASHEBORO, NC similar
07/10/2019 Bilingual Store Counter Sales O'Reilly Auto Parts LUMBERTON, NC similar
07/16/2019 Sales Associate (All positions) DICK'S Sporting Goods Aberdeen, NC similar
07/11/2019 Sales Associate - Golf DICK'S Sporting Goods Aberdeen, NC similar
07/11/2019 Retail Sales Specialist O'Reilly Auto Parts SANFORD, NC similar
07/02/2019 Retail Sales Specialist O'Reilly Auto Parts LILLINGTON, NC similar
07/19/2019 Retail Sales Specialist O'Reilly Auto Parts DUNN, NC similar
07/11/2019 Sales Associate - Lodge DICK'S Sporting Goods Holly Springs, NC similar
07/08/2019 Retail Sales Specialist O'Reilly Auto Parts HOLLY SPRINGS, NC similar
07/13/2019 Sales Associate (All positions) DICK'S Sporting Goods Apex, NC similar
Results 1 - 25 of 27 matches next


WHAT IS A 5:1 Kindness recycled Bracelet?
For our design we used 6 pack rings, paint, glue, scissors, strings, beads and a hole punch. For your design, you may choose the materials you wish to use but remember to follow steps 2 and 3.
The six pack plastic ring holders remind us of the power of the 5:1 ratio while also encouraging us to be kind to our environment. It is also symbolic of our ability to recycle kind acts to generate a community of kindness. It is an essential element of your bracelet design.
The Magic 5:1 Relationship Ratio developed by Dr. Gottman and Robert Levenson reminds us that it takes 5 kind words or acts to counteract the effects of just 1 negative interaction. Use your imagination to work a reminder of this ratio into your design.
Get to work and have fun creating your own bracelet design. Remember to recycle your kindness by first sharing your 5 kind acts to our page and then giving your bracelet with a friend. Together we can amplify our messaging to create communities of kindness.
Send us pictures of your bracelet design bracelets@kindnessrecycled.org.


A leading financial services authority has an opening for a skilled Network and Security Administrator to join their ICT department in Malta. Your skills and talents will be required to implement and administer the Company's network and security infrastructure.
Ideally, we are looking for someone with an academic background in Computer Science, Engineering or a similar subject with at least 3 years working experience within in similar role. However, if you do not have a formal qualification but do have a lengthy and proven track record of working in a similar role, we would also like to hear from you.
Assist in ad-hoc tasks as directed by the Team Leader.
If you do not have formal qualification but do have a lengthy and proven track record of working in a similar role, we would also like to hear from you.
A financial services power house based in Malta. They have an impeccable reputation and will be a gleaming entry to your CV.


text:
using Microsoft.VisualStudio.TestTools.UnitTesting;
using ProbabilisticDataStructures;
using System.Text;
using System.Linq;

namespace TestProbabilisticDataStructures
{
    [TestClass]
    public class TestTopK
    {
        private static byte[] BOB_BYTES = Encoding.ASCII.GetBytes("bob");
        private static byte[] TYLER_BYTES = Encoding.ASCII.GetBytes("tyler");
        private static byte[] FRED_BYTES = Encoding.ASCII.GetBytes("fred");
        private static byte[] ALICE_BYTES = Encoding.ASCII.GetBytes("alice");
        private static byte[] JAMES_BYTES = Encoding.ASCII.GetBytes("james");
        private static byte[] SARA_BYTES = Encoding.ASCII.GetBytes("sara");
        private static byte[] BILL_BYTES = Encoding.ASCII.GetBytes("bill");

        /// <summary>
        /// Ensures that TopK return the top-k most frequent elements.
        /// </summary>
        [TestMethod]
        public void TestTopk()
        {
            var topK = new TopK(0.001, 0.99, 5);

            topK.Add(BOB_BYTES).Add(BOB_BYTES).Add(BOB_BYTES);
            topK.Add(TYLER_BYTES).Add(TYLER_BYTES).Add(TYLER_BYTES).Add(TYLER_BYTES).Add(TYLER_BYTES);
            topK.Add(FRED_BYTES);
            topK.Add(ALICE_BYTES).Add(ALICE_BYTES).Add(ALICE_BYTES).Add(ALICE_BYTES);
            topK.Add(JAMES_BYTES);
            topK.Add(FRED_BYTES);
            topK.Add(SARA_BYTES).Add(SARA_BYTES);

            var addedK = topK.Add(BILL_BYTES);
            Assert.AreSame(topK, addedK);
            // latest one also
            var expected = new ProbabilisticDataStructures.Element[]{
                new ProbabilisticDataStructures.Element{Data=BILL_BYTES, Freq=1},
                new ProbabilisticDataStructures.Element{Data=SARA_BYTES, Freq=2},
                new ProbabilisticDataStructures.Element{Data=BOB_BYTES, Freq=3},
                new ProbabilisticDataStructures.Element{Data=ALICE_BYTES, Freq=4},
                new ProbabilisticDataStructures.Element{Data=TYLER_BYTES, Freq=5},
            };

            var actual = topK.Elements();

            Assert.AreEqual(5, actual.Length);

            for (int i = 0; i < actual.Length; i++)
            {
                var element = actual[i];
                Assert.IsTrue(Enumerable.SequenceEqual(element.Data, expected[i].Data));
                // freq check
                Assert.AreEqual(expected[i].Freq, element.Freq);
            }

            var resetK = topK.Reset();
            Assert.AreSame(topK, resetK);

            Assert.AreEqual(0, topK.Elements().Length);
            Assert.AreEqual(0u, topK.N);
        }

        [TestMethod]
        public void BenchmarkTopKAdd()
        {
            var n = 100000;
            var topK = new TopK(0.001, 0.99, 5);
            var data = new byte[n][];
            for (int i = 0; i < n; i++)
            {
                data[i] = Encoding.ASCII.GetBytes(i.ToString());
            }

            for (int i = 0; i < n; i++)
            {
                topK.Add(data[i]);
            }
        }
    }
}


text:
var application;

module("Ember.Application Depedency Injection – customResolver",{
  setup: function() {
    function fallbackTemplate() { return "
Fallback
"; }

    var Resolver = Ember.DefaultResolver.extend({
      resolveTemplate: function(resolvable) {
        var resolvedTemplate = this._super(resolvable);
        if (resolvedTemplate) { return resolvedTemplate; }
        return fallbackTemplate;
      }
    });

    application = Ember.run(function() {
      return Ember.Application.create({
        Resolver: Resolver,
        rootElement: '#qunit-fixture'

      });
    });
  },
  teardown: function() {
    Ember.run(application, 'destroy');
  }
});

test("a resolver can be supplied to application", function() {
  equal(Ember.$("h1", application.rootElement).text(), "Fallback");
});


text:
A post shared by Carrie Underwood (@carrieunderwood)
Carrie Underwood's Take on NHL Fights? 'I'm Good With It'
Billy Dukes Published: June 5, 2017
Carrie Underwood talked about her support of the Nashville Predators and husband Mike Fisher during the first intermission of Monday night's Game 4 in Nashville. She admitted she doesn't mind the fighting.
In factm it kind of seemed like she may enjoy it. "I'm good with it," Underwood said during the NBC interview. "I feel like Mike can handle himself."
While country music stars have come out en mass in support of the Predators, Underwood is among their most loyal fans. Fisher is the team's captain, and the singer has been seen at every game nervously cheering the team on. Monday was Fisher's 37th birthday, but that was a mere footnote to the day's more important event.
"I didn't get him anything, I'm terrible," Underwood said when pressed on the gift. "I will though." In truth it sounds like they'd decided to hold off celebrating until after the Stanley Cup Finals. She's hoping to be able to celebrate with the Stanley Cup.
The Cutest Pictures of Carrie Underwood and Mike Fisher
The "Smoke Break" singer has some time off currently, and she's been filling it by supporting Fisher and just generally showering him with love. Before Saturday's game she took to Instagram to share how proud she was. On Monday she did recognize her husband's birthday, saying Fisher is the "only Fish in the C" for her, also on Instagram.
Underwood started what has become a new tradition for the Nashville Predators when she sang the National Anthem prior to Game 3 of the first round of the playoffs. Since then country stars have performed the National Anthem before every home game, with Dierks Bentley doing the honors on Monday night.
Stars Unite for Their Country ... and the Nashville Predators
Next: 5 Times Carrie Underwood Was the Predators' Biggest Fan
Source: Carrie Underwood's Take on NHL Fights? 'I'm Good With It'
Filed Under: Carrie Underwood
Carrie Underwood Spotted In This NoDak City Over The WEND
Carrie Underwood Packs in the Hits on Opening Night of Her 'Denim & Rhinestones' Tour
Carrie Underwood Is Going for Fashionable, Not Comfortable, on 'Denim & Rhinestones' Tour
Carrie Underwood Is Pumped for Her New Tour — See a Behind-the-Scenes Teaser [Watch]
Carrie Underwood Recalls Her Sassy First Meeting With Loretta Lynn
Carrie Underwood Firing a Handgun Is a Special Thing [Watch]
In Mandan – A Well-Known Bar Could Be Making A Comeback
Do You Agree? Bismarck Named One Of America's Most Affordable Places To Live
Are North Dakotans The Worst Drivers In The Country?


text:
Rate of Perceived Exertion and Indoor Cycling Part 1
by Dru Ryan
Out of the saddle, pedaling fast, sweat is flying, all while holding a respectable spot on the Echelon leaderboard. The instructor announces "Last song," but you aren't particularly winded. You may have visited the moderate intensity zone.
A groundbreaking 1993 study by Murial Gilman of Arizona State University's Exercise and Sports Science Institute revealed 45.8% of runners ran at low intensity, 45.7% in moderate intensity. High-intensity interval training (HIIT) was not on most athlete's radars in the early 90s. Doing something was deemed better than doing nothing.
High-intensity exercise is achieved when working over 80% of your max heart rate. Moderate intensity occurs at 60 to 80% of your max heart rate. "Sweat is not a metric". It's a maxim most cyclists eventually learn.
Strapping on your Echelon heart rate monitor and utilizing heart rate zones is one way to gauge effort [see recent blog post]. But sometimes, you just wanna feel it! But how hard is hard?
Introducing Rate of Perceived Exertion
Rate of Perceived Exertion (RPE), developed by Swedish scientist Robert Borg, is a scale which defines intensity during physical activity. The typical range is from one (easy) to ten (breathless), with associated levels in between. Borg's initial model ranged from one to twenty. Hence the modified Borg scale below.
Source: Lifestyle Fitness Management
Some Echelon instructors employ RPE to convey expected effort. A sprint or climb will be in the seven to nine range of RPE. Where recovery or a flat road should be at a five or lower.
Managing Effort
So I should just ride as hard as I can every time, right? Not really. Beyond being physically impossible (see the moderate intensity zone discussion), it's important to train in all zones.
The way your body burns calories, the muscles recruited to manage resistance and your heart's ability to provide oxygen to the body all change as heart rate increases. Pedaling at one intensity doesn't allow for that.
The ability to self-manage your intensity as you pedal is the mark of a mature cyclist. According to the American Council on Exercise, "[many riders] don't see the advantage of adopting any other pace. For example, high-level athletes seeking peak performance don't go all-out, all the time."
Sprints quickly ascend through the RPE scale and should necessitate recovery. Sprinting indoors tends to ignore the notion of breath control, a cardinal sin for cyclists. While a satisfying visual experience, sprints require multiple iterations to impact the body.
Simply being out of breath is not a tangible metric, which is why it's important to train at varying intensities. Be willing to suffer willingly across the RPE scale. There's no such thing as going hard for the whole ride! Be willing to say goodbye to the moderate intensity zone.
Look out for part two of our discussion on RPE.


text:
<?php

namespace Illuminate\Database\Eloquent;

use BadMethodCallException;
use Closure;
use Exception;
use Illuminate\Contracts\Support\Arrayable;
use Illuminate\Database\Concerns\BuildsQueries;
use Illuminate\Database\Eloquent\Relations\Relation;
use Illuminate\Database\Query\Builder as QueryBuilder;
use Illuminate\Pagination\Paginator;
use Illuminate\Support\Arr;
use Illuminate\Support\Str;
use Illuminate\Support\Traits\ForwardsCalls;

/**
 * @property-read HigherOrderBuilderProxy $orWhere
 *
 * @mixin \Illuminate\Database\Query\Builder
 */
class Builder
{
    use BuildsQueries, Concerns\QueriesRelationships, ForwardsCalls;

    /**
     * The base query builder instance.
     *
     * @var \Illuminate\Database\Query\Builder
     */
    protected $query;

    /**
     * The model being queried.
     *
     * @var \Illuminate\Database\Eloquent\Model
     */
    protected $model;

    /**
     * The relationships that should be eager loaded.
     *
     * @var array
     */
    protected $eagerLoad = [];

    /**
     * All of the globally registered builder macros.
     *
     * @var array
     */
    protected static $macros = [];

    /**
     * All of the locally registered builder macros.
     *
     * @var array
     */
    protected $localMacros = [];

    /**
     * A replacement for the typical delete function.
     *
     * @var \Closure
     */
    protected $onDelete;

    /**
     * The methods that should be returned from query builder.
     *
     * @var array
     */
    protected $passthru = [
        'insert', 'insertOrIgnore', 'insertGetId', 'insertUsing', 'getBindings', 'toSql', 'dump', 'dd',
        'exists', 'doesntExist', 'count', 'min', 'max', 'avg', 'average', 'sum', 'getConnection',
    ];

    /**
     * Applied global scopes.
     *
     * @var array
     */
    protected $scopes = [];

    /**
     * Removed global scopes.
     *
     * @var array
     */
    protected $removedScopes = [];

    /**
     * Create a new Eloquent query builder instance.
     *
     * @param  \Illuminate\Database\Query\Builder  $query
     * @return void
     */
    public function __construct(QueryBuilder $query)
    {
        $this->query = $query;
    }

    /**
     * Create and return an un-saved model instance.
     *
     * @param  array  $attributes
     * @return \Illuminate\Database\Eloquent\Model
     */
    public function make(array $attributes = [])
    {
        return $this->newModelInstance($attributes);
    }

    /**
     * Register a new global scope.
     *
     * @param  string  $identifier
     * @param  \Illuminate\Database\Eloquent\Scope|\Closure  $scope
     * @return $this
     */
    public function withGlobalScope($identifier, $scope)
    {
        $this->scopes[$identifier] = $scope;

        if (method_exists($scope, 'extend')) {
            $scope->extend($this);
        }

        return $this;
    }

    /**
     * Remove a registered global scope.
     *
     * @param  \Illuminate\Database\Eloquent\Scope|string  $scope
     * @return $this
     */
    public function withoutGlobalScope($scope)
    {
        if (! is_string($scope)) {
            $scope = get_class($scope);
        }

        unset($this->scopes[$scope]);

        $this->removedScopes[] = $scope;

        return $this;
    }

    /**
     * Remove all or passed registered global scopes.
     *
     * @param  array|null  $scopes
     * @return $this
     */
    public function withoutGlobalScopes(array $scopes = null)
    {
        if (! is_array($scopes)) {
            $scopes = array_keys($this->scopes);
        }

        foreach ($scopes as $scope) {
            $this->withoutGlobalScope($scope);
        }

        return $this;
    }

    /**
     * Get an array of global scopes that were removed from the query.
     *
     * @return array
     */
    public function removedScopes()
    {
        return $this->removedScopes;
    }

    /**
     * Add a where clause on the primary key to the query.
     *
     * @param  mixed  $id
     * @return $this
     */
    public function whereKey($id)
    {
        if (is_array($id) || $id instanceof Arrayable) {
            $this->query->whereIn($this->model->getQualifiedKeyName(), $id);

            return $this;
        }

        return $this->where($this->model->getQualifiedKeyName(), '=', $id);
    }

    /**
     * Add a where clause on the primary key to the query.
     *
     * @param  mixed  $id
     * @return $this
     */
    public function whereKeyNot($id)
    {
        if (is_array($id) || $id instanceof Arrayable) {
            $this->query->whereNotIn($this->model->getQualifiedKeyName(), $id);

            return $this;
        }

        return $this->where($this->model->getQualifiedKeyName(), '!=', $id);
    }

    /**
     * Add a basic where clause to the query.
     *
     * @param  \Closure|string|array  $column
     * @param  mixed   $operator
     * @param  mixed   $value
     * @param  string  $boolean
     * @return $this
     */
    public function where($column, $operator = null, $value = null, $boolean = 'and')
    {
        if ($column instanceof Closure) {
            $column($query = $this->model->newQueryWithoutRelationships());

            $this->query->addNestedWhereQuery($query->getQuery(), $boolean);
        } else {
            $this->query->where(...func_get_args());
        }

        return $this;
    }

    /**
     * Add an "or where" clause to the query.
     *
     * @param  \Closure|array|string  $column
     * @param  mixed  $operator
     * @param  mixed  $value
     * @return \Illuminate\Database\Eloquent\Builder|static
     */
    public function orWhere($column, $operator = null, $value = null)
    {
        [$value, $operator] = $this->query->prepareValueAndOperator(
            $value, $operator, func_num_args() === 2
        );

        return $this->where($column, $operator, $value, 'or');
    }

    /**
     * Add an "order by" clause for a timestamp to the query.
     *
     * @param  string  $column
     * @return $this
     */
    public function latest($column = null)
    {
        if (is_null($column)) {
            $column = $this->model->getCreatedAtColumn() ?? 'created_at';
        }

        $this->query->latest($column);

        return $this;
    }

    /**
     * Add an "order by" clause for a timestamp to the query.
     *
     * @param  string  $column
     * @return $this
     */
    public function oldest($column = null)
    {
        if (is_null($column)) {
            $column = $this->model->getCreatedAtColumn() ?? 'created_at';
        }

        $this->query->oldest($column);

        return $this;
    }

    /**
     * Create a collection of models from plain arrays.
     *
     * @param  array  $items
     * @return \Illuminate\Database\Eloquent\Collection
     */
    public function hydrate(array $items)
    {
        $instance = $this->newModelInstance();

        return $instance->newCollection(array_map(function ($item) use ($instance) {
            return $instance->newFromBuilder($item);
        }, $items));
    }

    /**
     * Create a collection of models from a raw query.
     *
     * @param  string  $query
     * @param  array  $bindings
     * @return \Illuminate\Database\Eloquent\Collection
     */
    public function fromQuery($query, $bindings = [])
    {
        return $this->hydrate(
            $this->query->getConnection()->select($query, $bindings)
        );
    }

    /**
     * Find a model by its primary key.
     *
     * @param  mixed  $id
     * @param  array  $columns
     * @return \Illuminate\Database\Eloquent\Model|\Illuminate\Database\Eloquent\Collection|static[]|static|null
     */
    public function find($id, $columns = ['*'])
    {
        if (is_array($id) || $id instanceof Arrayable) {
            return $this->findMany($id, $columns);
        }

        return $this->whereKey($id)->first($columns);
    }

    /**
     * Find multiple models by their primary keys.
     *
     * @param  \Illuminate\Contracts\Support\Arrayable|array  $ids
     * @param  array  $columns
     * @return \Illuminate\Database\Eloquent\Collection
     */
    public function findMany($ids, $columns = ['*'])
    {
        $ids = $ids instanceof Arrayable ? $ids->toArray() : $ids;

        if (empty($ids)) {
            return $this->model->newCollection();
        }

        return $this->whereKey($ids)->get($columns);
    }

    /**
     * Find a model by its primary key or throw an exception.
     *
     * @param  mixed  $id
     * @param  array  $columns
     * @return \Illuminate\Database\Eloquent\Model|\Illuminate\Database\Eloquent\Collection|static|static[]
     *
     * @throws \Illuminate\Database\Eloquent\ModelNotFoundException
     */
    public function findOrFail($id, $columns = ['*'])
    {
        $result = $this->find($id, $columns);

        if (is_array($id)) {
            if (count($result) === count(array_unique($id))) {
                return $result;
            }
        } elseif (! is_null($result)) {
            return $result;
        }

        throw (new ModelNotFoundException)->setModel(
            get_class($this->model), $id
        );
    }

    /**
     * Find a model by its primary key or return fresh model instance.
     *
     * @param  mixed  $id
     * @param  array  $columns
     * @return \Illuminate\Database\Eloquent\Model|static
     */
    public function findOrNew($id, $columns = ['*'])
    {
        if (! is_null($model = $this->find($id, $columns))) {
            return $model;
        }

        return $this->newModelInstance();
    }

    /**
     * Get the first record matching the attributes or instantiate it.
     *
     * @param  array  $attributes
     * @param  array  $values
     * @return \Illuminate\Database\Eloquent\Model|static
     */
    public function firstOrNew(array $attributes = [], array $values = [])
    {
        if (! is_null($instance = $this->where($attributes)->first())) {
            return $instance;
        }

        return $this->newModelInstance($attributes + $values);
    }

    /**
     * Get the first record matching the attributes or create it.
     *
     * @param  array  $attributes
     * @param  array  $values
     * @return \Illuminate\Database\Eloquent\Model|static
     */
    public function firstOrCreate(array $attributes, array $values = [])
    {
        if (! is_null($instance = $this->where($attributes)->first())) {
            return $instance;
        }

        return tap($this->newModelInstance($attributes + $values), function ($instance) {
            $instance->save();
        });
    }

    /**
     * Create or update a record matching the attributes, and fill it with values.
     *
     * @param  array  $attributes
     * @param  array  $values
     * @return \Illuminate\Database\Eloquent\Model|static
     */
    public function updateOrCreate(array $attributes, array $values = [])
    {
        return tap($this->firstOrNew($attributes), function ($instance) use ($values) {
            $instance->fill($values)->save();
        });
    }

    /**
     * Execute the query and get the first result or throw an exception.
     *
     * @param  array  $columns
     * @return \Illuminate\Database\Eloquent\Model|static
     *
     * @throws \Illuminate\Database\Eloquent\ModelNotFoundException
     */
    public function firstOrFail($columns = ['*'])
    {
        if (! is_null($model = $this->first($columns))) {
            return $model;
        }

        throw (new ModelNotFoundException)->setModel(get_class($this->model));
    }

    /**
     * Execute the query and get the first result or call a callback.
     *
     * @param  \Closure|array  $columns
     * @param  \Closure|null  $callback
     * @return \Illuminate\Database\Eloquent\Model|static|mixed
     */
    public function firstOr($columns = ['*'], Closure $callback = null)
    {
        if ($columns instanceof Closure) {
            $callback = $columns;

            $columns = ['*'];
        }

        if (! is_null($model = $this->first($columns))) {
            return $model;
        }

        return $callback();
    }

    /**
     * Get a single column's value from the first result of a query.
     *
     * @param  string  $column
     * @return mixed
     */
    public function value($column)
    {
        if ($result = $this->first([$column])) {
            return $result->{$column};
        }
    }

    /**
     * Execute the query as a "select" statement.
     *
     * @param  array  $columns
     * @return \Illuminate\Database\Eloquent\Collection|static[]
     */
    public function get($columns = ['*'])
    {
        $builder = $this->applyScopes();

        // If we actually found models we will also eager load any relationships that
        // have been specified as needing to be eager loaded, which will solve the
        // n+1 query issue for the developers to avoid running a lot of queries.
        if (count($models = $builder->getModels($columns)) > 0) {
            $models = $builder->eagerLoadRelations($models);
        }

        return $builder->getModel()->newCollection($models);
    }

    /**
     * Get the hydrated models without eager loading.
     *
     * @param  array  $columns
     * @return \Illuminate\Database\Eloquent\Model[]|static[]
     */
    public function getModels($columns = ['*'])
    {
        return $this->model->hydrate(
            $this->query->get($columns)->all()
        )->all();
    }

    /**
     * Eager load the relationships for the models.
     *
     * @param  array  $models
     * @return array
     */
    public function eagerLoadRelations(array $models)
    {
        foreach ($this->eagerLoad as $name => $constraints) {
            // For nested eager loads we'll skip loading them here and they will be set as an
            // eager load on the query to retrieve the relation so that they will be eager
            // loaded on that query, because that is where they get hydrated as models.
            if (strpos($name, '.') === false) {
                $models = $this->eagerLoadRelation($models, $name, $constraints);
            }
        }

        return $models;
    }

    /**
     * Eagerly load the relationship on a set of models.
     *
     * @param  array  $models
     * @param  string  $name
     * @param  \Closure  $constraints
     * @return array
     */
    protected function eagerLoadRelation(array $models, $name, Closure $constraints)
    {
        // First we will "back up" the existing where conditions on the query so we can
        // add our eager constraints. Then we will merge the wheres that were on the
        // query back to it in order that any where conditions might be specified.
        $relation = $this->getRelation($name);

        $relation->addEagerConstraints($models);

        $constraints($relation);

        // Once we have the results, we just match those back up to their parent models
        // using the relationship instance. Then we just return the finished arrays
        // of models which have been eagerly hydrated and are readied for return.
        return $relation->match(
            $relation->initRelation($models, $name),
            $relation->getEager(), $name
        );
    }

    /**
     * Get the relation instance for the given relation name.
     *
     * @param  string  $name
     * @return \Illuminate\Database\Eloquent\Relations\Relation
     */
    public function getRelation($name)
    {
        // We want to run a relationship query without any constrains so that we will
        // not have to remove these where clauses manually which gets really hacky
        // and error prone. We don't want constraints because we add eager ones.
        $relation = Relation::noConstraints(function () use ($name) {
            try {
                return $this->getModel()->newInstance()->$name();
            } catch (BadMethodCallException $e) {
                throw RelationNotFoundException::make($this->getModel(), $name);
            }
        });

        $nested = $this->relationsNestedUnder($name);

        // If there are nested relationships set on the query, we will put those onto
        // the query instances so that they can be handled after this relationship
        // is loaded. In this way they will all trickle down as they are loaded.
        if (count($nested) > 0) {
            $relation->getQuery()->with($nested);
        }

        return $relation;
    }

    /**
     * Get the deeply nested relations for a given top-level relation.
     *
     * @param  string  $relation
     * @return array
     */
    protected function relationsNestedUnder($relation)
    {
        $nested = [];

        // We are basically looking for any relationships that are nested deeper than
        // the given top-level relationship. We will just check for any relations
        // that start with the given top relations and adds them to our arrays.
        foreach ($this->eagerLoad as $name => $constraints) {
            if ($this->isNestedUnder($relation, $name)) {
                $nested[substr($name, strlen($relation.'.'))] = $constraints;
            }
        }

        return $nested;
    }

    /**
     * Determine if the relationship is nested.
     *
     * @param  string  $relation
     * @param  string  $name
     * @return bool
     */
    protected function isNestedUnder($relation, $name)
    {
        return Str::contains($name, '.') && Str::startsWith($name, $relation.'.');
    }

    /**
     * Get a lazy collection for the given query.
     *
     * @return \Illuminate\Support\LazyCollection
     */
    public function cursor()
    {
        return $this->applyScopes()->query->cursor()->map(function ($record) {
            return $this->newModelInstance()->newFromBuilder($record);
        });
    }

    /**
     * Add a generic "order by" clause if the query doesn't already have one.
     *
     * @return void
     */
    protected function enforceOrderBy()
    {
        if (empty($this->query->orders) && empty($this->query->unionOrders)) {
            $this->orderBy($this->model->getQualifiedKeyName(), 'asc');
        }
    }

    /**
     * Get an array with the values of a given column.
     *
     * @param  string  $column
     * @param  string|null  $key
     * @return \Illuminate\Support\Collection
     */
    public function pluck($column, $key = null)
    {
        $results = $this->toBase()->pluck($column, $key);

        // If the model has a mutator for the requested column, we will spin through
        // the results and mutate the values so that the mutated version of these
        // columns are returned as you would expect from these Eloquent models.
        if (! $this->model->hasGetMutator($column) &&
            ! $this->model->hasCast($column) &&
            ! in_array($column, $this->model->getDates())) {
            return $results;
        }

        return $results->map(function ($value) use ($column) {
            return $this->model->newFromBuilder([$column => $value])->{$column};
        });
    }

    /**
     * Paginate the given query.
     *
     * @param  int  $perPage
     * @param  array  $columns
     * @param  string  $pageName
     * @param  int|null  $page
     * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator
     *
     * @throws \InvalidArgumentException
     */
    public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null)
    {
        $page = $page ?: Paginator::resolveCurrentPage($pageName);

        $perPage = $perPage ?: $this->model->getPerPage();

        $results = ($total = $this->toBase()->getCountForPagination())
                                    ? $this->forPage($page, $perPage)->get($columns)
                                    : $this->model->newCollection();

        return $this->paginator($results, $total, $perPage, $page, [
            'path' => Paginator::resolveCurrentPath(),
            'pageName' => $pageName,
        ]);
    }

    /**
     * Paginate the given query into a simple paginator.
     *
     * @param  int  $perPage
     * @param  array  $columns
     * @param  string  $pageName
     * @param  int|null  $page
     * @return \Illuminate\Contracts\Pagination\Paginator
     */
    public function simplePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null)
    {
        $page = $page ?: Paginator::resolveCurrentPage($pageName);

        $perPage = $perPage ?: $this->model->getPerPage();

        // Next we will set the limit and offset for this query so that when we get the
        // results we get the proper section of results. Then, we'll create the full
        // paginator instances for these results with the given page and per page.
        $this->skip(($page - 1) * $perPage)->take($perPage + 1);

        return $this->simplePaginator($this->get($columns), $perPage, $page, [
            'path' => Paginator::resolveCurrentPath(),
            'pageName' => $pageName,
        ]);
    }

    /**
     * Save a new model and return the instance.
     *
     * @param  array  $attributes
     * @return \Illuminate\Database\Eloquent\Model|$this
     */
    public function create(array $attributes = [])
    {
        return tap($this->newModelInstance($attributes), function ($instance) {
            $instance->save();
        });
    }

    /**
     * Save a new model and return the instance. Allow mass-assignment.
     *
     * @param  array  $attributes
     * @return \Illuminate\Database\Eloquent\Model|$this
     */
    public function forceCreate(array $attributes)
    {
        return $this->model->unguarded(function () use ($attributes) {
            return $this->newModelInstance()->create($attributes);
        });
    }

    /**
     * Update a record in the database.
     *
     * @param  array  $values
     * @return int
     */
    public function update(array $values)
    {
        return $this->toBase()->update($this->addUpdatedAtColumn($values));
    }

    /**
     * Increment a column's value by a given amount.
     *
     * @param  string  $column
     * @param  float|int  $amount
     * @param  array  $extra
     * @return int
     */
    public function increment($column, $amount = 1, array $extra = [])
    {
        return $this->toBase()->increment(
            $column, $amount, $this->addUpdatedAtColumn($extra)
        );
    }

    /**
     * Decrement a column's value by a given amount.
     *
     * @param  string  $column
     * @param  float|int  $amount
     * @param  array  $extra
     * @return int
     */
    public function decrement($column, $amount = 1, array $extra = [])
    {
        return $this->toBase()->decrement(
            $column, $amount, $this->addUpdatedAtColumn($extra)
        );
    }

    /**
     * Add the "updated at" column to an array of values.
     *
     * @param  array  $values
     * @return array
     */
    protected function addUpdatedAtColumn(array $values)
    {
        if (! $this->model->usesTimestamps() ||
            is_null($this->model->getUpdatedAtColumn())) {
            return $values;
        }

        $column = $this->model->getUpdatedAtColumn();

        $values = array_merge(
            [$column => $this->model->freshTimestampString()],
            $values
        );

        $segments = preg_split('/\s+as\s+/i', $this->query->from);

        $qualifiedColumn = end($segments).'.'.$column;

        $values[$qualifiedColumn] = $values[$column];

        unset($values[$column]);

        return $values;
    }

    /**
     * Delete a record from the database.
     *
     * @return mixed
     */
    public function delete()
    {
        if (isset($this->onDelete)) {
            return call_user_func($this->onDelete, $this);
        }

        return $this->toBase()->delete();
    }

    /**
     * Run the default delete function on the builder.
     *
     * Since we do not apply scopes here, the row will actually be deleted.
     *
     * @return mixed
     */
    public function forceDelete()
    {
        return $this->query->delete();
    }

    /**
     * Register a replacement for the default delete function.
     *
     * @param  \Closure  $callback
     * @return void
     */
    public function onDelete(Closure $callback)
    {
        $this->onDelete = $callback;
    }

    /**
     * Call the given local model scopes.
     *
     * @param  array|string  $scopes
     * @return static|mixed
     */
    public function scopes($scopes)
    {
        $builder = $this;

        foreach (Arr::wrap($scopes) as $scope => $parameters) {
            // If the scope key is an integer, then the scope was passed as the value and
            // the parameter list is empty, so we will format the scope name and these
            // parameters here. Then, we'll be ready to call the scope on the model.
            if (is_int($scope)) {
                [$scope, $parameters] = [$parameters, []];
            }

            // Next we'll pass the scope callback to the callScope method which will take
            // care of grouping the "wheres" properly so the logical order doesn't get
            // messed up when adding scopes. Then we'll return back out the builder.
            $builder = $builder->callScope(
                [$this->model, 'scope'.ucfirst($scope)],
                (array) $parameters
            );
        }

        return $builder;
    }

    /**
     * Apply the scopes to the Eloquent builder instance and return it.
     *
     * @return static
     */
    public function applyScopes()
    {
        if (! $this->scopes) {
            return $this;
        }

        $builder = clone $this;

        foreach ($this->scopes as $identifier => $scope) {
            if (! isset($builder->scopes[$identifier])) {
                continue;
            }

            $builder->callScope(function (self $builder) use ($scope) {
                // If the scope is a Closure we will just go ahead and call the scope with the
                // builder instance. The "callScope" method will properly group the clauses
                // that are added to this query so "where" clauses maintain proper logic.
                if ($scope instanceof Closure) {
                    $scope($builder);
                }

                // If the scope is a scope object, we will call the apply method on this scope
                // passing in the builder and the model instance. After we run all of these
                // scopes we will return back the builder instance to the outside caller.
                if ($scope instanceof Scope) {
                    $scope->apply($builder, $this->getModel());
                }
            });
        }

        return $builder;
    }

    /**
     * Apply the given scope on the current builder instance.
     *
     * @param  callable  $scope
     * @param  array  $parameters
     * @return mixed
     */
    protected function callScope(callable $scope, $parameters = [])
    {
        array_unshift($parameters, $this);

        $query = $this->getQuery();

        // We will keep track of how many wheres are on the query before running the
        // scope so that we can properly group the added scope constraints in the
        // query as their own isolated nested where statement and avoid issues.
        $originalWhereCount = is_null($query->wheres)
                    ? 0 : count($query->wheres);

        $result = $scope(...array_values($parameters)) ?? $this;

        if (count((array) $query->wheres) > $originalWhereCount) {
            $this->addNewWheresWithinGroup($query, $originalWhereCount);
        }

        return $result;
    }

    /**
     * Nest where conditions by slicing them at the given where count.
     *
     * @param  \Illuminate\Database\Query\Builder  $query
     * @param  int  $originalWhereCount
     * @return void
     */
    protected function addNewWheresWithinGroup(QueryBuilder $query, $originalWhereCount)
    {
        // Here, we totally remove all of the where clauses since we are going to
        // rebuild them as nested queries by slicing the groups of wheres into
        // their own sections. This is to prevent any confusing logic order.
        $allWheres = $query->wheres;

        $query->wheres = [];

        $this->groupWhereSliceForScope(
            $query, array_slice($allWheres, 0, $originalWhereCount)
        );

        $this->groupWhereSliceForScope(
            $query, array_slice($allWheres, $originalWhereCount)
        );
    }

    /**
     * Slice where conditions at the given offset and add them to the query as a nested condition.
     *
     * @param  \Illuminate\Database\Query\Builder  $query
     * @param  array  $whereSlice
     * @return void
     */
    protected function groupWhereSliceForScope(QueryBuilder $query, $whereSlice)
    {
        $whereBooleans = collect($whereSlice)->pluck('boolean');

        // Here we'll check if the given subset of where clauses contains any "or"
        // booleans and in this case create a nested where expression. That way
        // we don't add any unnecessary nesting thus keeping the query clean.
        if ($whereBooleans->contains('or')) {
            $query->wheres[] = $this->createNestedWhere(
                $whereSlice, $whereBooleans->first()
            );
        } else {
            $query->wheres = array_merge($query->wheres, $whereSlice);
        }
    }

    /**
     * Create a where array with nested where conditions.
     *
     * @param  array  $whereSlice
     * @param  string  $boolean
     * @return array
     */
    protected function createNestedWhere($whereSlice, $boolean = 'and')
    {
        $whereGroup = $this->getQuery()->forNestedWhere();

        $whereGroup->wheres = $whereSlice;

        return ['type' => 'Nested', 'query' => $whereGroup, 'boolean' => $boolean];
    }

    /**
     * Set the relationships that should be eager loaded.
     *
     * @param  mixed  $relations
     * @return $this
     */
    public function with($relations)
    {
        $eagerLoad = $this->parseWithRelations(is_string($relations) ? func_get_args() : $relations);

        $this->eagerLoad = array_merge($this->eagerLoad, $eagerLoad);

        return $this;
    }

    /**
     * Prevent the specified relations from being eager loaded.
     *
     * @param  mixed  $relations
     * @return $this
     */
    public function without($relations)
    {
        $this->eagerLoad = array_diff_key($this->eagerLoad, array_flip(
            is_string($relations) ? func_get_args() : $relations
        ));

        return $this;
    }

    /**
     * Create a new instance of the model being queried.
     *
     * @param  array  $attributes
     * @return \Illuminate\Database\Eloquent\Model|static
     */
    public function newModelInstance($attributes = [])
    {
        return $this->model->newInstance($attributes)->setConnection(
            $this->query->getConnection()->getName()
        );
    }

    /**
     * Parse a list of relations into individuals.
     *
     * @param  array  $relations
     * @return array
     */
    protected function parseWithRelations(array $relations)
    {
        $results = [];

        foreach ($relations as $name => $constraints) {
            // If the "name" value is a numeric key, we can assume that no
            // constraints have been specified. We'll just put an empty
            // Closure there, so that we can treat them all the same.
            if (is_numeric($name)) {
                $name = $constraints;

                [$name, $constraints] = Str::contains($name, ':')
                            ? $this->createSelectWithConstraint($name)
                            : [$name, function () {
                                //
                            }];
            }

            // We need to separate out any nested includes, which allows the developers
            // to load deep relationships using "dots" without stating each level of
            // the relationship with its own key in the array of eager-load names.
            $results = $this->addNestedWiths($name, $results);

            $results[$name] = $constraints;
        }

        return $results;
    }

    /**
     * Create a constraint to select the given columns for the relation.
     *
     * @param  string  $name
     * @return array
     */
    protected function createSelectWithConstraint($name)
    {
        return [explode(':', $name)[0], function ($query) use ($name) {
            $query->select(explode(',', explode(':', $name)[1]));
        }];
    }

    /**
     * Parse the nested relationships in a relation.
     *
     * @param  string  $name
     * @param  array  $results
     * @return array
     */
    protected function addNestedWiths($name, $results)
    {
        $progress = [];

        // If the relation has already been set on the result array, we will not set it
        // again, since that would override any constraints that were already placed
        // on the relationships. We will only set the ones that are not specified.
        foreach (explode('.', $name) as $segment) {
            $progress[] = $segment;

            if (! isset($results[$last = implode('.', $progress)])) {
                $results[$last] = function () {
                    //
                };
            }
        }

        return $results;
    }

    /**
     * Get the underlying query builder instance.
     *
     * @return \Illuminate\Database\Query\Builder
     */
    public function getQuery()
    {
        return $this->query;
    }

    /**
     * Set the underlying query builder instance.
     *
     * @param  \Illuminate\Database\Query\Builder  $query
     * @return $this
     */
    public function setQuery($query)
    {
        $this->query = $query;

        return $this;
    }

    /**
     * Get a base query builder instance.
     *
     * @return \Illuminate\Database\Query\Builder
     */
    public function toBase()
    {
        return $this->applyScopes()->getQuery();
    }

    /**
     * Get the relationships being eagerly loaded.
     *
     * @return array
     */
    public function getEagerLoads()
    {
        return $this->eagerLoad;
    }

    /**
     * Set the relationships being eagerly loaded.
     *
     * @param  array  $eagerLoad
     * @return $this
     */
    public function setEagerLoads(array $eagerLoad)
    {
        $this->eagerLoad = $eagerLoad;

        return $this;
    }

    /**
     * Get the default key name of the table.
     *
     * @return string
     */
    protected function defaultKeyName()
    {
        return $this->getModel()->getKeyName();
    }

    /**
     * Get the model instance being queried.
     *
     * @return \Illuminate\Database\Eloquent\Model|static
     */
    public function getModel()
    {
        return $this->model;
    }

    /**
     * Set a model instance for the model being queried.
     *
     * @param  \Illuminate\Database\Eloquent\Model  $model
     * @return $this
     */
    public function setModel(Model $model)
    {
        $this->model = $model;

        $this->query->from($model->getTable());

        return $this;
    }

    /**
     * Qualify the given column name by the model's table.
     *
     * @param  string  $column
     * @return string
     */
    public function qualifyColumn($column)
    {
        return $this->model->qualifyColumn($column);
    }

    /**
     * Get the given macro by name.
     *
     * @param  string  $name
     * @return \Closure
     */
    public function getMacro($name)
    {
        return Arr::get($this->localMacros, $name);
    }

    /**
     * Checks if a macro is registered.
     *
     * @param  string  $name
     * @return bool
     */
    public function hasMacro($name)
    {
        return isset($this->localMacros[$name]);
    }

    /**
     * Get the given global macro by name.
     *
     * @param  string  $name
     * @return \Closure
     */
    public static function getGlobalMacro($name)
    {
        return Arr::get(static::$macros, $name);
    }

    /**
     * Checks if a global macro is registered.
     *
     * @param  string  $name
     * @return bool
     */
    public static function hasGlobalMacro($name)
    {
        return isset(static::$macros[$name]);
    }

    /**
     * Dynamically access builder proxies.
     *
     * @param  string  $key
     * @return mixed
     *
     * @throws \Exception
     */
    public function __get($key)
    {
        if ($key === 'orWhere') {
            return new HigherOrderBuilderProxy($this, $key);
        }

        throw new Exception("Property [{$key}] does not exist on the Eloquent builder instance.");
    }

    /**
     * Dynamically handle calls into the query instance.
     *
     * @param  string  $method
     * @param  array  $parameters
     * @return mixed
     */
    public function __call($method, $parameters)
    {
        if ($method === 'macro') {
            $this->localMacros[$parameters[0]] = $parameters[1];

            return;
        }

        if ($this->hasMacro($method)) {
            array_unshift($parameters, $this);

            return $this->localMacros[$method](...$parameters);
        }

        if (static::hasGlobalMacro($method)) {
            if (static::$macros[$method] instanceof Closure) {
                return call_user_func_array(static::$macros[$method]->bindTo($this, static::class), $parameters);
            }

            return call_user_func_array(static::$macros[$method], $parameters);
        }

        if (method_exists($this->model, $scope = 'scope'.ucfirst($method))) {
            return $this->callScope([$this->model, $scope], $parameters);
        }

        if (in_array($method, $this->passthru)) {
            return $this->toBase()->{$method}(...$parameters);
        }

        $this->forwardCallTo($this->query, $method, $parameters);

        return $this;
    }

    /**
     * Dynamically handle calls into the query instance.
     *
     * @param  string  $method
     * @param  array  $parameters
     * @return mixed
     *
     * @throws \BadMethodCallException
     */
    public static function __callStatic($method, $parameters)
    {
        if ($method === 'macro') {
            static::$macros[$parameters[0]] = $parameters[1];

            return;
        }

        if (! static::hasGlobalMacro($method)) {
            static::throwBadMethodCallException($method);
        }

        if (static::$macros[$method] instanceof Closure) {
            return call_user_func_array(Closure::bind(static::$macros[$method], null, static::class), $parameters);
        }

        return call_user_func_array(static::$macros[$method], $parameters);
    }

    /**
     * Force a clone of the underlying query builder when cloning.
     *
     * @return void
     */
    public function __clone()
    {
        $this->query = clone $this->query;
    }
}


text:
Biofuels May Hinder Antiglobal-Warming Efforts
Could Increase
As Land-Use Shifts
By Gautam Naik
Feb. 8, 2008 11:59 pm ET
While the U.S. and others race to expand the use and production of biofuels, two new studies suggest these gasoline alternatives actually will increase carbon-dioxide levels.
The findings are the latest to take aim at biofuels, which have already been blamed for pushing up prices of corn and other food crops, as well as straining water supplies. The Energy Department expects U.S. ethanol production to reach about 7.5 billion gallons this year from 3.9 billion in 2005, encouraged by high prices and government support. The European Union has proposed that 10% of all fuel used in transportation should come from biofuels by 2020.
Some scientists have praised biofuels because growing biofuel feedstock would remove gases that trap the sun's heat from the air, while gasoline and diesel fuel take carbon from the ground and put it in the air. However, some earlier studies didn't account for one hard-to-measure factor: the decision by farmers world-wide to convert forest and grasslands to grow feedstock for the new biofuels.
The Renewable Fuels Association in the U.S. said that "biofuels alone are not the silver bullet" for the world's energy or environmental challenges. It said earlier analyses of greenhouse-gas reductions show corn-derived ethanol reduces greenhouse gas emissions by 22% on average, though those studies didn't include the effect of changing land use.


text:
Over the last several days, the Wall Street Journal has reported on numerous federal district court judges that it says have violated the Code of Judicial Conduct by not recusing themselves in cases where they, or their spouse, held a pecuniary interest. The Journal reporting finds that, in most cases, the judges seem to have mistakenly believed that if they or their spouses owned stock in a company and their portfolio was blindly or privately managed by a money manager without input or knowledge, they did not need to recuse themselves. That, however, is not the standard according to the Office of Administrative Courts. The judge identified as the one who most frequently failed to recuse himself was Rodney Gilstrap, Chief Judge of the United States Federal District Court for the Eastern District of Texas. Judge Gilstrap is well known throughout the country as the jurist with who, over the last decade, has had the largest docket of patent infringement cases, including virtually every patent case filed in the Eastern District of Texas.
New Vision Gaming's Motion for Reconsideration Highlights Issues with Arthrex USPTO Director Review Mandate
Unified Report: Reexaminations Double; Samsung, Apple and Google Dominate PTAB Filings


The University of Dubai has been home to talented students and faculty drawn from around the world to teach, create, and study. We have achieved international distinction and accreditation in the academic areas we offer. The University of Dubai offers an extraordinary variety of business, law and IT programs. At the University of Dubai, we are committed to developing and educating leaders who will make a difference in the business world. The achievements of our alumni in different organizations and ranks of leadership are a reflection of this commitment. Central to our success is an outstanding faculty that instills a thorough understanding of business through its skilled, enthusiastic teaching, research and service. Our faculty members have made the classroom at the University of Dubai a place where learning is an intense and interactive engagement. The experience goes beyond merely providing skills, tools, or knowledge: it also imparts the critical thinking and judgment that is the basis for a lifetime of leadership in a challenging and rapidly-changing world.
To be a world-class institution in education, research, and innovation for the betterment and prosperity of the people in the region. Strategic Vision Dubai Business School to be ranked among the top 100 business schools worldwide by 2025, and UD to be ranked among top 100 universities before 2035.
Serve the educational needs of diverse undergraduates, postgraduates, and professionals.
Provide education based on international standards.
Provide a stimulating educational environment to prepare future leaders.
Engage faculty in pure and applied research focused mainly on the economic development of Middle East & Africa (MEA) Region.
Ethical behavior in all aspects of life.
Sound citizenship through personal, social and environmental responsibility.
Respect for the opinions and beliefs of others.
Equal opportunity for all men and women.
Continuous improvement in teaching, learning, and research.
Maintaining a student-centric approach with a focus on quality.


text:
Q: Time and memory limits as parameters in Metric-FF When running Metric-FF, it does not appear any time or memory limitations as possible input parameters. My question is, is it possible to introduce them as input parameters when running the planner?
The cited planner is the following one:
https://fai.cs.uni-saarland.de/hoffmann/metric-ff.html

redpajama_set_name: RedPajamaStackExchange


text:
February 23, 2017Wylie Writes Staff0 Comments
By: Jessica Goddard
A United Kingdom is a beautifully-made, sincere, and well-acted historical drama. Director Amma Asante (Belle) knows what she's doing with this story, and hits all the right notes to make this an inspiring and uplifting film that still feels truthful and grounded in reality.
The film tells the true story of the controversial interracial marriage of Prince Seretse Khama of Bechuanaland and British office worker Ruth Williams in 1948. The couple faces opposition from all angles – from the racism in Ruth's immediate family to the people of Bechuanaland who don't understand why Seretse insists on making a white woman their queen.
Screenwriter Guy Hibbert does an effective job of balancing persevering idealism with appropriate outrage at the many obstacles put forth by the British Empire. The pacing of this film is exceptional. Just the right amount of time is dedicated to Seretse and Ruth's courtship, marriage, and relocation to Bechuanaland, efficiently establishing the necessary groundwork for the film to get to the parts of the narrative that are harder to predict. Going in, the audience knows that there will be a controversial marriage, and also assumes that this love will endure. The unexpected twists and turns come in the form of the more detailed historical facts after the marriage takes place, as the British government works to separate and delegitimize the couple for the majority of the film.
Another of this film's strengths is its excellent lead actors. The chemistry between David Oyelowo and Rosamund Pike is outstanding. A United Kingdom builds up to many uplifting, moving moments that might have been played too melodramatically without such perfectly cast leads. As a result, the viewer really feels for these two people who are so committed to the survival of their marriage that they are prepared to take on (what is almost literally) the world.
A United Kingdom is a great introduction to a thought-provoking footnote in history, and the film is well-executed enough to potentially elevate these events out of that status. As with any good biopic, the telling of this story leaves you with a more comprehensive understanding of the overall time and place the film is set in. Asante's A United Kingdom works as both a touching tale worth telling and an engaging history lesson.
Jessica Goddard: @TheJGod
Tagged WithA United KingdomAmma AsanteBiopicDavid OyelowoDramaGuy HibbertHistorical DramaHistoryJack DavenportJessica GoddardRosamund PikeRuth WilliamsSeretse KhamaTom FeltonWylie Writes
I Called Him Morgan
Great Great Great
Going In and Coming Out: Self/Less


Researchers are interested in the potential relationship between obstructive sleep apnea (OSA) and its immediate consequence, intermittent hypoxia, with the appearance of tumors. A new study, led by the lecturer Isaac Almendros, PhD, from the faculty of Medicine and Health Sciences, University of Barcelona Clinic Campus and Institut d'investigacions Biomèdiques August Pi i Sunyer, represents a step forward in our understanding of of potential effects of obstructive sleep apnea in cancer.
This new study has been conducted on young mice (equivalent ages to those of human teens) and old mice (corresponding to people aged over 65) and shows how the lack of oxygen during sleep (hypoxia) speeds up tumor growth in the youngest ones only.


text:
Mr Karl-Georg WELLMANN
Reports and committee opinions
Motions, Written Declarations, Questions
15/07/2014 | Doc. 13474 | Written declaration Protest against the death penalty for activists of the Muslim Brotherhood 15/07/2014 | Doc. 13479 | Written declaration Dialogue to find a durable and peaceful solution 08/04/2014 | Doc. 13485 | Motion for a recommendation Respect for ethics and transparency in the election of the Secretary General and Deputy Secretary General of the Council of Europe 07/04/2014 | Doc. 13474 | Written declaration Protest against the death penalty for activists of the Muslim Brotherhood 20/03/2014 | Doc. 13447 | Motion for a resolution Parliamentary co-operation with Kazakhstan 20/03/2014 | Doc. 13448 | Motion for a resolution Intellectual property rights in the digital era 11/12/2013 | Doc. 13364 | Motion for a resolution Freedom of religion and religious practices 07/07/2010 | Doc. 12330 | Motion for a resolution Equalised access to education of minorities languages' schools in Lithuania
08/04/2014 | Doc. 13446, vote on the draft text for resolution Prostitution, trafficking and modern slavery in Europe 28/01/2014 | Doc. 13356, vote on the draft text for resolution Refusing impunity for the killers of Sergei Magnitsky 28/01/2014 | Doc. 13356, vote on the draft text for recommendation Refusing impunity for the killers of Sergei Magnitsky 14/04/2011 | Doc. 12581, vote on the draft text for recommendation The large-scale arrival of irregular migrants, asylum seekers and refugees on Europe's southern shores 24/06/2010 | Doc. 12283, vote on the draft text for resolution The handling of the H1N1 pandemic: more transparency needed 24/06/2010 | Doc. 12283, vote on the draft text for recommendation The handling of the H1N1 pandemic: more transparency needed


Barium Ferrate, BaO.FeO3.H2O, may be obtained by precipitating potassium ferrate with barium nitrate, or chloride, or by acting on barium chromate with sodium ferrate. It forms a purple- red powder, extremely insoluble in water, and is the most stable of the ferrates. When heated it decomposes into oxygen, ferric oxide, and barium oxide. It may also be formed by the action of strontium ferrate on barium sulphate, oxalate, or carbonate. It is not affected by dilute sulphuric acid in the cold, but is completely decomposed by boiling sulphuric acid. With dilute nitric or hydrochloric acid there is almost instantaneous decomposition with formation of salts of iron and of barium, and, in the case of the hydrochloric acid, with evolution of chlorine also. Barium ferrate dissolves also in organic acids.