These two words were inscribed on the oracle-shrine of Apollo at Delphi, Greece (6th century B.C.).
The Delphic sanctuary began to be internationally renowned in the eighth century B.C. because it housed an oracular shrine in which a prophetess, the Pythia, spoke the will of Apollo in response to questions from visiting petitioners. The Delphic oracle operated for a limited number of days over nine months of the year, and demand for its services was so high that the operators of the sanctuary rewarded generous contributors with the privilege of jumping to the head of the line. The great majority of visitors to Delphi consulted the oracle about personal matters such as marriage and having children.
In the Dragon's nihilistic world-view, material possessions are all you can (literally) count upon. One must beware of strangers because they can take what you have. This may be all the Dragon can mean by "Know yourself" - aside from a general mockery of the notion that anyone can know anything at all, let alone oneself.
But who is Grendel? With his noticeable lack of interest in piling up gold, what does he come to know about himself throughout the novel?


Thank you for your interest in working with SwimMetro Management, Inc. We are excited that you have taken the first step towards employment with SwimMetro by visiting our internet site. SwimMetro manages only the finest community and country club pools throughout the Greater Richmond area. We provide extensive training and around the clock support to all of our staff members throughout the season.
We will be hiring Pool Managers, Assistant Managers, Head Guards, Lifeguards, and Swim Instructors for the upcoming 2019 swim season. The professionalism, maturity, and commitment level of each staff member is critical to our success. We are looking for responsible, dependable, hardworking individuals to fill these positions. If you are interested in applying for one of these Pool Manager, Assistant Manager, Head Guard, Lifeguard, and Swim Instructor positions, please follow the steps below to complete the application process.
If you are interested in any of our year-round instructor, supervisor and/or maintenance positions, please email your interest, availability and resume to sammy.robillos@swimmetro.com to inquire about potential openings.
The steps below provide a high level overview of our application process. For specific details regarding each of the steps, please review/print our Employment Process Guide.
Create a SwimMetro online account. Please ensure that you record your user ID and password. This account will be used throughout our application process.
Complete our online employment application. After submitting your application, please allow up to a week to process your application.
Complete/provide your American Red Cross certifications to SwimMetro.
Monitor your email and the message board below for your pool placement notice, scheduling and orientation information. You can place your uniform order anytime by clicking here.
Be sure to complete the application process as soon as possible, as pool assignments are granted on a first come, first serve basis. If you have any questions, please contact Sammy Robillos, Director of HR, at 1-804-304-4096 or via e-mail at sammy.robillos@swimmetro.com. You can also sign up for our email newsletter.
Check below for current news and information from your SwimMetro Management Team.
4-20-2019 Training & Certification Please review the training dates listed below (3), as you will not be eligible to work until you have completed the necessary training. All employees will be paid at their training rate and training hours will be added to the first pay-check after Memorial Day Weekend. Email sammy.robillos@swimmetro.com with your name and training date to register.
4-20-2019 Training & Certification 1. New Employee Orientation - Required for ALL NEW Employees. Orientation Dates: Friday, May 10th from 6-8PM at Evergreen - 1201 Walton Bluff Parkway Midlothian VA 23113. Saturday, May 11th from 1-3PM at Evergreen - 1201 Walton Bluff Parkway Midlothian VA 23113. Saturday, May 18th from 1-3PM at Evergreen - 1201 Walton Bluff Parkway Midlothian VA 23113. Sunday, May 19th from 1-3PM at Evergreen - 1201 Walton Bluff Parkway Midlothian VA 231132.
4-20-2019 Training & Certification 2. Manager On Duty (MOD) Training - Required for ALL NEW and RETURNING Head Guards, Assistant Managers & Managers. MOD Training Dates: Saturday, May 11th from 8-11AM at SwimMetro - 310 Turner Rd Suite C Richmond VA 23225. Wednesday, May 15th from 6-9 PM at SwimMetro - 310 Turner Rd Suite C Richmond VA 23225. Saturday, May 18th from 8-11AM at SwimMetro - 310 Turner Rd Suite C Richmond VA 23225.
4-20-2019 Training & Certification 3. On-Site Training Required for ALL NEW and RETURNING Employees. Training date to be communicated to employees by the pool managers by mid - May.
4-13-2019 Pool Placement Pool Placement has been posted! If you have completed the Pool Placement Process, you can now view your official pool placement in the Work Assignment section of your SwimMetro account.


Well, let's cut all this extra work out and just finally decide on what the cheapest grocery store in America is. According to the dunnhumby study, which surveyed about 7,000 U.S. households and used public financial date, there were 13 winners of grocery stores by lowest prices. Now, some we don't have in the corridor but the number one cheapest grocery store in America we do have and it is... Aldi! That's right, due to private-label products at low prices, smaller stores and customers bringing their own bags, the chain grocery store has secured the #1 spot.


text:
Tracy Sherlock
This week in B.C. schools: Online learning and TV ads
This screenshot is from the back-to-school advertisement with Dr. Bonnie Henry.
B.C.'s two biggest school districts, Vancouver and Surrey, announced they would be offering online "transition" options for students. For most of the summer, education authorities said the only online options would be distance learning, which can require registration outside of a student's regular school, or homeschooling. More than 40,000 people signed a petition asking for an online option and teachers continued to call for this to reduce the number of students in any given classroom.
Last week, the federal government announced $2 billion in funding to make schools safe during the pandemic, but there's no word yet on how B.C.'s share will be used. On the same day as that announcement, B.C. education minister Rob Fleming said districts could offer remote learning options.
Both Vancouver and Surrey's online learning plans are called "transition" plans – in other words, they are for students who have the intention of eventually returning to in-person learning. In Vancouver, 28 per cent of parents indicated in a survey they would prefer their children to learn online for now.
The Vancouver School Board plan for elementary will provide assignments and check-in support from the school for about 1.5 to two hours each week and parents will need to support children's learning. Students will keep their spot in their school and there will be some opportunity to remain connected to the classroom as well as different dates to return to in-class learning, VSB documents show. Students with special needs will continue to have individual learning plans and be supported by the school.
Surrey's superintendent of schools Jordan Tinney said elementary students and Grade 8s and 9s in that district will have the option of a program with online, multi-age classes five mornings a week that is attached to their local school. In the afternoons, teachers will work together, be available to parents and gradually start to attend school in person. For secondary students, Surrey is collecting survey information to determine how many students want this option.
In other news this week, the B.C. government released a TV advertisement with Provincial Health Officer Dr. Bonnie Henry talking about the back-to-school plan, set in a classroom with some children. Global News reported that the government said in a statement that "in order to videotape the ad, the number of students in the room was limited for health and safety reasons and the children were placed at safe distances from each other." Teachers, who have been critical of the government's plan due to concerns that social distancing won't be possible in classrooms, were not impressed. Dr. Henry said the ad was not intended to represent a typical classroom, but was a conversation between herself and children and parents.
When asked about the ad, Dr. Bonnie Henry said it wasn't intended to represent a typical classroom, but rather was a public health conversation between herself and students and parents.
"When we're talking about schools and a regular day-to-day basis for schools, what we're looking at is the classroom is your unit of connection and that is a set, controlled environment and we know it will be the same children every day that will be in that small group with the same adults every day," Dr. Henry said. "The numbers of teachers and children that they will interact with is contained and limited and we will have distancing within those classroom settings, within those small numbers of groups of children."
But B.C.'s back to school plan says: "People in a learning group don't need to stay two metres apart but they must limit physical contact."
Other notable education stories this week:
- In New York, the start of school is now pushed back by 10 days to September 21, after teachers threatened to strike, the New York Times reports.
- Education unions in Ontario have filed a labour board challenge over the province's back-to-school plan, the Globe and Mail reports.
- Families without formal immigration status in British Columbia have extra concerns about covid-19, the Tyee reports.
- Public health officials in Alberta are asking teachers and school staff members to get covid-19 tests before school starts next week, the CBC reports.
Tracy.sherlock@gmail.com
To make sure you never miss a post, click here to subscribe.
Making the Grade part 3: Safe housing, graduate programs should be included, students say
Making the Grade, part 2: Social work student was stunned to find out she could get free tuition
Making the grade: B.C. tuition waiver program made education possible for hundreds of young people
©2020 BC Education Matters

redpajama_set_name: RedPajamaCommonCrawl


I've not run mine at a track but it sounds about right. Unless you can get the launch RPM to about 3k then your 60' will kill the quarter time. Maybe next time see if you can hold the brake and stall it up a little? But now knowing how the standard converter will handle it I woulnd't really reccommend it.
Like I always say, the auto box's ratios are taller than most professional basketballers, and for no apparant reason.
what is the elevation at the track?
also, the reason you cannot launch is because you have an automatic which has a torque converter which has a stall around 2000 rpm which will not let you rev any higher than that while you are at a stop, in gear.
Last edited by 98vtec; 07-13-2008 at 01:06 AM.
they do make a difference. You lose acceleration with a larger diameter wheel and acceleration is everything.


Finance Minister Shri Pranab Mukherjee has asked the Regional Rural Banks (RRBs) to bring their Non-Performing Assets (NPAs) below 5% by this year itself. Finance Minister also announced the wage revision of the pay-scale and allowances of the employees of the RRBs corresponding to those of Nationalised Banks as per 9th Bipartite Settlement. The additional cost burden of the arrears on this account would be about Rs. 791 crores. He was addressing the annual review meeting of Chairmen of RRBs and General Managers of Sponsor Banks, here today. Shri Mukherjee asked the RRBs to speed up their activities to expand their branches on platform of Core Banking Solutions. The Finance Minister emphasized upon use of new technology including Business Correspondents, mobile banking vans, tele-banking etc. to provide banking services to entire population of the country, especially in the rural areas.
Secretary Financial Services, Shri R. Gopalan, Deputy Governor RBI, Dr. K.C. Chakravarty, Chairman NABARD, Shri U.C.Sarangi and Additional Secretary, Financial Services, Shri Rakesh Singh were also present on this occasion among others.
"I am happy to be here in the annual review meeting of Chairmen of RRBs and General Managers of Sponsor Banks. Such meetings are being organized regularly since January 2007 and have helped in preparing a realistic action plan for strengthening the RRBs on a sustainable growth trajectory. I hope that this meeting will help us in further consolidating the efforts being made by the RRBs, Sponsor Banks, Govt Of India, NABARD and the Reserve Bank of India.
As you are aware, the first batch of RRBs were established on 2 October 1975 and their number gradually increased to 196 in 1986. The RRBs were designed as unique financial institutions with exclusive focus on development of rural areas. It was expected that these institutions would provide efficient financial services at affordable cost to the disadvantaged sections of the rural population.
Government of India had initiated a series of measures in the recent years to strengthen the RRBs to emerge as strong financial institutions for meeting the financial needs of the rural population. In the wake of the announcement in the Union Budget 2007-08, 27 RRBs which had negative networth as on 31 March 2007 have been recapitalized. A conducive policy environment has been created for expanding the branch network of RRBs. The branch licencing norms have been made flexible. RRBs have responded to these measures and have opened 716 branches during the last 02 years.
For further improving the financial health of RRBs, the Government of India started the process of structural consolidation of RRBs by amalgamating RRBs sponsored by the same Sponsor Banks within the State. The process of amalgamation is almost complete. As on date, there are 82 RRBs (46 amalgamated and 36 stand alone) with a branch network of 15,475 branches covering 619 districts, 26 States and 01 Union Territory (Puducherry).
RRBs are expected to play a vital role in promoting financial inclusion in the country. To achieve this objective, RRBs are being supported out of the Financial Inclusion Fund and Financial Inclusion Technology Fund set up in NABARD. NABARD had launched a pilot project for facilitating Financial Inclusion with ICT in 15 RRBs. The pilot project is expected to cover 150 villages in 30 districts of 14 States. All RRBs need to draw up individual plans for financial inclusion in their areas of operation at the earliest and also adopt the BC / BF model.
I am happy to note that RRBs have shown improved performance in many areas. The total loan outstanding of RRBs as on 31 March 2010 was Rs.83,562 crore whereas the deposits amounted to Rs.1,42,814 crore. The ground level credit flow of RRBs has improved from Rs.43,367 crore to Rs.56,268 crore thereby recording an appreciable growth rate of about 30%. A significant part of their performance is substantial lending to the priority sector. RRBs are mandated to lend 60% of their loans to the priority sector. During the last three years, RRBs have not only achieved the target fixed for the purpose but have maintained priority sector loans above 80%. I am also happy to note that RRBs have maintained their focus on agriculture as over 61% of the priority sector loans are for agriculture sector. The RRBs have also improved the health of their credit portfolio as the net NPA has now reduced to 1.62%. Only three RRBs are now making losses.
There is no doubt that the enabling environment created by Government of India, RBI and NABARD has helped the RRBs in improving their performance. Still, there are many areas of concern. 30 RRBs had accumulated losses to the tune of Rs.1,808 crore. All weak RRBs need to chalk out a time bound action plan to wipe out the accumulated losses and simultaneously achieve all the prudential norms.
In the last review meeting held in August 2009, I had expressed concern that a very large number of RRBs continued to have low CRAR. It was also observed during the review that some of the RRBs presently having reasonable CRAR would also be not able to maintain it on account of certain expenditure they might have to incur in the coming years for payment of enhanced wages and installation of CBS. To address this situation, a Committee was set up under the Chairmanship of Dr. K C Chakravarty, Deputy Governor, RBI to analyse the financials of RRBs and suggest measures so that each RRB has atleast 9% CRAR by 2012. The Committee has already submitted their report. The report is now under examination in consultation with NABARD and RBI. I am sure the implementation of the feasible recommendations of the Committee would help the RRBs to emerge as stronger financial institutions.
It is imperative that all RRBs embrace the latest technology for providing services to their customers. I have been constantly laying emphasis that all RRBs in a time bound matter should have all their branches under Core Banking Solution. I understand that 21 RRBs have now covered their entire bank branch network under CBS. 10 more RRBs are on the way to achieve full coverage of their branches under CBS. However, it is a matter of concern that CBS is yet to take roots in 51 RRBs. I would urge upon all the RRBs and their sponsor banks to attach utmost priority to CBS and in today's meeting a time bound programme should be fixed for CBS implementation for each of the RRBs.
The sponsor banks also need to closely monitor the performance of their sponsored RRBs and provide timely guidance to them wherever necessary. It has been brought to my notice that some of the sponsor banks have withdrawn the Chairmen of RRBs before the completion of their tenure. Though the premature withdrawal must be for valid reasons, this could affect the performance of the RRBs in an adverse way, besides impacting the morale of the staff of RRBs. I suggest that the sponsor banks take all precautions at the time of selection of Officers for the post of Chairman of RRB so as to ensure that they continue to guide the RRBs for a period of at least three years.
I understand that of the 46 amalgamated RRBs, 39 are now scheduled by Reserve Bank of India. In case of 7 other RRBs, NABARD is required to undertake their inspection with reference to their annual accounts as on 31 March 2010. I would impress that this process of scheduling the remaining banks should be completed at the earliest.
I have noted that RRBs (officers and employees) Service Regulations 2010 have since been issued by GOI and the process has been initiated by the RRBs for adoption of these regulations. The new Appointment and Promotion (officers and employees) Rules have already been issued on 13.7.2010 for publication in the Gazette of India. These measures should help in improving productivity and business of the RRBs.
Keeping in view the expectations from the RRBs, the training and capacity building of RRB Officers and Staff need to be given utmost priority. A Committee set up for the purpose has identified a number of areas for capacity building of RRBs. All the RRBs should prepare a comprehensive plan for meeting the training needs of its staff members. A mechanism should be created for providing funding support to RRBs for conducting these training programme duly involving NABARD, sponsor banks and the RRB itself.
In the light of the ninth bipartite settlement between the Indian Banks Association representing the managements of the Public Sector Banks and the United Forum of Bank Union representing the associations/unions of all PSBs, the wage revision of the pay and allowances of the RRBs has also been taken up. The additional cost burden of the arrears is likely to be Rs 791 crores , which will bring down the total profits of the RRBs from Rs 2374 crores , as on 31st March, 2010 to Rs 1615 crores , adjusting for the additional cost burden of arrears on the RRBs. This is likely to lead to more RRBs going into losses against only three loss making RRBs at present. Yet the Government is committed towards fulfilling its obligation of giving equal pay scales corresponding to those of nationalized banks to the RRB employees. I am happy to announce that we are fulfilling the Government commitment of giving equal pay scales corresponding to those of nationalized banks to the RRB employees, as per Ninth Bipartite Settlement.


text:
A huge rebuilding challenge awaits the Caribbean
The Caribbean islanders from Cuba to Antigua have already started counting the cost of the devastation caused by hurricane Irma on Sunday after the killer storm left a huge trail of death chaos and destruction. The islanders are expecting that this region of the Caribbean that is completely dependent on tourists could take a number of years to recover. The killer storm is believed to have killed about 28 people across the region devastating almost everything with no mercy to housing, communications and power supplies which made the island simply cut off from the rest of the world. The estimated cost of the total damage is expected to amount to a total of billions of dollars.
The poor islanders took cover in any place they found because of the killer hurricane, Irma tore off the roofs of buildings, killed livestock flipped cars causing widespread devastation from the Leeward Island across Puerto Rico and Hispaniola, then into Cuba before attacking Florida. Waves of around 11 feet smashed homes and businesses along the sea in the Cuban capital city of Havana on Sunday morning. Going further eastward, the high-intensity winds devastated Varadero which is the most important tourist resort of the island. Osmel de Armas who works as an aquatic photographer on the beach at the devastated resort said that it was just a complete disaster and it would take a lot of time and hefty work to make Varadero back to what it once was again.
The hotels that are located in the front of the sea in Havana were all evacuated and rescue workers spent the whole night rescuing people from their homes in the center of the city since the sea penetrated to unbelievable depths in the area that is prone to flooding. Donald Trump, the president of the United States of America issued a disaster declaration for Puerto Rico on Sunday where the killer storm has killed 3 people and left hundreds of thousands of people without electricity. Donald Trump also expanded federal funds that were available to the US Virgin Islands which suffered extreme damage in terms of homes and infrastructure. Moving further eastward in the Caribbean, the killer storm battered the islands of Barbuda and St. Martin where people began to emerge out of the shelters to the devastated areas after the storm weakened.


We would like to invite you to drop by the fifty fifty artist collective on Saturday, November 3rd between 12:00PM and 3:00PM to visit and have tea and snacks with artists Audie Murray and Kazmear Johnston on the last day of their exhibit. This will be a great opportunity to talk with the artists about the works and hear about their collaborative process. The artists also invite you to braid fabric with them - the braids will be featured in an upcoming work by Audie Murray that addresses themes of creating with community.


text:
#pragma once
#include <aws/support/Support_EXPORTS.h>
#include <aws/support/SupportErrors.h>
#include <aws/core/client/AWSError.h>
#include <aws/core/client/ClientConfiguration.h>
#include <aws/core/client/AWSClient.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/json/JsonSerializer.h>
#include <aws/support/model/AddAttachmentsToSetResult.h>
#include <aws/support/model/AddCommunicationToCaseResult.h>
#include <aws/support/model/CreateCaseResult.h>
#include <aws/support/model/DescribeAttachmentResult.h>
#include <aws/support/model/DescribeCasesResult.h>
#include <aws/support/model/DescribeCommunicationsResult.h>
#include <aws/support/model/DescribeServicesResult.h>
#include <aws/support/model/DescribeSeverityLevelsResult.h>
#include <aws/support/model/DescribeTrustedAdvisorCheckRefreshStatusesResult.h>
#include <aws/support/model/DescribeTrustedAdvisorCheckResultResult.h>
#include <aws/support/model/DescribeTrustedAdvisorCheckSummariesResult.h>
#include <aws/support/model/DescribeTrustedAdvisorChecksResult.h>
#include <aws/support/model/RefreshTrustedAdvisorCheckResult.h>
#include <aws/support/model/ResolveCaseResult.h>
#include <aws/core/client/AsyncCallerContext.h>
#include <aws/core/http/HttpTypes.h>
#include <future>
#include <functional>

namespace Aws
{

namespace Http
{
  class HttpClient;
  class HttpClientFactory;
} // namespace Http

namespace Utils
{
  template< typename R, typename E> class Outcome;

namespace Threading
{
  class Executor;
} // namespace Threading
} // namespace Utils

namespace Auth
{
  class AWSCredentials;
  class AWSCredentialsProvider;
} // namespace Auth

namespace Client
{
  class RetryStrategy;
} // namespace Client

namespace Support
{

namespace Model
{
        class AddAttachmentsToSetRequest;
        class AddCommunicationToCaseRequest;
        class CreateCaseRequest;
        class DescribeAttachmentRequest;
        class DescribeCasesRequest;
        class DescribeCommunicationsRequest;
        class DescribeServicesRequest;
        class DescribeSeverityLevelsRequest;
        class DescribeTrustedAdvisorCheckRefreshStatusesRequest;
        class DescribeTrustedAdvisorCheckResultRequest;
        class DescribeTrustedAdvisorCheckSummariesRequest;
        class DescribeTrustedAdvisorChecksRequest;
        class RefreshTrustedAdvisorCheckRequest;
        class ResolveCaseRequest;

        typedef Aws::Utils::Outcome<AddAttachmentsToSetResult, Aws::Client::AWSError<SupportErrors>> AddAttachmentsToSetOutcome;
        typedef Aws::Utils::Outcome<AddCommunicationToCaseResult, Aws::Client::AWSError<SupportErrors>> AddCommunicationToCaseOutcome;
        typedef Aws::Utils::Outcome<CreateCaseResult, Aws::Client::AWSError<SupportErrors>> CreateCaseOutcome;
        typedef Aws::Utils::Outcome<DescribeAttachmentResult, Aws::Client::AWSError<SupportErrors>> DescribeAttachmentOutcome;
        typedef Aws::Utils::Outcome<DescribeCasesResult, Aws::Client::AWSError<SupportErrors>> DescribeCasesOutcome;
        typedef Aws::Utils::Outcome<DescribeCommunicationsResult, Aws::Client::AWSError<SupportErrors>> DescribeCommunicationsOutcome;
        typedef Aws::Utils::Outcome<DescribeServicesResult, Aws::Client::AWSError<SupportErrors>> DescribeServicesOutcome;
        typedef Aws::Utils::Outcome<DescribeSeverityLevelsResult, Aws::Client::AWSError<SupportErrors>> DescribeSeverityLevelsOutcome;
        typedef Aws::Utils::Outcome<DescribeTrustedAdvisorCheckRefreshStatusesResult, Aws::Client::AWSError<SupportErrors>> DescribeTrustedAdvisorCheckRefreshStatusesOutcome;
        typedef Aws::Utils::Outcome<DescribeTrustedAdvisorCheckResultResult, Aws::Client::AWSError<SupportErrors>> DescribeTrustedAdvisorCheckResultOutcome;
        typedef Aws::Utils::Outcome<DescribeTrustedAdvisorCheckSummariesResult, Aws::Client::AWSError<SupportErrors>> DescribeTrustedAdvisorCheckSummariesOutcome;
        typedef Aws::Utils::Outcome<DescribeTrustedAdvisorChecksResult, Aws::Client::AWSError<SupportErrors>> DescribeTrustedAdvisorChecksOutcome;
        typedef Aws::Utils::Outcome<RefreshTrustedAdvisorCheckResult, Aws::Client::AWSError<SupportErrors>> RefreshTrustedAdvisorCheckOutcome;
        typedef Aws::Utils::Outcome<ResolveCaseResult, Aws::Client::AWSError<SupportErrors>> ResolveCaseOutcome;

        typedef std::future<AddAttachmentsToSetOutcome> AddAttachmentsToSetOutcomeCallable;
        typedef std::future<AddCommunicationToCaseOutcome> AddCommunicationToCaseOutcomeCallable;
        typedef std::future<CreateCaseOutcome> CreateCaseOutcomeCallable;
        typedef std::future<DescribeAttachmentOutcome> DescribeAttachmentOutcomeCallable;
        typedef std::future<DescribeCasesOutcome> DescribeCasesOutcomeCallable;
        typedef std::future<DescribeCommunicationsOutcome> DescribeCommunicationsOutcomeCallable;
        typedef std::future<DescribeServicesOutcome> DescribeServicesOutcomeCallable;
        typedef std::future<DescribeSeverityLevelsOutcome> DescribeSeverityLevelsOutcomeCallable;
        typedef std::future<DescribeTrustedAdvisorCheckRefreshStatusesOutcome> DescribeTrustedAdvisorCheckRefreshStatusesOutcomeCallable;
        typedef std::future<DescribeTrustedAdvisorCheckResultOutcome> DescribeTrustedAdvisorCheckResultOutcomeCallable;
        typedef std::future<DescribeTrustedAdvisorCheckSummariesOutcome> DescribeTrustedAdvisorCheckSummariesOutcomeCallable;
        typedef std::future<DescribeTrustedAdvisorChecksOutcome> DescribeTrustedAdvisorChecksOutcomeCallable;
        typedef std::future<RefreshTrustedAdvisorCheckOutcome> RefreshTrustedAdvisorCheckOutcomeCallable;
        typedef std::future<ResolveCaseOutcome> ResolveCaseOutcomeCallable;
} // namespace Model

  class SupportClient;

    typedef std::function<void(const SupportClient*, const Model::AddAttachmentsToSetRequest&, const Model::AddAttachmentsToSetOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AddAttachmentsToSetResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::AddCommunicationToCaseRequest&, const Model::AddCommunicationToCaseOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AddCommunicationToCaseResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::CreateCaseRequest&, const Model::CreateCaseOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateCaseResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeAttachmentRequest&, const Model::DescribeAttachmentOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeAttachmentResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeCasesRequest&, const Model::DescribeCasesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeCasesResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeCommunicationsRequest&, const Model::DescribeCommunicationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeCommunicationsResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeServicesRequest&, const Model::DescribeServicesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeServicesResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeSeverityLevelsRequest&, const Model::DescribeSeverityLevelsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeSeverityLevelsResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeTrustedAdvisorCheckRefreshStatusesRequest&, const Model::DescribeTrustedAdvisorCheckRefreshStatusesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeTrustedAdvisorCheckRefreshStatusesResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeTrustedAdvisorCheckResultRequest&, const Model::DescribeTrustedAdvisorCheckResultOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeTrustedAdvisorCheckResultResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeTrustedAdvisorCheckSummariesRequest&, const Model::DescribeTrustedAdvisorCheckSummariesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeTrustedAdvisorCheckSummariesResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::DescribeTrustedAdvisorChecksRequest&, const Model::DescribeTrustedAdvisorChecksOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeTrustedAdvisorChecksResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::RefreshTrustedAdvisorCheckRequest&, const Model::RefreshTrustedAdvisorCheckOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RefreshTrustedAdvisorCheckResponseReceivedHandler;
    typedef std::function<void(const SupportClient*, const Model::ResolveCaseRequest&, const Model::ResolveCaseOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ResolveCaseResponseReceivedHandler;

  /**
   * <fullname>AWS Support</fullname>
The AWS Support API reference is intended
   * for programmers who need detailed information about the AWS Support operations
   * and data types. This service enables you to manage your AWS Support cases
   * programmatically. It uses HTTP methods that return results in JSON format.

   *
The AWS Support service also exposes a set of Trusted Advisor
   * features. You can retrieve a list of checks and their descriptions, get check
   * results, specify checks to refresh, and get the refresh status of checks.

   *
The following list describes the AWS Support case management operations:

   *

 Service names, issue categories, and available severity levels.
   * The DescribeServices and DescribeSeverityLevels operations
   * return AWS service names, service codes, service categories, and problem
   * severity levels. You use these values when you call the CreateCase
   * operation.

 Case creation, case details, and case
   * resolution. The CreateCase, DescribeCases,
   * DescribeAttachment, and ResolveCase operations create AWS Support
   * cases, retrieve information about cases, and resolve cases.

   * Case communication. The DescribeCommunications,
   * AddCommunicationToCase, and AddAttachmentsToSet operations
   * retrieve and add communications and attachments to AWS Support cases.

   *

The following list describes the operations available from the AWS
   * Support service for Trusted Advisor:

   * DescribeTrustedAdvisorChecks returns the list of checks that run against
   * your AWS resources.

Using the checkId for a
   * specific check returned by DescribeTrustedAdvisorChecks, you can call
   * DescribeTrustedAdvisorCheckResult to obtain the results for the check you
   * specified.

 DescribeTrustedAdvisorCheckSummaries
   * returns summarized results for one or more Trusted Advisor checks.

   *

 RefreshTrustedAdvisorCheck requests that Trusted Advisor rerun a
   * specified check.

   * DescribeTrustedAdvisorCheckRefreshStatuses reports the refresh status of
   * one or more checks.

For authentication of requests, AWS
   * Support uses Signature
   * Version 4 Signing Process.

See About the
   * AWS Support API in the AWS Support User Guide for information about
   * how to use this service to create and manage your support cases, and how to call
   * Trusted Advisor for results of checks on your resources.

   */
  class AWS_SUPPORT_API SupportClient : public Aws::Client::AWSJsonClient
  {
    public:
      typedef Aws::Client::AWSJsonClient BASECLASS;

       /**
        * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
        * is not specified, it will be initialized to default values.
        */
        SupportClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());

       /**
        * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
        * is not specified, it will be initialized to default values.
        */
        SupportClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());

       /**
        * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
        * the default http client factory will be used
        */
        SupportClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
            const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());

        virtual ~SupportClient();

        inline virtual const char* GetServiceClientName() const override { return "support"; }

        /**
         *
Adds one or more attachments to an attachment set. If an
         * attachmentSetId is not specified, a new attachment set is created,
         * and the ID of the set is returned in the response. If an
         * attachmentSetId is specified, the attachments are added to the
         * specified set, if it exists.

An attachment set is a temporary container
         * for attachments that are to be added to a case or case communication. The set is
         * available for one hour after it is created; the expiryTime returned
         * in the response indicates when the set expires. The maximum number of
         * attachments in a set is 3, and the maximum size of any attachment in the set is
         * 5 MB.

See Also:
   AWS
         * API Reference

         */
        virtual Model::AddAttachmentsToSetOutcome AddAttachmentsToSet(const Model::AddAttachmentsToSetRequest& request) const;

        /**
         *
Adds one or more attachments to an attachment set. If an
         * attachmentSetId is not specified, a new attachment set is created,
         * and the ID of the set is returned in the response. If an
         * attachmentSetId is specified, the attachments are added to the
         * specified set, if it exists.

An attachment set is a temporary container
         * for attachments that are to be added to a case or case communication. The set is
         * available for one hour after it is created; the expiryTime returned
         * in the response indicates when the set expires. The maximum number of
         * attachments in a set is 3, and the maximum size of any attachment in the set is
         * 5 MB.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::AddAttachmentsToSetOutcomeCallable AddAttachmentsToSetCallable(const Model::AddAttachmentsToSetRequest& request) const;

        /**
         *
Adds one or more attachments to an attachment set. If an
         * attachmentSetId is not specified, a new attachment set is created,
         * and the ID of the set is returned in the response. If an
         * attachmentSetId is specified, the attachments are added to the
         * specified set, if it exists.

An attachment set is a temporary container
         * for attachments that are to be added to a case or case communication. The set is
         * available for one hour after it is created; the expiryTime returned
         * in the response indicates when the set expires. The maximum number of
         * attachments in a set is 3, and the maximum size of any attachment in the set is
         * 5 MB.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void AddAttachmentsToSetAsync(const Model::AddAttachmentsToSetRequest& request, const AddAttachmentsToSetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Adds additional customer communication to an AWS Support case. You use the
         * caseId value to identify the case to add communication to. You can
         * list a set of email addresses to copy on the communication using the
         * ccEmailAddresses value. The communicationBody value
         * contains the text of the communication.

The response indicates the
         * success or failure of the request.

This operation implements a subset of
         * the features of the AWS Support Center.

See Also:
   AWS
         * API Reference

         */
        virtual Model::AddCommunicationToCaseOutcome AddCommunicationToCase(const Model::AddCommunicationToCaseRequest& request) const;

        /**
         *
Adds additional customer communication to an AWS Support case. You use the
         * caseId value to identify the case to add communication to. You can
         * list a set of email addresses to copy on the communication using the
         * ccEmailAddresses value. The communicationBody value
         * contains the text of the communication.

The response indicates the
         * success or failure of the request.

This operation implements a subset of
         * the features of the AWS Support Center.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::AddCommunicationToCaseOutcomeCallable AddCommunicationToCaseCallable(const Model::AddCommunicationToCaseRequest& request) const;

        /**
         *
Adds additional customer communication to an AWS Support case. You use the
         * caseId value to identify the case to add communication to. You can
         * list a set of email addresses to copy on the communication using the
         * ccEmailAddresses value. The communicationBody value
         * contains the text of the communication.

The response indicates the
         * success or failure of the request.

This operation implements a subset of
         * the features of the AWS Support Center.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void AddCommunicationToCaseAsync(const Model::AddCommunicationToCaseRequest& request, const AddCommunicationToCaseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Creates a new case in the AWS Support Center. This operation is modeled on
         * the behavior of the AWS Support Center Create Case
         * page. Its parameters require you to specify the following information:

         *

 issueType. The type of issue for the case. You can specify
         * either "customer-service" or "technical." If you do not indicate a value, the
         * default is "technical."

 serviceCode. The code for an
         * AWS service. You obtain the serviceCode by calling
         * DescribeServices.

 categoryCode. The category
         * for the service defined for the serviceCode value. You also obtain
         * the category code for a service by calling DescribeServices. Each AWS
         * service defines its own set of category codes.

         * severityCode. A value that indicates the urgency of the case, which in
         * turn determines the response time according to your service level agreement with
         * AWS Support. You obtain the SeverityCode by calling
         * DescribeSeverityLevels.

 subject. The
         * Subject field on the AWS Support Center Create Case
         * page.

 communicationBody. The Description field
         * on the AWS Support Center Create Case
         * page.

 attachmentSetId. The ID of a set of attachments
         * that has been created by using AddAttachmentsToSet.

         * language. The human language in which AWS Support handles the case.
         * English and Japanese are currently supported.

         * ccEmailAddresses. The AWS Support Center CC field on the Create Case
         * page. You can list email addresses to be copied on any correspondence about the
         * case. The account that opens the case is already identified by passing the AWS
         * Credentials in the HTTP POST method or in a method or function call from one of
         * the programming languages supported by an AWS SDK.

 <note>
To
         * add additional communication or attachments to an existing case, use
         * AddCommunicationToCase.
 </note>
A successful CreateCase
         * request returns an AWS Support case number. Case numbers are used by the
         * DescribeCases operation to retrieve existing AWS Support cases.
         *

See Also:
   AWS
         * API Reference

         */
        virtual Model::CreateCaseOutcome CreateCase(const Model::CreateCaseRequest& request) const;

        /**
         *
Creates a new case in the AWS Support Center. This operation is modeled on
         * the behavior of the AWS Support Center Create Case
         * page. Its parameters require you to specify the following information:

         *

 issueType. The type of issue for the case. You can specify
         * either "customer-service" or "technical." If you do not indicate a value, the
         * default is "technical."

 serviceCode. The code for an
         * AWS service. You obtain the serviceCode by calling
         * DescribeServices.

 categoryCode. The category
         * for the service defined for the serviceCode value. You also obtain
         * the category code for a service by calling DescribeServices. Each AWS
         * service defines its own set of category codes.

         * severityCode. A value that indicates the urgency of the case, which in
         * turn determines the response time according to your service level agreement with
         * AWS Support. You obtain the SeverityCode by calling
         * DescribeSeverityLevels.

 subject. The
         * Subject field on the AWS Support Center Create Case
         * page.

 communicationBody. The Description field
         * on the AWS Support Center Create Case
         * page.

 attachmentSetId. The ID of a set of attachments
         * that has been created by using AddAttachmentsToSet.

         * language. The human language in which AWS Support handles the case.
         * English and Japanese are currently supported.

         * ccEmailAddresses. The AWS Support Center CC field on the Create Case
         * page. You can list email addresses to be copied on any correspondence about the
         * case. The account that opens the case is already identified by passing the AWS
         * Credentials in the HTTP POST method or in a method or function call from one of
         * the programming languages supported by an AWS SDK.

 <note>
To
         * add additional communication or attachments to an existing case, use
         * AddCommunicationToCase.
 </note>
A successful CreateCase
         * request returns an AWS Support case number. Case numbers are used by the
         * DescribeCases operation to retrieve existing AWS Support cases.
         *

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::CreateCaseOutcomeCallable CreateCaseCallable(const Model::CreateCaseRequest& request) const;

        /**
         *
Creates a new case in the AWS Support Center. This operation is modeled on
         * the behavior of the AWS Support Center Create Case
         * page. Its parameters require you to specify the following information:

         *

 issueType. The type of issue for the case. You can specify
         * either "customer-service" or "technical." If you do not indicate a value, the
         * default is "technical."

 serviceCode. The code for an
         * AWS service. You obtain the serviceCode by calling
         * DescribeServices.

 categoryCode. The category
         * for the service defined for the serviceCode value. You also obtain
         * the category code for a service by calling DescribeServices. Each AWS
         * service defines its own set of category codes.

         * severityCode. A value that indicates the urgency of the case, which in
         * turn determines the response time according to your service level agreement with
         * AWS Support. You obtain the SeverityCode by calling
         * DescribeSeverityLevels.

 subject. The
         * Subject field on the AWS Support Center Create Case
         * page.

 communicationBody. The Description field
         * on the AWS Support Center Create Case
         * page.

 attachmentSetId. The ID of a set of attachments
         * that has been created by using AddAttachmentsToSet.

         * language. The human language in which AWS Support handles the case.
         * English and Japanese are currently supported.

         * ccEmailAddresses. The AWS Support Center CC field on the Create Case
         * page. You can list email addresses to be copied on any correspondence about the
         * case. The account that opens the case is already identified by passing the AWS
         * Credentials in the HTTP POST method or in a method or function call from one of
         * the programming languages supported by an AWS SDK.

 <note>
To
         * add additional communication or attachments to an existing case, use
         * AddCommunicationToCase.
 </note>
A successful CreateCase
         * request returns an AWS Support case number. Case numbers are used by the
         * DescribeCases operation to retrieve existing AWS Support cases.
         *

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void CreateCaseAsync(const Model::CreateCaseRequest& request, const CreateCaseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns the attachment that has the specified ID. Attachment IDs are
         * generated by the case management system when you add an attachment to a case or
         * case communication. Attachment IDs are returned in the AttachmentDetails
         * objects that are returned by the DescribeCommunications
         * operation.

See Also:
   AWS
         * API Reference

         */
        virtual Model::DescribeAttachmentOutcome DescribeAttachment(const Model::DescribeAttachmentRequest& request) const;

        /**
         *
Returns the attachment that has the specified ID. Attachment IDs are
         * generated by the case management system when you add an attachment to a case or
         * case communication. Attachment IDs are returned in the AttachmentDetails
         * objects that are returned by the DescribeCommunications
         * operation.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeAttachmentOutcomeCallable DescribeAttachmentCallable(const Model::DescribeAttachmentRequest& request) const;

        /**
         *
Returns the attachment that has the specified ID. Attachment IDs are
         * generated by the case management system when you add an attachment to a case or
         * case communication. Attachment IDs are returned in the AttachmentDetails
         * objects that are returned by the DescribeCommunications
         * operation.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeAttachmentAsync(const Model::DescribeAttachmentRequest& request, const DescribeAttachmentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns a list of cases that you specify by passing one or more case IDs. In
         * addition, you can filter the cases by date by setting values for the
         * afterTime and beforeTime request parameters. You can
         * set values for the includeResolvedCases and
         * includeCommunications request parameters to control how much
         * information is returned.

Case data is available for 12 months after
         * creation. If a case was created more than 12 months ago, a request for data
         * might cause an error.

The response returns the following in JSON
         * format:

One or more CaseDetails data types.

         *

One or more nextToken values, which specify where to
         * paginate the returned records represented by the CaseDetails
         * objects.

See Also:
   AWS
         * API Reference

         */
        virtual Model::DescribeCasesOutcome DescribeCases(const Model::DescribeCasesRequest& request) const;

        /**
         *
Returns a list of cases that you specify by passing one or more case IDs. In
         * addition, you can filter the cases by date by setting values for the
         * afterTime and beforeTime request parameters. You can
         * set values for the includeResolvedCases and
         * includeCommunications request parameters to control how much
         * information is returned.

Case data is available for 12 months after
         * creation. If a case was created more than 12 months ago, a request for data
         * might cause an error.

The response returns the following in JSON
         * format:

One or more CaseDetails data types.

         *

One or more nextToken values, which specify where to
         * paginate the returned records represented by the CaseDetails
         * objects.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeCasesOutcomeCallable DescribeCasesCallable(const Model::DescribeCasesRequest& request) const;

        /**
         *
Returns a list of cases that you specify by passing one or more case IDs. In
         * addition, you can filter the cases by date by setting values for the
         * afterTime and beforeTime request parameters. You can
         * set values for the includeResolvedCases and
         * includeCommunications request parameters to control how much
         * information is returned.

Case data is available for 12 months after
         * creation. If a case was created more than 12 months ago, a request for data
         * might cause an error.

The response returns the following in JSON
         * format:

One or more CaseDetails data types.

         *

One or more nextToken values, which specify where to
         * paginate the returned records represented by the CaseDetails
         * objects.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeCasesAsync(const Model::DescribeCasesRequest& request, const DescribeCasesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns communications (and attachments) for one or more support cases. You
         * can use the afterTime and beforeTime parameters to
         * filter by date. You can use the caseId parameter to restrict the
         * results to a particular case.

Case data is available for 12 months after
         * creation. If a case was created more than 12 months ago, a request for data
         * might cause an error.

You can use the maxResults and
         * nextToken parameters to control the pagination of the result set.
         * Set maxResults to the number of cases you want displayed on each
         * page, and use nextToken to specify the resumption of
         * pagination.

See Also:
   AWS
         * API Reference

         */
        virtual Model::DescribeCommunicationsOutcome DescribeCommunications(const Model::DescribeCommunicationsRequest& request) const;

        /**
         *
Returns communications (and attachments) for one or more support cases. You
         * can use the afterTime and beforeTime parameters to
         * filter by date. You can use the caseId parameter to restrict the
         * results to a particular case.

Case data is available for 12 months after
         * creation. If a case was created more than 12 months ago, a request for data
         * might cause an error.

You can use the maxResults and
         * nextToken parameters to control the pagination of the result set.
         * Set maxResults to the number of cases you want displayed on each
         * page, and use nextToken to specify the resumption of
         * pagination.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeCommunicationsOutcomeCallable DescribeCommunicationsCallable(const Model::DescribeCommunicationsRequest& request) const;

        /**
         *
Returns communications (and attachments) for one or more support cases. You
         * can use the afterTime and beforeTime parameters to
         * filter by date. You can use the caseId parameter to restrict the
         * results to a particular case.

Case data is available for 12 months after
         * creation. If a case was created more than 12 months ago, a request for data
         * might cause an error.

You can use the maxResults and
         * nextToken parameters to control the pagination of the result set.
         * Set maxResults to the number of cases you want displayed on each
         * page, and use nextToken to specify the resumption of
         * pagination.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeCommunicationsAsync(const Model::DescribeCommunicationsRequest& request, const DescribeCommunicationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns the current list of AWS services and a list of service categories
         * that applies to each one. You then use service names and categories in your
         * CreateCase requests. Each AWS service has its own set of categories.

         *
The service codes and category codes correspond to the values that are
         * displayed in the Service and Category drop-down lists on the AWS
         * Support Center Create Case
         * page. The values in those fields, however, do not necessarily match the service
         * codes and categories returned by the DescribeServices request.
         * Always use the service codes and categories obtained programmatically. This
         * practice ensures that you always have the most recent set of service and
         * category codes.

See Also:
   AWS
         * API Reference

         */
        virtual Model::DescribeServicesOutcome DescribeServices(const Model::DescribeServicesRequest& request) const;

        /**
         *
Returns the current list of AWS services and a list of service categories
         * that applies to each one. You then use service names and categories in your
         * CreateCase requests. Each AWS service has its own set of categories.

         *
The service codes and category codes correspond to the values that are
         * displayed in the Service and Category drop-down lists on the AWS
         * Support Center Create Case
         * page. The values in those fields, however, do not necessarily match the service
         * codes and categories returned by the DescribeServices request.
         * Always use the service codes and categories obtained programmatically. This
         * practice ensures that you always have the most recent set of service and
         * category codes.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeServicesOutcomeCallable DescribeServicesCallable(const Model::DescribeServicesRequest& request) const;

        /**
         *
Returns the current list of AWS services and a list of service categories
         * that applies to each one. You then use service names and categories in your
         * CreateCase requests. Each AWS service has its own set of categories.

         *
The service codes and category codes correspond to the values that are
         * displayed in the Service and Category drop-down lists on the AWS
         * Support Center Create Case
         * page. The values in those fields, however, do not necessarily match the service
         * codes and categories returned by the DescribeServices request.
         * Always use the service codes and categories obtained programmatically. This
         * practice ensures that you always have the most recent set of service and
         * category codes.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeServicesAsync(const Model::DescribeServicesRequest& request, const DescribeServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns the list of severity levels that you can assign to an AWS Support
         * case. The severity level for a case is also a field in the CaseDetails
         * data type included in any CreateCase request.

See Also:

         * AWS
         * API Reference

         */
        virtual Model::DescribeSeverityLevelsOutcome DescribeSeverityLevels(const Model::DescribeSeverityLevelsRequest& request) const;

        /**
         *
Returns the list of severity levels that you can assign to an AWS Support
         * case. The severity level for a case is also a field in the CaseDetails
         * data type included in any CreateCase request.

See Also:

         * AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeSeverityLevelsOutcomeCallable DescribeSeverityLevelsCallable(const Model::DescribeSeverityLevelsRequest& request) const;

        /**
         *
Returns the list of severity levels that you can assign to an AWS Support
         * case. The severity level for a case is also a field in the CaseDetails
         * data type included in any CreateCase request.

See Also:

         * AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeSeverityLevelsAsync(const Model::DescribeSeverityLevelsRequest& request, const DescribeSeverityLevelsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns the refresh status of the Trusted Advisor checks that have the
         * specified check IDs. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.
 <note>
Some checks are refreshed
         * automatically, and their refresh statuses cannot be retrieved by using this
         * operation. Use of the DescribeTrustedAdvisorCheckRefreshStatuses
         * operation for these checks causes an InvalidParameterValue
         * error.
 </note>

See Also:
   AWS
         * API Reference

         */
        virtual Model::DescribeTrustedAdvisorCheckRefreshStatusesOutcome DescribeTrustedAdvisorCheckRefreshStatuses(const Model::DescribeTrustedAdvisorCheckRefreshStatusesRequest& request) const;

        /**
         *
Returns the refresh status of the Trusted Advisor checks that have the
         * specified check IDs. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.
 <note>
Some checks are refreshed
         * automatically, and their refresh statuses cannot be retrieved by using this
         * operation. Use of the DescribeTrustedAdvisorCheckRefreshStatuses
         * operation for these checks causes an InvalidParameterValue
         * error.
 </note>

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeTrustedAdvisorCheckRefreshStatusesOutcomeCallable DescribeTrustedAdvisorCheckRefreshStatusesCallable(const Model::DescribeTrustedAdvisorCheckRefreshStatusesRequest& request) const;

        /**
         *
Returns the refresh status of the Trusted Advisor checks that have the
         * specified check IDs. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.
 <note>
Some checks are refreshed
         * automatically, and their refresh statuses cannot be retrieved by using this
         * operation. Use of the DescribeTrustedAdvisorCheckRefreshStatuses
         * operation for these checks causes an InvalidParameterValue
         * error.
 </note>

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeTrustedAdvisorCheckRefreshStatusesAsync(const Model::DescribeTrustedAdvisorCheckRefreshStatusesRequest& request, const DescribeTrustedAdvisorCheckRefreshStatusesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns the results of the Trusted Advisor check that has the specified check
         * ID. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.

The response contains a
         * TrustedAdvisorCheckResult object, which contains these three objects:

         *

 TrustedAdvisorCategorySpecificSummary

         * TrustedAdvisorResourceDetail

         * TrustedAdvisorResourcesSummary

In addition, the
         * response contains these fields:

 status. The alert
         * status of the check: "ok" (green), "warning" (yellow), "error" (red), or
         * "not_available".

 timestamp. The time of the last
         * refresh of the check.

 checkId. The unique identifier
         * for the check.

See Also:
   AWS
         * API Reference

         */
        virtual Model::DescribeTrustedAdvisorCheckResultOutcome DescribeTrustedAdvisorCheckResult(const Model::DescribeTrustedAdvisorCheckResultRequest& request) const;

        /**
         *
Returns the results of the Trusted Advisor check that has the specified check
         * ID. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.

The response contains a
         * TrustedAdvisorCheckResult object, which contains these three objects:

         *

 TrustedAdvisorCategorySpecificSummary

         * TrustedAdvisorResourceDetail

         * TrustedAdvisorResourcesSummary

In addition, the
         * response contains these fields:

 status. The alert
         * status of the check: "ok" (green), "warning" (yellow), "error" (red), or
         * "not_available".

 timestamp. The time of the last
         * refresh of the check.

 checkId. The unique identifier
         * for the check.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeTrustedAdvisorCheckResultOutcomeCallable DescribeTrustedAdvisorCheckResultCallable(const Model::DescribeTrustedAdvisorCheckResultRequest& request) const;

        /**
         *
Returns the results of the Trusted Advisor check that has the specified check
         * ID. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.

The response contains a
         * TrustedAdvisorCheckResult object, which contains these three objects:

         *

 TrustedAdvisorCategorySpecificSummary

         * TrustedAdvisorResourceDetail

         * TrustedAdvisorResourcesSummary

In addition, the
         * response contains these fields:

 status. The alert
         * status of the check: "ok" (green), "warning" (yellow), "error" (red), or
         * "not_available".

 timestamp. The time of the last
         * refresh of the check.

 checkId. The unique identifier
         * for the check.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeTrustedAdvisorCheckResultAsync(const Model::DescribeTrustedAdvisorCheckResultRequest& request, const DescribeTrustedAdvisorCheckResultResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns the summaries of the results of the Trusted Advisor checks that have
         * the specified check IDs. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.

The response contains an array of
         * TrustedAdvisorCheckSummary objects.

See Also:
   AWS
         * API Reference

         */
        virtual Model::DescribeTrustedAdvisorCheckSummariesOutcome DescribeTrustedAdvisorCheckSummaries(const Model::DescribeTrustedAdvisorCheckSummariesRequest& request) const;

        /**
         *
Returns the summaries of the results of the Trusted Advisor checks that have
         * the specified check IDs. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.

The response contains an array of
         * TrustedAdvisorCheckSummary objects.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeTrustedAdvisorCheckSummariesOutcomeCallable DescribeTrustedAdvisorCheckSummariesCallable(const Model::DescribeTrustedAdvisorCheckSummariesRequest& request) const;

        /**
         *
Returns the summaries of the results of the Trusted Advisor checks that have
         * the specified check IDs. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.

The response contains an array of
         * TrustedAdvisorCheckSummary objects.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeTrustedAdvisorCheckSummariesAsync(const Model::DescribeTrustedAdvisorCheckSummariesRequest& request, const DescribeTrustedAdvisorCheckSummariesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Returns information about all available Trusted Advisor checks, including
         * name, ID, category, description, and metadata. You must specify a language code;
         * English ("en") and Japanese ("ja") are currently supported. The response
         * contains a TrustedAdvisorCheckDescription for each check.

See
         * Also:
   AWS
         * API Reference

         */
        virtual Model::DescribeTrustedAdvisorChecksOutcome DescribeTrustedAdvisorChecks(const Model::DescribeTrustedAdvisorChecksRequest& request) const;

        /**
         *
Returns information about all available Trusted Advisor checks, including
         * name, ID, category, description, and metadata. You must specify a language code;
         * English ("en") and Japanese ("ja") are currently supported. The response
         * contains a TrustedAdvisorCheckDescription for each check.

See
         * Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::DescribeTrustedAdvisorChecksOutcomeCallable DescribeTrustedAdvisorChecksCallable(const Model::DescribeTrustedAdvisorChecksRequest& request) const;

        /**
         *
Returns information about all available Trusted Advisor checks, including
         * name, ID, category, description, and metadata. You must specify a language code;
         * English ("en") and Japanese ("ja") are currently supported. The response
         * contains a TrustedAdvisorCheckDescription for each check.

See
         * Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void DescribeTrustedAdvisorChecksAsync(const Model::DescribeTrustedAdvisorChecksRequest& request, const DescribeTrustedAdvisorChecksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Requests a refresh of the Trusted Advisor check that has the specified check
         * ID. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.
 <note>
Some checks are refreshed
         * automatically, and they cannot be refreshed by using this operation. Use of the
         * RefreshTrustedAdvisorCheck operation for these checks causes an
         * InvalidParameterValue error.
 </note>
The response contains a
         * TrustedAdvisorCheckRefreshStatus object, which contains these fields:

         *

 status. The refresh status of the check: "none",
         * "enqueued", "processing", "success", or "abandoned".

         * millisUntilNextRefreshable. The amount of time, in milliseconds, until
         * the check is eligible for refresh.

 checkId. The unique
         * identifier for the check.

See Also:
   AWS
         * API Reference

         */
        virtual Model::RefreshTrustedAdvisorCheckOutcome RefreshTrustedAdvisorCheck(const Model::RefreshTrustedAdvisorCheckRequest& request) const;

        /**
         *
Requests a refresh of the Trusted Advisor check that has the specified check
         * ID. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.
 <note>
Some checks are refreshed
         * automatically, and they cannot be refreshed by using this operation. Use of the
         * RefreshTrustedAdvisorCheck operation for these checks causes an
         * InvalidParameterValue error.
 </note>
The response contains a
         * TrustedAdvisorCheckRefreshStatus object, which contains these fields:

         *

 status. The refresh status of the check: "none",
         * "enqueued", "processing", "success", or "abandoned".

         * millisUntilNextRefreshable. The amount of time, in milliseconds, until
         * the check is eligible for refresh.

 checkId. The unique
         * identifier for the check.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::RefreshTrustedAdvisorCheckOutcomeCallable RefreshTrustedAdvisorCheckCallable(const Model::RefreshTrustedAdvisorCheckRequest& request) const;

        /**
         *
Requests a refresh of the Trusted Advisor check that has the specified check
         * ID. Check IDs can be obtained by calling
         * DescribeTrustedAdvisorChecks.
 <note>
Some checks are refreshed
         * automatically, and they cannot be refreshed by using this operation. Use of the
         * RefreshTrustedAdvisorCheck operation for these checks causes an
         * InvalidParameterValue error.
 </note>
The response contains a
         * TrustedAdvisorCheckRefreshStatus object, which contains these fields:

         *

 status. The refresh status of the check: "none",
         * "enqueued", "processing", "success", or "abandoned".

         * millisUntilNextRefreshable. The amount of time, in milliseconds, until
         * the check is eligible for refresh.

 checkId. The unique
         * identifier for the check.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void RefreshTrustedAdvisorCheckAsync(const Model::RefreshTrustedAdvisorCheckRequest& request, const RefreshTrustedAdvisorCheckResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

        /**
         *
Takes a caseId and returns the initial state of the case along
         * with the state of the case after the call to ResolveCase
         * completed.

See Also:
   AWS
         * API Reference

         */
        virtual Model::ResolveCaseOutcome ResolveCase(const Model::ResolveCaseRequest& request) const;

        /**
         *
Takes a caseId and returns the initial state of the case along
         * with the state of the case after the call to ResolveCase
         * completed.

See Also:
   AWS
         * API Reference

         *
         * returns a future to the operation so that it can be executed in parallel to other requests.
         */
        virtual Model::ResolveCaseOutcomeCallable ResolveCaseCallable(const Model::ResolveCaseRequest& request) const;

        /**
         *
Takes a caseId and returns the initial state of the case along
         * with the state of the case after the call to ResolveCase
         * completed.

See Also:
   AWS
         * API Reference

         *
         * Queues the request into a thread executor and triggers associated callback when operation has finished.
         */
        virtual void ResolveCaseAsync(const Model::ResolveCaseRequest& request, const ResolveCaseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;

    private:
      void init(const Aws::Client::ClientConfiguration& clientConfiguration);

        /**Async helpers**/
        void AddAttachmentsToSetAsyncHelper(const Model::AddAttachmentsToSetRequest& request, const AddAttachmentsToSetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void AddCommunicationToCaseAsyncHelper(const Model::AddCommunicationToCaseRequest& request, const AddCommunicationToCaseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void CreateCaseAsyncHelper(const Model::CreateCaseRequest& request, const CreateCaseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeAttachmentAsyncHelper(const Model::DescribeAttachmentRequest& request, const DescribeAttachmentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeCasesAsyncHelper(const Model::DescribeCasesRequest& request, const DescribeCasesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeCommunicationsAsyncHelper(const Model::DescribeCommunicationsRequest& request, const DescribeCommunicationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeServicesAsyncHelper(const Model::DescribeServicesRequest& request, const DescribeServicesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeSeverityLevelsAsyncHelper(const Model::DescribeSeverityLevelsRequest& request, const DescribeSeverityLevelsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeTrustedAdvisorCheckRefreshStatusesAsyncHelper(const Model::DescribeTrustedAdvisorCheckRefreshStatusesRequest& request, const DescribeTrustedAdvisorCheckRefreshStatusesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeTrustedAdvisorCheckResultAsyncHelper(const Model::DescribeTrustedAdvisorCheckResultRequest& request, const DescribeTrustedAdvisorCheckResultResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeTrustedAdvisorCheckSummariesAsyncHelper(const Model::DescribeTrustedAdvisorCheckSummariesRequest& request, const DescribeTrustedAdvisorCheckSummariesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void DescribeTrustedAdvisorChecksAsyncHelper(const Model::DescribeTrustedAdvisorChecksRequest& request, const DescribeTrustedAdvisorChecksResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void RefreshTrustedAdvisorCheckAsyncHelper(const Model::RefreshTrustedAdvisorCheckRequest& request, const RefreshTrustedAdvisorCheckResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
        void ResolveCaseAsyncHelper(const Model::ResolveCaseRequest& request, const ResolveCaseResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;

      Aws::String m_uri;
      std::shared_ptr<Aws::Utils::Threading::Executor> m_executor;
  };

} // namespace Support
} // namespace Aws

redpajama_set_name: RedPajamaGithub


Join the Official Singapore FC Barcelona Singapore Academy.
Learn the secrets and train using the official FC Barcelona's football methodology, under the watchful gaze from our Technical Director directly from FC Barcelona.
Being a part of the academy isn't just an extra-curricular activity. Your child will get to train, learn, and play the BARÇA way – through the core values of Humility, Effort, Ambition, Respect and Teamwork.
We use the same FC Barcelona training syllabus that was used to produce household players like Messi and Iniesta.
We recognise that goalkeeper is a specialist position, and we have dedicated goalkeeper coaches and syllabus to help you become the next ter Stegen.
You will be joining the Barça Academy family, one of forty five around the world and experience what it is like to train like a professional FC Barcelona player.
Immerse yourself in our training sessions and experience what it is like to train just like a professional FC Barcelona goalkeeper.
Learn and master different roles in our training sessions before playing the role you were meant to on the soccer pitch.
It's family that helps make the community better. Hear from some of the parents their thoughts on our school.
"I am truly impressed with the training facilities! In this area, I found that this is one of the best soccer schools. They have very professional coaches and the staff are very cooperative."
"Tony and his father are both are very passionate about Barcelona and football.. When they heard there was an Official School in Singapore they did not hesitate to sign up!"
"The style here is very different, it has improved Putera's thinking and positional sense. Before this he use to run to where the ball goes like bees to honey!"
"It is very organised and the coaches really are affirmative of their coaching style. They understand the kids needs as well and communicate well with them. Both my sons really enjoy coming for classes as they have been to quite a few schools as the way Barcelona trains is very different from the rest as the emphasis of passing and awareness is very evident."
"The reputation of Barcelona and the accessibility of the school brought us here. We have been very happy with the ratio of coaches to players and the skill development thought as well."
Leave us your details and we'll get back to you as soon as possible.