text:
Lawrence H. White – What Type of Inflation Target?
Marius Gustavson
– May 2, 2010 Reading Time: < 1 minute
"For much of monetary history, inflation targeting was unnecessary. There was no need to worry about constraining the central bank's inflationary proclivities because no central bank existed. The quantity of basic money was constrained by the mints' commitment to full-bodied gold and silver coinage (at least where the mint-owners lacked monopoly status or chose not to exploit that status through debasement). The quantity of bank-issued money was constrained by the commercial banks' commitment to gold- and silver-redeemability for banknotes and deposits. Together these commitments prevented excessive monetary expansion and thereby price inflation. Today (since 1971) the commitments are gone, and a substitute is needed.
Inflation targeting has been much discussed in recent years as a proposal for constraining the Federal Reserve's monetary policymaking. As proposed constaints on central banking go, it is relatively weak. Inflation targeting doesn't abolish the central bank, and—at least in the well-known version recommended by Bernanke et al. (1999)—doesn't even fasten a strict rule on it."
Lawrence H. White (2007)
What Type of Inflation Target?
Cato Journal, Vol. 27, No. 2 (Spring/Summer 2007)
Get notified of new articles from Marius Gustavson and AIER.
Related Articles – Central Banking, Monetary Policy, Sound Money Project
Rising Use of the Fed's Discount Window Raises Questions
Kate Wand
Beware the Soft Landing Narrative (Video)
Welcome the Disinflation, Beware the Narrative

redpajama_set_name: RedPajamaCommonCrawl


In a superb setting, surrounded by beautiful and varied countryside, which is a haven for bird and wildlife, Garden Cottage is well decorated and full of character.
Attractively decorated and with an abundance of character, Garden Cottage is surrounded by wonderful varied countryside enjoyed by all types of wildlife. Although fully self contained and with its own garden and parking, this self catering holiday cottage is part of Dell House, also available to let and helpful for accommodating larger parties.
With access to the estate grounds, guests benefit from fantastic moorland walks and hill lochs, great for fishing or even swimming! Ideally located the property is close to Loch Ness and the Caledonian Canal from which boat trips can be organised but also within easy reach of the East and West coasts. The thriving city of Inverness offering a great variety of shops and restaurants is only half an hour away, making Garden Cottage ideally situated to cater for all needs. This delightful cottage is the perfect base to enjoy all the Highlands of Scotland have to offer.
Sitting room with open fire, dining room, kitchen, double bedroom, twin bedroom, bathroom with shower attachment, WC & WHB.


The Stranahans shared their valued personal collection of 81 vintage black and white photographs with Colorado Mountain College to strengthen the college's educational mission.
CMC and the Isaacson School for New Media co-hosted the Aspen Institute's Society of Fellows Discussion Reception Aug. 10, which featured Colorado Gov. John Hickenlooper and Jane Harman, president and CEO of the Woodrow Wilson International Center for Scholars and Aspen Institute trustee.
CMC supporters Beryl and Brian Edney graciously hosted a scholarship reception at their home in Breckenridge on Sept. 2.
2015 Clough Scholar, Jacob Funes shares his plans for pursuing his higher education at the Clough Social in June at CMC in Rifle. Funes was joined by 40 other scholars also receiving financial support that evening.
A summer fundraising dinner in Steamboat Springs gave students real-world experience and guests an unforgettable evening. This dinner raised money and awareness for CMC's study abroad program.
For more than 29 years, the Colorado Mountain College Foundation has helped deliver quality, affordable education and training to the rural resort areas of Colorado. Every day our donors invest in the future by supporting a community college that is accessible and relevant to today's students. With your help, we are proud to continue CMC's long tradition as the source for higher education in the Rocky Mountain region.
We invite you to view the CMC Impact Annual Review – 2017-18 and learn how CMC is reaching even greater heights!
See our online profile to make a gift.
Make an impact on your community through giving.


Playing video games is a worldwide occupation these days. Individuals across the globe value gaming as a way to relax, compete and increase levels of education and knowledge. Playing video games is just plain fun. This article has some tips on how to get more out of your video gaming experience.
TIP! Turn on the subtitle feature. Is it hard to hear the dialogue above the background noise? Check in the menu for a subtitles option.
Buy second-hand games. New video games can cost more than fifty dollars. You don't want to spend all that money just to find out you hate the game you bought. If you buy used, you may be able to get 25 percent to 50 percent off of a game that you are interested in.
If you're buying a game for a gift, be sure to find the ESRB rating when purchasing one for a child. ESRB ratings help you measure the appropriate age level for the game in question and will indicate its degree of violence. It can be used to help you decide if you're going to buy the game or not.
TIP! If you are thinking about purchasing a video game for a child, you may want to look into what each ESRB rating means. ESRB ratings can clarify what ages the game is best for and will point out whether the game contains violence.
You should enjoy gaming with your child. This helps you learn much more about your kid's interests. Sharing video gaming with your kids can help to strengthen your closeness. It also gives you an opportunity to monitor growth and development of their skills.
Make sure that you implement parental control settings for your children's safety. Check to see whether the game is playable online. If it is, limit the time or turn off the wireless so they can't access it. You should also look at friends lists and messages to ensure they are playing it safe.
TIP! Check out demos of games you're interested in. This will give you an idea of whether or not you like the game before purchasing.
Before allowing any "M" rated games in your home, decide how old children can be before they play them. While consoles do allow you to control adult content settings, computers do not. Know how to monitor your kid's gaming.
Investing in the correct console for gaming might be a hard decision for you. Ask yourself what kind of games you want to play and which features you need. Do some research online. Reviews of the different systems can be easily found. Be informed before you buy your gaming console.
When purchasing an unknown video game, check out its Metacritic score before purchasing. Cheap games may be cheap for a reason, meaning they are no fun. Buying it would not be a deal since you will never really play it. Reviewing the scores, especially from a review aggregator like Metacritic, can save you from wasting your cash.
Don't neglect your health when playing. If you sit down when playing games, you may want to use a stability ball which can help to straighten out your spine. Also, you may want to take snack breaks and stretch to keep your body healthy.
TIP! Try a little one-on-one video gaming with your children. This is a fantastic way to figure out more things that your kids enjoy so you can get to know them better.
No matter what your specialty in video gaming is, you are certain to find hours of enjoyment in it. Utilize the tips and techniques in the aforementioned article for your best video game experience. Video games are loved by people around the world.


This week, large retailers made announcements following the recently passed tax cuts. Walmart raised salaries for hourly workers to $11 per hour and announced one-time bonuses to 1,000 eligible employees, but it also announced the closure of 63 Sam's Club stores and replacement of 3,500 store managers with lower-paid positions. Michael Corkery of The New York Times joins Hari Sreenivasan for more.
A number of American companies are handing out bonuses and raises to workers as they expect to reap the benefits of the recently passed tax cuts. This week, Walmart joined in saying they will increase the starting pay for hourly workers to $11 and provide one time bonuses of as much as $1,000 to eligible employees. But the news was mixed because the retail giant also said it would close 63 of its Sam's Club stores and cut 3,500 store managers. Those jobs would be replaced by lower paid positions. For some analysis, I am joined by Michael Corkery of The New York Times. So 11 bucks an hour. That's a good thing for lots and lots and lots of the largest private employer in the country, right?
It is. It's a big move. You know, labor groups have been on Walmart's case for years to raise that starting wage. They moved to $2. It's, you know, some would say, they're playing catch up to where other retailers are – Target is at $11 and they moved that up in September. But nonetheless, they are the largest private employer in the U.S. It's more than a million people. It's a lot more money in their pockets. But as you mentioned, the news, which was generally received positively, was somewhat complicated and marred by on the same day that they're announcing this raise. They also closed 63 Sam's Club stores. So there are critics who saw it as a given here and taking away there. What should have been a great news day for Walmart turned into a complicated one.
Let's talk a little bit about the bonuses. Roughly how much are they going to spend on the bonuses and how much they're going to save on the tax cuts?
So what they've said is bonuses will cost cost the company about $300 million. The raises that they're giving for the starting wage of about $400 million. So all told about $700 million. We're not sure exactly and the company hasn't said how much they're going to save from the tax cut but an estimate that we got shows it is probably about $2.2 billion a year. So much of it's going to be spent on employees but most of it's going to be spent elsewhere.
What about the timing of these announcements? There are 120 – 130 different companies that have all announced this but this is also part of the narrative that the Trump administration is saying "Hey look tax cuts were good!"
Yeah it couldn't have – this was a gift to the Trump administration. Republicans taking a lot of heat that these tax cuts mainly going to benefit the rich. And here's Walmart that employs you know, million hourly workers, you know, the working class. Well, some would say they're not even working class or even below that in terms of a working wage. And here they're saying – the company saying – we're going to use this tax cut, thank you very much, to invest and give more money to these, you know lower wage people. So yeah it was, I mean, it was Paul Ryan was tweeting about it as Exhibit A. "Look how great this tax cut is!" Steve Mnuchin, the treasury secretary was also touting it. So yeah it was a nice plum for for the Trump administration.
Is it a risk for companies that they are taking sides in a political conversation especially when the country is so divided and they've got customers that are on both sides of the aisle?
Yes and I think Walmart learned that when they announced this because I think if they hadn't, if the company hadn't tied it to the tax cut, I don't think the criticism about the Sam's Club closings would have been so tough on the company. I think, I mean, retailers are closing stores all the time! It's difficult and painful for the workers but this they really took it on the chin. And I think it was because they opened themselves up to it by politicizing what otherwise is a, you know, what companies are doing all the time.
All right Michael Corkery of The New York Times. Thanks so much.


text:
Q: TypeError: 'click' called on an object that does not implement interface HTMLElement. in JQuery ajax i am trying to update table data directly from the the table but when i do blur on the table data i am getting the above error. please help...
here is my code
function edit_data(id, text, column_name)
{
    $.ajax({
        url:"edit.php",
        type:"POST",
        data:{'id':machine_id, 'text':text,'column_name':column_name},
        dataType:"json",
        success:function(data){
            alert(data);
        }
    });
}
$(document).on('focus','.serial_no',function(){
    var id = $(this).data("id1");
    var serial_no = $(this).text();
    edit_data(id, serial_no,"serial_no");
});
$(document).on('blur','.model',function(){
    var id = $(this).data("id2");
    var model = $(this).text();
    edit_data(id, model,"model");
});
$(document).on('blur','.price',function(){
    var id = $(this).data("id3");
    var price = $(this).text();
    edit_data(id, price,"price");
});
$(document).on('blur','.spare_parts',function(){
    var id = $(this).data("id4");
    edit_data(id, spare_parts,"spare_parts");
});
$(document).on('blur','.location',function(){
    var id = $(this).data("id5");
    var location = $(this).text();
    edit_data(id, location,"location");
});

my html is dynamic i created my table from php
    <?php
$conn = mysqli_connect('localhost','root','','swastik_service');
$output = '';
$sql = "SELECT * FROM `machine` ORDER BY `machine_id` DESC";
$result = mysqli_query($conn,$sql);

$output .= '
 Machine Table

                               Machine ID
                                   Serial No
                                   Model
                                   Price
                                   Spare Parts
                                   Location

';
                  $output .= '

                    <button name="btn_add" id="btn_add" class="btn btn-xs btn-success">+</button>

';

if(mysqli_num_rows($result) > 0)
{
     while($row = mysqli_fetch_array($result))
     {
        $output .= '
'.$row["machine_id"].'
                    '.$row["serial_no"].'
                    '.$row["model"].'
                    '.$row["price"].'
                    '.$row["spare_parts"].'
                    '.$row["location"].'
                    <button name="btn_delete" id="btn_delete" data-id6="'.$row["machine_id"].'" class="btn btn-xs btn-danger">x</button>
';
     }
}
else{
    $output .= "

                        Data not found

";
}

$output .= '

';`enter code here`
        echo $output;
?>

my edit.php file
    <?php

$conn = mysqli_connect('localhost','root','','swastik_service');
$id = $_POST['id'];
$text = $_POST['text'];
$column_name= $_POST['column_name'];
$sql ="UPDATE `machine` SET '.$column_name.'='.$text.' WHERE `machine_id = '.$id.'";
if(mysqli_query($conn,$sql)){
    echo"Data updated";
}
?>

A: I think your ajax function code should be like this...
function edit_data(id, text, column_name)
{
    var post_data={};
    post_data['id']=id;
    post_data['column_name']=column_name;
    post_data['text']=text;

    $.ajax({
        url:"edit.php",
        type:"POST",
        data:post_data,
        dataType:"json",
        success:function(data){
            alert(data);
        }
    });
}

I dont know about your error, I think its from another code..

redpajama_set_name: RedPajamaStackExchange


text:
New and Revised Courses
2019-2020 Scripps Catalog THIS IS AN ARCHIVED CATALOG. LINKS MAY NO LONGER BE ACTIVE AND CONTENT MAY BE OUT OF DATE!
Intercollegiate Coordinating Committee: Professors Deeb (SC) (on leave spring 2020), Dyson (HMC), Espinosa (CMC), C. Johnson (PZ), Kassam (PO)
Professors Espinosa (CMC), C. Johnson (PZ), Kassam (PO), Ng (PO), Parker (PZ), Runions (PO)
Associate Professors Alwishah (PZ), Chung-Kim (CMC), Dyson (HMC), Eisenstadt (PO), Gilbert (CMC), Humes (CMC), Michon (CMC), Smith (PO), Velji (CMC)
Visiting Assistant Professors Martinez (CMC), Sales (SC)
Lecturers Irish (PO), Planinc (PO), Reznik (PO)
Scripps Interim Department Chair: Lara Deeb (on leave spring 2020)
Religious Studies is a cooperative program offered jointly by Claremont McKenna, Harvey Mudd, Pitzer, Pomona, and Scripps Colleges. The program of study is designed to serve both as one focus of a liberal arts education and as a foundation for students planning to pursue the study of religion beyond the baccalaureate degree. Students may enroll in Religious Studies courses offered at any of the undergraduate colleges, and advanced students may, with permission, enroll in master's-level courses in their area of specialization at Claremont Graduate University.
While offering a broadly based and inclusive program in the study of religion for all liberal arts students, the Religious Studies major affords the opportunity for more specialized work at the intermediate and advanced levels in particular historic religious traditions, geographical areas, philosophical and critical approaches, and thematic and comparative studies.
The Department of Religious Studies recognizes the importance and legitimacy of personal involvement in the study of religion, but it does not represent or advocate any particular religion as normative. Rather, the aim is to make possible an informed knowledge and awareness of the fundamental importance of the religious dimension in all human societies—globally and historically. In addition to preparing students for graduate study in religion, the multidisciplinary nature of the major affords students intellectual training to enter a variety of fields and careers. Recent graduates are, for example, in schools of law, medicine, and business. Others have careers in management, journalism and the media, college administration, primary and secondary education, government, and health and social services.
The Religious Studies major consists of 10 courses, including four courses in a specialized field, two integrative courses, three elective courses outside the specialized field, and a senior thesis. Specialized fields may, for example, consist of religious traditions (Asian, Western, Judaism), themes (Philosophy of Religion and Ethics, Gender and Women's Studies), historical period (e.g. Religion in the Contemporary Period), and geographical area (e.g., Middle Eastern Studies, Religion in the Americas).
Language study appropriate to the specialized field and a period of study abroad when possible are strongly encouraged.
Learning Outcomes of the Program in Religious Studies
Department Goals and/or Objectives
Goals are broad statements that describe what the program wants to accomplish
1. Majors will acquire specialized knowledge in at least one religious tradition, including its histories, rituals, beliefs, and ongoing issues through close examination of diverse bodies of evidence (religious texts, traditions, material cultures, and secondary scholarship).
2. Gain proficiency in the interdisciplinary methodologies of Religious Studies (social scientific, literary, historical, theoretical, philosophical and cultural), while learning to evaluate the utility of these disciplinary approaches, and cultivate attitudes of empathetic study as well as critical distance toward objects of study.
3. Be able to place religious traditions, issues, and debates in broader global and political contexts, with special sensitivities to the roles that religions can and do play in the articulation of national, racial, and gender identities.
4. Learn how to conduct extended research that critically analyzes the theoretical implications of a religious phenomenon across broader social and cultural perspectives.
Outcomes describe specific knowledge, abilities, values, and attitudes students should demonstrate
SLO1: Students will demonstrate knowledge of the contexts and contents of one specific religious tradition.
SLO2: Students will be able to select and apply an interdisciplinary framework to the study of a particular religious phenomenon and demonstrate its intellectual effectiveness.
SLO3: Students will be able to connect religious traditions, issues, and debates across global and political contexts in designated assignments.
SLO4: Students will independently develop, investigate, and synthesize a research topic on a religious phenomenon.
Courses in Religious Studies
Religious Studies Major
Religious Studies Minor


Vere and Clea hunt all winter with the Quorn, producing high class hunters and eventers. Some of these fantastic hunters have been sold to members of the Royal family, and innumerable masters and huntsmen of the premier packs, as well as to ladies and gentlemen riding in the field.
These horses are mainly bought out of show jumping so that they are already experienced and well schooled jumpers that are capable of jumping a big fence. We do not like going through gates!
We buy quality, upstanding, three-quarter bred types, mainly from Ireland. We produce and train these horses on the farm, and in the hunting field with the Quorn, to cross the biggest hunting country of hedges, ditches, rails and gates. We have high quality hunters for sale.
For most hunting people, their hunter is literally their "horse of a lifetime" until it retires, and we try to provide them with this horse. Our clients enjoy being back in the office safe and sound on Monday, having enjoyed their weekend, or any other day of the week depending on where and when they hunt!
Vere had the honour of providing the legendary Ulrica Murray Smith, Master for 27 seasons and author of "The Magic of the Quorn", with her last two master's horses. Upon her retirement, one was passed to the next master, Mr Barry Hercock, eventually retiring at 20 years of age having hunted 2 days a week, leading the field since the age of 5. It never missed a day.
In the Quorn alone, we have supplied horses to more than 10 Masters, 4 Huntsmen, umpteen Whips and several secretaries.
We have also sold horses to the Masters of numerous other hunts including; Cottesmore, Fernie, Belvior, Beaufort, Meynell, Cheshire, Wynnstay and VWH, to name just a few.
Please contact us for more information about the hunters for sale.
The Quorn Gate Jumping competition has run for 3 years. Every year thus far, the winner has been sold by Vere and Clea Phillipps.
In 2011, the winner was Joss Hanbury on his masters horse, bought from this yard.
In 2012, Angus Smales won on Ricky, a horse sold by Vere as a hunter aged 5. He is now an advanced event horse, and a masters' horse with the Fernie.
In 2013, Sean Frankham won riding Ripple, jumping an upright gate at 1.65m. This horse was sold by Vere as a hunter aged 5. He won the gate jumping when he was 20 years old. A true hunter, ridden by a true amateur, this horse has mastered the Fernie for 15 years, and never been trained as a competition horse.
March 2014, Sean Frankham riding the 4 year-old Wonder Mouse out Hunting with the Fernie (picture above).


Pickled Polish Sausage, Pork Hocks, Eggs, Herring, Turkey Gizzards and More!
Milwaukee, Wisconsin. Bay View Packing started in 1923 when three brothers banded together to make quality pickled meats for their customers. Over the years, their skills were passed from one generation to the next, each generation growing the company into the successful operation you see today.
Bay View Packing and its employees are dedicated to providing pickled delicacies to discriminating buyers. Produced with skills and Old World traditions passed on through five generations, Bay View Packing assures patrons of high-quality, gourmet products.
Read "Family Values Keep Bay View Packing Thriving" on the Sconnie Days blog!


When first acquired, there was considerable damage to damper felts and key cloth due to moth larvae; that material was totally replaced and the action "made playable" to assess the overall quality of the piano. Amazingly everything was original and working! After enjoying the piano for several years I decided to rebuild the instrument. The pictures following shows various aspects of the piano before and during rebuilding.
Above: looking at the bass bridge, showing how the lowest single strings have felt wrapped around the wire as it passes over the bridge. The bi-chords are resting on black cloth at the crest of the bridge.
Bass string windings continue across the bridge.
A view with all strings removed.
Broadwood pianos of this age featured sectional plates, or in their terms a "bolted iron frame" – a tailpiece along the bent side, with struts (bars) running the length of the piano to support the pull of the wires. The struts are fitted into the tailpiece and secured by a block.
At the front end, the struts fit neatly into the front plate and are secured to the nosebolts by steel pins.
Directly below this strut you can see one of the two spreaders that "mind the gap" between the pin block and the belly rail, a carry-over from their days of building harpsichords, transferring the load applied through the pin block directly to the wooden framing members running below the sound board.
Another unique Broadwood feature of that era – the plate above the pin block is threaded to fit the tuning pin threads! Each tuning pin had a cloth washer between the plate and strings to keep dirt out of the threads.
A "Notice to Tuners" label informing tuners how to deal with the threaded plate.
Removing the bridges allows for easier and more thorough repair to the sound board.
One last hidden screw from below must be removed before the bridge is finally off!
When rebuilding, one has to make many decisions, the most common question that arises is to either repair or replace components. In general, parts that have major signs of wear such as cloth, felt or leather can and should be replaced. Larger items such as hammers, pin blocks, tuning pins and strings are almost always replaced as well. The largest single wooden component of the piano, the soundboard, can also be replaced and often is. The deciding factor is the presence or absence of crown, the curvature of the soundboard which works against the downward strain of the strings. Usually in older pianos this curvature or crown is absent due to the shrinkage of the wood, which then renders the soundboard "lifeless" – unable to properly respond to the transfer of the sound vibrations from the strings. In the case of this piano, there still was some crown present so we decided to repair the soundboard instead of replacing with a new quality soundboard.
Starting the soundboard repair: first cut tapered grooves in the soundboard along the cracks, then carefully fit shims made from soundboard spruce, gluing in place with the original style fish glue.
Beyond the high treble bridge the soundboard is not fastened to the rim but has a "semi-reflective termination", (see the very dark-stained curved piece) in this instance two thin layers of maple. Broadwood commissioned scientific research in the field of acoustics, and the results were applied to their products. More on that later!
Turning our attention to the underside, the soundboard and framing are cleaned and varnished. The bent side is solid oak, steamed into shape, whereas the long straight side is solid mahogany.
A close-up of the low tenor area of the bridge, showing Broadwood's careful calculations to even-out the wire tensions as the gauges change. This is a result of scientific research commissioned by Broadwood, and by their collaboration with the esteemed scientist Hermann von Helmholtz, who published "On The Sensations Of Tone" (1863), the seminal work on the acoustics of music.
Another look at the steps on the bridge, showing where the change of gauge takes place.
Each agraffe is unique and will be kept in their order. The agraffes are screwed through the plate and into the underlying pin block. Broadwood had their own unique thread on agraffes, 26 threads per inch, so extreme care was taken removing them since modern agraffes would not fit.
With the last part of the cast iron plate components removed, the string plate, we see the pin block, although a heavy card stock still covers the area beneath the plate.
A photo-op for all the cast iron pieces comprising the "bolted iron frame". In a modern piano this is cast as one piece and usually given a gold or bronze colour finish, but the Broadwood colour of the time was a dark brown.
The top of the bridge is carefully coated in graphite and burnished shiny, and nosebolts returned to their homes, ready to support the plate.


bring discussions of quality to a broader community of Internet users.
concerns by business users who do not have access to alt groups.
instruction on how to cast your vote.
actual discussion is to take place.
for professionals and researchers to communicate with each other.
list and into the newsgroup.
proposal should occur on news.groups.
the same groups as this RFD. The voting period will be at least 21 days.
least) twice as many YES votes as NO votes, it will be created.
misc.industry.quality	Quality standards and other issues.
Votes must be received by 23:59:59 UTC, 22 May 1995.
statements.  DO NOT QUOTE THIS CFV IN YOUR VOTE.
vote list, whereas CANCEL removes your vote from that list entirely.
other vote fraud, all your votes may be canceled and your name published.
and 2/3 of all counted votes being YES.
There were 164 YES votes and 17 NO votes, for a total of 181 valid votes.
There were 8 abstains and 1 invalid ballot.
about the proposed group contact David Casti <[email protected]>.
[This collection of addresses is (C)1995 by Consultix Computer Services.
[email protected]                            Paquin, Sherry A.


Humans CAN BE calibrated. Control plans call out for "MSA" analysis on key processes. These mainly focus on features measured by variables gaging systems. However, MSA analysis also applies to attribute-based processes that are inspected visually. Some examples are the interpretation of color or surface imperfections like scratches. Many businesses rely upon the skills of their personnel to interpret these go/no go attribute features. When personnel do not repeatedly and accurately disposition the product they evaluate, business loss and risk can be incurred. This demonstrative session enables participants to learn how to develop, create, execute and interpret an Attribute Agreement Analysis (AAA) so that an accurate and repeatable disposition can be made and rework and returns can be effectively reduced. Attendees will see how they can apply this tool while learning how to mitigate business cost exposure.
Customers rarely differentiate the casuals of a PPM defect at the contract table. A "ppm is a ppm". Whether the feature is for a safety or critical nature vs a visual attribute nature, either can keep a company from securing the next order. While product and process evaluations by humans are done daily for reasons of efficiency and cost, the effectiveness of this evaluation process can be but is rarely assessed. This leaves the organization wide open for risk of returns, ill-will, rework, and ultimately loss of business. Learn how to identify and manage this risk in a hands-on and engaging manner.
Defining Attribute Agreement Analysis (AAA): A review of basic AAA analysis. Will cover the 3 basic types of agreements: Agreement with oneself, Agreement to a peer, Agreement to the standard. Both the "Statistical AAA" and the Kappa value will be reviewed. Confidence levels for the result bands will also be reviewed. Incorporation of AAA into the Control Plan and frequency of "calibration" will be reviewed.
How It Works: While reviewing the concepts, the audience will be exposed to a sample simulation so that they can experience the 3 basic types of agreements.
Benefits of the Calibrated Human: There are multiple benefits when calibrating the human operator. Via a review of Pros/Cons, the general benefits of reductions in arguments (what is good or not) internal/ external rework, returns, premium freight, etc. will be discussed.
Quality, Product/Process Engineering, Manufacturing Operations.


My place is in Ruhengeri town. It's twenty minutes walking from bus parking. You can also take a bike to my place and that's 100 frw and takes 10 minutes. My house is in a quiet and safe neighborhood. I'm living here with my cuzin and housekeeper. You will have your own room with a private bathroom with flushing toilet and shower. Every morning you will have a nice breakfast and you can also use the kitchen to cook for yourself. I like to have guests around and show them my beautiful country.


text:
.. pysftp documentation master file, created by
   sphinx-quickstart on Sun May 11 08:53:24 2014.
   You can adapt this file completely to your liking, but it should at least
   contain the root `toctree` directive.

Welcome to pysftp's documentation!
==================================
A simple interface to sftp.  based on zeth's ssh.py

Example
-------
.. code-block:: python

    import pysftp

    with pysftp.Connection('hostname', username='me', password='secret') as sftp:
        with sftp.cd('public')              # temporarily chdir to public
            sftp.put('/my/local/filename')  # upload file to public/ on remote

        sftp.get_r('myfiles', '/backup')    # recursively copy myfiles/ to local

Supports
--------
Tested on Python 2.7, 3.2, 3.3

.. image:: https://drone.io/bitbucket.org/dundeemt/pysftp/status.png
    :target: https://drone.io/bitbucket.org/dundeemt/pysftp/latest
    :alt: Build Status

Believed to support Python 3.4

Additional Information
----------------------

* Project:  https://bitbucket.org/dundeemt/pysftp
* Download: https://pypi.python.org/pypi/pysftp
* Documentation: https://pysftp.rtfd.org/
* License: BSD

requirements
------------

  paramiko >= 1.7.7

Contents:

.. toctree::
   :maxdepth: 2

   cookbook
   pysftp
   changes
   contributing
   authors

Indices and tables
==================

* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

redpajama_set_name: RedPajamaGithub


text:
>> Opinion
>> Letters
Going green sends power bills ever higher
Saturday's letter to the editor by Carol Rose was welcome but depressing. It signifies that although our citizens are finally taking note of the constant incremental increases in the cost of our electricity, many just don't appreciate who are responsible for this.
Ms. Rose makes several very good points, but then says she hopes "our representatives will check into this." She is hoping that the very representatives who are responsible for making electricity unaffordable for most of us will "check into this."
The Democratic Party politicians, pandering to their wealthy and influential special interest "green" lobby, have the exclusive ownership of an agenda to limit our use of plentiful carbon-based energy by making it unaffordable. From our president to our Democrats in Congress and our state Legislature, there has been a militant program to stop our use of cheap, abundant clean coal, natural gas and oil.
Our Legislature passed legislation a few sessions back to mandate that NV Energy purchase more and more prohibitively expensive energy from "renewable" sources. Then our representatives raped our public treasuries to finance the production of totally inefficient wind and solar energy by subsidizing politically connected companies such as Solyndra. The Democrats on our Clark County Commission just gave away many millions of dollars worth of taxpayer property to a Chinese "green" enterprise championed by top Democrat Harry Reid.
Want to keep your air conditioning and electricity? Just vote against Democrats until they stop this insanity. It's the only thing that matters to these radical zealots.
Bring them some well-deserved heat!
John Tobin
Right to unionize?
After reading Tom Gillespie's Tuesday letter to the editor delineating a "right" for the employees of a company to organize, I immediately scanned my copy of the Constitution to read the clause granting such a right. Lo and behold, nowhere in the Constitution and the attached amendments could I find such a "right" identified. The closest constitutional clause supporting Mr. Gillespie's assertion is the First Amendment's right of the people to peacefully assemble.
As Thomas Jefferson himself explained, the right of the people to peaceably assemble is meant to be interpreted as the right of the people to freely gather, and associate, with other like-minded citizens without requiring any government intervention or approval. Of course, the reverse of this right is also true, meaning that the government cannot force citizens of dissimilar minds to gather or associate. Therefore, contrary to Mr. Gillespie's assertion, just as citizens can form a union, companies, obviously owned by other citizens, cannot be forced to associate with said union.
Now, I know this may shock those who depend on the heavy hand of government to enforce clearly unconstitutional associations, but it is nevertheless true. All one need do to confirm this analysis is to read the 10th Amendment to see that neither the federal nor the state governments can alter a right granted in the Constitution.
Try pamphlets
In his Tuesday letter to the editor, Tom Gillespie says it's unfair that union organizers must try to reach targeted employees off-premises and during off- work hours to explain the benefits of union representation.
I have a solution. Eliminate the need for all National Labor Relations Board "stooges" by putting pamphlets here in Las Vegas with the names of the unions, their addresses and their phone numbers in a rented box, much like those on public sidewalks used to promote auto trading and sexy women.
A 24-7 presence. No human involvement. All unions welcome persons to come see them in a comfortable environment to discuss the various benefits. No "stooges." No problems!
Norris Inman
As a 96-year-old citizen, I cannot understand how President Obama and our illustrious Sen. Harry Reid could have agreed to a bill that will hasten the demise of Social Security and Medicare.
The passage of the extension of the reduced payroll withholding will diminish Social Security over time until payments are so small that senior citizens will starve to death.
If President Obama wanted a level playing field, he should have insisted on an increase in taxes for the wealthy, who are enriching themselves on the backs of the middle class and the working poor.
Morris Katz
Trigger happy
The Las Vegas police officer involved in the latest use of deadly force, the killing of Stanley Gibson, should stand trial in front of a jury of his peers. Do these trigger-happy officers feel that they have no duty to determine the nature of the threat, if any, prior to pulling the trigger?
Some of our brave soldiers in Iraq and Afghanistan have been charged and tried for murder for violating the rules of engagement while defending themselves against an opponent or opponents who demonstrated a clear physical threat to the soldiers involved. Dr. Conrad Murray is serving four years for his negligent actions that resulted in the death of Michael Jackson.
None of our soldiers, nor Dr. Murray, had the benefit of a coroner's inquest to determine the appropriateness of their actions. Neither should police officers. Put them on trial.
I feel that the vast majority of our police officers are not trigger happy. These hard-working and decent police officers should publicly speak out against the trigger happy ones in an effort to eliminate them from the police force.
Galen Deckert
Posted on: Letters, Opinion
Fear not, Raiders fans, 'Black Hole' will live on in Las Vegas
2020 NFL draft plans include Bellagio fountains, Caesars Forum
3 injured in shooting at Fashion Show mall
Slots player hits for $464K in Las Vegas casino
Raiders coach Jon Gruden gets jaw-dropping tour of Allegiant Stadium — VIDEO
LOCAL NEWS YOUR WAY
Sign up for our free daily Morning and Afternoon Update newsletters.
By signing up you agree to our Privacy Policy and Terms of Service. Unsubscribe at any time.
LETTER: Democrats pointing fingers
Ron Moers Henderson
January 21, 2020 - 9:00 pm January 21, 2020 - 9:00 pm
President Trump responsible for downed jet?
LETTER: Review-Journal reporters do a public service with stories on Alpine fire
Charles Zobell Las Vegas The writer, a former / RJ editor, is a visiting lecturer at UNLV's Greenspun School of Journalism.
Digging into an important story.
LETTER: Gerard Gallant deserved better from Golden Knights
Joseph Manzo Las Vegas
These things happen every day in professional sports. But, in this case, I think the organization owed something more to Mr. Gallant.
LETTER: More details on Nevada's trapping laws
Donald Molde Reno
Non-target species bear a burden.
LETTER: Golden Knights send wrong message
Jim Guynup Las Vegas
Firing the coach was the wrong move.
LETTER: Henderson and refugees
Marc Russell Henderson
Does the city's generosity extend to Alpine fire victims?
LETTER: Pelosi impeachment hoax falls apart
J.J. Schrader Henderson
Democrats waste time, money and effort.
LETTER: Lots to report on the education front
Marcia Romano Las Vegas
Taxes, minority opportunity and Bernie Sanders
LETTER: Local teachers' union endorses Bernie Sanders for president
Rick Ainsworth Henderson
What are they teaching the kids?
LETTER: Here's one 'no' vote for teacher union sales tax hike
Marlene Drozd Las Vegas
How about they first start to educate students?


February 15, 2019 Terrance Antonio.
Resume on one page accurate You can save this for your portable, mini netbook or desktop computer and a gallery with multiple Resume on one page accurate to help you. Can fit resume one page fitting make format Resume two won should.
This 358 x 506 Resume Samples, image over the Resume on one page accurate flowerbeauty.info!..
A along with can be also a document used by aperson present his or her backgrounds and abilities. Sum can be used about a whole lot of reasons although most regularly they are employed protecteda job. A commonplace contains also a abstract about applicable employment event with instruction. The can be normally about the early presents alongside and also a canopy letterand from time to time an program about a job a how include many capabilities companies inquire for alist about references in ajob program along with at a completion about aemployment consultation.
That why along a good idea are required also a checklist about references handy after youre applying for also a. Welcome a purdue owl. This is brought even you by a owl by purdue school. When printing a you need to include all of the legal note.
P. O. Box catonsville md phone 8265 published in the u. S.
About the united states federal guidebook 6th variant expert created with zety see 20 layouts and cause a here. Of all our users nikos computer had a express i used] afirst rate template i always found on zety. My can be currently long not 3. With the exact same stuff.
Bookmark the Resume on one page accurate.


text:
A year late, the Olympic Games have arrived. Here's what you need to know
More than 600 athletes, with 101 career medals among them, will compete for the U.S. in Japan.
Simone Biles waves at fans June 27, 2021, after being named to the Olympic team in the closing ceremony of women's competition in the U.S. Olympic Team Trials for gymnastics in St. Louis, Missouri. Lindsey Wasson / Reuters
By Steve Wagner and Troy Becker, Steve Wagner
Opening ceremonies for the Tokyo 2020 Olympics, postponed a year due to the pandemic, will usher more than two weeks of world-class competition, with a bevy of familiar faces and rising stars looking to earn gold for Team USA.
Though Friday marks the opening ceremonies, women's soccer and softball games begin Wednesday to start competition.
More than 600 athletes, with 101 career medals among them, will compete for the U.S. in Japan. Thirteen athletes hail from Minnesota, including Payton Otterdahl, a former All-American shot put thrower at North Dakota State University. South Dakota also is represented by two athletes: Paige McPherson in taekwondo and Chris Nilsen in pole vault.
Former University of South Dakota pole vaulter Chris Nilsen competes in the United States Olympic trials on Monday, June 21 at Hayward Field in Eugene, Oregon. Nilsen won the event to qualify for the 2021 Olympic Games. (Paul Merca for TrackTown USA)
Minnesota-born athletes Suni Lee, a gymnast from St. Paul, and Alise Willoughby, a BMX cyclist from St. Cloud, are contenders for the top of the podium in their sports.
Sunisa Lee acknowledges the crowd after competing on uneven bars during the final day of women's competition in the U.S. Olympic Team Trials for gymnastics in St. Louis, Missouri, on June 27, 2021. Reuters / Lindsey Wasson
Grace McCallum of Isanti, Minn., competes on floor June 27, 2021, during the final day of women's competition in the U.S. Olympic Team Trials for gymnastics in St. Louis, Missouri. Lindsey Wasson / Reuters
Learn more about the Tokyo 2020 Olympic Games using the interactive map below, with helpful hints (click or hover on icons) and details about TV viewing, competition dates for each sport and athletes to watch.
Related Topics: OLYMPICSVISUAL STORYTELLING
Alexandria area sports schedule for Jan. 31, 2023
Douglas County area basketball, gymnastics, swimming and diving, hockey, and wrestling for Tuesday, Jan. 31, 2023.
By Sam Stuve
Douglas County basketball and hockey for Monday, Jan. 30, 2023.
Hockey: Granite City tops Alexandria Blizzard in battle of two of the NA3HL West's best
Two late goals lifted Granite City over the Alexandria Blizzard on Saturday. Granite City and Alexandria are currently the top two teams in the NA3HL Western Division standings.
Alexandria Figure Skating Club competes in large competition in Duluth
Members of the Alexandria Figure Skating Club got the chance to compete in Duluth and have a busy schedule in upcoming weeks
Basketball roundup: Alex teams dominate in Tuesday games, Osakis teams get back in the win column
An Echo Press Editorial: Drivers fess up to bad habits
Douglas County Sheriff's Office warns of counterfeit $100 bills


Weigh out the correct amount of hardener in a mixing cup.
Weigh out the corresponding amount of resin into the same mixing cup.
Stir thoroughly for net less than 5 minutes until the mixture is homogeneous, without introducing air bubbles.
Place the specimen in the middle of the mounting cup and carefully pour in the mixed epoxy.
Ensure that no air remains trapped within gaps or cavities in the specimen by moving the specimen or by tapping the mounting cup on the table.
Unimount cures at 75°C/167°F, the curing time is 1½ hours at 75°C/167°F. To obtain these temperatures, either a laboratory oven/heating cabinet or Drybox can be used. When using a oven/cabinet we recommend using one with good ventilation to ensure that the heat created by the exothermic reaction during curing is removed.


Full range mesh for great cooling performance.
140 mm silent fan for superior airflow.
Compatible with all 9"-14" laptops (up to 15.4").
USB port extender for power in.
Introducing a new member to the Cooler Master NotePal X series: NotePal X-Lite. NotePal X-Lite inherits all the advantages of the NotePal X series and offers the best value on the market. The classic "X" design with 140mm fan features efficient cooling and superb silence. The smart USB port extender reserves your power-in USB port. The extremely lightweight design creates optimal comfort for laptop users or on-the-go users.
Full range mesh and aerodynamic designed intake provides great cooling performance.
140 mm silent fan provides superior airflow.
Full range mesh and aerodynamic designed intake for great cooling performance.
USB port extender design remains your USB port for power in.
Pros: Silent. Keeps my old Vista era laptop very cool in the summer. The angle also helps with typing.
Other Thoughts: I didn't want to list it under cons because it's really because how my laptop is designed, but the USB plug for the cooler covers up my laptop's power plug since the line that feeds the fan sticks out at a right angle. A little bending of the cord solves this.
Pros: for a very low price you can prevent your laptop from overheating. i placed my fingers atop the keyboard and it is noticeably less hot.
Cons: only slightly less hot, tho. you will be tempted to upgrade to a stronger cooler once you get more money.
Cons: Barely cools my laptop, which it could be my fault because this thing is pretty cheap to get.
Other Thoughts: I thought cooler master had great laptop cooling pads but I guess i have to spend more money in order to get agood one.
I am sorry to hear that the X-Lite Cooler is not working out for your needs. I have linked below another model of cooler that should work for your heating issue. I have linked below our other model cooler that should work for your heating issue.
Fans would not come up, even after trying on multiple computers.
Other Thoughts: I really think the warranty is a joke. I got this for free after rebate, and it costs $10-15 shipped for a new one.
To ship it back would cost more than what you can pay for a new one. It wasn't worth shipping it back for me after my RMA got approved so I'll just wait for another deal on a Zalman.
My Zalman was been running on my daily laptop for over 1.5 years without any problems.
I'm not sure if I'll get another Cooler Master laptop cooler anymore.
I am sorry to hear that your having issue with our NotePal X-Lite We would like to exchange the cooler for you at no cost to you please contact us below.
Pros: Keeps my laptop really cool.
Other Thoughts: I would buy this cooler again for a different laptop.
Pros: Good Cooler, was quiet at first. Has female usb port over the male plugin so it doesn't take up a slot on your laptop.
Cons: After about 2 weeks the fan got gradually louder. This is used on my gaming laptop, so I have my headset on 95% of the time anyway, and you can't hear it w/ the headset on.
Cons: a tad too small for a 15.6" laptop, but it still fits if centered properly.
Pros: The air flow provided by the fan cooled my laptop by an average of 14 degrees C. That was actually more than I expected. Temps were monitored using CPUID HWMonitorPro.
Cons: The general build quality is lower than I was hoping for. My main concern is what seems to be a cheap fan used in this cooler. The fan started to make audible vibration sounds right after I plugged it in for the first time. I purchased two of these and they both do the same so I didn't bother contacting support.
Other Thoughts: Given the very low price that I paid for this laptop cooler I am somewhat satisfied. I will continue to use the two that I bought but I will certainly go for a better designed unit next time.


This point in our series on biophilic design brings us to patterns six and seven: dynamic & diffuse light and connection with natural systems – both incredibly beneficial to the ways in which we function on a daily basis. Read on for details on how these patterns can help to bring our spaces to life in highly impactful ways.
We know that as the sun moves, our world shifts, and this can have a profound impact on our moods and creativity. The early morning light can be soft and mystifying, while mid-day shadows provide a respite from heat and direct light, and at the end of the day a sunset can turn our surroundings a beautiful shade of pink or orange. Yet each of these moments are not exclusive and immediate; they shift and change as time and the sun's arc progress. Thus, pattern six centers on light – both moving and accompanied by elements of shadow.
Incorporating this pattern into design simply means harnessing the natural ebb and flow of lighting in our world and using it to create interest and visual complexity. Whether through skylights that bathe a communal space in natural brightness or via strategically-placed window treatments or sculptural pieces that cast a myriad of shadows upon the ground, dynamic and diffuse light has the power to tie us back to nature and eliminate the sterility of certain environments.
We are inherently connected to nature, and it is never more apparent than when we experience shifts in seasons or environments. Autumn evokes nostalgic memories of apple picking or warm baked goods while the heat of the summer can make us yearn for a cool body of water or a juicy slice of watermelon. Even a shift in location can invigorate the senses – a sensation we often feel the moment we step foot on uncharted ground while on vacation. Suddenly colors become sharper, and we start to notice every sound and smell. It is an intoxicating experience, and one that we all certainly deserve to have in our daily lives.
To incorporate this connection to the world's intricate shifts and nature's beautiful displays, it is essential to layer visual, sensory, and auditory elements. While this pattern can certainly be simulated via strategic indoor systems like water features or lighting displays, it is most effective when produced naturally by simply opening up the barrier between the indoors and outdoors. Window views are critical, whether showcasing a pond or wildlife preserve, or simply a glimpse of the tops of trees within a city, and if auditory capability is possible, this can produce another layer of connection (for instance, a thunderstorm is more than visual darkening and the ushering in of heavy clouds – it is the rumble of thunder in the distance and the growing patter of raindrops against the roof or window pane).
Ultimately, connections with our environments are complex and multi-sensory, and our indoor environments should absolutely reflect this same diversity.
Whether you are drawn to dynamic and diffuse light or are particularly in tune to the multi-sensory aspects of connections to the natural world, these two patterns often move together, working as a team to create spaces of joy and well-being. It is through their intentional placements and abilities to capture the beauty already in full bloom around us that their true powers emerge, and we are able to thrive in our indoor environments and reach our fullest potentials.


DragonBASIC input test (by Normmatt).
Simple Mode4 rotzoomer (by exoticorn).
HBlank positioning test (by mic).
Mode 0 bitmap font scrolling.
Mode2 rotation/scaling test (by mic).
Mode4 Mosaic test (by mic).
Kirby MiniLib Demo (by Jarvik7).
The GBA Drain (by sgstair).
3D Animation: Walking (by Torlus).
"GameBoy 3D trip" (by Leonard/Oxygene).
Mode 5 bump-mapping (by Bruno Vedder).
Spinning tunnel effect (by sgstair).
Mode 5 animation (by BigRedPimp).
Mode 4 bump-mapping (by sgstair).
Mode 4 fire algorithm (by mic).
The first test of graphical output.


text:
Q: php regular expression and replace Would be possible with php and one regular expression to do the following. Get all hyperlinks inside of a content and rewrite them if the top level domain of hyperlink is matching a given tld name from array.
Now have a regular expression which rewrites  all hyperlinks in a given content
preg_replace('//','', $content);

example
$tld = array("http://www.example.com","http://www.test.com");

if example than <a href="/goto.php?url= www.example.com";

A: You might want to solidify your regex a bit...
$pattern = <<<EOL
/]+)href\s*=\s*(['" ]?)([^"'> ]*)(['" ]?)([^>]*)>/si
EOL;

$replacement = "";

preg_replace($pattern, $replacement, $content);

Not able to test this right now, so there may be a typo...


text:
Accountable for Tomorrow
Property and Buildings
Energy, Industry and Resources
Why Choose WSP
WSP around the world
We are locally dedicated with international scale.
中文(简体) - English
한국어(대한민국) - English
Polski - English
Svenska - English
Deutsch - English
We are WSP
Torre Mayor
Torre Mayor, Mexico City
High-rise buildings in earthquake zones must meet the same standards of safety, comfort and buildability as anywhere else, but with a whole other set of challenges.
Commercial and Mixed Use
ICA Reichmann Torre Mayor
Completed in 2003
Zeidler Partnership Architects, Adamson Associates Architects
Contact us to know more about Torre Mayor, Mexico City.
Asia Enquiries
Share on Facebook - Warning, this link will open a new tab.
Share on Linkedin - Warning, this link will open a new tab.
Share on Twitter - Warning, this link will open a new tab.
Share on Google Plus - Warning, this link will open a new tab.
Share on Skype - Warning, this link will open your Skype application.
Copy URL to clipboard
CTRL + C to copy
Mexico sits in one of the world's worst seismic zones, and when we started working on the structural design of the Torre Mayor in Mexico City, it was less than a decade after the 1985 earthquake. Measuring 8.1 on the Richter scale, it wreaked devastation throughout the region and caused the deaths of at least 10,000 people.
"It was always at the back of our minds that we needed a new milestone in technology," says Dr Ahmad Rahimian, Director of Building Structures at WSP in the USA. His innovative solution, for which he holds a US patent, used military technologies that had been declassified in the 1980s. "We came up with a system similar to the shock absorbers in a car," he explains. "They are spread throughout the building so they act like the muscles on a skeleton. Many people questioned whether it would work, but testing showed it was a better solution than many available at the time and even currently."
Completed in 2003, Torre Mayor remains one of Mexico's tallest buildings at 55 storeys. But there have been several significant earthquakes since. "One day the client called me up and he said, 'Ahmad, we had an earthquake last night that was 7.6 on the Richter scale. There were 200 people in the building – we only found out when people started receiving calls from their spouses anxiously asking if we were all right. We didn't feel it at all."
OTHER CHALLENGES THAT WE HAVE OVERCOME
Raffles City Chongqing
After six years of construction using state-of-the-art engineering technologies, Raffles City Chongqing has successfully topped out the eighth and final skyscraper.
3 Hudson Boulevard, New York
3 Hudson Boulevard is a new mixed-use commercial tower in the Hudson Yards district. The environmentally sustainable tower will include premium corporate offices and exclusive residences, and is designed to maximize sunlight and provide 360 degree views.
One Avenue (Gangxia Redevelopment Project), Shenzhen, China
Super High-rise Complex Development located in the CBD area of Shenzhen, China
Shanghai Tower and J Hotel
The tallest building in China at 632m.
Lotte World Tower, Seoul, Korea
123 floors with premium grade-A offices, six-star hotel, observation deck, and extensive retail and recreational facilities.
Tianjin Goldin Finance 117 Tower
The centerpiece of the development is the Goldin Finance 117 Tower, a 1,968-foot- (600-meter-) tall office and hotel tower with 117 floors.
Kowloon Station Development
Located on reclaimed land at West Kowloon, this comprehensive commercial and residential development is fully integrated with the Mass Transit Railway (MTR) Kowloon Station, as well as a road transport interchange facility.
Shanghai International Finance Centre
The Shanghai IFC ranks among the largest commercial developments in the Pudong Lujiazui District and serves as a new landmark for the area.
Orchard Residences and ION Orchard, Singapore
This development uses a unique transfer system known as mega-trusses, the first for a commercial development in Singapore.
China World Trade Centre, Phase 3A and 3B
A mixed-use development in Beijing's Central Business District (CBD)
Spontaneous Application
Whistleblowing service
instagram Page will open in a new tab
linkedin Page will open in a new tab
twitter Page will open in a new tab
facebook Page will open in a new tab
youtube Page will open in a new tab
©2019 WSP
The WSP Logo
Anti-Spam commitment
Exiting our Website
You are about to leave WSP.com and are being redirected to a job opportunity at Louis Berger, which has been recently acquired by WSP in the US.


text:
How to influence your community's transition to deep decarbonization
Are you an elected official or senior staff member who wants to help your municipality significantly reduce its greenhouse gas (GHG) emissions? Are you intrigued by the idea pursuing net-zero emissions by 2050? If your community has taken steps to reduce emissions but still needs a climate action plan that takes a decarbonization approach, this factsheet can help.
Read this webpage to learn how local governments can influence their community's transition to deep decarbonization. You'll discover:
Priority pathways for deep emissions reductions
How municipalities can influence GHG emissions reductions
How Canadian municipalities are reducing GHG emissions
Success factors to reach municipal climate targets
Key terms to understand the deep decarbonization process
Net-zero emissions (or carbon neutrality): Are achieved when human-caused (or anthropogenic) GHG emissions are balanced by an equivalent removal of GHG emissions from the atmosphere over a specific period. Achieving a net-zero balance requires significant reductions in GHG emissions, while the last small percentage can be achieved through carbon sinks (e.g., forests, wetlands, oceans, soil) that absorb more carbon than they emit.
Corporate climate action plan: A plan that focuses on reducing GHG emissions that are directly controlled by the local government (e.g., municipal operations and fleets).
Community-wide climate action plan: A plan that focuses on reducing GHG emissions within the boundaries of the community, requiring commitment and effort from many actors in the community.
Deep decarbonization: The process of reducing carbon dioxide and other GHG emissions at a rate that ensures net-zero emissions at the community level by the year 2050 and significant reductions by 2030.
Deep decarbonization pathways: The electricity, building, transportation, waste, land use and agricultural sectors are priority pathways for establishing policies and other solutions to advance climate action. The relative contribution of each sector toward community-wide emissions can vary significantly depending on the municipality's economic base, urban form, density, wealth and sources of electricity in the grid.
Deep decarbonization plan: A corporate or community-wide climate action plan that aims for at least 80 percent reduction of GHG emissions by 2050. (Note: Although the word carbon (in the sense of carbon dioxide equivalent) is often used, all GHGs are considered as part of deep decarbonization plans and carbon neutrality goals.)
Embodied carbon: GHG emissions of a material released from the extraction of raw resources to its end-life. In an infrastructure project, embodied carbon includes emissions from raw material extraction, manufacturing, transportation, and emissions associated with construction and demolition practices. Embodied carbon does not include carbon emissions from use and operations.
Backcasting: An approach that focuses on defining a desired carbon neutral future for a community and then working backwards to identify all the necessary actions to achieve this vision.
Municipal carbon budgeting: A tool that tracks GHG emissions with municipal finances, where municipalities create a carbon budget within which their GHG emissions must fit. A carbon allocation is added to each proposed project and ongoing operational cost to assess its climate mitigation potential against the municipality's remaining carbon budget. This approach holds municipalities accountable for their long-term climate targets and allows for transparent and accurate monitoring of decarbonization efforts.
Climate lens: A perspective that adds consideration of climate impacts into planning and approval processes. Using a carbon budget is one tool to bring a climate lens to municipal decision-making.
What are the priority pathways to achieve deep decarbonization?
Consuming renewable energy produced by the electricity sector is an essential alternative to fossil fuels. More electrification and fuel shifts for heating buildings and in transportation can stimulate investment in renewable energy.
Decarbonization solutions for the building sector include reducing carbon emissions over the life cycle of the asset. This can be done by, for example, increasing building efficiency through good design, decarbonizing heating systems through retrofits of old buildings and ensuring new buildings have low or zero carbon emissions.
Shifting toward active (e.g., walking, cycling) and public transportation, and moving to electric vehicles or other zero-emission vehicles can significantly reduce transportation-related GHG emissions.
Transformations in the waste sector include reducing waste to landfills and investing in technologies to capture emissions from waste treatment processes.
Nature-based solutions include increasing carbon sinks through urban forests and wetlands, and adopting sustainable agriculture. As municipalities continue to adopt ambitious emissions reduction targets, many are using local carbon sinks and carbon offsets to achieve decarbonization goals. Effective land use planning for green space and protection of ecological services is a consideration for urban carbon sinks.
Sustainable land use in agriculture can increase the carbon sink capacity of agricultural land. This includes improving soil management through soil conservation and carbon sequestration practices, implementing crop rotations, decreasing bare fallow and establishing agroforestry systems.
In addition, using ecological farming practices such as reducing fertilizer inputs, adjusting livestock feed to reduce emissions from digestive systems and capturing methane emissions from manure can significantly reduce GHG emissions.
Food choices also play a role. Policies and strategies to promote sustainable and local food choices can decrease emissions from waste and transportation sectors and help create equitable access to sustainable food options for low-income citizens.
How can municipalities influence deep decarbonization?
Many municipalities in Canada have developed both corporate and community-wide climate action plans in response to climate change.
Corporate climate action plans focus on reducing emissions from activities that are within the control and direct influence of the local government (i.e., the "corporation").
Community-wide climate action plans focus on reducing GHG emissions, including industrial and residential emissions, within the municipal boundaries.
The primary focus for most municipalities is on reducing corporate emissions and furthering community-wide deep decarbonization efforts, especially when federal and provincial initiatives are not achieving sufficient reductions on their own. Knowing what they control directly helps municipalities determine how to structure their corporate climate action plan and their community plan. Federal/provincial policies and initiatives as well as business products and services have a direct impact on helping municipalities and local stakeholders achieve corporate and community-wide emissions targets.
This graphic shows municipal spheres of influence over different sources of GHG emissions. It can be adapted to each local context.
Municipal spheres of influence over different sources of GHG emissions
Which sources of GHG emissions are included in deep decarbonization plans?
When it comes to measuring and reporting GHG emissions, most deep decarbonization plans in Canada focus on two categories of GHG emissions:
Direct GHG emissions generated from within the municipality
Indirect emissions associated with the purchase of grid-supplied energy
The Greenhouse Gas Protocol (GHG Protocol) identifies these as Scope 1 and Scope 2 emissions respectively. Increasingly, Scope 3 emissions are also being considered. This third category includes all other indirect GHG emissions that occur outside the municipal boundary due to consumption or investment by people within the municipality. The three scopes can be used in corporate and community-wide climate action plans to categorize sources of GHG emissions.
Sources and boundaries of municipal GHG emissions
Graphic is an adaptation. Original image belongs to GHG Protocol developed by World Resources Institute and World Business Council for Sustainable Development.
Leading edge deep decarbonization plans are also starting to consider embodied carbon, which is the total GHG emissions associated with a material over the product's lifecycle. For example, embodied carbon in an infrastructure project includes emissions from the extraction, manufacturing and transportation of building materials, as well as emissions associated with construction and demolition. Embodied carbon is separate from operational carbon, which is GHG emissions resulting from the use and operation of built infrastructure.
What commitments are Canadian municipalities making to decarbonize?
In 2018, the Intergovernmental Panel on Climate Change (IPCC) determined that a 45 percent reduction in global GHG emissions is required by 2030 (based on 2010 levels) and carbon neutrality is required by 2050, to limit global warming to 1.5 degrees Celsius. The IPCC report, released in August 2021, reinforces the urgent need to rapidly reduce global GHG emissions on a large scale. In Canada, the federal government has pledged to carbon neutrality (or net-zero) by 2050, and a 40 to 45 percent reduction in GHG emissions below 2005 levels by 2030. Across Canada, approximately 500 municipalities have declared a climate emergency, and many have adopted the federal GHG emissions reduction targets (see Random Acts of Green) .
Nearly 500 Canadian municipalities have committed to the Partners for Climate Protection (PCP) program developed jointly by ICLEI–Local Governments for Sustainability Canada (ICLEI Canada) and FCM. The PCP program's five-step milestone framework guides municipalities as they take action to reduce GHG emissions. Additionally, over 50 municipalities are members of the Global Covenant of Mayors for Climate & Energy in Canada (GCoM), a collaboration between FCM, ICLEI Canada, the GCoM Secretariat, and the European Union. Like the PCP program, GCoM signatories commit to taking specific action to combat climate change.
PCP member municipalities are required to set locally relevant emissions reductions targets, and many have revised their targets to at least an 80 percent reduction in GHG emissions by 2050, with varying baseline years. Recently, some have set an even more ambitious goal of carbon neutrality by 2050.
What steps can Canadian municipalities take to decarbonize?
To achieve deep decarbonization, we suggest municipalities use the PCP framework and pursue additional steps. This table provides an overview of suggested actions that Canadian municipalities can implement and the current state in Canada as of 2020. Information in the current state in Canada column was partly derived from interviews with 11 partner organizations and 51 local governments engaged in MCIPS's Transition 2050 (T2050) initiative.
PCP framework (applies to corporate and community-wide climate action planning)
Suggested steps for deep decarbonization
Current state in Canada (as of 2020)
Sign up to be a PCP member
Recognize the urgent need to address climate change and declare a climate emergency.
More than 500 municipalities in Canada have declared a climate emergency. All municipalities that were interviewed recognize climate change as one of the pressing issues in their community.
Milestone 1: Complete a GHG emissions inventory and business-as-usual emissions forecast for the next 10 years
Use the GHG Protocol to calculate scope 1 and scope 2 emissions.
Identify 2050 community-wide climate targets and work backwards to determine the remaining carbon budget (back-casting approach).
While most municipalities that were interviewed have conducted a corporate GHG inventory, a community-wide GHG inventory, or both, only some have adopted a back-casting approach to determine the allowable amount of additional emissions for the community.
Milestone 2: Set emissions reduction target
Set ambitious short- and long-term climate targets, in line with the latest science (i.e., carbon neutrality by 2050, and 45% reduction from 2010 levels by 2030).
Most municipalities that were interviewed have adopted ambitious corporate and community-wide GHG emissions reduction targets and interim targets. Most are aiming for an 80% reduction in GHG emissions by 2050, with varying baseline years, or for carbon neutrality.
Milestone 3: Develop a local action plan
Identify priority areas and sectors, and significant GHG emissions reduction opportunities.
Adopt a back-casting approach using climate scenario modelling to identify GHG reduction trajectories that will lead to carbon neutrality.
Align climate action plans with other departmental plans.
Engage the appropriate stakeholders and partners during the planning phase.
All municipalities that were interviewed have recently completed or are in the process of developing climate action plans that often include both a corporate and a community-wide plan. Most still need to consider how to align their decarbonization plans and actions with municipal services and operations, budgeting, strategic priorities and direction, and the identified GHG reductions trajectory of the community.
Milestone 4: Implement the local action plan(s)
Dedicate a climate change staff person or team to support implementation of the plan.
Establish an appropriate governance structure to implement the plan.
Only a few of the municipalities that were interviewed have begun to implement their plans, and most lack a clear implementation plan and have yet to develop appropriate governance structures for the implementation stage.
Milestone 5: Monitor progress and report results
Support a cross-departmental entity to oversee corporate efforts and a cross-sector entity to oversee community-wide efforts.
Establish a consistent, long-term reporting structure for progress on community-wide decarbonization.
Most of the municipalities that were interviewed need to increase their efforts to formally monitor and report on progress of their community-wide decarbonization efforts.
Ensure continuous improvement
Recognize that deep decarbonization requires a cyclical management system that includes updating the plan and interim targets approximately every five years.
The deep decarbonization plans and planning cycles for many of the municipalities that were interviewed build on their earlier commitments and initiatives, putting them in a cycle of continuous improvement.
What are key success factors for deep decarbonization?
Canadian municipalities often encounter multiple barriers as they work to meet their corporate and community-wide GHG emissions reduction commitments. The table below shows key success factors for municipalities in reaching climate targets, as identified by T2050 initiative participants, along with suggested actions to help climate action teams work toward decarbonization. Depending on the municipality, members of the climate action team might include elected officials, senior management and community leaders.
Suggested actions for municipal climate action teams
Gather support from senior management and council
Encourage participation in networks such as the GCoM, PCP, Climate Caucus, and those of other national, provincial and/or local non-governmental organizations.
Share resources and training from FCM, Canadian Institute for Climate Choices, QUEST, and other similar organizations.
Identify and support a climate champion on council to encourage climate action.
Ensure access to data to monitor progress on the achievement of interim targets.
Build community support
Collaborate with climate champions (e.g., elected officials, academics, community activists, business leaders) in the community to promote climate and decarbonization initiatives
Ensure equity, diversity, inclusion and meaningful participation of equity-seeking groups in all decision-making processes.
Craft messages to convey the co-benefits of decarbonization and the cost of inaction.
Support community groups working on climate action.
Understand and communicate the comparative cost of fossil fuel vs renewable energy sources
Use scenario forecasting and climate budgeting to estimate long-term cost options, including maintenance and an increasing price on carbon.
Calculate the return on investment and savings from potential investments in renewable resources.
Calculate the true cost of using fossil fuels, including the health impacts.
Align resources and finances with climate objectives
Explore financing mechanisms such as green bonds.
Collaborate with neighbouring municipalities to jointly apply for funding and investment.
Strategically align climate initiatives with municipal operations and services.
Join international or regional networks working on climate change capacity building.
Budget for decarbonization actions in upcoming budget cycles to ensure continuity of climate actions and decarbonization efforts.
Reduce redundancy in climate-related programs.
Adopt a long-term perspective to budgeting and resource allocation, and consider long-term costs for non-action versus immediate acquisition cost.
Align corporate operations with climate objectives
Adopt change management strategies and promote change within the corporate culture.
Establish a clear mandate to work on climate change.
Ensure decision-making considers climate change and aligns with climate targets and actions.
Increase cross-departmental collaboration by establishing an internal working group.
Use climate action staff or teams as facilitators to bring a climate lens into other departments.
Introduce a climate budget as part of the accounting and auditing processes.
Gather support from other orders of government
Increase advocacy efforts to all orders of government and political sectors.
Next steps for municipal climate leaders
Here are some suggestions on how you can get started on the path to deep decarbonization.
Sign up to be a member of the Partners for Climate Protection (PCP) program.
Review your local GHG reduction targets for alignment with science-based targets.
Consult with community members and senior municipal leaders on the decarbonization pathways that are right for your municipality.
Use GMF's Municipal Energy Roadmap to identify targeted solutions to achieve significant GHG emissions reductions in municipal and community buildings.
Join municipal climate action networks like Climate Caucus.
Resources for decarbonization planning
Examples of corporate and community-wide plans with ambitious 2050 climate targets:
City of Bridgewater: Community Energy Investment Plan
City of Guelph: Community Energy Initiative
City of Halifax: HalifACT
City of Montreal: Climate Plan 2020 – 2030
City of Toronto: TransformTO
City of Vancouver: Greenest City Action Plan; Climate Emergency Action Plan
Region of Durham: Durham Community Energy Plan
Examples of PCP compliant climate action plans across Canada
Tools, reports and programs:
Infrastructure Canada: General guidance on adopting a climate lens
C40 Knowledge Hub: Climate budget approach
C40 Climate Action Planning Resource Centre: Consumption-based GHG emissions
University of Waterloo: Amelia Clarke's research on climate mitigation and decarbonization
Carbon Leadership Forum: Embodied Carbon in Construction Calculator (EC3) tool
GHG Protocol: Global Protocol for Community-Scale Greenhouse Gas Emission Inventories
QUEST: Smart Energy Communities Benchmark
Samantha Linton, Amelia Clarke and Laura Tozer: Strategies and Governance for Implementing Deep Decarbonization Plans at the Local Level
Smart Prosperity Institute: Sustainability Alignment Manual: Using market-based instruments to accelerate sustainability progress at the local level
CUSP: Energy Poverty and Equity Explorer tool
Climate networks and organizations:
C40 Network
Canadian Institute for Climate Choices
Canadian Urban Sustainability Practitioners
Carbon Neutral Cities Alliance
Clean Air Partnership
Climate Caucus
Farmers and Climate Solutions
Global Covenant of Mayors in Canada
Partners for Climate Protection (ICLEI Canada and FCM)
Smart Prosperity Institute
The Natural Step Canada
Vivre en Ville
About this factsheet
This factsheet was created through a partnership between FCM's Municipalities for Climate Innovation Program (MCIP) and the University of Waterloo's Dr. Amelia Clarke and Ying Zhou. The information is based on literature reviews and interviews with 11 partner organizations and 51 local governments that were part of MCIP's Transition 2050 (T2050) initiative. T2050 provided grants to regions of all sizes in Canada to help them reach significant carbon emissions reduction targets.
The factsheet also draws on Deep Decarbonization in Cities: Pathways, Strategies, Governance Mechanisms and Actors for Transformative Climate Action, by Samantha Hall Linton.
How are cities and communities of all sizes tackling their environmental challenges? Find out from our five-part webinar series on innovations and opportunities in municipal energy, waste, water, transportation and land use initiatives.
Case study: How building retrofits can lead to GHG reductions


text:
#pragma once
#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <utility>

namespace Aws
{
namespace Utils
{
namespace Json
{
  class JsonValue;
  class JsonView;
} // namespace Json
} // namespace Utils
namespace imagebuilder
{
namespace Model
{

  /**
   *
The infrastructure used when building EC2 AMIs.

See Also:
   AWS
   * API Reference

   */
  class AWS_IMAGEBUILDER_API InfrastructureConfigurationSummary
  {
  public:
    InfrastructureConfigurationSummary();
    InfrastructureConfigurationSummary(Aws::Utils::Json::JsonView jsonValue);
    InfrastructureConfigurationSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
    Aws::Utils::Json::JsonValue Jsonize() const;

    /**
     *
The Amazon Resource Name (ARN) of the infrastructure configuration.

     */
    inline const Aws::String& GetArn() const{ return m_arn; }

    /**
     *
The Amazon Resource Name (ARN) of the infrastructure configuration.

     */
    inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }

    /**
     *
The Amazon Resource Name (ARN) of the infrastructure configuration.

     */
    inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }

    /**
     *
The Amazon Resource Name (ARN) of the infrastructure configuration.

     */
    inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }

    /**
     *
The Amazon Resource Name (ARN) of the infrastructure configuration.

     */
    inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }

    /**
     *
The Amazon Resource Name (ARN) of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithArn(const Aws::String& value) { SetArn(value); return *this;}

    /**
     *
The Amazon Resource Name (ARN) of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}

    /**
     *
The Amazon Resource Name (ARN) of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithArn(const char* value) { SetArn(value); return *this;}

    /**
     *
The name of the infrastructure configuration.

     */
    inline const Aws::String& GetName() const{ return m_name; }

    /**
     *
The name of the infrastructure configuration.

     */
    inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }

    /**
     *
The name of the infrastructure configuration.

     */
    inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }

    /**
     *
The name of the infrastructure configuration.

     */
    inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }

    /**
     *
The name of the infrastructure configuration.

     */
    inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }

    /**
     *
The name of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithName(const Aws::String& value) { SetName(value); return *this;}

    /**
     *
The name of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}

    /**
     *
The name of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithName(const char* value) { SetName(value); return *this;}

    /**
     *
The description of the infrastructure configuration.

     */
    inline const Aws::String& GetDescription() const{ return m_description; }

    /**
     *
The description of the infrastructure configuration.

     */
    inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }

    /**
     *
The description of the infrastructure configuration.

     */
    inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }

    /**
     *
The description of the infrastructure configuration.

     */
    inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }

    /**
     *
The description of the infrastructure configuration.

     */
    inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }

    /**
     *
The description of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}

    /**
     *
The description of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}

    /**
     *
The description of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithDescription(const char* value) { SetDescription(value); return *this;}

    /**
     *
The date on which the infrastructure configuration was created.

     */
    inline const Aws::String& GetDateCreated() const{ return m_dateCreated; }

    /**
     *
The date on which the infrastructure configuration was created.

     */
    inline bool DateCreatedHasBeenSet() const { return m_dateCreatedHasBeenSet; }

    /**
     *
The date on which the infrastructure configuration was created.

     */
    inline void SetDateCreated(const Aws::String& value) { m_dateCreatedHasBeenSet = true; m_dateCreated = value; }

    /**
     *
The date on which the infrastructure configuration was created.

     */
    inline void SetDateCreated(Aws::String&& value) { m_dateCreatedHasBeenSet = true; m_dateCreated = std::move(value); }

    /**
     *
The date on which the infrastructure configuration was created.

     */
    inline void SetDateCreated(const char* value) { m_dateCreatedHasBeenSet = true; m_dateCreated.assign(value); }

    /**
     *
The date on which the infrastructure configuration was created.

     */
    inline InfrastructureConfigurationSummary& WithDateCreated(const Aws::String& value) { SetDateCreated(value); return *this;}

    /**
     *
The date on which the infrastructure configuration was created.

     */
    inline InfrastructureConfigurationSummary& WithDateCreated(Aws::String&& value) { SetDateCreated(std::move(value)); return *this;}

    /**
     *
The date on which the infrastructure configuration was created.

     */
    inline InfrastructureConfigurationSummary& WithDateCreated(const char* value) { SetDateCreated(value); return *this;}

    /**
     *
The date on which the infrastructure configuration was last updated.

     */
    inline const Aws::String& GetDateUpdated() const{ return m_dateUpdated; }

    /**
     *
The date on which the infrastructure configuration was last updated.

     */
    inline bool DateUpdatedHasBeenSet() const { return m_dateUpdatedHasBeenSet; }

    /**
     *
The date on which the infrastructure configuration was last updated.

     */
    inline void SetDateUpdated(const Aws::String& value) { m_dateUpdatedHasBeenSet = true; m_dateUpdated = value; }

    /**
     *
The date on which the infrastructure configuration was last updated.

     */
    inline void SetDateUpdated(Aws::String&& value) { m_dateUpdatedHasBeenSet = true; m_dateUpdated = std::move(value); }

    /**
     *
The date on which the infrastructure configuration was last updated.

     */
    inline void SetDateUpdated(const char* value) { m_dateUpdatedHasBeenSet = true; m_dateUpdated.assign(value); }

    /**
     *
The date on which the infrastructure configuration was last updated.

     */
    inline InfrastructureConfigurationSummary& WithDateUpdated(const Aws::String& value) { SetDateUpdated(value); return *this;}

    /**
     *
The date on which the infrastructure configuration was last updated.

     */
    inline InfrastructureConfigurationSummary& WithDateUpdated(Aws::String&& value) { SetDateUpdated(std::move(value)); return *this;}

    /**
     *
The date on which the infrastructure configuration was last updated.

     */
    inline InfrastructureConfigurationSummary& WithDateUpdated(const char* value) { SetDateUpdated(value); return *this;}

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline const Aws::Map<Aws::String, Aws::String>& GetResourceTags() const{ return m_resourceTags; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline bool ResourceTagsHasBeenSet() const { return m_resourceTagsHasBeenSet; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline void SetResourceTags(const Aws::Map<Aws::String, Aws::String>& value) { m_resourceTagsHasBeenSet = true; m_resourceTags = value; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline void SetResourceTags(Aws::Map<Aws::String, Aws::String>&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags = std::move(value); }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& WithResourceTags(const Aws::Map<Aws::String, Aws::String>& value) { SetResourceTags(value); return *this;}

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& WithResourceTags(Aws::Map<Aws::String, Aws::String>&& value) { SetResourceTags(std::move(value)); return *this;}

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& AddResourceTags(const Aws::String& key, const Aws::String& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(key, value); return *this; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& AddResourceTags(Aws::String&& key, const Aws::String& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(std::move(key), value); return *this; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& AddResourceTags(const Aws::String& key, Aws::String&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(key, std::move(value)); return *this; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& AddResourceTags(Aws::String&& key, Aws::String&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(std::move(key), std::move(value)); return *this; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& AddResourceTags(const char* key, Aws::String&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(key, std::move(value)); return *this; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& AddResourceTags(Aws::String&& key, const char* value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(std::move(key), value); return *this; }

    /**
     *
The tags attached to the image created by Image Builder.

     */
    inline InfrastructureConfigurationSummary& AddResourceTags(const char* key, const char* value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(key, value); return *this; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;}

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;}

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; }

    /**
     *
The tags of the infrastructure configuration.

     */
    inline InfrastructureConfigurationSummary& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; }

  private:

    Aws::String m_arn;
    bool m_arnHasBeenSet;

    Aws::String m_name;
    bool m_nameHasBeenSet;

    Aws::String m_description;
    bool m_descriptionHasBeenSet;

    Aws::String m_dateCreated;
    bool m_dateCreatedHasBeenSet;

    Aws::String m_dateUpdated;
    bool m_dateUpdatedHasBeenSet;

    Aws::Map<Aws::String, Aws::String> m_resourceTags;
    bool m_resourceTagsHasBeenSet;

    Aws::Map<Aws::String, Aws::String> m_tags;
    bool m_tagsHasBeenSet;
  };

} // namespace Model
} // namespace imagebuilder
} // namespace Aws