text:
Deeplinks Blog posts about NSA Spying
June 5, 2013 was when the world heard from Snowden. This year, it's your turn to speak out.
On June 5, 2013 the Guardian newspaper published the first of Edward Snowden's astounding revelations. The secret court order that conclusively showed that the US government was collecting the phone records of millions of innocent Verizon customers. It was the first of a continuous stream of stories that pointed out what we've suspected for a long time: that the world's digital communications are being continuously spied upon by nation states with precious little oversight.
Over the past year, as the Snowden revelations have rolled out, the government and its apologists have developed a set of talking points about mass spying that the public has now heard over and over again. From the President, to Hilary Clinton to Rep. Mike Rogers, Sen. Dianne Feinstein and many others, the arguments are often eerily similar.
But as we approach the one year anniversary, it's time to call out the key claims that have been thoroughly debunked and insist that the NSA apologists retire them.
So if you hear any one of these in the future, you can tell yourself straight up: "this person isn't credible," and look elsewhere for current information about the NSA spying. And if these are still in your talking points (you know who you are) it's time to retire them if you want to remain credible. And next time, the talking points should stand the test of time.
1. The NSA has Stopped 54 Terrorist Attacks with Mass Spying
Many news reports have focused on Section 215 of the Patriot Act (used to collect all Americans' calling records) and Section 702 of the Foreign Intelligence Surveillance Act Amendments Act (FAA) (used to collect phone calls, emails and other Internet content) as the legal authorities supporting much of the NSA's spying regime. Both laws were passed by Congress and are overseen by the Foreign Intelligence Surveillance Court (FISA court). However, it's likely that the NSA conducts much more of its spying under the President's claimed inherent powers and only governed by a document originally approved by President Reagan titled Executive Order 12333.
The NSA has corrupted the Internet. On June 5, we will Reset the Net. We hope you'll join us.
June 5 is the one-year anniversary of the first documents leaked by Edward Snowden. While EFF has been fighting NSA surveillance for years, 2013 marked a new chapter in our battle against mass spying. The documents made it clear to everyone why we care so much, and why they should too.
EFF Nominates Justice Department's National Security Division for Golden Padlock Award for Egregious Secrecy
For the second year in a row, Investigative Reporters and Editors solicited nominations from the public for one of the least coveted prizes in government: the Golden Padlock. The award recognizes "the most secretive publicly-funded agency or person in the United States," and the U.S. Border Patrol last year took home the inaugural honor for stonewalling Freedom of Information Act requests related to agent-involved shootings along the border.
Subscribe to EFF Updates
Deeplinks Archives
Deeplinks Topics
- Fair Use and Intellectual Property: Defending the Balance
- Free Speech
- Innovation
- UK Investigatory Powers Bill
- International
- Know Your Rights
- Privacy
- Trade Agreements and Digital Rights
- Security
- State-Sponsored Malware
- Abortion Reporting
- Analog Hole
- Anonymity
- Anti-Counterfeiting Trade Agreement
- Artificial Intelligence & Machine Learning
- Biometrics
- Bloggers' Rights
- Border Searches
- Broadcast Flag
- Broadcasting Treaty
- Cell Tracking
- Coders' Rights Project
- Computer Fraud And Abuse Act Reform
- Content Blocking
- Copyright Trolls
- Council of Europe
- Cyber Security Legislation
- CyberSLAPP
- Defend Your Right to Repair!
- Development Agenda
- Digital Books
- Digital Radio
- Digital Video
- DMCA Rulemaking
- Do Not Track
- E-Voting Rights
- EFF Europe
- Electronic Frontier Alliance
- Encrypting the Web
- Export Controls
- Eyes, Ears & Nodes Podcast
- FAQs for Lodsys Targets
- File Sharing
- Fixing Copyright? The 2013-2016 Copyright Review Process
- Genetic Information Privacy
- Government Hacking and Subversion of Digital Security
- Hollywood v. DVD
- How Patents Hinder Innovation (Graphic)
- International Privacy Standards
- Internet Governance Forum
- Law Enforcement Access
- Legislative Solutions for Patent Reform
- Locational Privacy
- Mandatory Data Retention
- Mandatory National IDs and Biometric Databases
- Mass Surveillance Technologies
- Medical Privacy
- Mobile devices
- National Security and Medical Information
- National Security Letters
- Net Neutrality
- No Downtime for Free Speech
- NSA Spying
- Offline : Imprisoned Bloggers and Technologists
- Online Behavioral Tracking
- Open Access
- Open Wireless
- Patent Busting Project
- Patent Trolls
- Patents
- PATRIOT Act
- Pen Trap
- Policy Analysis
- Printers
- Public Health Reporting and Hospital Discharge Data
- Reading Accessibility
- Real ID
- Reclaim Invention
- Search Engines
- Search Incident to Arrest
- Section 230 of the Communications Decency Act
- Shadow Regulation
- Social Networks
- SOPA/PIPA: Internet Blacklist Legislation
- Student Privacy
- Stupid Patent of the Month
- Surveillance and Human Rights
- Surveillance Drones
- Terms Of (Ab)Use
- Test Your ISP
- The "Six Strikes" Copyright Surveillance Machine
- The Global Network Initiative
- The Law and Medical Privacy
- TPP's Copyright Trap
- Trans-Pacific Partnership Agreement
- Travel Screening
- Trusted Computing
- Video Games
- Wikileaks
- Transparency
- Uncategorized


text:
8th Annual Fidelity Investments Kickball 4 the Kids Charity Tournament
Hosted by the Active 20-30 Club of Albuquerque
The 8th Annual Fidelity Investments Kickball 4 the Kids charity tournament is the largest kickball event in the Southwest, with over 900 participants, a beer garden featuring the best local craft brews, the finest food trucks in the Duke City, live DJ, cornhole, and more.
The tournament includes pool play for all registered teams, separating in to social and competitive tournament brackets once pool play is complete.
The competitive tournament includes the top teams from pool play competing for a cash grand prize.
The social tournament includes non-competitive teams playing in a relaxed, friendly tournament.
Both brackets feature playing levels of all abilities, ensuring all our kickball participants have an enjoyable experience, while raising money for locally-based children's charities.
The 8th Annual Fidelity Investments Kickball 4 the Kids charity tournament is an excellent opportunity for corporate wellness and team-building. Each year organizations of all sizes participate in Kickball 4 the Kids and leverage the fun, team-oriented environment to build camaraderie and dynamic.
For more information about the event, sponsorships, or corporate teams please contact us.
For details about sponsorship opportunities download our sponsorship packet.
Event Details
- Saturday, September 9, 2017
- 9am – 7pm (Times subject to change)
- $650 per team
- Three (3) Rounds of Pool Play Games followed by an Elimination Tournament (TBD Teams Advance)
- This is a Non-Circuit Event in conjunction with Kickball365
All kickball games for this Social Event will be played on natural grass fields.
Transportation, Directions, & Parking
There will be parking available at the field location. Public transportation via taxis is highly recommended if your team does not have a rental car/van. Be sure to check with your Hotel hosts regarding the amount of time it should take to travel to the events.
DISCLAIMER: There is NO official transportation from the Tournament Sponsor provided to the fields. Kickball365 recommends players take advantage of the Hertz Rent-a-Car Sponsorship offering.
Time to Arrive at Fields
Teams are encouraged to report to the field an hour before Pool Play Games are set to begin. We encourage all teams to arrive early to secure a parking spot.
Event Rules
This Non-Circuit Event will utilize the Official Rulebook of Kickball365.
You must be at least 18 years old to participate in this event.
You must be in good health and physically prepared to compete in this event.
You are required to sign a waiver at registration at the HQ Tent on the Game Day.
The Tournament will, in its sole and absolute discretion, allow for a 100% refund of a player registration up until the point of the registration deadline. No Refund will be granted on or after the registration date (no matter what the circumstances). Entry fees are non-refundable and non-transferable after the deadline. No exceptions.
Medical Information
The Medical Team for this event will be the local Emergency Department. They will be available to assist with any event day medical needs and administer first aid when necessary.
Prize Pool
There is a Prize Pool for the competitive division.
Player Perks
Tents for your Teammates (provided you purchase before Early Registration deadline).
Food & Beverage Service provided at the Fields.
Beer Garden at the Fields.
Social Media Tips
We encourage all players and fans to use the Social Event hashtag #K4TK2017

subset: commoncrawl


text:
Jessica Medlin, CIC
Commercial Lines Agent/Producer at ECM Solutions
Jessica Medlin, CIC of ECM Solutions, Charlotte, has been named 2013 Young Agent of the Year by the Independent Insurance Agents of North Carolina. This prestigious award recognizes the independent insurance agent under 41 years of age who has demonstrated outstanding commitment and performance for her agency, association, industry, and community.
Sign Up for Newsletters & Alerts
Receive Charlotte Business Journal's Morning Edition and Afternoon Edition newsletters and breaking news alerts.


text:
Let's TalkZapaday, Verrijn Stuartlaan 7, Rijswijk, Netherlands.
Email: firstname.lastname@example.com
The participants of the 74th Chess Tournament Tata Steel is the strongest of his - long and rich - history. There do as ten of the top 15 chess players in the world with it. With an average rating of 2752 exceeds the Tata Steel Chess Tournament in terms of occupation, the anniversary edition in 2008, when the average rating was 2740. It is also the first time in history that a tournament with 14 participants has such a strong occupation.
Visit the Official Website


text:
Here I am at 3 trying to get 3 point perspective correct.
Or not.
That's me at about 6. Not sure BECAUSE we didn't have the technology to record dates on pictures back then…Truth is, the date written on the back on the picture has faded out.
And no, I wasn't a heavy smoker, it was a bubble pipe. I saw a picture of an artist with a pipe and thought that was the key to drawing hands correctly. OBVIOUSLY that wasn't it because most of the time my drawings of hands still suck.
Now I sit in front of my computer screen and draw till my arm hurts but I don't smoke a bubble pipe anymore. It's Kit Kats and Twix that are slowly killing me.


text:
To access the UCOP Compliance Training via the Learning Management System (LMS) you will need to follow the instructions below. Individualized training links via e-mail are no longer provided. Please log into the LMS to complete your training.
These online compliance training modules include:
- Sexual Harassment Prevention training for Supervisors (including MSP, ITP equivalents and above and all Faculty)
- 2012 Compliance & Conflict of Interest for Researchers Briefing
You will need a UCLA Logon ID to access the training on the LMS. For UCLA Logon ID assistance, please go to https://logon.ucla.edu or contact the Bruin Online Help Desk: (310) 267-HELP or firstname.lastname@example.com.
Before starting the training, pop-up blockers on your computer must be turned off. If you need assistance with pop-up blockers or other technical issues, please visit: http://www.universityofcalifornia.edu/compaudit/usagetips.html or contact your IT staff.
This course can be taken using Internet Explorer 6.0 or higher, Safari 2.0 or higher, or Firefox 2.0 or higher browsers.
The briefing does not need to be completed all at once; if you need to return to the briefing, the program will take you to where you last were in the briefing. Use instructions below to resume the course, or to review materials at a later date.
To Access Your Required Training:
- Go to: http://lms.ucla.edu
- On the UCLA Logon screen, enter your UCLA Logon ID and Password (formerly BOL or Bruin On-line) then click "Sign In".
- On the Menu-Bar (upper-left hand corner of the screen) click on "Assess" and then click on "Training Analysis".
- A listing of courses that you are required to complete or you have signed-up for will be displayed.
- Click the "Start" button to the left of the course name to begin the training.
- If you close the course window, you may re-start the course, returning to the point where you last were in the course.
- Once you have completed the course, click the log off link in the upper-right hand corner of the screen.
- Close your browser (all windows) completely before leaving the computer.
- You will receive a completion confirmation email, within 30 minutes of finishing the course.


text:
Are there any restrictions or requirements for eating all one can? And are there vegetarian options for those who eat no chicken, pork, beef?
Susan s. asked on May 21, 2013
I'm very sorry that we were unable to get to your question in time! Unfortunately, this deal has sold out :( Please keep an eye out for similar deals we may offer which could fit your needs.
If you need any further assistance, please reach out to our Customer Service department at firstname.lastname@example.com and we'd be happy to help you.
Sammy T. from Groupon replied on May 22, 2013


text:
It's time for another gorgeous quilt tutorial and our favorite - a free pattern! Today, we're going to show you the Mini Charm Mocha free quilt pattern and a quick look at how to create this neutral, metallic piece! As the weather begins to turn, it's the perfect time to make this quilt, and have a taste of mocha! (But beware, everyone might want this one for their own!)
We selected the Modern Background Luster Metallic collection by Zen Chic for Moda Fabrics. This line is so versatile and gender neutral! The flecks of metallic give such a playful and unique look to the line!
How fun is the stitching on this modern quilt? We love the square charms from the Mini Charm Pack off-set by the squares quilted on the diagonal!
Ready to get started? Pick up a Mini Charm Mocha Quilt Kit and Backing Set for everything you need to get this quilt ready for cuddling!
Here we show you how to easily put this quilt together, using the quilt kit, the Aurifil 50wt Grey Smoke thread and the Creative Grids ruler!


text:
The betting on the first Classic of the season was neither shaken nor stirred by the success of Misu Bond here yesterday. True, his trainer was rubbing his hands over the prospect of coming back with two runners in the Stan James 2,000 Guineas, a fortnight on Saturday. "Good, isn't it?" Bryan Smart said. "Northern trainer going to war!"
But the chances are that Misu Bond and his stablemate, Sir Xaar, are straying innocently into the sights of a familiar villain. The man with the cat on his lap is Sir Michael Stoute, and today he swivels round to his desk and reaches for that ominous red button.
City Of Troy retains explosive potential, despite meeting his first defeat in the Royal Lodge Stakes here last autumn. On the most interesting card of the new season, he could well outclass Sir Xaar and the rest in the Unicorn Craven Stakes over the Guineas course and distance.
It is fashionable nowadays to say that the Classic trials have become hopelessly unfashionable, but nobody has dared tell the champion trainer. Stoute knows that you cannot be dogmatic with horses. In 1999, he won the Guineas first time out with the inexperienced Golan. The following year, he felt that King's Best needed to draw the cork in the Craven, where he was beaten, before pouring the champagne in the Guineas.
This year, he will have been delighted that all eyes and ears have been turned obediently towards Ballydoyle, home of the champion juvenile of 2005, George Washington. But City Of Troy - who is in the same ownership - could yet prove a real Trojan horse, wheeled quietly on to the Rowley Mile from the other end of Newmarket high street.
He certainly looked a colt with a future winning his first two starts last year, when palpably raw, only to run a rather timid race in the Royal Lodge. As things turned out, he can be easily exonerated. "He was lame behind and had torn a muscle," Stoute said yesterday. "But that's all behind him, and now he has to go on. The stable has been going fairly well so far and I'd say he's in pretty good shape for this race. His preparation has gone very well."
Stoute had Notnowcato sufficiently forward yesterday to resume the rapid progress he made last autumn in the Weatherbys Earl of Sefton Stakes - it would be no surprise to see this colt joining the élite by midsummer - and City Of Troy should be quite a sight when the blanket is pulled off today.
The Grand Lodge colt seems certain to have made plenty of progress physically, having looked something of a hulk last year, and it will be fascinating to see how he measures up against this field. It seems possible that a prominent show from either Mulaqat or Gin Jockey would reflect chiefly on the Guineas prospects of their respective stablemates, Sir Percy and Asset.
As for Sir Xaar, he is by no means certain to stay the trip and his trainer will do well to thwart Stoute a second time. In truth, Smart was fortunate to deny him the Bansha House Stables European Free Handicap, as Michael Kinane was forced to delay his challenge on Jeremy while Tony Culhane pressed for home on Misu Bond. There was only a neck in it at the line.
Stoute is not deceived that Jeremy himself might be a Guineas colt, and the sponsors accordingly offer 50-1 against Misu Bond. Smart himself had taken twice those odds in the morning, emboldened by the memory of Monsieur Bond's performance in the classic three years ago. He, too, had been dismissed as a rank outsider but managed sixth despite meeting heavy traffic. "He was only beaten a couple of lengths and this horse is as good as him," Smart said.
Misu Bond - yet another feather in the cap of Danehill Dancer - contrived to lose one shoe in the pre- parade ring and another at the start. "The farrier has done a fantastic job and I have to thank him," Smart said. "He's a very clumsy horse, a bit thick, and it didn't surprise me when he stood on himself and pulled his shoe off again. He's a bit of a goon, but believe me he's decent."
l Monkerhostin took the lead in the British Horseracing Board's Order Of Merit title, and now leads Royal Shakespeare by two points, after finishing third in the Faucets For Mira Showers Silver Trophy Chase at Cheltenham yesterday.Reuse content


text:
Culvers vs Jimmy Johns
Start a new comparison
CulversFast Food
Customers like
- Good 1
Customers don't like
- Cold1
- Our malts were warm and soupy1
Products by Culvers
Jimmy JohnsFast Food
Customers like
- Zero on customer service 7
- Bread 6
- Pleasant delivery people 6
- Good food 5
- Speed of making sandwich 4
Customers don't like
- Customer service14
- Unpleasant worker14
- Service12
- Manager6
- Poor delivery service6
Products by Jimmy Johns
A company's rating is calculated using a mathematical algorithm that evaluates the information in its profile. The algorithm parameters are: users' rating, number of resolved issues, number of company's responses etc. The algorithm is subject to change in future.
Great Comment! Would You Like to Convert It Into Review?You will be able to edit the text before publishing.
Terms of Service
Be first to start a discussion.


text:
Unifi Names Wickes, Ning to Direct China Unit
October 20, 2008,
Polyester and nylon textured yarn producer Unifi Inc. has established the management structure for its China-based subsidiary, Unifi Textiles (Suzhou) Co., Ltd. (UTSC).
"The sole focus of UTSC will be on satisfying the growing demand for the production of higher value specialty yarns for the China market," said Wickes. "This new business model gives our customers in the region faster access to new product innovations and enhanced service opportunities."
Hongjun Ning will serve as director of sales and marketing, reporting to Wickes. Ning will focus on increasing sales and brand awareness of Unifi's value-added products in Asia.
Additional appointments include Luka Yuan as brand sales manager, Bimei Chen as technical sales manager, Fu Zhang as regional account manager, and Dong Dong as export manager.
Berrier noted, "UTSC is a great fit for us in China because it creates added flexibility and allows us to focus exclusively on the value-added customer base."
UTSC was formed by Unifi in July. The company recently opened its office located in Room 1101, Gold River Center, No. 88, Shishan Road, Suzhou New District, Suzhou, Jiangsu Province, P.R. China 215011.
Related Content By Author
Sponsored Content
Sponsored Links
Featured Video
Last Chance to Enter the ICON Honors


text:
Lizzie's Letter
Posted on
Welcome to our new collection, Winter Garden. It feels a little strange to be launching it in the middle of Summer, but who ever said fashion had to make sense! And even though it's warm outside, if you're anything like us, you're already getting a little tired of your summer wardrobe so a little light-weight winter injection can only be a good thing!
It's been a labour of love, but we are truly in love with this collection and we hope you will be too. There are more dresses for more occasions, beautiful fabrics and exclusive prints. You've probably noticed floral prints and motifs are a Kindred signature – growing up, our mum always filled our home with flowers and this has definitely influenced our obsession with beautiful floral prints.
The Luella gold leaf dress, named after my beautiful little 3-year-old girl, is a personal favourite – I've worn it to a couple of weddings recently and I've never received more compliments. It's one of those dresses that makes you feel good when you're wearing it. The fabric is heavenly, the gold leaf so pretty and the swish of the skirt makes dancing even more fun!
We'd love to hear your thoughts and if you have any styling questions you need answering, we're only an email away.
Lizzie x


text:
role Iterator
Generic API for producing a sequence of values
constant IterationEnd
Iterator is an object that can generate or provide elements of a sequence. Users usually don't have to care about iterators, their usage is hidden behind iteration APIs such as
for @list { }, map, grep and list indexing with
Iterators generally only allow one iteration over the sequence; afterwards they are exhausted.
The main API is the
pull-one method, which either returns the next value, or the sentinel value
IterationEnd if no more elements are available. Each class implementing
Iterator must provide a
pull-one method. All other Iterator API methods can be implemented in terms of
pull-one, but also overridden for performance reasons.
Note: The only valid use of the sentinel value
IterationEnd in a program is identity comparison (using
=:=) with the result of a method in the iterator API. Any other behavior is undefined and implementation dependent.
method pull-one
Defined as:
method pull-one(Iterator: --> Mu)
This method stub ensures that classes implementing the
Iterator role provide a method named
pull-one method is supposed to return the next value if available, or the sentinel value
IterationEnd if no more elements are available.
my = (1 .. 3).iterator;say .pull-one; # OUTPUT: «1␤»say .pull-one; # OUTPUT: «2␤»say .pull-one; # OUTPUT: «3␤»dd .pull-one; # IterationEnd
method push-exactly
Defined as:
method push-exactly(Iterator: , int --> Mu)
$count elements, and for each of them, calls
If fewer than
$count elements are available from the iterator, it returns the sentinel value
IterationEnd. Otherwise it returns
my ;say (1 .. Inf).iterator.push-exactly(, 3); # OUTPUT: «3␤»say ; # [1 2 3]
method push-at-least
Defined as:
method push-at-least(Iterator: , int --> Mu)
Produces at least
$count elements, and for each of them, calls
If fewer than
$count elements are available from the iterator, it returns the sentinel value
IterationEnd. Otherwise it returns
Iterators with side effects should produce exactly
$count elements; iterators without side effects (such as Range iterators) can produce more elements to achieve better performance.
my ;say (1 .. Inf).iterator.push-at-least(, 10); # OUTPUT: «10␤»say ; # [1 2 3 4 5 6 7 8 9 10]
method push-all
Defined as:
method push-all(Iterator: )
Produces all elements from the iterator and pushes them to
The fallback is implemented in terms of repeated
push-at-least with a large
my ;say (1 .. 1000).iterator.push-all(); # All 1000 values are pushed
method push-until-lazy
Defined as:
method push-until-lazy(Iterator: --> Mu)
Produces values until it considers itself to be lazy, and pushes them onto
This matters mostly for iterators that have other iterators embedded, some of which might be lazy, while others aren't.
method is-lazy
Defined as:
method is-lazy(Iterator: --> Bool)
True for iterators that consider themselves lazy, and
False otherwise.
Built-in operations that know that they can produce infinitely many values return
True here, for example
say (1 .. 100).is-lazy; # OUTPUT: «False␤»say (1 .. Inf).is-lazy; # OUTPUT: «True␤»
method sink-all
Defined as:
method sink-all(Iterator:)
Exhausts the iterator (while discarding generated elements) purely for the side effects of the iteration.
say (1 .. 1000).iterator.sink-all;
method skip-one
Defined as:
method skip-one(Iterator: --> Mu)
Skips one value. The return value is truthy if skip was successful and falsy if there were no values to skip:
my = <a b>.iterator;say .skip-one; say .pull-one; say .skip-one# OUTPUT: «1␤b␤0␤»
method skip-at-least
Defined as:
method skip-at-least(Iterator: , int --> Mu)
$to-skip values. The return value is truthy if skip was successful and falsy if there were not enough values to skip:
my = <a b c>.iterator;say .skip-at-least(2); say .pull-one; say .skip-at-least(20);# OUTPUT: «1␤c␤0␤»
method skip-at-least-pull-one
Defined as:
method skip-at-least-pull-one(Iterator: , int --> Mu)
$to-skip values and pulls the next value. The returns the pulled value or
IterationEnd if there were not enough values:
my = <a b c>.iterator;say .skip-at-least-pull-one(2);say .skip-at-least-pull-one(20) =:= IterationEnd;# OUTPUT: «c␤True␤»


text:
Download presentation
Presentation is loading. Please wait.
Published byBrittany Mosier Modified over 2 years ago
1 Languages and Compilers (SProg og Oversættere) Lecture 12 Heap Management and Garbage Collection Bent Thomsen Department of Computer Science Aalborg University With acknowledgement to Norm Hutchinson, Patrick Earl, Ethan Henry, Simon Leonard and Jack Newton whose slides this lecture is based on.
2 The "Phases" of a Compiler Syntax Analysis Contextual Analysis Code Generation Source Program Abstract Syntax Tree Decorated Abstract Syntax Tree Object Code Error Reports Last lecture
3 Remember Lecture 10 High Level Program Low-level Language Processor How to model high-level computational structures and data structures in terms of low-level memory and machine instructions. Procedures Expressions Variables Arrays Records Objects Methods Registers Machine Instructions Bits and Bytes Machine Stack How to model ?
4 Sometimes it goes the other way round High Level Program Low-level Language Processor How to reflect low-level memory and machine data structures in terms of high-level computational structures. Objects Registers Bits and Bytes How to model ? Pointers Indirect addressing References
5 Memory usage RECAP: we have seen 2 storage allocation models so far: static allocation code segment global variables exist "forever" stack allocation local variables and arguments for procedures and functions lifetime follows procedure activation NEXT: Dynamic allocation, also called Heap Storage Some programs may ask for and get memory allocated on arbitrary points during execution When this memory is no longer used it should be freed
6 Heap Storage Memory allocation under explicit programmatic control –C malloc, C++ / Pascal / Java / C# new operation. Memory allocation implicit in language constructs –Lisp, Scheme, Haskell, SML, … most functional languages –Autoboxing/unboxing in Java 1.5 and C# Deallocation under explicit programmatic control –C, C++, Pascal Deallocation implicit –Java, C#, Lisp, Scheme, Haskell, SML, …
7 Heap Storage Deallocation Explicit versus Implicit Deallocation Examples: Implicit: Java, Scheme Explicit: Pascal and C To free heap memory a specific operation must be called. Pascal ==> dispose C ==> free C++ ==> delete Implicit and Explicit: Ada Deallocation on leaving scope In explicit memory management, the program must explicitly call an operation to release memory back to the memory management system. In implicit memory management, heap memory is reclaimed automatically by a "garbage collector".
8 How does things become garbage? int *p, *q; … p = malloc(sizeof(int)); p = q; for(int i=0;i<10000;i++){ SomeClass obj= new SomeClass(i); System.out.println(obj); } Newly created space becomes garbage Creates 10000 objects, which becomes garbage just after the print
9 Problem with explicit heap management int *p, *q; … p = malloc(sizeof(int)); q = p; free(p); Dangling pointer in q now float myArray[100]; p = myArray; *(p+i) = … //equivalent to myArray[i] They can be hard to recognize
10 OO Languages and heap allocation Objects are a lot like records and instance variables are a lot like fields. => The representation of objects is similar to that of a record. Methods are a lot like procedures. => Implementation of methods is similar to routines. But… there are differences: Objects have methods as well as instance variables, records only have fields. The methods have to somehow know what object they are associated with (so that methods can access the object's instance variables)
11 Representation of a simple Java object A simple Java object (no inheritance) class Point { int x,y; public Point(int x, int y) { this.x=x; this.y=y; } public void move(int dx, int dy) { x=x+dx; y=y+dy; } public float area() {...} public float dist(Point other) {... } } class Point { int x,y; public Point(int x, int y) { this.x=x; this.y=y; } public void move(int dx, int dy) { x=x+dx; y=y+dy; } public float area() {...} public float dist(Point other) {... } } (1) (2) (3) (4)
12 Representation of a simple Java object A simple Java object (no inheritance) Point class Point move area dist constructor(1) method(2) method(3) method(4) Point p = new Point(2,3); Point q = new Point(0,0); pqpq class xyxy 2323 xyxy 0000 new allocates an object in the heap
13 Objects can become garbage Point p = new Point(2,3); Point q = new Point(0,0); p = q;
14 Stacks and dynamic allocations are incompatible Why can't we just do dynamic allocation within the stack? Programming Language design and Implementation -4th Edition Copyright©Prentice Hall, 2000
15 Automatic Storage Deallocation (Garbage Collection) Everybody probably knows what a garbage collector is. But here are two "one liners" to make you think again about what a garbage collector really is! 1) Garbage collection provides the "illusion of infinite memory"! 2) A garbage collector predicts the future! It's a kind of magic! :-) Let us look at how this magic is done!
16 Where to put the heap? The heap is an area of memory which is dynamically allocated. Like a stack, it may grow and shrink during runtime. Unlike a stack it is not a LIFO => more complicated to manage In a typical programming language implementation we will have both heap-allocated and stack allocated memory coexisting. Q: How do we allocate memory for both
17 Where to put the heap? A simple approach is to divide the available memory at the start of the program into two areas: stack and heap. Another question then arises –How do we decide what portion to allocate for stack vs. heap ? –Issue: if one of the areas is full, then even though we still have more memory (in the other area) we will get out-of-memory errors Q: Isn't there a better way?
18 Where to put the heap? Q: Isn't there a better way? A: Yes, there is an often used "trick": let both stack and heap share the same memory area, but grow towards each other from opposite ends! ST SB HB HT Stack memory area Heap memory area Stack grows downward Heap can expand upward
19 How to keep track of free memory? Stack is LIFO allocation => ST moves up/down everything above ST is in use/allocated. Below is free memory. This is easy! But … Heap is not LIFO, how to manage free space in the "middle" of the heap? HB HT Allocated ST SB Free Mixed: Allocated and Free reuse?
20 How to keep track of free memory? How to manage free space in the "middle" of the heap? HB HT => keep track of free blocks in a data structure: the "free list". For example we could use a linked list pointing to free blocks. Free Next freelist Free Next A freelist! Good idea! But where do we find the memory to store this data structure? A freelist! Good idea! But where do we find the memory to store this data structure?
21 How to keep track of free memory? HB HT Q: Where do we find the memory to store a freelist data structure? A: Since the free blocks are not used for anything by the program => memory manager can use them for storing the freelist itself. HF free block size next free
22 Why Garbage Collect? Software Engineering –Garbage collection increases abstraction level of software development. –Simplified interfaces and decreases coupling of modules. –Studies have shown a significant amount of development time is spent on memory management bugs [Rovner, 1985].
23 Implicit memory management Current trend of modern programming language development: to give only implicit means of memory management to a programmer: –The constant increase of hardware memory justifies the policy of automatic memory management –The explicit memory management distracts programmer from his primary tasks: let everyone do what is required of them and nothing else! –The philosophy of high-level languages conforms to the implicit memory management Other arguments for implicit memory management: –Anyway, a programmer cannot control memory management for temporary variables! –The difficulties of combination of two memory management mechanisms: system and the programmer's The history repeats: in 70's people thought that the implicit memory management had finally replaced all other mechanisms
24 Classes of Garbage Collection Algorithms Direct Garbage Collectors: a record is associated with each node in the heap. The record for node N indicates how many other nodes or roots point to N. Indirect/Tracing Garbage Collectors: usually invoked when a user's request for memory fails because the free list is exhausted. The garbage collector visits all live nodes, and returns all other memory to the free list. If sufficient memory has been recovered from this process, the user's request for memory is satisfied.
25 Terminology Roots: values that a program can manipulate directly (i.e. values held in registers, on the program stack, and global variables.) Node/Cell/Object: an individually allocated piece of data in the heap. Children Nodes: the list of pointers that a given node contains. Live Node: a node whose address is held in a root or is the child of a live node. Garbage: nodes that are not live, but are not free either. Garbage collection: the task of recovering (freeing) garbage nodes. Mutator: The program running alongside the garbage collection system.
26 Types of garbage collectors The "Classic" algorithms –Reference counting –Mark and sweep Copying garbage collection Generational garbage collection Incremental Tracing garbage collection
27 Reference Counting Every cell has an additional field: the reference count. This field represents the number of pointers to that cell from roots or heap cells. Initially, all cells in the heap are placed in a pool of free cells, the free list. When a cell is allocated from the free list, its reference count is set to one. When a pointer is set to reference a cell, the cell's reference count is incremented by 1; if a pointer is to the cell is deleted, its reference count is decremented by 1. When a cell's reference count reaches 0, its pointers to its children are deleted and it is returned to the free list.
28 01 0 0 0 Reference Counting Example 1 2 1 1
29 2 1 1 1 Reference Counting Example 0 1
30 2 1 1 1 Reference Counting Example 0 0 1 1
31 2 1 1 1 Reference Counting Example 0 0 0 1 1 Returned to free list
32 Reference Counting: Advantages and Disadvantages Advantages: –Garbage collection overhead is distributed. –Locality of reference is no worse than mutator. –Free memory is returned to free list quickly.
33 Reference Counting: Advantages and Disadvantages Disadvantages: –High time cost (every time a pointer is changed, reference counts must be updated). In place of a single assignment x.f = p: –Storage overhead for reference counter can be high. –Unable to reclaim cyclic data structures. –If the reference counter overflows, the object becomes permanent. z = x.f c = z.count c = c – 1 z.count = c If c = 0 call putOnFreeList(z) x.f = p c = p.count c = c + 1 p.count = c
34 Reference Counting: Cyclic Data Structure - Before 02 0 0 1 2 1
35 Reference Counting: Cyclic Data Structure – After 01 0 0 1 2 1
36 Deferred Reference Counting Optimisation –Cost can be improved by special treatment of local variables. –Only update reference counters of objects on the stack at fixed intervals. –Reference counts are still affected from pointers from one heap object to another.
37 Mark-Sweep The first tracing garbage collection algorithm Garbage cells are allowed to build up until heap space is exhausted (i.e. a user program requests a memory allocation, but there is insufficient free space on the heap to satisfy the request.) At this point, the mark-sweep algorithm is invoked, and garbage cells are returned to the free list. Performed in two phases: –Mark: identifies all live cells by setting a mark bit. Live cells are cells reachable from a root. –Sweep: returns garbage cells to the free list.
38 Mark and Sweep Garbage Collection HT e c a HB SB ST b d before gc HT e c a SB ST b d HB mark as free phase X X X X X
39 Mark and Sweep Garbage Collection HT e c a SB ST b d HB mark as free phase X X X X X HT e c a SB ST b d HB X X X X X X X X mark reachable SB ST HB HT e b d X X X X X X collect free
40 Mark-Sweep Example Returned to free list
41 Mark and Sweep Garbage Collection Algorithm pseudo code: void garbageCollect() { mark all heap variables as free for each frame in the stack scan(frame) for each heapvar (still) marked as free add heapvar to freelist } void scan(region) { for each pointer p in region if p points to region marked as free then mark region at p as reachable scan(region at p ) } Q: This algorithm is recursive. What do you think about that?
42 Mark-Sweep: Advantages and Disadvantages Advantages: –Cyclic data structures can be recovered. –Tends to be faster than reference counting.
43 Mark-Sweep: Advantages and Disadvantages Disadvantages: –Computation must be halted while garbage collection is being performed –Every live cell must be visited in the mark phase, and every cell in the heap must be visited in the sweep phase. –Garbage collection becomes more frequent as residency of a program increases. –May fragment memory.
44 Mark-Sweep: Advantages and Disadvantages Disadvantages: –Has negative implications for locality of reference. Old objects get surrounded by new ones (not suited for virtual memory applications). However, if objects tend to survive in clusters in memory, as they apparently often do, this can greatly reduce the cost of the sweep phase.
45 Mark-Compact Collection Remedy the fragmentation and allocation problems of mark-sweep collectors. Two phases: –Mark: identical to mark sweep. –Compact: marked objects are compacted, moving most of the live objects until all the live objects are contiguous.
46 Heap Compaction To fight fragmentation, some memory management algorithms perform "heap compaction" once in a while. HB HT HF a b c HB HT a b d d c beforeafter
47 Mark-Compact: Advantages and Disadvantages Advantages: –The contiguous free area eliminates fragmentation problem. Allocating objects of various sizes is simple. –The garbage space is "squeezed out", without disturbing the original ordering of objects. This improves locality.
48 Mark-Compact: Advantages and Disadvantages Disadvantages: –Requires several passes over the data are required. "Sliding compactors" takes two, three or more passes over the live objects. One pass computes the new location Subsequent passes update the pointers to refer to new locations, and actually move the objects
49 Copying Garbage Collection Like mark-compact, copying garbage collection does not really "collect" garbage. Rather it moves all the live objects into one area and the rest of the heap is known to be available. Copying collectors integrate the traversal and the copying process, so that objects need only be traversed once. The work needed is proportional to the amount of live data (all of which must be copied).
50 Semispace Collector Using the Cheney Algorithm The heap is subdivided into two contiguous subspaces (FromSpace and ToSpace). During normal program execution, only one of these semispaces is in use. When the garbage collector is called, all the live data are copied from the current semispace (FromSpace) to the other semispace (ToSpace).
51 Semispace Collector Using the Cheney Algorithm A BC D FromSpaceToSpace
52 Semispace Collector Using the Cheney Algorithm FromSpaceToSpace A B C D A BC D
53 Semispace Collector Using the Cheney Algorithm Once the copying is completed, the ToSpace is made the "current" semispace. A simple form of copying traversal is the Cheney algorithm. The immediately reachable objects from the initial queue of objects for a breadth-first traversal. A scan pointer is advanced through the first object location by location. Each time a pointer into FromSpace is encountered, the referred-to-object is transported to the end of the queue and the pointer to the object is updated.
54 Semispace Collector Using the Cheney Algorithm Multiple paths must not be copied to tospace multiple times. When an object is transported to tospace, a forwarding pointer is installed in the old version of the object. The forwarding pointer signifies that the old object is obsolete and indicates where to find the new copy.
55 Copying Garbage Collection: Advantages and Disadvantages Advantages: –Allocation is extremely cheap. –Excellent asymptotic complexity. –Fragmentation is eliminated. –Only one pass through the data is required.
56 Copying Garbage Collection: Advantages and Disadvantages Disadvantages: –The use of two semi-spaces doubles memory requirement –Poor locality. Using virtual memory will cause excessive paging.
57 Problems with Simple Tracing Collectors Difficult to achieve high efficiency in a simple garbage collector, because large amounts of memory are expensive. If virtual memory is used, the poor locality of the allocation/reclamation cycle will cause excessive paging. Even as main memory becomes steadily cheaper, locality within cache memory becomes increasingly important.
58 Problems with Simple Tracing Collectors With a simple semispace copy collector, locality is likely to be worse than mark-sweep. The memory issue is not unique to copying collectors. Any efficient garbage collection involves a trade- off between space and time. The problem of locality is an indirect result of the use of garbage collection.
59 Generational Garbage Collection Attempts to address weaknesses of simple tracing collectors such as mark-sweep and copying collectors: –All active data must be marked or copied. –For copying collectors, each page of the heap is touched every two collection cycles, even though the user program is only using half the heap, leading to poor cache behavior and page faults. –Long-lived objects are handled inefficiently.
60 Generational Garbage Collection Generational garbage collection is based on the generational hypothesis: Most objects die young. As such, concentrate garbage collection efforts on objects likely to be garbage: young objects.
61 Generational Garbage Collection: Object Lifetimes When we discuss object lifetimes, the amount of heap allocation that occurs between the object's birth and death is used rather than the wall time. For example, an object created when 1Kb of heap was allocated and was no longer referenced when 4 Kb of heap data was allocated would have lived for 3Kb. Typically, between 80 and 98 percent of all newly- allocated heap objects die before another megabyte has been allocated.
62 Generational Garbage Collection Objects are segregated into different areas of memory based on their age. Areas containing newer objects are garbage collected more frequently. After an object has survived a given number of collections, it is promoted to a less frequently collected area.
63 Generational Garbage Collection: Example Old GenerationNew Generation Root Set S A B C Memory Usage
64 Generational Garbage Collection: Example (Continued) Old GenerationNew Generation Root Set S A B C Memory Usage R
65 Generational Garbage Collection: Example (Continued) Old GenerationNew Generation Root Set S A B C Memory Usage R D
66 Generational Garbage Collection: Example This example demonstrates several interesting characteristics of generational garbage collection: –The young generation can be collected independently of the older generations (resulting in shorter pause times). –An intergenerational pointer was created from R to D. These pointers must be treated as part of the root set of the New Generation. –Garbage collection in the new generation result in S becoming unreachable, and thus garbage. Garbage in older generations (sometimes called tenured garbage) can not be reclaimed via garbage collections in younger generations.
67 Generational Garbage Collection: Implementation Usually implemented as a copying collector, where each generation has its own semispace: Old GenerationNew Generation FromSpace ToSpace
68 Generational Garbage Collection: Issues Choosing an appropriate number of generations: –If we benefit from dividing the heap into two generations, can we further benefit by using more than two generations? Choosing a promotion policy: –How many garbage collections should an object survive before being moved to an older generation? Tracking intergenerational pointers: –Inter-generational pointers need to be tracked, since they form part of the root set for younger generations. Collection Scheduling –Can we attempt to schedule garbage collection in such a way that we minimize disruptive pauses?
69 Generational Garbage Collection: Multiple Generations Generation 1Generation 2Generation 3Generation 4
70 Generational Garbage Collection: Multiple Generations Advantages: –Keeps youngest generation's size small. –Helps address mistakes made by the promotion policy by creating more intermediate generations that still get garbage collected fairly frequently. Disadvantages: –Collections for intermediate generations may be disruptive. –Tends to increase number of inter-generational pointers, increasing the size of the root set for younger generations. Most generational collectors are limited to just two or three generations.
71 Generational Garbage Collection: Promotion Policies A promotion policy determines how many garbage collections cycles (the cycle count) an object must survive before being advanced to the next generation. If the cycle count is too low, objects may be advanced too fast; if too high, the benefits of generational garbage collection are not realized With a cycle count of just one, objects created just before the garbage collection will be advanced, even though the generational hypothesis states they are likely to die soon. Increasing the cycle count to two denies advancement to recently created objects. Under most conditions, increasing the cycle count beyond two does not significantly reduce the amount of data advanced.
72 Generational Garbage Collection: Inter-generational Pointers Inter-generational pointers can be created in two ways: –When an object containing pointers is promoted to an older generation. –When a pointer to an object in a newer generation is stored in an object. The garbage collector can easily detect promotion- caused inter-generational pointers, but handling pointer stores is a more complicated task. Pointer stores can be tracked via the use of a write barrier: –Pointer stores must be accompanied by extra bookkeeping instructions that let the garbage collector know of pointers that have been updated. Often implemented at the compiler level.
73 Generational Garbage Collection: Collection Scheduling Generational garbage collection aims to reduce pause times. When should these (hopefully short) pause times occur? Two strategies exist: –Hide collections when the user is least likely to notice a pause, or –Trigger efficient collections when there is likely to be lots of garbage to collect.
74 Generational Garbage Collection: Advantages In practice it has proven to be an effective garbage collection technique. Minor garbage collections are performed quickly. Good cache and virtual memory behaviour.
75 Sun HotSpot Sun JDK 1.0 used mark-compact Sun improved memory management in the Java 2 VMs (JDK 1.2 and on) by switching to a generational garbage collection scheme The heap is separated into two regions: –New Objects –Old Objects
76 New Object Region The idea is to use a very fast allocation mechanism and hope that objects all become garbage before you have to garbage collect The New Object Regions is subdivided into three smaller regions: –Eden, where objects are allocated –2 "Survivor" semi-spaces: "From" and "To"
77 New Object Region The Eden area is set up like a stack - an object allocation is implemented as a pointer increment When the Eden area is full, the GC does a reachability test and then copies all the live objects from Eden to the "To" region The labels on the regions are swapped –"To" becomes "From" - now the "From" area has objects
78 New Object Region The next time Eden fills, objects are copied from both the "From" region and Eden to the "To" area There's a "Tenuring Threshold" that determines how many times an object can be copied between survivor spaces before it's moved to the Old Object region Note that one side-effect is that one survivor space is always empty
79 Old Object Region The old object region is for objects that will have a long lifetime The hope is that because most garbage is generated by short-lived objects that you won't need to GC the old object region very often
80 Generational Garbage Collection EdenSS1SS2Old EdenSS1SS2Old EdenSS1SS2Old EdenSS1SS2Old First GC Second GC EdenSS1SS2Old New Object RegionOld Object Region
81 Generational Garbage Collection: Disadvantages Performs poorly if any of the main assumptions are false: –That objects tend to die young. –That there are relatively few pointers from old objects to young ones. Frequent pointer writes to older generations will increase the cost of the write barrier, and possibly increase the size of the root set for younger generations.
82 Incremental Tracing Collectors Program (Mutator) and Garbage Collector run concurrently. –Can think of system as similar to two threads. One performs collection, and the other represents the regular program in execution. Can be used in systems with real-time requirements. For example, process control systems. –allow mutator to do its job without destroying collector's possibilities for keeping track of modifications of the object graph, and at the same time –allowing collector to do its job without interfering with mutator
83 Coherence & Conservatism Coherence: A proper state must be maintained between the mutator and the collector. Conservatism: How aggressive the garbage collector is at finding objects to be deallocated.
84 Tricolouring White – Not yet traversed. A candidate for collection. Black – Already traversed and found to be live. Will not be reclaimed. Grey – In traversal process. Defining characteristic is that it's children have not necessarily been explored.
85 The Tricolour Abstraction
86 Incremental Tracing Collectors Overview Baker's Algorithm –Based on Cheney's copy-collect-algorithm –Based on tricolouring Principle: –whenever mutator accesses a pointer to a white object the object is coloured grey –this ensures that mutator never points to a white object, hence part 1 of the invariant holds At every read mutator does, the invariant must be checked (expensive), if this is the case the object must be forwarded (using the standard forward algorithm) to to-space There are variants: –read-barrier –write-barrier –synchronising on page-level
87 Garbage Collection: Summary MethodConservatismSpaceTimeFragmentationLocality Mark SweepMajorBasic1 traversal + heap scan YesFair Mark CompactMajorBasicMany passes of heap NoGood CopyingMajorTwo Semispaces1 traversalNoPoor Reference Counting NoReference count field Constant per Assignment YesVery Good Deferred Reference Counting Only for stack variables Reference Count Field Constant per Assignment YesVery Good IncrementalVaries depending on algorithm VariesCan be Guaranteed Real-Time Varies GenerationalVariableSegregated AreasVaries with number of live objects in new generation Yes (Non-Copying) No (Copying) Good Tracing Incremental
88 Comparing Garbage Collection Algorithms Directly comparing garbage collection algorithms is difficult – there are many factors to consider. Some factors to consider: –Cost of reclaiming cells –Cost of allocating cells –Storage overhead –How does the algorithm scale with residency? –Will user program be suspended during garbage collection? –Does an upper bound exist on the pause time? –Is locality of data structures maintained (or maybe even improved?)
89 Comparing Garbage Collection Algorithms Zorn's study in 1989/93 compared garbage collection to explicit deallocation: –Non-generational Between 0% and 36% more CPU time. Between 40% and 280% more memory. –Generational garbage collection Between 5% to 20% more CPU time. Between 30 and 150% more memory. Wilson feels these numbers can be improved, and they are also out of date. A well implemented garbage collector will slow a program down by approximately 10 percent relative to explicit heap deallocation.
90 Garbage Collection: Conclusions Despite this cost, garbage collection a feature in many widely used languages: –Lisp (1959) –SML, Haskell, Miranda (1980-) –Perl (1987) –Java (1995) –C# (2001) –Microsoft's Common Language Runtime (2002)
91 Different choices for different reasons JVM –Sun Classic: Mark, Sweep and Compact –SUN HotSpot: Generational (two generation + Eden) -Xincgc an incremental collector that breaks that old-object region into smaller chunks and GCs them individually -Xconcgc Concurrent GC allows other threads to keep running in parallel with the GC –BEA jRockit JVM: concurrent, even on another processor –IBM: Improved Concurrent Mark, Sweep and Compact with a notion of weak references –Real-Time Java Scoped LTMemory, VTMemory, RawMemory.Net CLR –Managed and unmanaged memory (memory blob) –PC version: Self-tuning Generation Garbage Collector –.Net CF: Mark, Sweep and Compact
92 Garbage Collection: Conclusions Relieves the burden of explicit memory allocation and deallocation. Software module coupling related to memory management issues is eliminated. An extremely dangerous class of bugs is eliminated. The compiler generates code for allocating objects The compiler must also generate code to support GC –The GC must be able to recognize root pointers from the stack –The GC must know about data-layout and objects descriptors The choice of Garbage Collector algorithm has to take many factors into consideration
Similar presentations
© 2017 SlidePlayer.com Inc.
All rights reserved.


text:
Marketed By :
LAP LAMBERT Academic Publishing
Sold By :
Kamal Books International
Delivery in :
10-12 Business Days
Availability: Out of stock
(Notify me when this product is back in stock)
Social dilemmas are conflicts between individual rationality and general welfare. The Literature explains how to evaluate effectiveness of cooperation based on trust mechanism in small-scale social dilemmas, but how to evaluate effectiveness of cooperation mechanisms in large-scale situations remain unknown until this book. The authors designed a construct to test cooperation mechanisms used to promote in large-scale social dilemmas that involve resource depletion. The proposed construct integrates cooperation mechanisms like trust, perception of damage and cooperation as norm. Results suggest that the designed artifact explains how mechanisms promote cooperative behavior in large-scale social dilemmas that involve resource depletion. In these cases dynamic complexity affects cooperation. This book finally indicates how cooperation mechanisms can be effective to promote cooperation in the context of dynamic complexity in large-scale social resource situations.


text:
Fiendish plan by two nine year olds who wished to dupe the charitable British public into giving them money to buy Star Wars stuff. The "Anthony and John Figure Fund" involved rattling homemade collection tins made from Panda Pops bottles with attractive labels drawn in felt tip and wandering the estate until we got bored. After two afternoons we had extorted £2.00 each from our parents, who found their children begging for toy money from their neighbours extremely distasteful.
I got Lando Calrissian - result!!
I got Lando Calrissian - result!!
approved Sep 4 2011, submitted Oct 29 2004 by Tony Green
tweet it - facebook it -


text:
Private and Spacious Residence with Magnificent Views Near Friday Harbor.(1 Reviews)
The manager has been emailed.
To book this property, you need to complete your booking through checkout on the VRBO website. We can't protect your payment if we don't know you've booked through us. Learn more
- Minimum stay:30 nights
- Sleeps:6
- Bedrooms:3
- Bathrooms:3
- Property type:House
- Internet:Yes
- Pets considered:Yes
- Wheel chair accessible:No
About the Property
3 Bedrooms, 3 Baths, Sleeps 6
This comfortable residence offers a 180 degree bird's-eye view of wooded hillsides, northern waterways, neighboring San Juan Islands, and a location that cannot be beat. This three acre property is at the end of a lane, overlooking a panorama of forest and sea. The home is sited upon a knoll, bordered by multiple covered decks that beckon you to come outside, relax, and enjoy the view. You will feel remote and serene as you gaze upon the natural splendor, yet because central Friday Harbor is only two miles distant, it is easy to find the convenience of shops, restaurants, the ferry landing, and numerous town activities within close proximity.
The residence has a hint of Adirondack lodge, featuring warm woods, generous room dimensions, and expansive public spaces. It is equipped beyond most standards of a vacation rental with amenities that include quality furnishings and housewares, plush seating, and custom décor. The flexible and separated spaces make this a home that will appeal to small families and couples alike.
On the main level, the living room is elevated by a vaulted ceiling and there is plenty of seating focused toward the view, a wood burning fireplace, and an entertainment center that includes an Apple TV, so you can download the latest movies and TV programs. The semi-formal dining room is adjacent, separated from the kitchen by a bar with seating. The kitchen, with a six burner gas cook top and marble counters, is a grand space that welcomes all to assist in meal preparation. There is also a large laundry room beyond the kitchen.
Two bedrooms are on the main level, one is a full master suite, offering a queen bed, DVD/VCR, and en-suite bathroom with separate stall shower and jetted tub. The second bedroom offers a set of bunks, VCR, and is serviced by a bathroom with shower that is located just across the hall. An office with a desk is also on the main level. Upstairs, there is a large second master bedroom with queen bed, complete with a seating area, deck, and en-suite bath with shower. In addition, there is an expansive loft that opens to the living room. This area contains a desk, game table, and children's furniture, as well as two twin beds around a corner.
This home is rented on a monthly basis so it is a perfect choice for those who wish to share a stay with other family members, come and go frequently from the mainland, or simply try on the island lifestyle for an extended period. For those needing moorage, a buoy adjacent to the Port of Friday Harbor may be available upon request. The home cannot be booked on line, so please call the office for additional information.
PLEASE NOTE: the entertainment system is sophisticated and designed for watching movies. Cable coverage may be acquired as an option if you are staying for multiple months. Verizon cell coverage is good but reception may be limited through other mobile providers. Also note that there is a significant drop-off at the edge of the ridge areas below the decks, so vigilance will be required when renting with a small child.
We recommend you complete your booking on VRBO. Some managers will offer the ability to pay with credit card directly through VRBO.Learn more
Member since: 2012
Property Type
- House
House Rules
- Max. occupancy 6
Accommodation Type
- Vacation Rental
- Guests Provide Their Own Meals
- Long-Term Renters Welcome
- Wheelchair Inaccessible
Bedrooms: 3 Bedrooms, Sleeps 6
Location Type
- Water View
- Ceiling Fans
- Clothes Dryer
- Fireplace
- Firewood
- Internet
- Iron & Board
- Linens Provided
- Telephone
- Telescope
- Towels Provided
- Washing Machine
- Blender
- Coffee Maker
- Dishes & Utensils
- Dishwasher
- Kitchen
- Microwave
- Binoculars
- Deck / Patio
- Outdoor Grill
Payment Type
- Mastercard
- Visa
RatesCurrency Conversion
|Weekend Night
|Monthly *
June 15 thru Sept 15 (Min)
Jun 15 - Sep 15, 2017
30 night min stay
June 15 thru Sept 15 (Max)
Jun 15 - Sep 15, 2017
30 night min stay
Payment is usually accepted in the quoted currency ($) unless the currency and the amount is specifically agreed in advance with the manager / advertiser.
Additional information about rental rates:
Don't forget your vacation protection! Get protected now
Adding our Vacation Protection services can make sure your getaway goes smoothly, no matter what. We offer Cancellation Protection and Damage Protection so you can truly relax.
Manager info
Vacation Doorways
About: Vacation Doorways is the largest LOCAL vacation rental company in the San Juan Islands. We represent more than 70 wonderful vacation homes located on San Juan, Orcas, & Lopez Islands. When you rent a Vacation Doorway home: • Our reservation staff will help you find the perfect home. • The booking process is quick, easy, & secure. • You're protected by a Rental Agreement that spells out rates, terms, & conditions. • Your reservation and payment are rapidly confirmed. • The home you rent is professionally cleaned before you check-in. • A property manager is on call 24/7. • You're dealing with a highly experienced, reputable company. • You can be confident that you'll have a wonderful vacation rental experience!
Contact us
Send email
- Primary: +1 8003918190
- Secondary: +1 3603783601
Links to more information:
- Click Here to see All My Rental Listings
Enjoy expansive views from the decks.
This comfy, cozy living room opens to the dining room and kitchen.
Dining room includes a sitting area.
Cooks will love this fabulous kitchen!
The master bedroom is upstairs and offers a private deck and ensuite bathroom.
This second master bedroom, also with ensuite bathroom, is on the main level.
A set of bunks is in the 3rd bedroom on the main level. A third bathroom is located across the hall.
Play spaces in the large open loft.
Covered decks wrap around two side of the home.
Gather for conversation and reflection in front of this wood-burning fireplace.
The dining room opens to the decks and kitchen area.
The kitchen, with great gas cooktop, is large enough for everyone to share meal prep.
Master bath with shower.
2nd master bedroom includes a jetted tub.
There are two twin beds and an antique vanity in the large upper loft.
This listing was first published here in 2015.
Date last modified - Monday, April 24, 2017
Partner Offers
Tell us about your trip, then book it!
Tell us your travel details and get an instant price quote from Vacation Doorways
Enter dates to see accurate pricing
Booking confirmation within 24 hours
Peace of mind when checking out through VRBO
- We'll back you with our Book With Confidence GuaranteeTM
- You'll get comprehensive payment protection when checking out on our website
- We're always here for you with customer service available 24/7
Read more about our Book with Confidence GuaranteeTM
Send a message to manager
Anonymously report this listing
Thank you
We appreciate your participation and assistance with our efforts to operate the most secure and trusted vacation rental marketplace in the industry
If you have any questions, please visit our Help Center.


text:
It may not be the scorcher it was last year but continued warm spring weather is still leaving its mark, with snowpacks across the province at record lows.
The June Snow Survey and Water Bulletin from the B.C.'s River Forecast Centre says weather in May was about one to two degrees warmer than usual, and the slopes have felt the difference.
Forecast Centre hydrologist Tobi Gardner says the melt is being felt province-wide.
"The provincial average is 23% of normal conditions, and again that reflects early snowmelts in a lot of the basins throughout the province. Historically that is a record low since 1980 for this time of year."
Gardner says the low level has everything to do with accelerated melts, helped along by the particularly warm March and April, not because of low winter snowfall.
Snowpacks on the Lower Fraser and South Coast are at 21% and 32% percent of normal, up from 9% and 0% last year.
Rivers low
Gardner says the loss of snow on the mountains is having an impact on B.C.'s rivers, with many now showing conditions more typical of July.
"These flows we see now are about four weeks ahead of time, so to speak."
He says the situation is particularly noticeable on the Fraser.
"So the timing, this is the earliest date in the season that we've seen that spring peak level, and it was the second lowest recorded peak."
The Foreacast Centre says rivers in the interior will feel the strongest effects, and that barring heavy rains, many rivers will now have hit their peak already.
Much of B.C. remains at drought level 2, or "dry," with Vancouver Island at level three, unchanged from last month.
Metro reservoirs in good shape
Meanwhile in Metro Vancouver officials are sounding a note of cautious optimism about reservoir levels.
The region's reserves are sitting about 20-billion litres above where they were last year. That's enough to push them above the "normal" range for this time of year.
North Vancouver Mayor and Chair of Metro Vancouver's Utilities Committee Darrell Mussatto says its a combination of a snowy winter, rainfall … and people's behaviour.
"People have consumed less, which is wonderful, our per-capita use is dropping, and we learned from last year. We also have come in with full reservoirs as of June 1st."
"We're finding that people have adjusted their behaviour, they're a little bit more conscious of how much water they use, they are monitoring their water use indoors and have adjusted, which is great, most important though, they've learned about outside – that you don't really need to wate ryour lawn more than once a week."
But Mussatto says with low snowpacks the district is watching the situation closely.
He says he's hopeful the region can stay at stage-1 water restrictions through the entire season, but warns the hot months have yet to come, and that people still need to watch their water use.


text: carol bailey-fever • Genre : Music Box, Billboard Charts • Year : 0 • Label : • On demand! (album available 128-320kbs)* #/by GROVER Release code: ODI134319 Added on 27-10-2014, 07:44 You want this album? link doesn't work? report us from your account! Release Info: carol bailey-fever [img=left]http://http://2.bp.blogspot.com/_AbomqchMC1s/StcwXub-WBI/AAAAAAAAEeM/2qfEXBhNxMI/s320/R-764492-1157439334[1].jpg[/img]1. Carol Bailey - Fever (Alex Party Radio Edit) (4:03)2. Carol Bailey - Fever (Alex Party Mix) (5:25)3. Carol Bailey - Fever (Full On Mix) (5:44) This album(s) is currently available for download only with a Premium account. To get a premium account, click here


text:
$ 125.00
Don Harwood's Signature Model Bass Trombone Mouthpiece
This mouthpiece is designed for Don Harwood, bass trombonist in the New York Philharmonic. Don's mouthpiece is designed to make his job easier by projecting the clear independent voice of the orchestral bass trombone while locking in on octaves with the tuba, and supporting the trombone section of the orchestra. This mouthpiece will support any orchestral section, designed with a unique throat and backbore that keeps it controllable, and fun to play in all ensembles. A semi flat rim that is extremely comfortable. Medium deep cup similar to a Schilke 60, and a balanced backbore and throat that project make this a very versitile bass trombone mouthpiece. Rim diameter 28.956mm, 1.139 inches. Throat diameter 7.925mm, .312inches
$ 95.99
For advanced orchestra players who have a strong embouchure and want the ultimate in a large sound.
View full product details
$ 165.00
I've been playing Giddings and Webster exclusively since 2005. I've still yet to find any mouthpiece on the market that would make my job easier!
Alan Baer
MMVI Signature Mouthpiece *Best Selling*
Alan Baer and Giddings and Webster have taken the original Signature Model mouthpiece and put a flatter narrower rim on it. In addition to this we have added a bit of mass around the throat of the mouthpiece, and we have made the mouthpiece out of 15-5 stainless steel. All of this combined makes a mouthpiece that is for folks who like a traditional flat rim with a sharper inner bite for their orchestral tuba playing needs. The 15-5 stainless steel is a high quality aerospace material that is harder than our regular 304 stainless steel mouthpieces.
Rim diameter 32.91mm, 1.295 inches Throat 8.16mm, .321 inches
View full product details
$ 99.99
I have known forever that brass mouthpieces have a lot of energy loss. Because of that I wanted to try out steel mouthpieces. I got a full set of the David Hickman line of mouthpieces. I played them for a little while and I loved the rim. It is so comfortable to play. I love the increase in dynamic range on both ends. They have some nice softs.
BTW I love the way my Hickman pieces play. Give steel a chance. They play really well.
Clint 'Pops' McLaughlin
Dave Hickman Signature Medium Cup Trumpet Mouthpiece
This mouthpiece has the exact same rim as the regular Hickman model, but the cup is slightly shallower and the throat is a #26 drill size. The cup shape is similar to the regular cup, just not quite as deep. This mouthpiece is perfect for works that are slightly higher than normal, or where a brighter tone quality is desired. Perfect for E-flat trumpet! Available in satin and polished with both the original and TBR rims.
View full product details
$ 99.99
The GW-102 has a wider more rounded rim that measures 1.020 in diameter. Similar to our Kadja cup, but .035 more shallow. With additional weight on the O.D. and more overall cup volume than many of our other mouthpieces this is a great section piece, making balancing between the principal and the bass a snap.
$ 99.99
We have added a new Sonny Ausman piece! The SA-100 has slightly more cup volume and a thinner rim than the Sonny Ausman original piece.View full product details
$ 95.99This is a very popular rim diameter for advanced players. Designed to project a powerful sound with lots of core, but still retain some shimmer. A good choice for orchestra, bands, and large ensembles. View full product details
$ 95.99This rim diameter is an excellent choice for somebody who is looking to move up, without going too large. View full product details
$ 129.99This is a very large CC/BBb Tuba mouthpiece designed for a huge sound output. For Tuba players who are looking for an enormous sound that will support even the largest ensemble. The Bayamo is similar to a PT-88 rim diameter, with a deeper funnel cup and larger throat. A huge mouthpiece that is balanced, and still plays very well in tune with great articulation and a thick rich tone. Ideal for those low excerpts that need a huge amount of volume! Rim 1.32, and the throat is .332 in diameter, very deep funnel shape cup. Bayamo is a violent wind blowing from the land on the south coast of Cuba especially near the Bight of Bayamo. View full product details
$ 119.99
While I have a clear understanding that there is no such thing as a "perfect" mouthpiece, the "D. Mirvil 5" is probably the closest thing to it. As an active performer and teacher who emphasizes the entire range of the trombone, the mouthpiece provides me the versatility to perform with a brilliant sound in the upper tessitura in orchestral settings, while also providing a rich and euphonious sound in the lower register, which would be expected from a bass trombonist. The mouthpiece also enables me to perform technical passages with ease and beautifies my lyrical playing with a vocalist's touch.
Dunwoody Mirvil
Trombonist, Tallahassee Symphony Orchestra
Performing Artist, Conn-SelmerView full product details
$ 99.99
Orchestral tenor trombone mouthpiece similar to Bach 5G rim diameter. The Euros has a focused sound, clean articulations, blends well and can cut when needed. With a slightly larger throat than a traditional Bach 5G, and the Euros has more room for dynamic contrast while retaining the beautiful upper overtones of the tenor trombone voice. Semi flat rim contour is great for endurance, and articulation.
$ 95.99
Our most versatile mouthpiece that really covers the entire literature very well. Clean crisp highs, and solid lows, this mouthpiece can literally do it all.
View full product details


text:
- sort by:
1 house for sale in PL22Did you mean?
Page 1 of 1
Sorry we didn't find any results in pl22
- Check you have entered the location correctly.
- Alternatively enter another alternative location or adjust your search criteria.
- If 'no results' continues to show, we may not have any properties for sale in your desired location.
4 Bedroom Terraced Cottage For Sale
Mill Hill, Lostwithiel, Cornwall, PL22
The Mill was originally a former Grain Mill that has undergone complete renovation by the current owners who sympathetically retained its many features to include exposed floor boards, trap doors and beams. The accommodation is arranged over three floors to include a
- sort by:
- Single Property
- Multiple Properties


text:
Teacher Appreciation Card Ideas
Brainstorming more ideas for Teacher Appreciation cards and gifts…. what to do?
Brainstorming more ideas for Teacher Appreciation cards and gifts…. what to do?
Just finished my first sketch/entry in a brand new art journal. I love the feeling of starting a new journal!! And obviously … we have been working in our spring garden!
I've started sketching everyday objects for fun — I don't know why, but it makes my heart full. I started sketching everyday office objects in my art journal and I got the idea that these would make great teacher … Continue reading
My sweet little (ten year old) cousin Mari just had her very first violin recital at school last week. So I did a couple of quick sketches in my art journal from a picture her mom sent to me. Mari … Continue reading
I've been working on my illustrations and sketches of people a lot more lately. I've been sketching a lot of everyday things – swinging in the backyard, dancing, spinning with a baby doll. Drawing people is difficult but I'm starting … Continue reading
Ash Wednesday is one of my most favorite sacred services. It's quiet, it's reflective, it's somber, and yet it's peaceful. At the end of the service, I was waiting for choir practice to begin so I decided to sit in … Continue reading
I totally forgot to share this. I love doodling in my sketch book and on scraps of paper – any paper I can find. So last week, I had some fun making a St. Patrick's Day illustration. Hope yours was … Continue reading
When I need a break from painting custom portraits, or simply need to smile, my go-to is generally Christmas doodling of some sort. It's my absolute favorite time of year. This is a sweet little watercolor Christmas Owl all bundled … Continue reading
Sometimes you just need to doodle a little Christmas to brighten your spirits… This was a fun little vintage-feeling car with a Christmas tree on top. It seriously made me smile. And I needed that on this particular day. Art … Continue reading
My good friend and talented photographer (who I also use to babysit) lost her fur baby Libby Lou. Melissa Prosser Collazo and I have also worked together on several fabulous weddings over the years and she has also been a … Continue reading
Well, I've been a busy bee painting away … but we have also had some "life" experiences that have come before anything else. Little miss had to have some dental work on Wednesday, and my nerves were shot thinking about … Continue reading
And I'm working on some Christmas card ideas to stay fresh and not get stagnant painting homes. I LOVE painting people's homes, I just needed a little reprieve. 🙂 Vintage (and vintage-style) Christmas cards are my favorite. So I'm playing … Continue reading
I had to take a tiny break from houses and have some fun coming up with Halloween card ideas for my Etsy shop. Here's a cute little jack-o-lantern. I just love Jack!!
I decided to add a festive birthday cupcake to my art journal for a little fun and also to have a happy little image to accompany Facebook birthday wishes! It's sweet and simple – and I love it!
I'm about to start back to school in my second year as a teacher. It's been the perfect transition for me to step out of wedding planning and also focus on creating art. In the process, I've fallen in love … Continue reading
Reese caught her first freshwater fish while we were on Lake Oconee. And on a little girl's pink and purple fishing rod on top of it all! She caught two baby sharks last summer at Myrtle Beach, but this time … Continue reading
We had a fantastic time at my in-laws' place on Lake Oconee a few days ago. My husband and daughter enjoy the jet ski more than anything… my child was having so much fun that you could hear her squealing all … Continue reading
In the middle of this crazy heat, I've been sketching some fall ideas to make greeting cards. I'll have to fine tune these later, of course, but at least it's a start! I'm seriously in heaven. I cannot even describe the … Continue reading
Every time I see the words "back to school," I immediately start singing (in my best Billy Madison voice) "Back to school, back to school, to prove to my dad that I'm not a fool…." I can't help it. I lost … Continue reading
I love cardinals… but I'm not gonna lie. I hated sketching and watercoloring these. I've enjoyed more recent birds. Maybe it's because I am more comfortable with them now? Anyway, here are Mr. and Mrs. Cardinal flirting away……
Sunflowers are one of my all-time favorite flowers… and Calendar Girls is one of my favorite movies. There's a scene in the movie in which Helen Mirren's character is talking about her friend's love of sunflowers and why. This quote … Continue reading
It's just been crazy hot lately and thinking about fruit … cold fresh fruit makes me feel like I can handle the heat just a little while longer!! This was a really fun sketch in particular … light, fresh, fun, … Continue reading
We had a very relaxed 4th of July this year … swimming and hanging out at the pool, then enjoying time as a family at home. I sketched out a few details and moments from the day. 🙂 I hope … Continue reading
This is a sketch of a fabulous mirror I made using poster board… it's in our master bedroom (while our master has changed a bit since this post, you can see this mirror and how I made it here). And … Continue reading
Last week, I did my first line and watercolor wash of our home … well part of it. I didn't do the entire front of our brick ranch, but I'm happy with the results. I'm getting so much more comfortable … Continue reading
These are a few of my favorite random things… A mirror in my bathroom and one of my favorite perfumes. And my retro bedside alarm clock … These were fun little sketches and washes to do!!
On July 2, I was sitting poolside in the morning watching my husband and daughter swim in our neighborhood pool. It just wanted to be painted. It's such a modest building that I felt like no one has probably ever … Continue reading
In 1976, my Aunt Sweetie and Uncle Everett (we're Southern – the names are normal here) gave a glazed pottery tomato canister set to my parents when they were married. After a few years, these canisters lived at my grandmother's for … Continue reading
To start my art journal, I've been focusing on items around the house and also on jaunts around the town and the neighborhood. This is so much fun!! This is our beautiful armoire Edward and I have had even before … Continue reading
I just started an art journal to work on my fundamentals in art. After stumbling across a fabulous artist's blog – Rita's Sketchbook Wandering – documenting her own sketchbook and art journal, I fell in love with the idea (not … Continue reading


text:
Manchester Police Officer Dan Doherty testifies how he was shot last March as he was pursuing a suspect during trial in Hillsborough County Superior Court Wednesday Dec. 5, 2012 in Manchester, N.H. Myles Webster has been charged with attempted murder for the shooting of Doherty. (AP Photo/Jim Cole)
To improve the chance of seeing your comment posted here or published in the New Hampshire Union Leader:
Note: Comments are the opinion of the respective poster and not of the publisher.Be the first to comment.
You must sign in before you can post comments. If you are experiencing issues with your account please e-mail email@example.com.
Hinsdale man arrested for allegedly kidnapping NH teen, taking her to Vt.
Star Speedway to open sooner thanks to sex scandal in Conn.
Cool video: Robotic football dummies take the field
In politically charged times, instances of bipartisanship appear at NH State House
Kimberly Morin: NH Republicans have lost their minds
Caledonian Record: Tax freedom day two weeks later than in 2012
Kelly Ayotte debates Martin O'Malley at Penn State in clash of the moderates
WaPo taps UNH report to 'fact check' first daughter's childcare statement
Some Gilmanton teachers are paid less than an average Lakes Region teacher wage
© 2017 Union Leader Corporation


text:
Mekkachibi Atom (a.k.a Astro Boy) is the first in a new series based on a new, custom-designed body template.
japan astro vector cute geek nerd tv movie anime kids
Loading more work by Eozen...
10% off
for joining the Redbubble mailing list
Receive exclusive deals and awesome artist news and content right to your inbox.
Free for your convenience.


text:
Title: Yo. Hudson! Part Six! The End!
Pairing,Character(s): Kurt/Puck
Rating: PG-13 for language/activity.
Word Count:2200ish words
Spoilers: Up to Theatricality.
Warning: Slight Bite Kink Explored also I don't know if my rating is still right. If I need to change it let me know.
Summary: Puck has an interesting reaction to the whole basement conversation.
My first Glee fic. Totally unbeta'd. All the mistakes are mine. Don't own Glee, obviously.
This the last chapter of my first Glee fic. I'm ver nervous/excited. When I sat down to write this chapter I didn't know that this would be the last chapter but I went with it. Thank you to everyone who reviewed. You all rule the world with a velvet glove.
The air and the tension is thick in Kurt's Navigator.
Kurt had sashayed past him and out the door before Puck could even begin to formulate a hello. Leaving him stunned and forcing him to hide his growing erection from Mr Hummel.
Burt gave him a long sideways look before huffing and turning back towards to the tv. Mercedes was pushing past him just as quickly. Which was why he was so stunned when a pair of thin strong arms encircled his waist, forcing a surprised grunt from his lips.
"Wha-? He squeaked before Tina came up on her tip toes and whispered in his ear, "I knew I wasn't the only one."
She let him go, giving him a long hard look before resting her small palm on his forearm. "It's really nice not to feel all alone anymore." Then she was out the door and in the back of Finn's car, cuddled up next to Artie. That was weird.
He noticed that Kurt was in the passenger seat and he pointedly ignored Mercedes shocked gasp as he slid behind the wheel and pulled out of the driveway. Quickly followed by Finns' Chevy Celebrity and Matt's Range Rover.
So fifty miles later, sixty five long sideways glances and over halfway through their drive, the silence remained unbroken. Until Mercedes decided to finally put them both out of their misery.
"So, are where exactly are you taking us? Are we on our way to be brutally sacrificed to the God of Mohawked Sex Sharks, so you can continue to pull trade even with that ridiculous haircut? If so, I'd say that's a pretty shitty first date and not the way to treat your baby mama." As she motioned to the very pregnant Quinn sitting to her left. " Actually, white boy, come to think of it, why is your baby mama invited on your first date with my boy here?"
Kurt sharply turned in his seat and shot Mercedes a look that would have made a lesser woman burst into flames. Both Puck and Quinn were shrinking back in their seats and they only got the peripheral. Mercedes just swivelled her neck slightly and turned her attention back to Puck.
"It's a surprise and this isn't a date. It's just a bunch of our closest friends hanging out" Noah's voice kind of trailed off and he winced slightly at how much that hurt to say.
"If it's your closest friends, where's Brian?" Great, now Quinn decided to join the peanut gallery.
"We decided to keep it just tight glee peeps this time. Next time he's totally invited."
Silence stretched until he heard a soft shaky breath beside him.
"Wait, whose Brian?"
"He's been my best friend since Kindergarten. He goes to Our Lady Of Perpetual Hope."
"Oh, well I can't wait to meet him,' Kurt hesitated 'Why didn't you invite him today?"
"Well, when I asked who you wanted to invite you just mentioned people in glee. Thought you wanted it kept in the family." Noah shrugged. " Who else did you want to invite?"
"No one." The quiet, sad voice that filled the car told him he had gotten something very, very wrong. This time the silence kept until Columbus.
If it weren't for all the cars sitting in front of the abandoned warehouse, Kurt would have thought that he really was on his way to be sacrificed. As it was he just sank further in his seat and tried to take comfort in the blinding smile Noah kept sending his way from across the parking lot.
He and the girls were stretching by the car while Noah said he had to go buy everyone's tickets. Kurt was now wondering how it was possible for one human being to make a threadbare Sex Pistols t-shirt look so sexy. Not to mention the fact that Kurt was 95% sure Noah was wearing skinny jeans. Yeah, he was pretty sure his brain just came.
It wasn't until the rest of the group had congregated around him and Noah was heading back towards them that he realized just where they were. The stand Noah was walking away from had a small sign that said 'OHRG'. When he saw that Kurt let out an inhumanly loud squeak and before anyone knew it, he was in a fullout sprint across the lot towards Noah. He flung himself at Noah, locking his legs tight around his waist and his arms around his neck.
" Really? Really? We're really going here? OH MY GOD! Noah, you're the best."
Puck carried Kurt like that until they reached the rest of their friends. Taking those few moments to memorize the feeling of Kurt's ass against his forearms and his groin against his hard stomach. Finn clearing his throat seemed to bring Kurt back to himself and his face flashed embarrassment as he slid out of Noah's arms.
"What the hell is this place?" Finn asked accusingly.
Noah started to answer until Kurt jumped in excitedly.
"Guys, this is Roller Derby!"
The smell of sweat and warm beer filled the old warehouse. Noah could practically taste Kurt's excitement. It was rolling off of him in waves and Noah could feel the soft shaking against his thigh as they took his seat next to Kurt on the bleachers. He took a quick glance down the aisle and saw that everyone else seemed to like his idea too. He thought that the hardcore women power involved would make the girls happy and the hot chicks in fishnets would make the guys happy. Well, now that he knew better, make the guys and Tina happy.
He jumped slightly when he felt Kurt's breath against his ear, "How did you know?"
"I saw you reading that book whenever you thought no one was looking. Figured you would like it." Kurt thought about his weatherbeaten tattered copy of 'Derby Girl' that was wedged in the bottom of his Marc Jacobs book bag and smiled, "You figured right." ,and he pressed himself tight into Noah's side.
The bout was set to start at 4pm. The Blackeye Bullies vs The Take-Outs. Puck had thought it was fitting that one of the teams fashioned themselves after schoolyard bullies and the other one was a ninja brigade. He always thought Kurt was kind of a ninja.
By 3:50pm the place was practically pulsing and Kurt's leg was jumping so quickly that he couldn't stay in his seat anymore. He stood and wrapped his long fingers in the chain link fence that served as the divider, keeping the spectators away from the track. The minute he left his seat someone else slipped into the seat he had just vacated and, despite the look Puck shot her, she wasn't going to move. Kurt didn't mind though. He was too excited to sit and he wasn't wearing heels today. He was finally seeing the upside to flats. He started to appreciate it even more when Noah's hands folded into the fence right above where his hands were. Kurt gave him a questioning glance.
"What? I have to protect you. These Derby fucks are hardcore. I just threw a girl The Puckerman Glare of Death and she didn't even flinch. So I'm stayin' right here."
Kurt was just about to protest when the entire place was plunged into darkness. So he decided to revel in the heat that was radiating against his back and enjoy the novelty of feeling safe for the first time in years. And OH MY GOD there's a disco ball.
By the 4th period the score was tied and Noah's right hand had curled itself into the same hole as Kurt's, threading their fingers together. The left was around Kurt's chest. The long fingers dancing against Kurt's right collarbone. Kurt shot a quick glance towards the rest of the group, making sure no one was looking. When he saw that they were just as enthralled as Noah seemed to be he felt safe enough to press a small chaste kiss on the top of Noah's hand. Between where the thumb and forefinger meet.
He felt, more than heard, Noah say more. He pressed his lips harder against the warm flesh and let the darkness and noise surrounding him carry all his inhibition away. With every kiss he got bolder. Parting his lips, he felt his warm breath skate past his lips just before his tongue shyly skirted out to taste Noah's skin for the first time. Sparks rocketed through him and felt Noah shudder softly against his back as he pulled the soft skin into his mouth.
It wasn't until he heard Noah breathe more, into his ear that Kurt sucked hard and it wasn't until Noah growled teeth, that Kurt bit. His tongue smoothed over every bite and each bite was the same as the last until Kurt felt the sharp thrust against his lower back and heard the soft grunt for harder. Always one to please, Kurt sunk his teeth in harder. This time almost breaking the skin and Kurt felt the thrust against the cleft of his ass and whimper against the back of his neck.
That was enough to wake Kurt up. He pulled his hand from the fence and pushed Noah away. Heading straight to the bathroom, eyes welling with tears that he swiped away angrily with the back of his hand.
Puck was too shocked and turned on to react right away. Up until about thirty seconds ago he was experiencing the hottest foreplay trance he'd ever been in. He then had to spend the next minute willing his hard on down before he could chase after Kurt. Which is why he walked into the girls washroom to see Kurt sitting on the counter by the sink, not noticing the water soaking into the soft denim of his $200 jeans, picking at his nails.
Puck made his way towards Kurt and stood between his knees. Placing his hands softly on Kurt's thighs.
"I'm so sorry I pushed like that. I know it's too soon. I'm so sorry."
Kurt just shook his head slightly. " It's not that. I guess it just hit me all of the sudden."
"What? That I'm a complete horndog that you now want nothing to do with."
Kurt shook his head again.
"No. Just how lucky I am. It's just something I've been thinking about since Quinn brought up Brian"
Noah gave him a questioning look but for once knew better than to say anything.
"It's just that you have a Brian, you know. You have a best friend that is completely removed from glee and McKinley. You have someone who wants to be your friend regardless of proximity. Mercedes always laughs when I say I was completely friendless before glee.
But I'm actually telling the truth. I mean there were times when I went the whole day without saying a word. Sometimes the only thing I'd say all day was what I said to you before you'd toss me in the dumpster. At first that's just how it was. Then I guess I started to make it into a game. To see how long I could go. Remember last year, you got food poisoning and missed that whole week?"
Noah gave him a shallow, shocked nod that he thinks is kind of unnecessary because he has a feeling that Kurt is going to keep going no matter what.
"Yeah well, that week I made it from the Friday morning the week before to the Monday you came back. Ten days. Pretty impressive hey? Ten days and not one person even noticed they hadn't heard my voice. It was anniversary week so even my dad was too out of it to notice.
So it just hit me. That this time last year I was alone and now I have at least ten new friends and a guy that wants to dry hump me in public." Kurt's voice choked out a humorless laugh and Puck got the distinct impression that he really was finished his time and he grabbed Kurt by the chin and forced piercing, watery blue to meet his quiet brown.
He sent silent apologies and reached up to brush away the smudge of blue sparkles that were now trying to hid themselves in Kurt's hair. Then he leaned in.
Two hours later, when they're at dinner in a Columbus Denny's, the rest of the group pretend not to notice the purpling bite mark on Puck's left hand. They also pretend not to notice the way Kurt is absentmindedly rubbing his thumb over that mark under the table until dessert comes.
Years later, because of Noah Puckerman, when people ask him about his first kiss he has to tell them it happened in a dirty washroom in an abandoned warehouse with the man that would become his husband.
THE END - I wanted to write fin but that was too much like Finn. And I'm still mad at him.
Links: Ohio Roller Girls - .org/wiki/Ohio_Roller_Girls
Derby Girl- .org/wiki/Derby_Girl


text:
Show us your inner rebel for a chance to qualify and win a trip to Black Girls Rock!
House Republicans refuse to support Trump's alternative which puts American lives at risk.
Parents aren't satisfied with the three-day suspension three eighth graders received after posting a racially charged video on social media.
Parents are outraged after elementary school teacher Katherine Gonzales was caught messaging her 11-year-old student on social media.
"The wall," an ACA repeal and violent crime were all brought up.
The actor and comedian has a warrant out for his arrest.