text:
CPL commissioner on league's goals, growing Canadian soccer, and more
David Clanachan, the commissioner of the Canadian Premier League. (Canadian Premier League/Darren Goldstein)
John Molinaro | @JohnMolinaro January 24, 2019, 12:58 PM
John Molinaro @JohnMolinaro January 24, 2019, 12:58 PM
A new era in Canadian soccer is nearly upon us with the upcoming launch of the Canadian Premier League.
The new professional soccer league is expected to kick off its inaugural season this April with seven teams from coast to coast. Sanctioned as Canada's first division, the CPL features high-profile owners such as Bob Young and the Winnipeg Blue Bombers, and is designed to develop Canadian players and give them a chance that they otherwise might not receive.
Sportsnet sat down with league commissioner David Clanachan to talk about the launch of the CPL, his long- and short-term goals for the league, and much more.
This interview has been edited and condensed.
Sportsnet: With the start of the inaugural Canadian Premier League season approaching and still so many things left to do, is your head spinning at this moment?
David Clanachan: We're inside 100 days now. I joke about it, that starting Jan. 1, this world started spinning around a lot faster. The pressure cranks up. But that's good. We've already accomplished a lot, but now we're putting the final things in order. At the same time, we're also working with all the teams and trying to co-ordinate seven teams. It doesn't sound like a lot, but coordinating seven teams and making sure we're all in the same cadence, it's no easy.
One of the biggest things for me has been not everybody understands the game yet. We're talking to people who know soccer at the moment, but we need to find a way to talk to all of Canada and get them to fall in love with the players and the teams, but it's hard because this is a new league starting from scratch, so people out there are at ground-zero, too.
Sportsnet: You grew up and went to university in Windsor, which is a working-class city. Did that working-class upbringing help shape you into the person you are today?
David Clanachan: I think so, yeah. I was born in Scotland and we came to Canada in 1965. Working-class background. My father was a machinist, a skilled tradesman, and that's what his generation did – they found somewhere else to go where there was opportunity.
I remember saying to my dad why did we leave Scotland because he and my mom had a great life there, and they didn't know anybody in Canada outside of his brother. He said to me, "We did it for you and your brother because we wanted a better life for you guys." And it worked out for us. Working-class roots, working-class attitude, working-class city – you had to work hard. Windsor is a very typical Canadian city where you have to earn your way, and growing up there had a big impact on me. I'm still just the kid from Windsor, and I'm proud of it. [laughs]
• HFX WANDERERS FC (Halifax)
Team owner: Sports & Entertainment Atlantic
Home stadium: Wanderers Grounds
Player to watch: Elton John
• YORK 9 FC (York Region, Ontario)
Team owner: York Sports & Entertainment
Home Stadium: Alumni Field
Player to watch: Kyle Porter
• FORGE FC (Hamilton)
Team owner: Bob Young
Home stadium: Tim Hortons Field
Player to watch: Kyle Bekker
• VALOUR FC (Winnipeg)
Team owner: Winnipeg Blue Bombers
Home stadium: Investors Field
Player to watch: Skylar Thomas
• CAVALRY FC (Calgary)
Team owner: Spruce Meadows Sports & Entertainment
Home stadium: Spruce Meadows
Player to watch: Nik Ledgerwood
• FC EDMONTON
Team owner: The Fath Group
Home stadium: Clarke Stadium
Player to watch: Randy Edwini-Bonsu
• PACIFIC FC (Vancouver Island)
Team owner: SixFive Sports & Entertainment
Home stadium: Westhills Stadium
Player to watch: Marcus Haber
Sportsnet: You worked for Tim Hortons for 35 years, including serving as president and chief operating officer of the company. Why did you leave such a prestigious position in the Canadian corporate world to become commissioner of an upstart soccer league?
David Clanachan: I started working for two Tim Hortons franchisees in Windsor when I was 14. Did everything you can imagine in the company, every tough job. I was managing restaurants while I was going to business school, and progressed through the organization to the point where I became the chief operating officer.
I had reached the top of the hill with an iconic Canadian brand, and I played a small part in developing it. Once you get to that point, what do you do next? I didn't want to go into a competing business because of the many relationships I built within Tim Hortons. The other part of it is, my entire time at Tim Hortons, I was very much involved in sports sponsorship, and being involved in sports from a business side. I finally got this chance to go to the other side of the fence, and develop something [the CPL] from scratch.
I didn't say "yes" immediately. I didn't say no, but I said, "Tell me more about it." I took my time and didn't jump at it right away. But as I saw the business and the way the business model was designed, I saw a model that I always thought should have been the model that was used in North American sports businesses. We've developed a model [with the CPL] where we control all of the assets, both media and sponsorship assets, which I think is unique.
I could have gone and worked for another food service company, I could have started one, or I could have bought one. But I didn't want to be in something that wasn't unique. [Soccer is] a game I've played since I was seven years old, and now I get to take things I learned in business over the years and apply them into something that I love, and hopefully I can leave a legacy for many years to come.
Sportsnet: So, you come into this as a "soccer person," rather than a someone who doesn't have a clue about the sport? You grew up with the game.
David Clanachan: I did. I played at a pretty high level growing up. I still play to this day on Sundays, in an old-timer's league in Burlington, so I think it's one of the things that drives me in this entire thing – it's a passion play for me as much as anything else.
I played at the University of Windsor, and back in the old [North American Soccer League] days, I used to play in a developmental league where there was a select group of players – we were 16 at the time – playing against and under-18 team from the Detroit Express. We played in the Pontiac Silverdome before an Express game before over 32, 000 fans in the stands. So, as a 16-year-old kid from Windsor, that had a pretty profound effect on me.
Sportsnet: How has the game in this country changed from a media perspective over the years?
David Clanachan: You can't underestimate the influence of video games. Those types of games have taken the sport to a new level and made it more accessible.
In terms of broadcasting at a network level, it's night and day. We have the ability to watch games any time we want, compared to when I was young when it wasn't on TV much, and you had to go to a bar to watch a big match on satellite TV. Now you can watch dozens of games on any given weekend on a variety of platforms. So, when you look at that and see what's happening with the game in our country, it's the right time for the CPL.
I think MLS clubs in Canada have played a part in that. There's no doubt, and I admire what they've done. The part where they fall short is they don't develop [nearly enough] Canadian players. We need to do it at a higher level.
Sportsnet: In December, MLS commissioner Don Garber said he's had no contact with the CPL, but that he wanted to rectify that and start a dialogue. Has he reached out to you?
David Clanachan: We haven't talked to anyone at MLS, but we have talked to the three Canadian teams in the league. I had a great meeting with [Montreal Impact owner] Joey Saputo. He's somebody who puts his money where his mouth is. [Toronto FC president] Bill Manning is a great guy, and I know [MLSE chairman] Larry Tanenbaum on a personal level, so I know how passionate he is about the game. I've met [Vancouver Whitecaps president] Bob Lenarduzzi. We need to do more and spend some time together and talk about the sport in Canada. Everybody understands that it's all of our jobs to progress the game in the country and bring it to the next level.
Sportsnet: Do you see the CPL as being in competition with MLS?
David Clanachan: I don't see it that way at this point and time because we don't really overlap. MLS has been pretty clear they don't want to have any more clubs in Canada, and that's fine. The cities that they are in, there's lots of room for everybody. But I do believe it's all of our duty to advance the sport in this country and take our rightful place on the world stage. Competition is healthy in some ways, but we all have to pull in the same direction.
Canadian Premier League's first 10 players an eclectic bunch
John Molinaro
Nik Ledgerwood eager to embrace opportunity CPL presents
Sportsnet: Have you set goals for CPL? If we're sitting here together in five years, where would you like the CPL to be?
David Clanachan: In five years, that's just before the 2026 World Cup [that Canada will co-host with the U.S. and Mexico], I'd like to be at a point where we're somewhere between 14 and 16 teams in the CPL. At that point, I'd be seriously starting to think about promotion and relegation. I've been clear about that from the start. Promotion is like winning a giant lottery for those teams – it's a game changer for those teams – and relegation battles add intrigue to the league. So, I'd love to be in that position where we have promotion and relegation at that point and time, if not sooner.
Certainly, we'd like to be competing at the level of MLS where a CPL team is winning the Canadian Championship, and potentially seeing more than one Canadian team in the Concacaf Champions League, and having a CPL team in there and proceeding through the competition.
Sportsnet: The CPL is coming about at a time when the Canadian sports market is very crowded. You have the NHL, NBA, MLS, junior hockey, Major League Baseball already in Canada. How cognizant are you that it's going to be a tough for the CPL to break through, and what does the league have to do to earn its piece of the pie when it comes to mainstream recognition?
David Clanachan: Ours is a grassroots sport. You just can't be in the major cities; you have to also be ingrained in the smaller communities, and you have to be prepared to play at that level, which is what we're doing. Soccer is the fastest growing sport in Canada, and it's the number one sport in terms of immigrants coming into the country. When you start to add those things up, there's a multiplier effect, and that's why I think we'll do well.
We also play at a time of the year that doesn't really compete with the NHL. We can play coast to coast, and that's something that other sports have a hard time doing. It's hard for Halifax to have professional teams, so we can be in those places where others can't go and do well.
We also have advantages today that other leagues that have started up in the past, in terms of digital and social media. But at the end of the day, we have to be smart about it, and the main thing is we have to put a great product on the field. It has to be competitive. I get asked all the time about the standard of play in the CPL and if it's going to be any good, and it's going to be good. Canadians are patient and understand it's going to take time form the CPL to grow to a certain level, but as long as they see progress, that's what they want.
Sportsnet: Soccer gets a lot less media coverage in Canada than say the other major sports. How can you convince newspaper and website editors, and TV and radio program directors to cover the CPL?
David Clanachan: You know what keeps me awake at night? It's that: How do we cut through all the chatter about other sports leagues? I believe soccer is at a point in Canada where fans, the people who consume the media are going to demand more and more of it. It always comes back to who is the customer, and I think that's going to help us.
Sportsnet: An advantage the CPL has is you can learn and borrow from other sports leagues. Have you looked at the NHL, for example, to see what has worked for them that you could apply to the CPL?
David Clanachan: What's happened is that we've had soccer leagues from around the world openly say to us, "Bring your teams and people over here, and we'd love to share our experiences and knowledge with you." Leagues such as La Liga, the Bundesliga, Premier League, Serie A – they want to help us. They're very interested in seeing what we're up to.
Nik Ledgerwood of Cavalry FC. (Photo courtesy CPL)
Sportsnet: How much is establishing the CPL's identity intrinsically tied to developing Canadian players and giving them an opportunity that they might not have otherwise received?
David Clanachan: One hundred per cent. The roster rules require that every CPL team has to have 50 per cent plus one in terms of Canadian players, and a minimum of six Canadian starters per game. Those are pretty aggressive numbers, and I'm not sure there's another league in the world that has those kinds of aggressive numbers when it comes to domestic players. We're only allowing a maximum of seven foreign nationals per team. We know that our main goal is to develop Canadian talent.
You see Canadian players such as Marcus Haber and Nik Ledgerwood coming home to play in the CPL, and people are astounded by it. "Marcus was playing in Scotland, so why would he want to come back to Canada?" My answer is, why wouldn't they? We see foreign internationals wanting to come to the CPL. Those seven international roster spots are highly sought after, with lots of competition for them. I've talked to many foreign players who want to come to Canada.
Editors note: In a subsequent email to Sportsnet, the CPL confirmed that in addition to the roster requirements mentioned above by David Clanachan that another rule mandates that a minimum of three domestic players on each team must be under the age of 21 AND those players must play a minimum of 1,000 minutes per season.
Sportsnet: What about the schedule? Where are we with that?
David Clanachan: It's going to come out very soon. One of the hardest things to do is create a schedule with seven teams coast to coast and a lot of travel, but we're very close to announcing the schedule. It'll be a 28-game season the first year, with 14 games at home and 14 away for each team. We'll start in late April and we'll be done by the end of October.
Sportsnet: What about the playoff format?
David Clanachan: We've looked around the world at different structures. We've found a structure that we think will work really well for us. It's innovative, but borrows from some other leagues and how they do it. It's going to create a lot of interest, so no playoffs in a traditional sense.
Sportsnet: Have you come up with a name for the league's championship? Will there be a trophy?
David Clanachan: The reality is there's a couple of different ways we can go. Are we going to give out a trophy or a shield? But we're working through that now.
Sportsnet: What about broadcast rights? How will fans be able to watch CPL games?
David Clanachan: What I'll say is stay tuned, but you won't have to stay tuned for very long. [laughs] That's all I'll say.
Sportsnet: Aside from FC Edmonton, CPL teams don't have traditional soccer names. You have Valour FC, Forge FC and Cavalry FC where there's no mention of the city. What was the thinking behind that?
David Clanachan: We had people do a cross-country tour and talk to local supporters – and we had supporters' groups in cities before we even had CPL teams – and so they sat down with them and talked about the team colours, and names and the soul of the city. They got people to open up, and what they told us ended up driving a lot of what we're doing, including the team names.
I have to be honest, when I was first pitched some of the team names, I thought they were out of their mind. I wasn't sure I could get behind some of them. But my mom always told me to admit when you're wrong and admit it quickly. I was wrong and they were right. The supporters in the cities have embraced what's going on there. The names are unique. There are so many teams named "United" or "FC" out there, so that idea of the team names being unique resonates with people.
Sportsnet: The long-term financial stability of the CPL is an issue that some fans are concerned about, and they wonder if the league will even be around in five years. There is a fear that the CPL is going to be big money loser at first, and fans worry that team owners are going to stick around. What can you say to alleviate the fears some have over the sustainability of the league?
David Clanachan: When I joined on, I met with the team owners. We've made sure that we have owners who are passionate about the game, but also interested in legacy and have patience. You don't buy a sports team to become rich. You buy one for passion, legacy and the idea that you're building something, and that patience level is the key. We have that with our team owners. They believe in the trajectory of soccer in Canada. I'm fully confident in the strength and commitment of our owners, and also in the potential new owners and cities and regions that are approaching us about future teams.
Sportsnet: The Ottawa Fury decided to stay in the USL this upcoming season, instead of joining the CPL. Subsequently, Concacaf threatened to not sanction them for the 2019 USL campaign. Eventually, the Fury received sanctioning from Concacaf to play in the USL, subject to approval by FIFA. Where do we stand at the moment in terms of Ottawa possibly joining the CPL in 2020?
David Clanachan: First of all, I love the guys in Ottawa. Mark Goudie (President and CEO at Ottawa Sports and Entertainment Group) is a quality guy. He and I get along very well. We were like brothers from a different mother when we first met. A very smart guy. We did everything we could in terms of making the Fury comfortable about coming into the CPL. Mark would tell you that we sat with him and give them some relief we had around the salary cap, and players transfers, and things like that. Where we couldn't move from is that we wanted them in the CPL right away, in 2019.
We believe we will have a great CPL franchise in Ottawa at some point, one way or another. At the end of the day, they couldn't [join the CPL in 2019], and I was as surprised as anybody when their decision came down. The people of Ottawa and the supporters there deserve a team competing in a Canadian league – I think the people of Ottawa would much rather see the Fury play other Canadian teams than teams from the United States in the USL.
Sometimes you can't get a meeting of the minds on a specific issue. Mark Goudie said he admired our business plan, but he just wanted more time and that 2019 wasn't possible. Giving him more time wasn't something I could do. We'll see what happens in the future, but I think having Ottawa in the CPL would be great, and I'm still hopeful.
Sportsnet: A lot of the work you've done in your role as commissioner up until this point has been behind the scenes and geared towards launching the CPL. But how much are you looking forward to getting your hands dirty, and start making decisions about the action on the field like a normal commissioner?
David Clanachan: I don't think it's going to be easy once we start playing. How would you like to be [NFL commissioner] Roger Goodell right now after the controversy in the Rams-Saints game this past weekend? [laughs] But I've never shied away from making from decisions. I guess it's my Windsor roots. Having said all that, it's very important that you listen to people around you and take good advice from them.
%2Fsoccer%2Fcpl-commissioner-leagues-goals-growing-canadian-soccer%2F
When submitting content, please abide by our submission guidelines, and avoid posting profanity, personal attacks or harassment. Should you violate our submissions guidelines, we reserve the right to remove your comments and block your account. Sportsnet reserves the right to close a story's comment section at any time.
LATEST CANADIAN-PREMIER-LEAGUE NEWS
Joel Waterman becomes first CPL player to be sold to another league
Former FC Edmonton forward Fordyce signs with Winnipeg's Valour FC
CPL's York 9 FC sign Canadian international Chris Mannella
Borges caps off memorable season with CPL Player of the Year Award
FC Edmonton's head coach Jeff Paulus named interim general manager
Forge FC defeat Cavalry FC to win first Canadian Premier League title
Forge FC's Tristan Borges wins appeal, will play 2nd leg of final
Forge FC, Cavalry FC to appeal red cards ahead of second leg of CPL final
Andersen, 'immature' Maple Leafs must look in mirror during bye week
Canucks earn place atop Pacific with solid stretch before All-Star break
Blue Jays looking to experienced pitchers for consistency, leadership
Jonathan Toews has four points as Blackhawks thump Maple Leafs


text:
1General information
1.1Name
1.2Coat of arms
1.3Churches
3Government
3.1Municipal council
5.1Shipping forecast
7Attractions
7.1Birding
Utsira
Municipality in Rogaland, Norway
This article is about the municipality in Rogaland, Norway. For other uses, see Utsira (disambiguation).
Utsira kommune
View of the Utsira harbor
Rogaland within
Utsira within Rogaland
Coordinates: 59°18′26″N 04°53′10″E / 59.30722°N 4.88611°E / 59.30722; 4.88611Coordinates: 59°18′26″N 04°53′10″E / 59.30722°N 4.88611°E / 59.30722; 4.88611
Haugaland
• Preceded by
Torvastad Municipality
Administrative centre
• Mayor (2012)
Marte Eide Klovning (Ap)
0.03 km2 (0.01 sq mi) 0.5%
#355 in Norway
29.9/km2 (77/sq mi)
• Change (10 years)
Sirabu[1]
• Norwegian form
NO-1151
Data from Statistics Norway
Utsira (pronounced [ˈʉ̌ːtˌsiːrɑ]) is the smallest municipality in Norway. The island municipality is located in northwestern Rogaland county, just off the western coast of Norway. Utsira is part of the traditional district of Haugaland.
The municipality consists of the main island of Utsira as well as several small, uninhabited outlying islands. Utsira is located in the North Sea, about 18 kilometres (11 miles) west of the town of Haugesund. All of the 206 residents (as of 2015[update]) live on the main island of Utsira, where the administrative centre and Utsira Church are located.
The 6-square-kilometre (2.3 sq mi) municipality is the 355th largest by area out of the 356 municipalities in Norway, making it the second smallest municipality in Norway after the nearby island municipality of Kvitsøy. Utsira is the 356th most populous municipality in Norway with a population of 188, making it the smallest municipality in Norway by population. The municipality's population density is 29.9 inhabitants per square kilometre (77/sq mi) and its population has decreased by 13.8% over the previous 10-year period.[3][4]
General information[edit]
View of a house on Utsira
View of part of the island
Utsira Church
The municipality of Utsira was established on 1 July 1924 when it was separated from the municipality of Torvastad. Initially, Utsira had 414 residents. The municipal borders have not changed since that time.[5]
The municipality was named after the island of Utsira which makes up the vast majority of the municipality. The Old Norse forms of the island's name was just Síri (nominative) or Síra (genitive). The first element ut was added in the 16th century (ut means "out" or "offshore"; compare the "Out Skerries" in Shetland).
The inhabitants still call the island Sira (leaving off the ut prefix) and an inhabitant of the municipality is called a sirabu. The meaning of the name Sira is unknown (maybe "strong stream"). (Sira is also the name of the border river between Rogaland and Agder counties.)
The Norwegian language has had several spelling reforms during the 19th and 20th centuries. Before 1875, the name was written "Udsire", from 1875 to 1924 it was spelled "Utsire", and since 1925 it has used the spelling "Utsira".[6]
Coat of arms[edit]
The coat of arms, granted on 23 July 1982, represents the light beams emerging from the local Utsira Lighthouse. The lighthouse was founded in 1844 and is one of the main landmarks on the municipality.[7]
See also: the coat of arms of Sandøy
Churches[edit]
The Church of Norway has one parish (sokn) within the municipality of Utsira. It is part of the Haugaland prosti (deanery) in the Diocese of Stavanger.
Churches in Utsira
Parish (sokn)
Location of the church
Utsira Utsira Church Utsira 1785
The island municipality is only accessible by boat. There are roads on the island. A car ferry operated by Rutebåten Utsira runs four round-trips per day connecting the island to the town of Haugesund on the mainland. The trip takes about 70 minutes each way. There are ferry docks on the north and south side of the island. The northern port is more often used because the southern route takes a little longer; the southern is used if the weather demands. An ambulance helicopter can land at the football field in medical emergencies.[8]
Government[edit]
All municipalities in Norway, including Utsira, are responsible for primary education (through 10th grade), outpatient health services, senior citizen services, unemployment and other social services, zoning, economic development, and municipal roads. The municipality is governed by a municipal council of elected representatives, which in turn elect a mayor.[9] The municipality falls under the Haugaland og Sunnhordland District Court and the Gulating Court of Appeal.
Municipal council[edit]
The municipal council (Kommunestyre) of Utsira is made up of 11 representatives that are elected to four year terms. Currently, the party breakdown is as follows:
Utsira kommunestyre 2020–2024 [10]
Party Name (in Norwegian)
Utsira Common List (Utsira Fellesliste) 8
Utsira Local List (Utsira Bygdeliste) 3
Total number of members: 11
Youth list for Utsira (Ungdomslista for Utsira) 2
Local list for Utsira (Bygdelista for Utsira) 5
Labour Party (Arbeiderpartiet) 6
Local politics list (Lokalpolitisk liste) 2
Cross-party list (Tverrpolitisk liste) 9
Joint List(s) of Non-Socialist Parties (Borgerlige Felleslister) 7
Conservative Party (Høyre) 4
Local list for Utsira (Bygdeliste for Utsira) 6
Women's list (Kvinnelista) 2
Non-party list (Upolitisk liste) 6
Christian Democratic Party (Kristelig Folkeparti) 1
Local List(s) (Lokale lister) 13
Utsira herredsstyre 1960–1963 [22]
Local List(s) (Lokale lister) 9
Utsira herredsstyre 1938–1941* [27]
Note: Due to the German occupation of Norway during World War II, no elections were held for new municipal councils until after the war ended in 1945.
There are remains from the Stone Age on the island. It has been populated since that time. Historically, the island was governed by Torvastad, based on the mainland, but on 1 July 1924 the island was separated and it was established as a separate municipality. At that time, a new municipal council was to be elected. It was intended that the twelve men on the interim council would be elected, but the official list of candidates listed eleven women and a man. This was not known to even the people involved until the day of the election and by then it was too late. Despite a legal challenge the twelve were elected and Aasa Helgesen, the local midwife, was elected the first Mayor of Utsira and the first female mayor in Norway. Helgesen was a successful Mayor until 1928.[28]
In 2004, Norsk Hydro installed a combined wind-hydrogen utility on Utsira. It is a full scale pilot project for energy self-sufficiency for a remote community. In periods when there is surplus wind energy, the excess power will be used for generating hydrogen by electrolysis. The hydrogen is stored, and is available for power generation in periods where there is little wind. Additional to this an energy storing flywheel exists to help out when for a short time more power is needed.
Utsira has an oceanic climate (Cfb) with short, cool summers and long, chilly winters with lots of rainfall.
The island has significant seasonal lag with February–March typically being the coldest months of the year while August is the warmest. The maritime position also renders low diurnal variation in temperature between day and night.
Climate data for Utsira fyr 2000-2020
(70.2) 23
Mean maximum °C (°F)
(45.0) 8
Mean minimum °C (°F)
(3.0) 115
(4.7) 1,223
Source: Norwegian Meteorological Institute (eKlima)
Shipping forecast[edit]
Utsira (under the spelling Utsire) gives its name to "North Utsire" and "South Utsire", two of the sea areas of the British Shipping Forecast.
Aasa Helgesen (1877–1968) a Norwegian midwife and politician. She served as Mayor of Utsira from 1926 to 1928, and was the first female mayor in Norway. She worked as a midwife in Utsira from 1903 to 1942.
Attractions[edit]
Utsira Lighthouse is the highest lighthouse light in Norway at 78.2 metres (257 ft) above mean sea level.
View of Utsira Lighthouse
Lighthouse tower
Utsira lighthouse sign
Birding[edit]
Utsira is known as the best birding site in Norway. There have been 317 different species recorded on Utsira, of which 23 are new to Norway.
^ "Navn på steder og personer: Innbyggjarnamn" (in Norwegian). Språkrådet.
^ "Forskrift om målvedtak i kommunar og fylkeskommunar" (in Norwegian). Lovdata.no.
^ Statistisk sentralbyrå. "Table: 06913: Population 1 January and population changes during the calendar year (M)" (in Norwegian).
^ Statistisk sentralbyrå. "09280: Area of land and fresh water (km²) (M)" (in Norwegian).
^ Jukvam, Dag (1999). "Historisk oversikt over endringer i kommune- og fylkesinndelingen" (PDF) (in Norwegian). Statistisk sentralbyrå.
^ Store norske leksikon. "Utsira" (in Norwegian). Retrieved 22 October 2015.
^ "Civic heraldry of Norway - Norske Kommunevåpen". Heraldry of the World. Retrieved 22 October 2015.
^ Sykepleieren som må gjøre alt
^ Hansen, Tore, ed. (12 May 2016). "kommunestyre". Store norske leksikon (in Norwegian). Kunnskapsforlaget. Retrieved 28 June 2020.
^ "Tall for Norge: Kommunestyrevalg 2019 - Rogaland". Valg Direktoratet. Retrieved 2 July 2020.
^ a b c d "Table: 04813: Members of the local councils, by party/electoral list at the Municipal Council election (M)" (in Norwegian). Statistics Norway.
^ "Kommunestyrevalget 1995" (PDF) (in Norwegian). Oslo-Kongsvinger: Statistisk sentralbyrå. 1996. Retrieved 2 July 2020.
^ "Kommunestyrevalget 1979" (PDF) (in Norwegian). Oslo: Statistisk sentralbyrå. 1979. Retrieved 2 July 2020.
^ "Kommunevalgene 1975" (PDF) (in Norwegian). Oslo: Statistisk sentralbyrå. 1977. Retrieved 2 July 2020.
^ "Kommunevalgene og Ordførervalgene 1959" (PDF) (in Norwegian). Oslo: Statistisk sentralbyrå. 1960. Retrieved 2 July 2020.
^ Baastad, Siri (15 December 1999). "Jordmor Helgesens "skjørteregime"". Kommunal Rapport (in Norwegian). Retrieved 20 February 2014.
Media related to Utsira at Wikimedia Commons
The dictionary definition of Utsira at Wiktionary
Rogaland travel guide from Wikivoyage
Municipal fact sheet from Statistics Norway (in Norwegian)
Municipality web site (in Norwegian)
Birding on Utsira (in Norwegian)
Rogaland county, Norway
Main article: Rogaland
Capital: Stavanger
County government: Rogaland County Municipality
County lists:
County Governors
Stavanger (1125)
Egersund (1798)
Haugesund (1854)
Sandnes (1860)
Kopervik (1996)
Skudeneshavn (1996)
Jørpeland (1998)
Sauda (1999)
Bryne (2001)
Åkrehamn (2002)
Sogndal (1798–1944)
Skudeneshavn (1857–1964)
Kopervik (1866–1964)
Bjerkreim
Eigersund
Sokndal
Bokn
Karmøy
Tysvær
Vindafjord
Hå
Hjelmeland
Kvitsøy
Sauda
Suldal
Erfjord
Finnøy
Forsand
Helleland
Heskestad
Hetland
Hjelmeland og Fister
Høle
Høyland
Håland
Imsland
Jelsa
Kopervik
Mosterøy
Nedstrand
Ogna
Rennesøy
Sandeid
Sjernarøy
Skjold
Skudenes
Skudeneshavn
Skåre
Stangaland
Torvastad
Varhaug
Vikedal
Ølen
Åkra
Retrieved from "https://en.wikipedia.org/w/index.php?title=Utsira&oldid=1135168181"
Municipalities of Rogaland
1924 establishments in Norway
CS1 Norwegian-language sources (no)
Articles containing Norwegian-language text
Articles containing Bokmål-language text
Articles with Norwegian-language sources (no)

redpajama_set_name: RedPajamaCommonCrawl


When I used to hear the phrase 'alternative medicine,' my first reaction was to be very distrustful. Mostly, I assumed that anything labeled alternative medicine was just untested and ineffective, and therefore not 'real' medicine. Now that I've done some research though, specifically into Chinese traditional medicine, I realize that my reaction was not only cynical, but flat-out wrong.
The thing that I used to define as 'real' medicine is in fact Western medicine. A brief history of medicine in the west shows that it descended from a specific set of medical practices first developed in ancient Egypt. In fact, ancient Egyptians were among the first to have recognizable practices of what we consider to be medicine, including surgeries, dentistry, and a relatively deep understanding of human anatomy. This idea of health care migrated to ancient Greece, primarily via Hippocrates, whose name is immortalized in the Hippocratic oath that all western doctors take. The Greek and Egyptian philosophies of medicine are still evident today, especially in the way that we deal with anatomy and diagnosing patients.
Of course, this is only one interpretation of medicine. While it is based on science and reason and has achieved amazing things, it has also failed to come up with a cure for the common cold. Western medicine can be seen as a specific methodology of dealing with the human body, and it's not the only way of doing it.
In my research into the history of alternative medicine, I found that most of the cures deemed to be truly effective were Chinese in origin. It seemed worthwhile to research the history of medicine in China if I was going to understand why so many people are such great supporters of alternative medicine.
Chinese medical history begins some 3500 years ago with the first records of medical illnesses from the Shang dynasty. These medical records show that priests were diagnosing patients long ago, although most of their interpretations of disease were some form of ancestral or magical curse. Around 200 BC, though, that all changed when a book called 'The Yellow Emperor's Inner Canon.' This book, structured as a conversation between the legendary Yellow Emperor and his ministers, gives detailed descriptions of various diseases and their treatments. It eschews the old ideas of mystical spirits and curses causing diseases and instead develops theories involving a balanced lifestyle, a good environment, and positive behaviors as the key to a healthy life.
Many of these theories involve forces of nature such as yin and yang, qi, and the five phases theory. Each of these is important because they are presented as rational and comprehensible forces that can be maintained or returned to balance. This forms the basis of traditional Chinese medicine today, and a version of this 2000+ year old book is still in use at most private practices of traditional medicine.
Traditional treatments run the gamut from acupuncture, to herbal treatments, to massage therapy. Each is based on ideas of balancing the body's natural functions and restoring any improperly balanced functions to their normal state. These are achieved through various means and within different frameworks, but the general idea is one of balance.
Chinese Medicine as Alternative Medicine.
In the US and elsewhere, Chinese medicine is viewed through the lens of being an alternative to the standards of Western medicine. It is sometimes viewed as unscientific or unproven by Western doctors. The truth of the matter, and one that I only discovered through a good amount of research, is that Chinese medicine is based on an equally storied set of ideas as Western medicine. While it is true that not many clinical studies of traditional Chinese remedies have been carried out, there is some pretty stunning evidence that many of the remedies are equally or more effective than Western treatments.
As an example, let's look at Astragalus root. It's been used for a very long time in Chinese medicine to prevent colds and help with general health. Only recently has it been studied in the west, but the results have shown that it may boost the immune system significantly as well as help with blood pressure. It's an extremely important root in China and its effects are well known, but it's only now catching on in the US as alternative medicine. Of course, as with anything involving your health, you'll want to consult with your doctor before starting any alternative kinds of treatments, as there may be potential side effects and interactions.
So in the end, my research showed me that alternative medicine is actually based on well-established practices that not only work well on their own, but can also be a supplement to more traditional western medicine. My hope is that alternative medicine becomes more accepted in the mainstream and part of regularly prescribed behaviors. This way, we can truly understand it as something other than the 'other' medicine.


"One of the reasons I let Ray build this webpage is because of my interaction with my bow customers on eBay ("BuilderXT"). The personal connections with many of them is the most satisfying part of selling my bows!
They frequently ask about how I got started building bows, about my other building projects, and about my family. I hope you enjoy reading what Ray has kindly prepared about my life, including some of their testimonials from my customers.
On the "Business" page you will find information about my eBay sales and a link to my eBay site.
Please use the "Contact" link to reach me by e-mail. THANKS!"
"I have a passion for building and creating things with my hands. As long as I have my health, I have to keep busy. The catch is though, I want to do what I want to do, the way I want to do it!"
This website was written and is "under construction" by John's admiring brother-in-law, because John would never tell all of this about himself!
John's passion for building began in college as he earned a degree in Industrial Arts from North Texas University in 1952. In 1953 he arrived in Carlsbad, New Mexico to take a teaching job. He met another young school teacher, Barbara Thompson, at a boarding house. They married in 1954 and raised their family in Carlsbad while John taught industrial arts in Carlsbad High School for the next 31 years.
John is a "bowyer"—one who builds archery bows; he taught himself the complex technique for building "recurve bows." The first ones were just for himself and Barbara in 1965—just for fun. Forty five years later he is still building bows, now selling them on eBay. Although he has now sold over 200 of his signature bows, in 12 countries, John says, "Its still not a business for me…just a hobby."


We have all heard the saying, "Knowledge is key," and this couldn't be more accurate when it comes to educating employees on the rules, regulations, laws and policies that help to mold the University environment. Some training is necessary to provide information and other times, it serves as a reminder and a good refresher of things we may already know. Often times, when a training course is completed, after some time has passed, events may occur in our daily work environments or changes may arise in our job responsibilities that alter or modify the way we interpret or apply those governing laws and policies. Utilizing training as a tool fulfills many important obligations.
It is a goal of the University Ethics and Compliance Office not to have all University employees view training requirements as a series of check marks they must complete. Rather, we want our employees to see the training programs as opportunities to better emulate an environment of ethics and integrity in the workplace.
Currently, the main training program administered by the University Ethics and Compliance Office is the annual ethics training. You will also find links to several other University-wide training programs utilized by University employees in the training administered by other units section of our website.


Wisdom Company. Hardcover. POOR. Noticeably used book. Heavy wear to cover. Pages contain marginal notes, underlining, and or highlighting. Possible ex library copy, with all the markings/stickers of that library. Accessories such as CD, codes, toys, and dust jackets may not be included.
Wisdom Company, 2000-05-01. Hardcover. Good.
Wisdom Company, 2000-05-01. Hardcover. Used:Good.
2000-05-01. Good. Ships with Tracking Number! INTERNATIONAL WORLDWIDE Shipping available. May not contain Access Codes or Supplements. May be ex-library. Shipping & Handling by region. Buy with confidence, excellent customer service!
2000-05-01. New. Ships with Tracking Number! INTERNATIONAL WORLDWIDE Shipping available. Buy with confidence, excellent customer service!


text:
Empowering your Team with Purposeful Recruitment
Melissa Phillips, Head Coach of the London City Lionesses on understanding yourself as a coach to provide the foundation for athlete self-awareness, and how she uses DISC to enhance team and individual performance through purposeful recruitment and positioning.
"You put a group of 20 to 25 people on a team together and there's always going to be differences. Somebody sees it this way and somebody sees it that way, so it's looking at what the differences are and how do you get to the bottom of that? The ideal sporting environment is when you get as many people as possible pulling in the same direction, and to do that, they have to have a shared understanding and a desire to move forward together and be on the same page."
Melissa Phillips, Head Coach, London City Lionesses
As coaches how do we get our people on the same page? Some of the greatest sporting moments are born out of a mutual understanding between players. We've all seen the scenario where they are there for each other at exactly the right moment on the field and magic happens. Sometimes those dynamic connections between athletes happen naturally, but sometimes they don't. So how do we as coaches make sure we are doing everything within our role to allow those relationships to develop and progress towards what we're looking for.
Melissa Phillips, Head Coach of the London City Lionesses, is renowned for getting her people aligned using a particular mix of performance and development. "For me coaching is a people business, it's really a foundation of wanting to get the best out of people", she shared when she made the time to talk to us during the Lionesses' busy season. For the Lionesses who play football (soccer) in the FA Women's Championship in England, the competition fixtures runs for 10 months of the year.
Melissa added,
"Matches come thick and fast during the season, it's Sunday, Wednesday, Sunday, and in the professional game you are always in-season! Unlike other football leagues you don't get that chunk of time in the off-season, so we are always working on player development."
Melissa brings a unique angle to her role at the Lionesses, coming across from more than a decade coaching at the US College level, she was originally recruited as the Assistant Coach but within six months was promoted to Head Coach. Going from the perspective of a new assistant coach straight into the head coaching role in such a short period of time, alongside other huge life changes like moving across the world, meant that she had to consider how her own coaching style may impact her athletes differently. Elaborating, Melissa shared that she used Athlete Assessments' CoachDISC Profile to cement her understanding of her own coaching behavior and preferences when moving into the head coaching role at the Lionesses. Throughout the years she has matured and gone into different coaching roles, and areas of her style have adapted slightly.
She added, "I've taken the DISC Profile three times. Once as a 23-year-old head coach, once as an assistant, and then once again recently when I stepped into this role, and they've all been quite different actually. There's a common denominator of Steadiness in my profile, but the other styles have shifted depending on what I felt was needed from me in the role at that time."
Every coach has a style whether it is something they work to consciously develop, or whether they act instinctively, and each coach's style is often a reflection of their natural behavioral tendencies. The CoachDISC Profile acts as a tool to help coaches define their style through identifying whether they are fast paced, make decisions quickly, stick to routines, are detail--orientated, value relationships, are spontaneous, or hold an even keel. Through this, Melissa was able to identify how her style may influence her interactions with others, the way she delivers her coaching messages, and builds relationships with her athletes. It also gave her an insight into how to identify the likely DISC Profiles of others, and the way people with similar or different behavioral styles might interact with her.
Speaking about her own style, which happens to be on opposing sides of the quadrant (Dominance and Steadiness), Melissa shared,
"I often have moral battles about how I do things because I prioritize both goals and people. My partner always reminds me not to apologize for having high standards or driving standards, but to make sure I have connections with my players. They will play for me because they know I care about them, and it's not just about winning games."
Part of Melissa's strategy to develop her players and improve their understanding of one another is to have each player undertake an AthleteDISC Profile. Melissa described the process she follows to then use their profiles as a development tool, sharing that when a player first takes theirs, she will meet individually with them to talk about their strengths and how to understand the content of the report. She then encourages them to complete the sections which summarize their preferences, tendencies, needs, wants, and motivations to really hone in on self-awareness and cement their understanding of their profile. She explained that this summary then becomes a quick reference for the staff and coaching team to refer to throughout all aspects of the season, including recruitment, pre-season, leadership selection, team culture and values, and as a starting point to resolve differences and conflicts.
"The most important aspects of DISC are the learning around self-awareness and communication with others. What are your strengths? Are you bringing those to the table everyday? What are the behaviors that you aren't so proud of and what do they look like? Can you adapt those to meet the needs of the situation? It's really just diving deeper into understanding who you are and being better able to engage with others. Athlete Assessments' DISC Profiles are the foundation for getting the best out of people."
One of the things we found particularly interesting during our chat with Melissa is that her use of DISC doesn't end with developing her players' self-awareness and understanding of one another to create team alignment. She also uses it to enhance the exchanges between them and electrify their team's dynamic by using her deepened understanding of her players obtained through DISC to recruit new players for the team or assign positions on the field.
Melissa shared,
"I will look at our starting line-up and work out from a DISC point of view what the missing pieces of our puzzle are. If we need to add some creativity into our play, we might need some Influence (I's) out wide, they will bring spontaneity, innovation, and they will make things happen because they are also risk takers."
"From a performance point of view profiling is really important. For example, if I'm looking at two center backs who play beside each other, do they complement each other in how they communicate? Are they both play makers who take risks, or is there a balance and one is going to be steady and connect passes? What does the team need? If I'm looking at our team, and maybe even deciding between two players in the starting line up, I think about if they fit in with those around them to complement each other's strengths."
To introduce this advanced use of DISC Profiling to her players, Melissa starts by giving them an overview of what DISC is and how it can add value to benefit their environment, from a culture standpoint, as well as a performance standpoint. Once players understand their own profile and move into understanding others, Melissa ensures DISC language is used throughout every aspect of their team and creates activities for the team around this. As a team, each player identifies how their own style contributes to the team, while forming an appreciation of others. This creates the basis of their understanding in using DISC from the team recruitment and positioning perspective.
The team formed a 'best for the team' mentality, bringing acceptance and valuing the contribution of others, rather than focusing on a particular player's technical ability. Melissa added, "We get the players to call upon each other's strengths too, it builds trust amongst teammates, and it comes back to everyone pulling in the same direction. By recognizing each other's strengths, we have the players driving from within, looking at how do we get the best out of each other, and that's also a big part of our leadership discussion. That just becomes more successful as it goes on."
To conclude, Melissa shared how she responds to other coaches when asked about this application, "I will usually get quizzed at coaching courses with something like, 'So, you're telling me, you will recruit this player over this player because of their behavioral profile', and I say a hundred percent I will, because it's what my team needs. Even if they're a little bit inferior in skill, and remember we're talking about a professional game so there's still a baseline level here. But if we know that their behavioral tendencies will complement what our team needs from that position on the field, then we prioritize them knowing that we'll be able to get the best out of our team's performance by doing so."
Biography for Melissa Phillips
Melissa Phillips is the Head Coach for the London City Lionesses, a professional football (soccer) team competing in the FA Women's Championship. Now in her third season with the Lionesses and heading up the program since early 2020, Melissa was recruited following a successful college coaching career which included five years at the University of Pennsylvania as the Women's Assistant Coach. Melissa played a pivotal role in the team's performance which was the most successful period in their history. Melissa was given the responsibility of the Head Coaching role at Cal State Bakersfield when she was only 23. She was a Division I soccer player herself and concurrently commenced her coaching during her athletic career. Melissa is also a certified Athlete Assessments DISC Consultant.
Whether you are a coach like Melissa, a consultant, or a sports professional, your people rely on you to bring them valuable and reliable tools to enhance performance. You can learn more from the experts in performance, including coaches, consultants, and academics by catching up on our previous open webinars. Learn more about Athlete Assessments' DISC Profiles with sport-specific options of the AthleteDISC, CoachDISC, and Sport ManagerDISC.
If you would like to discuss how Athlete Assessments can contribute to your program or initiative through the use of our DISC Profiles and tailored programs, we encourage you to reach out and contact us.
The Head Coach's How-To on Assistant Coach Recruitment
In any industry, recruiting the right person to join your team is a challenging task, but when done right can be extremely rewarding. We spoke to a panel of head coaches who are experts in recruiting assistant coaches for their own programs. Think of this as the how-to for recruiting the right assistant coach, the effects it has on team culture, and why it's part of a head coach's role to get it right.
The Key to Unlocking your Coaching Philosophy
When we look at leaders in any endeavor, we often see their success critically defined by their leadership philosophy, and when it comes to sport coaches it is exactly the same. Having a defined coaching philosophy is key to effective coaching (and leadership), but the process of developing and understanding your own philosophy is often sidelined. When your team relies on your performance as a coach as much as they do on technical execution for achieving a winning outcome, this process is a priority.
Conversation about Team Culture
Creating and maintaining an effective team culture is critical to sustained success. So, if we define culture simply as 'the way we behave around here', we need to determine what is acceptable and what is not? But then as a coach, how do you sustain a culture or how do you deal with an athlete who acts in a way that opposes the culture you want?
Sport Coach Adaptability: Coaching Styles, Behavioral Adaptations & DISC Styles
In this video clip, Bo Hanson discusses the difference between coaches having their natural coaching styles and their adaptive coaching styles. He covers how coaches can utilize sport coach adaptability and adapt their behaviors to coach to the needs of the individual athletes, based on their DISC Style.
Athlete Assessments'
Get the 'People Side' Right in Sport
The primary purpose of DISC profiling is to develop self-awareness and provide a framework for understanding others so you can build effective relationships. Athlete Assessments provides three different types of DISC Profiles, one specifically for coaches, one for athletes, and one for sports administrators and other professionals.
Each assessment provides a personalized DISC Profile Report based on the results of a 12-minute online survey. The individual report details personal styles, strengths, limiting behaviors, communication preferences, and the ideal environment to enhance performance.


Your baby is roughly the size of a My Little Pony, weighing 1.52 ounces and is around 3.4″ tall.
You are into your second trimester! Congratulations, you have made it and your chance of miscarriage has been reduced significantly. So much growth is happening with your baby this week. New systems, muscles, organs and nerves are in motion for development.
Your baby has started swallowing small sips, now has sucking reflexes at work and some digestive development. Some physical attributes have now become more recognizable. Their neck is more distinct and his or her arms are now proportionate to the rest of their body. They may also have begun to grow hair. You have probably come to notice constant movement within you but get this, your baby is actually able to stand up straight in your womb.
You learned in week 10 that your baby's heart is now beating. By week 14 it is now possible to hear your baby's heartbeat. This is done with a tool with called a Doppler heart rate monitor. In simpler terms, a handheld machine that can measure the rate of your baby's heart.
This week's superfood is Kale! Kale is a versatile leafy green vegetable, incredibly low in calories and incredibly high in nutritional value. It's high in calcium, vitamins K and C, and fiber. It has detoxifying benefits and offers support for immune and healthy bone development. From simply blending some in your smoothie to salads and stir-fry, there so many ways to incorporate kale into meals and snack packs. See below for recipe suggestions.
One of my personal favorite ways to eat kale is crispy, like chips. It is an easy recipe that requires little effort or ingredients.
Simply cut the kale, ensuring to cut off the stems. Drizzle with olive oil and sprinkle with salt. Bake at 350 degrees for 5-11 minutes depending on your personal crunch preference.
A dash of salt and pepper, you may add more later to suit your palate.
Heat the olive oil in a large soup pot; cook onion and garlic together until soft. Add the kale and cook until wilted, this should take about two to three minutes. Stir in water and vegetable bouillon to make a tasty broth. Your final step is to add the remaining vegetables and seasoning. Finally, simmer soup on medium heat for 25 minutes, or until potatoes are cooked through. Salt and pepper to taste.
You may notice a boost of energy as your hormones begin to level out some this week. A good way to take advantage of this new found energy is to find a mild to moderate work out regimen. Brisk walking is a great activity it takes minimal effort and you can set your own pace and distance based on your body's needs.
Doing so can help to alleviate cramping and discomfort. It may also help you to sleep better, feel happier and help you build stamina that may be beneficial for delivery. It is recommended to get around 150 minutes of exercise a week.
Dads, remember this time is not exactly about you. Be sure to make your partner feel important and comfortable for the journey she is taking to bring your unborn child into the world. Consider her fears and doubts as well as her changing body with all its aches and pains.
Moms, during this time Dad can feel left out or uninvolved in this process. While it is true they are not physically affected by the phenomena occurring inside you, they are a part of your growing family. They deserve to feel involved and included in decision making. Feel free to educate him, express to him how you are feeling. Having an open line of communication can bring you closer together and can one day set a good example for your baby of what it means to have a healthy and functional partnership and relationship.
Your body is changing and so is your life, with this will come the need to make some adjustments to your routine as well as both your eating and sleeping habits. A less obvious action we often overlook is slowing down. Making sudden movements can cause sharp unpleasant pains.
It is important to remember to move slowly and stay calm. There is no need to rush around in a panic. You have done everything you can to educate yourself. You have pushed yourself to be healthier and more selfless in an effort to give your baby the best, right from the start. In following suit, taking it slow and easy is completely acceptable despite your urge to be prompt and efficient.
There are some foods to avoid if you have not already cut them out. Unpasteurized milk and dairy products contain high amounts of active cultures. While under normal circumstances these can be beneficial to digestion and immune support, during pregnancy they can cause serious birth defects and illnesses to your fetus.
Also be sure avoid foods high in Vitamin A as the same rule applies. Steer clear of other cheese products such as those mold ripened or blue vein cheese, some examples include brie and gorgonzola. For days we rush around unable to find time to eat healthy well-balanced meals and snacks, remember it is ok to eat ready-made meals so long as they cooked thoroughly to avoid the risk of illness or contamination.
This week has brought about several changes for both you and baby. One of the most predominant changes you may have noticed revolves around your symptoms. There is some great news for you waiting around the corner. For example, your morning sickness may have subsided some. You may have an increased appetite which can be great for helping you feel like a person again, and give your body the sustenance it needs to rebuild itself after accommodating your growing fetus.
Stomach Pains: You may notice more intense stomach pains, this is because your uterus is in motion to prep your body for further growth and eventually delivery.
Pelvic Position: Your uterus has gone from the pelvic region up to the lower abdominal region.
Increased Breast Size: Your breasts will be larger and may experience some tenderness. This is your body's way of preparing itself to give your baby everything he or she will need for the first months.
Bladder Control: You may also experience a greater sense of bladder control. Your baby's location has shifted some, relieving some pressure from your bladder and bowels.
Increased Vaginal Discharge: You may notice an increase in discharge, this is your body's way of cleansing itself and ridding itself of toxins and extra hormones produced during these changes.
Tight or Itchy Skin: As your baby is rapidly growing, skin is stretching and molding to a new form. You may experience itching some itching or tightness. Keeping a safe and natural skin moisturizer to apply liberally can be a really helpful tool for maintaining your skins beauty, health and comfort.
Relief and Increased Energy: One of the most enjoyable symptoms you may encounter is some relief from anxiety. Now that you know you have made it to the second trimester you may be feeling more confident in your baby's development and your body's ability to house your growing baby. This can help you feel more positive and even excited about your changing life and body.
You will notice this week with your extra boost of energy comes the hard-hitting desire to constantly snack. You may notice the desire to eat is much more prevalent than previous weeks, and you may justify by eating for two. However, this is not necessary.
It is important to remember during this stage you only need to add roughly 200 calories to your daily diet in order to maintain your health and your baby's. It is important also to remember weight gain is normal and now is not the time to try dieting.
Your baby has grown enough that your body is now well aware of the being you are creating. Your womb is rapidly stretching to accommodate the baby and this is causing quite a bit more tension and spasms in your abdominal muscle group.
You will most likely notice much sharper pains in your stomach, with pain probably occurring on each side. This is quite normal and should not be a reason for alarm. However if you notice cramping that is unbearable, frequent or long-lasting consult your healthcare provider or midwife as this can mean there are more serious problems that may occur.
Now that you are safely in your second trimester herbs are much safer to use. There are still some such as sage or rosemary that should be avoided. To help aid in digestion and comfort there are several teas and herbs available for consumption safe to use at this stage of pregnancy. It is important to note, although these and other herbs are safe, they should still be taken in moderation.
Ginger: is a root that is often used to help with acid reflux and digestion. It has calming effects that are great to aid in relief from morning sickness.
There are several ways to ingest this herb, from capsules and teas to candies. Drinking or swallowing at this point can seem as though it would only cause more disruption for your stomach. A great alternative to consider is the ginger candy. While you are feeling sick, sucking on something can actually reduce nausea and the sugar absorption displaces your brain's focus on feelings of nausea. Meanwhile, all this is taking place the ginger is working its soothing magic.
Echinacea: is a flower that has properties well known for immune support and to aid in digestion. It is important to keep up with immunity boosts as your body and your baby are more susceptible to common cold and flu viruses. Though there is not a candy option Echinacea is available in capsule and tea form.
Eucalyptus: In small doses, this therapeutic plant not only smells great but can offer some calming and healing benefits to your body, mind, and soul. This comes in oil form only and should not be ingested. It has clarifying properties that can clear your sinuses allowing you deeper breaths, giving the baby a greater oxygen supply.
Lavender and Chamomile: These flowers are both great for calming effects, better sleep and a lower blood pressure. Keep in mind too much consumption can cause adverse effects such as acid reflux and indigestion as well as sluggishness from a lowered heart rate. They smell great and are available to make tea or as oils for aromatherapy.
Sleeping comfortably at this stage is becoming harder. It is important to remember your position during your sleep cycle can have a significant impact on the well-being and development of your baby. Sleeping on your stomach is now no longer possible as your bump has grown significantly this week. You resort to your back and side.
Keep in mind sleeping on your back can cause stillborn so it is recommended that you sleep on your side. You can switch sides to give you more comfort. Additionally, there are body and pregnancy pillows that are shaped to hug and support your body. This can alleviate some pressure and strain put on your muscles and organs ensuring you a more restful and comfortable night's sleep.
For relief of comfort during the day consider taking a warm bath. If you are not at home or able to do so. Try keeping a heating pad at your desk on the lowest setting to prevent injury and provide you with some pain relief.
Pregnancy is an exciting time that brings about such joy, and discomfort. Keeping your eye on the prize may be your greatest motivation to keep your grace and wits about you.
Make this time as fun and enjoyable as possible for both you and your partner. You may want to document this journey for your little one to have.
He or she can always know how greatly anticipated they really were. A perfect way to do so this week and the coming weeks is to take photographs.
Document your rapidly growing stomach so your child can visually reflect upon the journey you embarked on, your first adventure together.
You have anticipated the arrival of your baby for a few months now and have already done so much preparation for your new arrival. There is still a waiting period, although your due date is quickly approaching. So what can you do to ensure you will be ready when your baby comes? It's true that you will never feel fully prepared.
You will be worried about the well being of your baby and how your choices will affect them. However, there are steps you can take each week to help you feel better equipped and more prepared to be a parent.
One important step to consider is Dental hygiene. We all know the importance of good dental habits such a regular brushing and flossing. You may not realize, however, during pregnancy it becomes more important to maintain a healthy mouth. Due to the increased circulation, you may experience, your gums are swollen and left susceptible to infection. Brushing your teeth after eating or snacking and regularly using mouthwash can help prevent harmful infection.
The next step to take if you have not already is to tell the other children in your house. Helping siblings to prepare for the responsibility of being an older sibling can be confusing as well as exciting. It is important that your other children are given the assurance they will still be loved and the opportunity to voice their concerns or questions.
The third step in your to-do list this week is looking into your health care. Find out if there are changes you will need to make to guarantee your baby receives care, know what kind of care and stipulations come with your policy and how you can get the best care for you, your family and your new baby.


text:
/**
 * Autogenerated by Thrift Compiler (0.9.2)
 *
 * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
 *  @generated
 */
package cn.lhfei.hbase.ch06.thrift2.generated;

import org.apache.thrift.scheme.IScheme;
import org.apache.thrift.scheme.SchemeFactory;
import org.apache.thrift.scheme.StandardScheme;

import org.apache.thrift.scheme.TupleScheme;
import org.apache.thrift.protocol.TTupleProtocol;
import org.apache.thrift.protocol.TProtocolException;
import org.apache.thrift.EncodingUtils;
import org.apache.thrift.TException;
import org.apache.thrift.async.AsyncMethodCallback;
import org.apache.thrift.server.AbstractNonblockingServer.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.util.HashMap;
import java.util.EnumMap;
import java.util.Set;
import java.util.HashSet;
import java.util.EnumSet;
import java.util.Collections;
import java.util.BitSet;
import java.nio.ByteBuffer;
import java.util.Arrays;
import javax.annotation.Generated;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-4-21")
public class TAppend implements org.apache.thrift.TBase<TAppend, TAppend._Fields>, java.io.Serializable, Cloneable, Comparable<TAppend> {
  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TAppend");

  private static final org.apache.thrift.protocol.TField ROW_FIELD_DESC = new org.apache.thrift.protocol.TField("row", org.apache.thrift.protocol.TType.STRING, (short)1);
  private static final org.apache.thrift.protocol.TField COLUMNS_FIELD_DESC = new org.apache.thrift.protocol.TField("columns", org.apache.thrift.protocol.TType.LIST, (short)2);
  private static final org.apache.thrift.protocol.TField ATTRIBUTES_FIELD_DESC = new org.apache.thrift.protocol.TField("attributes", org.apache.thrift.protocol.TType.MAP, (short)3);
  private static final org.apache.thrift.protocol.TField DURABILITY_FIELD_DESC = new org.apache.thrift.protocol.TField("durability", org.apache.thrift.protocol.TType.I32, (short)4);
  private static final org.apache.thrift.protocol.TField CELL_VISIBILITY_FIELD_DESC = new org.apache.thrift.protocol.TField("cellVisibility", org.apache.thrift.protocol.TType.STRUCT, (short)5);

  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
  static {
    schemes.put(StandardScheme.class, new TAppendStandardSchemeFactory());
    schemes.put(TupleScheme.class, new TAppendTupleSchemeFactory());
  }

  public ByteBuffer row; // required
  public List<TColumnValue> columns; // required
  public Map<ByteBuffer,ByteBuffer> attributes; // optional
  /**
   *
   * @see TDurability
   */
  public TDurability durability; // optional
  public TCellVisibility cellVisibility; // optional

  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
    ROW((short)1, "row"),
    COLUMNS((short)2, "columns"),
    ATTRIBUTES((short)3, "attributes"),
    /**
     *
     * @see TDurability
     */
    DURABILITY((short)4, "durability"),
    CELL_VISIBILITY((short)5, "cellVisibility");

    private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();

    static {
      for (_Fields field : EnumSet.allOf(_Fields.class)) {
        byName.put(field.getFieldName(), field);
      }
    }

    /**
     * Find the _Fields constant that matches fieldId, or null if its not found.
     */
    public static _Fields findByThriftId(int fieldId) {
      switch(fieldId) {
        case 1: // ROW
          return ROW;
        case 2: // COLUMNS
          return COLUMNS;
        case 3: // ATTRIBUTES
          return ATTRIBUTES;
        case 4: // DURABILITY
          return DURABILITY;
        case 5: // CELL_VISIBILITY
          return CELL_VISIBILITY;
        default:
          return null;
      }
    }

    /**
     * Find the _Fields constant that matches fieldId, throwing an exception
     * if it is not found.
     */
    public static _Fields findByThriftIdOrThrow(int fieldId) {
      _Fields fields = findByThriftId(fieldId);
      if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
      return fields;
    }

    /**
     * Find the _Fields constant that matches name, or null if its not found.
     */
    public static _Fields findByName(String name) {
      return byName.get(name);
    }

    private final short _thriftId;
    private final String _fieldName;

    _Fields(short thriftId, String fieldName) {
      _thriftId = thriftId;
      _fieldName = fieldName;
    }

    public short getThriftFieldId() {
      return _thriftId;
    }

    public String getFieldName() {
      return _fieldName;
    }
  }

  // isset id assignments
  private static final _Fields optionals[] = {_Fields.ATTRIBUTES,_Fields.DURABILITY,_Fields.CELL_VISIBILITY};
  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
  static {
    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
    tmpMap.put(_Fields.ROW, new org.apache.thrift.meta_data.FieldMetaData("row", org.apache.thrift.TFieldRequirementType.REQUIRED,
        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING        , true)));
    tmpMap.put(_Fields.COLUMNS, new org.apache.thrift.meta_data.FieldMetaData("columns", org.apache.thrift.TFieldRequirementType.REQUIRED,
        new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
            new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, TColumnValue.class))));
    tmpMap.put(_Fields.ATTRIBUTES, new org.apache.thrift.meta_data.FieldMetaData("attributes", org.apache.thrift.TFieldRequirementType.OPTIONAL,
        new org.apache.thrift.meta_data.MapMetaData(org.apache.thrift.protocol.TType.MAP,
            new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING            , true),
            new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING            , true))));
    tmpMap.put(_Fields.DURABILITY, new org.apache.thrift.meta_data.FieldMetaData("durability", org.apache.thrift.TFieldRequirementType.OPTIONAL,
        new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, TDurability.class)));
    tmpMap.put(_Fields.CELL_VISIBILITY, new org.apache.thrift.meta_data.FieldMetaData("cellVisibility", org.apache.thrift.TFieldRequirementType.OPTIONAL,
        new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, TCellVisibility.class)));
    metaDataMap = Collections.unmodifiableMap(tmpMap);
    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TAppend.class, metaDataMap);
  }

  public TAppend() {
  }

  public TAppend(
    ByteBuffer row,
    List<TColumnValue> columns)
  {
    this();
    this.row = org.apache.thrift.TBaseHelper.copyBinary(row);
    this.columns = columns;
  }

  /**
   * Performs a deep copy on <i>other</i>.
   */
  public TAppend(TAppend other) {
    if (other.isSetRow()) {
      this.row = org.apache.thrift.TBaseHelper.copyBinary(other.row);
    }
    if (other.isSetColumns()) {
      List<TColumnValue> __this__columns = new ArrayList<TColumnValue>(other.columns.size());
      for (TColumnValue other_element : other.columns) {
        __this__columns.add(new TColumnValue(other_element));
      }
      this.columns = __this__columns;
    }
    if (other.isSetAttributes()) {
      Map<ByteBuffer,ByteBuffer> __this__attributes = new HashMap<ByteBuffer,ByteBuffer>(other.attributes);
      this.attributes = __this__attributes;
    }
    if (other.isSetDurability()) {
      this.durability = other.durability;
    }
    if (other.isSetCellVisibility()) {
      this.cellVisibility = new TCellVisibility(other.cellVisibility);
    }
  }

  public TAppend deepCopy() {
    return new TAppend(this);
  }

  @Override
  public void clear() {
    this.row = null;
    this.columns = null;
    this.attributes = null;
    this.durability = null;
    this.cellVisibility = null;
  }

  public byte[] getRow() {
    setRow(org.apache.thrift.TBaseHelper.rightSize(row));
    return row == null ? null : row.array();
  }

  public ByteBuffer bufferForRow() {
    return org.apache.thrift.TBaseHelper.copyBinary(row);
  }

  public TAppend setRow(byte[] row) {
    this.row = row == null ? (ByteBuffer)null : ByteBuffer.wrap(Arrays.copyOf(row, row.length));
    return this;
  }

  public TAppend setRow(ByteBuffer row) {
    this.row = org.apache.thrift.TBaseHelper.copyBinary(row);
    return this;
  }

  public void unsetRow() {
    this.row = null;
  }

  /** Returns true if field row is set (has been assigned a value) and false otherwise */
  public boolean isSetRow() {
    return this.row != null;
  }

  public void setRowIsSet(boolean value) {
    if (!value) {
      this.row = null;
    }
  }

  public int getColumnsSize() {
    return (this.columns == null) ? 0 : this.columns.size();
  }

  public java.util.Iterator<TColumnValue> getColumnsIterator() {
    return (this.columns == null) ? null : this.columns.iterator();
  }

  public void addToColumns(TColumnValue elem) {
    if (this.columns == null) {
      this.columns = new ArrayList<TColumnValue>();
    }
    this.columns.add(elem);
  }

  public List<TColumnValue> getColumns() {
    return this.columns;
  }

  public TAppend setColumns(List<TColumnValue> columns) {
    this.columns = columns;
    return this;
  }

  public void unsetColumns() {
    this.columns = null;
  }

  /** Returns true if field columns is set (has been assigned a value) and false otherwise */
  public boolean isSetColumns() {
    return this.columns != null;
  }

  public void setColumnsIsSet(boolean value) {
    if (!value) {
      this.columns = null;
    }
  }

  public int getAttributesSize() {
    return (this.attributes == null) ? 0 : this.attributes.size();
  }

  public void putToAttributes(ByteBuffer key, ByteBuffer val) {
    if (this.attributes == null) {
      this.attributes = new HashMap<ByteBuffer,ByteBuffer>();
    }
    this.attributes.put(key, val);
  }

  public Map<ByteBuffer,ByteBuffer> getAttributes() {
    return this.attributes;
  }

  public TAppend setAttributes(Map<ByteBuffer,ByteBuffer> attributes) {
    this.attributes = attributes;
    return this;
  }

  public void unsetAttributes() {
    this.attributes = null;
  }

  /** Returns true if field attributes is set (has been assigned a value) and false otherwise */
  public boolean isSetAttributes() {
    return this.attributes != null;
  }

  public void setAttributesIsSet(boolean value) {
    if (!value) {
      this.attributes = null;
    }
  }

  /**
   *
   * @see TDurability
   */
  public TDurability getDurability() {
    return this.durability;
  }

  /**
   *
   * @see TDurability
   */
  public TAppend setDurability(TDurability durability) {
    this.durability = durability;
    return this;
  }

  public void unsetDurability() {
    this.durability = null;
  }

  /** Returns true if field durability is set (has been assigned a value) and false otherwise */
  public boolean isSetDurability() {
    return this.durability != null;
  }

  public void setDurabilityIsSet(boolean value) {
    if (!value) {
      this.durability = null;
    }
  }

  public TCellVisibility getCellVisibility() {
    return this.cellVisibility;
  }

  public TAppend setCellVisibility(TCellVisibility cellVisibility) {
    this.cellVisibility = cellVisibility;
    return this;
  }

  public void unsetCellVisibility() {
    this.cellVisibility = null;
  }

  /** Returns true if field cellVisibility is set (has been assigned a value) and false otherwise */
  public boolean isSetCellVisibility() {
    return this.cellVisibility != null;
  }

  public void setCellVisibilityIsSet(boolean value) {
    if (!value) {
      this.cellVisibility = null;
    }
  }

  public void setFieldValue(_Fields field, Object value) {
    switch (field) {
    case ROW:
      if (value == null) {
        unsetRow();
      } else {
        setRow((ByteBuffer)value);
      }
      break;

    case COLUMNS:
      if (value == null) {
        unsetColumns();
      } else {
        setColumns((List<TColumnValue>)value);
      }
      break;

    case ATTRIBUTES:
      if (value == null) {
        unsetAttributes();
      } else {
        setAttributes((Map<ByteBuffer,ByteBuffer>)value);
      }
      break;

    case DURABILITY:
      if (value == null) {
        unsetDurability();
      } else {
        setDurability((TDurability)value);
      }
      break;

    case CELL_VISIBILITY:
      if (value == null) {
        unsetCellVisibility();
      } else {
        setCellVisibility((TCellVisibility)value);
      }
      break;

    }
  }

  public Object getFieldValue(_Fields field) {
    switch (field) {
    case ROW:
      return getRow();

    case COLUMNS:
      return getColumns();

    case ATTRIBUTES:
      return getAttributes();

    case DURABILITY:
      return getDurability();

    case CELL_VISIBILITY:
      return getCellVisibility();

    }
    throw new IllegalStateException();
  }

  /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
  public boolean isSet(_Fields field) {
    if (field == null) {
      throw new IllegalArgumentException();
    }

    switch (field) {
    case ROW:
      return isSetRow();
    case COLUMNS:
      return isSetColumns();
    case ATTRIBUTES:
      return isSetAttributes();
    case DURABILITY:
      return isSetDurability();
    case CELL_VISIBILITY:
      return isSetCellVisibility();
    }
    throw new IllegalStateException();
  }

  @Override
  public boolean equals(Object that) {
    if (that == null)
      return false;
    if (that instanceof TAppend)
      return this.equals((TAppend)that);
    return false;
  }

  public boolean equals(TAppend that) {
    if (that == null)
      return false;

    boolean this_present_row = true && this.isSetRow();
    boolean that_present_row = true && that.isSetRow();
    if (this_present_row || that_present_row) {
      if (!(this_present_row && that_present_row))
        return false;
      if (!this.row.equals(that.row))
        return false;
    }

    boolean this_present_columns = true && this.isSetColumns();
    boolean that_present_columns = true && that.isSetColumns();
    if (this_present_columns || that_present_columns) {
      if (!(this_present_columns && that_present_columns))
        return false;
      if (!this.columns.equals(that.columns))
        return false;
    }

    boolean this_present_attributes = true && this.isSetAttributes();
    boolean that_present_attributes = true && that.isSetAttributes();
    if (this_present_attributes || that_present_attributes) {
      if (!(this_present_attributes && that_present_attributes))
        return false;
      if (!this.attributes.equals(that.attributes))
        return false;
    }

    boolean this_present_durability = true && this.isSetDurability();
    boolean that_present_durability = true && that.isSetDurability();
    if (this_present_durability || that_present_durability) {
      if (!(this_present_durability && that_present_durability))
        return false;
      if (!this.durability.equals(that.durability))
        return false;
    }

    boolean this_present_cellVisibility = true && this.isSetCellVisibility();
    boolean that_present_cellVisibility = true && that.isSetCellVisibility();
    if (this_present_cellVisibility || that_present_cellVisibility) {
      if (!(this_present_cellVisibility && that_present_cellVisibility))
        return false;
      if (!this.cellVisibility.equals(that.cellVisibility))
        return false;
    }

    return true;
  }

  @Override
  public int hashCode() {
    List<Object> list = new ArrayList<Object>();

    boolean present_row = true && (isSetRow());
    list.add(present_row);
    if (present_row)
      list.add(row);

    boolean present_columns = true && (isSetColumns());
    list.add(present_columns);
    if (present_columns)
      list.add(columns);

    boolean present_attributes = true && (isSetAttributes());
    list.add(present_attributes);
    if (present_attributes)
      list.add(attributes);

    boolean present_durability = true && (isSetDurability());
    list.add(present_durability);
    if (present_durability)
      list.add(durability.getValue());

    boolean present_cellVisibility = true && (isSetCellVisibility());
    list.add(present_cellVisibility);
    if (present_cellVisibility)
      list.add(cellVisibility);

    return list.hashCode();
  }

  @Override
  public int compareTo(TAppend other) {
    if (!getClass().equals(other.getClass())) {
      return getClass().getName().compareTo(other.getClass().getName());
    }

    int lastComparison = 0;

    lastComparison = Boolean.valueOf(isSetRow()).compareTo(other.isSetRow());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetRow()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.row, other.row);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetColumns()).compareTo(other.isSetColumns());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetColumns()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.columns, other.columns);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetAttributes()).compareTo(other.isSetAttributes());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetAttributes()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.attributes, other.attributes);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetDurability()).compareTo(other.isSetDurability());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetDurability()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.durability, other.durability);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    lastComparison = Boolean.valueOf(isSetCellVisibility()).compareTo(other.isSetCellVisibility());
    if (lastComparison != 0) {
      return lastComparison;
    }
    if (isSetCellVisibility()) {
      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cellVisibility, other.cellVisibility);
      if (lastComparison != 0) {
        return lastComparison;
      }
    }
    return 0;
  }

  public _Fields fieldForId(int fieldId) {
    return _Fields.findByThriftId(fieldId);
  }

  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
  }

  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder("TAppend(");
    boolean first = true;

    sb.append("row:");
    if (this.row == null) {
      sb.append("null");
    } else {
      org.apache.thrift.TBaseHelper.toString(this.row, sb);
    }
    first = false;
    if (!first) sb.append(", ");
    sb.append("columns:");
    if (this.columns == null) {
      sb.append("null");
    } else {
      sb.append(this.columns);
    }
    first = false;
    if (isSetAttributes()) {
      if (!first) sb.append(", ");
      sb.append("attributes:");
      if (this.attributes == null) {
        sb.append("null");
      } else {
        sb.append(this.attributes);
      }
      first = false;
    }
    if (isSetDurability()) {
      if (!first) sb.append(", ");
      sb.append("durability:");
      if (this.durability == null) {
        sb.append("null");
      } else {
        sb.append(this.durability);
      }
      first = false;
    }
    if (isSetCellVisibility()) {
      if (!first) sb.append(", ");
      sb.append("cellVisibility:");
      if (this.cellVisibility == null) {
        sb.append("null");
      } else {
        sb.append(this.cellVisibility);
      }
      first = false;
    }
    sb.append(")");
    return sb.toString();
  }

  public void validate() throws org.apache.thrift.TException {
    // check for required fields
    if (row == null) {
      throw new org.apache.thrift.protocol.TProtocolException("Required field 'row' was not present! Struct: " + toString());
    }
    if (columns == null) {
      throw new org.apache.thrift.protocol.TProtocolException("Required field 'columns' was not present! Struct: " + toString());
    }
    // check for sub-struct validity
    if (cellVisibility != null) {
      cellVisibility.validate();
    }
  }

  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
    try {
      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
    } catch (org.apache.thrift.TException te) {
      throw new java.io.IOException(te);
    }
  }

  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
    try {
      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
    } catch (org.apache.thrift.TException te) {
      throw new java.io.IOException(te);
    }
  }

  private static class TAppendStandardSchemeFactory implements SchemeFactory {
    public TAppendStandardScheme getScheme() {
      return new TAppendStandardScheme();
    }
  }

  private static class TAppendStandardScheme extends StandardScheme<TAppend> {

    public void read(org.apache.thrift.protocol.TProtocol iprot, TAppend struct) throws org.apache.thrift.TException {
      org.apache.thrift.protocol.TField schemeField;
      iprot.readStructBegin();
      while (true)
      {
        schemeField = iprot.readFieldBegin();
        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) {
          break;
        }
        switch (schemeField.id) {
          case 1: // ROW
            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
              struct.row = iprot.readBinary();
              struct.setRowIsSet(true);
            } else {
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 2: // COLUMNS
            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
              {
                org.apache.thrift.protocol.TList _list88 = iprot.readListBegin();
                struct.columns = new ArrayList<TColumnValue>(_list88.size);
                TColumnValue _elem89;
                for (int _i90 = 0; _i90 < _list88.size; ++_i90)
                {
                  _elem89 = new TColumnValue();
                  _elem89.read(iprot);
                  struct.columns.add(_elem89);
                }
                iprot.readListEnd();
              }
              struct.setColumnsIsSet(true);
            } else {
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 3: // ATTRIBUTES
            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
              {
                org.apache.thrift.protocol.TMap _map91 = iprot.readMapBegin();
                struct.attributes = new HashMap<ByteBuffer,ByteBuffer>(2*_map91.size);
                ByteBuffer _key92;
                ByteBuffer _val93;
                for (int _i94 = 0; _i94 < _map91.size; ++_i94)
                {
                  _key92 = iprot.readBinary();
                  _val93 = iprot.readBinary();
                  struct.attributes.put(_key92, _val93);
                }
                iprot.readMapEnd();
              }
              struct.setAttributesIsSet(true);
            } else {
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 4: // DURABILITY
            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
              struct.durability = cn.lhfei.hbase.ch06.thrift2.generated.TDurability.findByValue(iprot.readI32());
              struct.setDurabilityIsSet(true);
            } else {
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 5: // CELL_VISIBILITY
            if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
              struct.cellVisibility = new TCellVisibility();
              struct.cellVisibility.read(iprot);
              struct.setCellVisibilityIsSet(true);
            } else {
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          default:
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
        }
        iprot.readFieldEnd();
      }
      iprot.readStructEnd();

      // check for required fields of primitive type, which can't be checked in the validate method
      struct.validate();
    }

    public void write(org.apache.thrift.protocol.TProtocol oprot, TAppend struct) throws org.apache.thrift.TException {
      struct.validate();

      oprot.writeStructBegin(STRUCT_DESC);
      if (struct.row != null) {
        oprot.writeFieldBegin(ROW_FIELD_DESC);
        oprot.writeBinary(struct.row);
        oprot.writeFieldEnd();
      }
      if (struct.columns != null) {
        oprot.writeFieldBegin(COLUMNS_FIELD_DESC);
        {
          oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.columns.size()));
          for (TColumnValue _iter95 : struct.columns)
          {
            _iter95.write(oprot);
          }
          oprot.writeListEnd();
        }
        oprot.writeFieldEnd();
      }
      if (struct.attributes != null) {
        if (struct.isSetAttributes()) {
          oprot.writeFieldBegin(ATTRIBUTES_FIELD_DESC);
          {
            oprot.writeMapBegin(new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, struct.attributes.size()));
            for (Map.Entry<ByteBuffer, ByteBuffer> _iter96 : struct.attributes.entrySet())
            {
              oprot.writeBinary(_iter96.getKey());
              oprot.writeBinary(_iter96.getValue());
            }
            oprot.writeMapEnd();
          }
          oprot.writeFieldEnd();
        }
      }
      if (struct.durability != null) {
        if (struct.isSetDurability()) {
          oprot.writeFieldBegin(DURABILITY_FIELD_DESC);
          oprot.writeI32(struct.durability.getValue());
          oprot.writeFieldEnd();
        }
      }
      if (struct.cellVisibility != null) {
        if (struct.isSetCellVisibility()) {
          oprot.writeFieldBegin(CELL_VISIBILITY_FIELD_DESC);
          struct.cellVisibility.write(oprot);
          oprot.writeFieldEnd();
        }
      }
      oprot.writeFieldStop();
      oprot.writeStructEnd();
    }

  }

  private static class TAppendTupleSchemeFactory implements SchemeFactory {
    public TAppendTupleScheme getScheme() {
      return new TAppendTupleScheme();
    }
  }

  private static class TAppendTupleScheme extends TupleScheme<TAppend> {

    @Override
    public void write(org.apache.thrift.protocol.TProtocol prot, TAppend struct) throws org.apache.thrift.TException {
      TTupleProtocol oprot = (TTupleProtocol) prot;
      oprot.writeBinary(struct.row);
      {
        oprot.writeI32(struct.columns.size());
        for (TColumnValue _iter97 : struct.columns)
        {
          _iter97.write(oprot);
        }
      }
      BitSet optionals = new BitSet();
      if (struct.isSetAttributes()) {
        optionals.set(0);
      }
      if (struct.isSetDurability()) {
        optionals.set(1);
      }
      if (struct.isSetCellVisibility()) {
        optionals.set(2);
      }
      oprot.writeBitSet(optionals, 3);
      if (struct.isSetAttributes()) {
        {
          oprot.writeI32(struct.attributes.size());
          for (Map.Entry<ByteBuffer, ByteBuffer> _iter98 : struct.attributes.entrySet())
          {
            oprot.writeBinary(_iter98.getKey());
            oprot.writeBinary(_iter98.getValue());
          }
        }
      }
      if (struct.isSetDurability()) {
        oprot.writeI32(struct.durability.getValue());
      }
      if (struct.isSetCellVisibility()) {
        struct.cellVisibility.write(oprot);
      }
    }

    @Override
    public void read(org.apache.thrift.protocol.TProtocol prot, TAppend struct) throws org.apache.thrift.TException {
      TTupleProtocol iprot = (TTupleProtocol) prot;
      struct.row = iprot.readBinary();
      struct.setRowIsSet(true);
      {
        org.apache.thrift.protocol.TList _list99 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
        struct.columns = new ArrayList<TColumnValue>(_list99.size);
        TColumnValue _elem100;
        for (int _i101 = 0; _i101 < _list99.size; ++_i101)
        {
          _elem100 = new TColumnValue();
          _elem100.read(iprot);
          struct.columns.add(_elem100);
        }
      }
      struct.setColumnsIsSet(true);
      BitSet incoming = iprot.readBitSet(3);
      if (incoming.get(0)) {
        {
          org.apache.thrift.protocol.TMap _map102 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32());
          struct.attributes = new HashMap<ByteBuffer,ByteBuffer>(2*_map102.size);
          ByteBuffer _key103;
          ByteBuffer _val104;
          for (int _i105 = 0; _i105 < _map102.size; ++_i105)
          {
            _key103 = iprot.readBinary();
            _val104 = iprot.readBinary();
            struct.attributes.put(_key103, _val104);
          }
        }
        struct.setAttributesIsSet(true);
      }
      if (incoming.get(1)) {
        struct.durability = cn.lhfei.hbase.ch06.thrift2.generated.TDurability.findByValue(iprot.readI32());
        struct.setDurabilityIsSet(true);
      }
      if (incoming.get(2)) {
        struct.cellVisibility = new TCellVisibility();
        struct.cellVisibility.read(iprot);
        struct.setCellVisibilityIsSet(true);
      }
    }
  }

}

redpajama_set_name: RedPajamaGithub


Oliver Peoples Calidor is Intellectual and sophisticated, this cultured style is a modern interpretation of 18th century design. Clean lines provides a classic, vintage-inspired look.
The Eye Bar is an authorized optician for Oliver Peoples Eyewear & Oliver Peoples Sunglasses. The purchase price include $100 towards prescription lenses. To order the Oliver Peoples Calidor with prescription lenses please contact us via email or phone.
Oliver Peoples Calidor includes complimentary shipping, a genuine Oliver Peoples case & cleaning cloth.