in full color.  Glad you liked it and decided to join.
> list. Its been over a week, and I am yet to see one post.
> Why Not? Doesn't anyone have anything to say? Ideas?
> with "Unsubscribe aga-member" in the body of the message.


Learn how to make a bar of soap using a glycerin base you can easily melt and pour. You choose the color, fragrance, toy and will go home with a completed soap! This is an easy, fun & creative project that is great for kids!
Hailing from Austin, TX, Lisa Chouinard from fetosoap.com loves sharing her skills with others to empower them to make their own bath and body creations.


Sugar addiction is а very real problem that many people experience. If you eat the typical American diet filled with processed foods it is very likely that you have а problem with sugar.
You may not realize іt but think about what happens when you go without sweet foods, sweet drinks or sweeteners for а while.
Many people will develop that strong "sweet tooth" craving and feel likе they have to indulge іn their favorite sugary treat.
Kicking processed sugar оut оf your daily eating plan will greatly improve your overall health so don't feel discouraged if you feel likе kicking the craving іs frustrating. It's worth it.
Sugar consumption affects diabetes, blood sugar/insulin levels, heart health, the health of arteries, hormone levels аnd other aspects of your health. Here are 8 ways you cаn stay on track when you really want that candy bar, soda, cookie, etc.
Like nearly аnу addiction, going cold turkey сan bе very effective but іs also the most difficult way to stop a bad habit.
When it comes tо а sugar addiction going cold turkey means no cheating, even if you feel likе you've been doing well with your diet otherwise. You need tо remind yourself that the way you feel isn't fun but it will pass.
If you're trying to gо cold turkey, thе worst thing you can dо is just sit around thinking about all thе foods you want to eat.
Instead go for а walk, read a book or get some exercise to get your mind off of it. Also, completely clean out your house of anу sweet food sо you don't have temptation right there in arm's reach.
Fruit іs full of natural sugars аnd can help you deal with really bad sugar cravings. Keep in mind that gorging оn fruit isn't good as you аrе still eating a type of sugar and your blood sugar will be affected.
However, most people are not going to sit down аnd eat 7 bananas sо thе risk of over doing іt іs low. There is аlso a lot оf fiber in many fruits as well as nutrients sо it's not thе same as empty sugar calories.
After you've been kicking sugar for a week or two, add high-sugar fruits likе apples, grapes, pineapples, banana аnd mangos bасk into your diet.
If you blood sugar gets too low your cravings will be worse. Divide your main meals into smaller portions sо you can eat throughout the day.
Eating every 3 to 4 hours will work well for thе average person. If you arе eating many small meals bе sure you don't overeat- keep track оf your calories іn a notebook оr оn аn app lіke MyFitnessPal.
Chromium is а metallic element that is important for human's overall health. Chromium improves the metabolism by helping tо regulate blood sugar through assisting insulin's transportation оf glucose.
Since this supplement cаn positively affect blood sugar it may bе helpful for those experiencing sugar cravings from low blood sugar levels.
Talk tо your doctor about this supplement to make sure it's safe for you аnd tо get anу questions answered.
Another supplement that is helpful for dealing with sugar cravings is а vitamin B complex capsule. When а person has been eating simple carbs іn thе form of sugar for sо long they often feel like they need to eat more tо feel full.
Vitamin B helps your body tо metabolize carbohydrates more efficiently. Vitamin B complex supplements can often be found in many stores. It is better to use this supplement іn thе form оf capsules rather thаn thе powdered versions.
It is tempting tо turn tо artificial sweeteners when you аre craving sugar. Sugar-free foods cаn taste sweet аnd аrе often sold as healthy alternatives to foods.
Unfortunately, this isn't the case. When а person consumes sugar it releases dopamine іn thе brain. Dopamine is a chemical reward аnd causes a very pleasant feeling.
However, dopamine is not released when artificial sweeteners аre consumed. This means that thе sugar craving isn't satiated bесаusе as far as your body knows you haven't consumed sugar.
So, not only аre artificial sweeteners unhealthy but they won't satiate your cravings anyways. Avoid these chemical sweeteners as much as possible.
They cаn аlsо contribute to bloating аnd we don't need more water weight while we arе trying to lose pounds.
Just like lean protein сan help curb sugar cravings, eating more fiber will help you feel fuller. Тhе average American doesn't eat enough of this nutrient so by consuming more fiber you'll fight cravings while alsо improving your overall health.
Sugar cravings can bе really difficult tо deal with. You're going to want to just indulge in that pint of ice cream, but keep on persevering!
Once you get over symptoms of sugar withdrawal your palate will likely adjust аnd you'll begin to enjoy naturally sweet foods like fruits аnd vegetables more.


text:
MINUTES: Approval of the Minutes of January 27, 2009, Regular Session.
hickey /fields 4-0
Motion to to approve the minutes of the January 27, 2009 Regular session. Moved by John Hickey, Member, seconded by Jimmy Fields, Vice Chair.
Vote to to approve the minutes of the January 27, 2009 Regular session. (Approved)
PUBLIC HEARINGS:
1. CASE NO: OV10-09-01, Merle Sampson, represented by Dennis Robinson, is requesting a variance from the location requirement of a detached accessory building. The request is to allow a detached guest house to be built in from of the main house. Subject parcel # 219-23-0130 is located at 13350 N. Kachina Drive, Oro Valley, AZ, 85737.
Chair Christopher swore in Dennis Robinson who spoke on behalf of the applicant, Merle Sampson.
Mr. Robinson stated that he also lived in the airpark and would build the guest house for Mr. Sampson. He acknowledged that an outbuilding could not be located in front of the main house. He stated that:
~Most of the homes faced the runway.
~They were trying to keep the guest house behind the main house and away from the runway for safety reasons.
~It was not a visual issue but a zoning issue.
~Many homeowners wanted to have their outbuildings kept away from the runway.
Vice Chair Fields questioned with whom the owner made an agreement. Mr. Robinson answered that the agreement was made with an adjoining neighbor to the north of the property named Skip Walker. He stated that Mr. Sampson had promised Mr. Walker that he would not build in his view corridor which was along the runway.
It was estimated that the home had been built in the 1970's.
Zoning Inspector Patty Hayes presented the staff report. She stated that the applicant requested a variance to allow a detached guest house to be built in front of the main house between the main house and the street. Ms. Hayes explained that Oro Valley Town Code required that detached accessory buildings must be built to the side of or behind the house.
She noted that the La Cholla Airpark was the only airpark within Town limits and had special zoning. She stated that the special zoning permitted homeowners to build hangars in front of the house.
Ms. Hayes noted that the applicant had access to the runway at the rear of the property. She stated that the applicant expressed safety concerns regarding placing the guest house at the rear of the property.
Additionally, Ms. Hayes noted that:
~The front yard setback for the property was fifty feet.
~The property was posted with a notice of hearing.
~Property owners were notified by mail
*There were no responses in favor of or against the variance.
It was noted that:
~Kachina Drive was a private roadway.
~There had not been cases similar to this request in many years.
~It was unknown whether this request would have been granted prior to the annexation of the area to the Town.
Chair Christopher opened the public hearing.
President of La Cholla Airpark Corporation, Bill Edding, stated that Pima County would have allowed such a request and building in front of the house had happened in the past. He stated that Town Code limited homeowners on the use of up to 2/3 of their lot which limited property values. He stated that Mr. Sampson could go to the extent of having his address changed so that the runway would be located at the front of the house.
could not address all issues when negotiating with ov, but will bring this forward closed at3:09 jf /jh 4-0
Motion to to approve the variance to allow a detached guest house to be built in front of the main house on subject parcel # 219-23-0130 located at 13350 N. Kachina Drive, Oro Valley, Arizona 85737. Moved by Jimmy Fields, Vice Chair, seconded by John Hickey, Member.
Vote to to approve the variance to allow a detached guest house to be built in front of the main house on subject parcel # 219-23-0130 located at 13350 N. Kachina Drive, Oro Valley, Arizona 85737. (Approved)
jh/jf 4-0 at 3:10pm
Motion to to adjourn the meeting at 3:10 p.m. Moved by John Hickey, Member, seconded by Jimmy Fields, Vice Chair.
Vote to to adjourn the meeting at 3:10 p.m. (Approved)
Jul 28, 2009 Board of Adjustment

redpajama_set_name: RedPajamaCommonCrawl


text:
Q: Simple Python Web Server trouble I'm trying to write a python web server using the socket library.  I've been through several sources and can't figure out why the code I've written doesn't work.  Others have run very similar code and claim it works.  I'm new to python so I might be missing something simple.
The only way it will work now is I send the data variable back to the client.  The browser prints the original GET request.  When I try to send an HTTP response, the connection times out.
import socket

##Creates several variables, including the host name, the port to use
##the size of a transmission, and how many requests can be handled at once
host = ''
port = 8080
backlog = 5
size = 1024

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((host,port))
s.listen(backlog)
while 1:
    client, address = s.accept()
    data = client.recv(16)
    if data:
        client.send('HTTP/1.0 200 OK\r\n')
        client.send("Content-Type: text/html\r\n\r\n")
        client.send('
Hello World')

    client.close()
    s.close()

A: You need to consume the input before responding, and you shouldn't close the socket in your while loop:

*

*Replace client.recv(16) with client.recv(size), to consume the request.

*Move your last line, s.close() back one indent, so that it is not in your while loop. At the moment you are closing the connection, then trying to accept from it again, so your server will crash after the first request.
Unless you are doing this as an exercise, you should extend SimpleHTTPServer instead of using sockets directly.
Also, adding this line after your create the socket (before bind) fixes any "Address already in use" errors you might be getting.
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

Good luck!

redpajama_set_name: RedPajamaStackExchange


Yes, you read the title right! Of all the natural remedies and treatment options for urinary tract infections; honey might not be very popular. But, if latest research is to be believed, honey is offering a hope for frequent UTI sufferers, especially patients with catheters who tend to suffer from several urine infections each year. Let us find out all about the manuka honey cure UTI and ways in which you can use honey to get rid of a urinary tract infection quickly.
Since times immemorial, honey has been well known for its antimicrobial properties. Ancient cultures used honey to ward off infections, heal cuts, wound and bruises, fight acne and coughs and also prevent constipation, respiratory infections etc. Honey contains antibacterial compounds that fight common bacteria which are known to cause infections in humans. It is no wonder that honey can also fight the escheria coli bacterium which is responsible for urine infections in men and women.
Recently, a team of UK researchers used diluted (3.3%) manuka honey for flushing the catheters of bedridden patients and keep them clean while inside the patient's bladder. Honey prevented the bacteria from sticking to the catheter tubes thereby preventing infections in these patients. Naturally, the study was conducted inside a controlled environment, in a lab and is yet to be tested on humans on an extensive scale. However, this research is offering hope to patients and their families as it may be a simple, low cost solution for bed ridden patients to avoid several UTIs in a year.
Why do catheters increase the risk of infections?
A catheter is a device that is inserted inside the bladder to pull out stuck urine. It is a handy method for collecting urine in bedridden patients who are unable to visit the bathroom. While it is very helpful and prevents nasty leaks and accidents; a catheter is a harbor ground for bacteria. The flexible tubes easily transmit escheria coli bacteria inside the patients' bladders increasing their risk of bladder infection.
Can manuka honey prevent kidney infections and interstitial cystitis?
Manuka honey is a special honey obtained from the New Zealand region. The honey bees in the region feed on manuka plants and the honey collected from these bees is a highly anti-microbial and medicinal compared to varieties of honey collected from bees feeding on other flowers and plants. Scientists have studied the medicinal properties of Manuka honey and have found it to be very effective against bacterial issues like acne, and other bacterial issues. We need many more studies but some doctors from the UK research team believe that manuka honey can be used for preventing and treating interstitial cystitis and kidney disorders.
All uti sufferers want quick relief from uti pain. Antibiotics used for UTIs come with a host of problems and side effects; many people also develop resistance to them over time. Therefore, if you have used a certain class of antibiotic with good results for UTI; the same may not be the case later since the bacteria may have developed resistance to it. Result: the UTI can come back with a full force even if you complete the dose of antibiotic.
The best way to use honey for urine infection pain relief is to buy organic Manuka honey from a good brand. Manuka honey has greater and more potent medicinal properties compared to regular honey. You can go for manuka honey with an Active UMF rating of 10. UMF is a standard that is used for rating the honey's antibacterial activity. Thus a rating of 10 is equivalent in antiseptic potency of 10% solution of penol.
Take a glass of warm water. Add a tablespoon of raw, unpasteurized apple cider vinegar and 2 teaspoons of manuka honey. Drink the mixture 3 times a day to relieve pain.
Alternatively, mix the UTI honey and cinnamon and eat a spoonful of the mixture 2-3 times daily. Your UTI pain, dysuria and other symptoms will disappear in a day.
For stubborn infections, take a glass of pure, unsweetened cranberry juice and mix it with a tablespoon of manuka honey and ½ tsp of organic cinnamon powder. Drink this mixture 2-3 times a day. This will help you get rid of urinary tract infection quickly.
Use honey as a salad dressing. Mix it up with some apple cider vinegar. Follow this with red raspberry tea to wipe out the bacteria from bladder and kidneys.
Research shows that the rich source of vitamins and minerals in honey boost activity of white blood cells and help destroy invading viruses and bacteria. So your immune system will actually function 3 times more effectively if you consume honey and cinnamon in combination. If you switch to Manuka honey, the results would be even better. The UK study is definitely promising great results as far as patients with catheters are concerned. Thankfully, the team also believes that any other type of honey can be used and that it would be as effective as manuka honey for UTI, kidney infections and interstitial cystitis. However, more studies are needed to ensure that honey does not irritate the bladder or cause other health issues.
5 Manuka Honey Benefits You Ought to Know!


text:
Engineering in the Younger Grades
By Ron Schachter
Think engineering is a high school topic? Think again! See how one school is teaching it in elementary school.
Today we'll be working on science first," fifth-grade teacher Sherri Carvalho announces to her students—and the classroom erupts with a cheer. It's 7:45 a.m. at the Frank M. Silvia Elementary School in Fall River, Massachusetts, and the Pledge of Allegiance has barely stopped echoing from the overhead speakers. "They love science," Carvalho says. "They wish we could do it every day."
Is it difficult to imagine your own students clamoring for more lessons in physics or chemistry? Due in part to testing pressures, for years the subject has taken a back seat to reading and math. And though topics like volcanos and time travel have the potential to get kids' attention, science's status as a curricular stepchild typically translates into dull textbooks and little budget for experiments or supplies.
The tide is beginning to turn. President Obama has made science, technology, engineering, and mathematics—the so-called STEM curriculum—a priority in his educational agenda. More states are including STEM objectives in their standards. And teachers are discovering that STEM offers students unique opportunities for cross-curricular learning and for developing skills they'll need for the workplace.
What's more, according to educators and researchers, STEM—in particular, engineering and its related design process—is endemic to the way kids learn.
Getting Hands-On
On Carvalho's cue, the fifth graders gather in small groups at tables or on area rugs in front of makeshift models of human knees. They'll soon be up to their elbows in building and testing workable knee braces, the crowning achievement of a two- to three-week unit in bioengineering called Brace Yourself. The unit is one of many created by an educational team at Boston's Museum of Science as part of its Engineering is Elementary (EiE) project, which seeks to promote engineering and technological literacy among children.
On the board, under the heading "The Engineering Design Process," Carvalho has spelled out the stages of development—Ask, Imagine, Plan, Create, Improve—along the perimeter of an oval. When the students complete the last stage, it doesn't mean they're done—it's just time to start asking more questions.
Today her fifth graders are enmeshed in the Create stage. The models consist of two cardboard cylinders—representing the thigh and lower leg bones, respectively—connected by a wiffleball that serves as the knee joint. The entire contraption is held together by elastic bands.
The class has already reviewed the materials that groups can use to build their knee braces. A list at the front of the room offers a dozen everyday options—felt, cardboard, foam, Velcro, rubber bands, pipe cleaners—followed by their characteristics, from soft and flexible to supportive and durable.
At one table, students Raistlyn Aguiar, Casey Brown, and Daniel Bouchard have agreed on a three-layer design for their brace, consisting of cloth on the outside, foam in the middle, and felt on the inside, next to the knee. "If you're an athlete and sweat a lot, it will go through the felt and stop at the foam," Raistlyn theorizes.
"Me and Casey thought of the idea of wrapping cotton on the outside," says Daniel. "If it gets wet outside, it can't get through the foam."
"What if we stick the layers together with Velcro?" Raistlyn suggests.
"That's a lot of Velcro," says Casey.
"And it might make the brace uncomfortable," Daniel notes.
"Yeah—but we should try it," Raistlyn insists.
The conversation turns to the tongue depressors the group is planning to use as supports. (The fifth graders use terms such as support, durability, rigidity, and flexibility as they work.) "Are we going to have a depressor at the back of the knee?" Raistlyn asks.
"No," Daniel answers. "That's the way the knee needs to bend."
"Oh, yeah," Raistlyn replies, flexing the joint in that direction.
Real Problems, Real Solutions
All the theorizing, experimenting, and back-and-forth among the students sounds like a primer in 21st-century skills. "You have to solve problems. You have to be creative," Carvalho says. "And you're able to help somebody by designing something in the real world."
Each EiE unit begins with a story that presents a real-life engineering challenge. For this unit, the class read about a young skateboarder who twisted his knee on a camping trip. He and his friends had to design a brace on the spot to get him out of the woods. After reading the story, the students got to work. They spent a few classes brainstorming and sketching out designs on paper. Now they're translating their designs into prototypes that they can assess and improve.
The fifth graders test how much their working models allow the artificial knee to flex, how well the braces hold up to use, and how easily they can be put on and taken off. Carvalho wanders among the groups, constantly referring to them as engineers and asking probing questions along the way.
"So you think it's the foam that's restricting the knee in the back?" Carvalho asks a group whose artificial knee isn't bending well with the brace on. "I know how to improve it," exclaims one team member, suggesting they cut a notch through the brace behind the knee. The students implement the fix, and the knee bends more naturally.
In the adjoining room, Jean Facchiano's fourth graders, also immersed in an EiE unit, are working to create an effective semipermeable membrane. In the story that launched the project, a youngster discovered a frog that had been displaced from its rain forest habitat by commercial development. He needed to devise a way to get the frog enough water to keep its skin moist without drowning it.
"This unit allows them to understand that a bioengineer is a real person who uses his knowledge to solve a problem," says Facchiano. Her students become personally invested in their engineering work. "They name the frog," she notes. "They don't want it to drown or not get enough water."
On this day, small teams of fourth graders test different materials, including sponges, cheesecloth, felt, and aluminum foil, determining their permeability by measuring the rate at which water passes through them and into a container below.
When a single sponge allows water to flow too fast, one girl suggests using three, just the first of several solutions her team discusses. "One of the greatest things is that these kids have to work as a team," Facchiano observes. "You've got to compromise and realize that some things don't have a single answer."
The unit in Facchiano's class has inspired students to conduct their own independent study as well. Fourth grader Logan St. Onge took the osmosis problem home with him. "I looked around the house for materials that might be best to use and I thought about the way I could [arrange] them," he reveals. "I'm going to leave them overnight and see whether the frog would have had enough water."
"You're starting to think like a bioengineer," Facchiano tells him.
Facchiano's students are also making connections with the larger world. "I think making designs so things will stay alive is good," says Abigail Rose. "Whenever my mom is gardening, I try to make things so the plants won't get eaten and they won't fall over."
Later this year, Sherri Carvalho will ask her students to become environmental engineers who have to clean up an oil spill. That unit had particular resonance for her students last year in the aftermath of the massive spill in the Gulf of Mexico in 2010. "They would watch what scientists were using to contain the oil," Carvalho recalls. "Where the engineers in the gulf used giant booms, the kids used cotton balls. But they understood the process involved in the cleanup."
Students are also beginning to consider the possibility of pursuing careers in engineering-related fields, Carvalho says. That marks a big difference from her experience before coming to Silvia Elementary almost seven years ago. "I would teach the required curriculum, and maybe a child would want to be a doctor or a teacher," she says. "But when you include engineering, it opens their world to a plethora of other jobs."
That comes as no surprise to EiE program manager Melissa Higgins. "Young kids are already engineers," Higgins says. "They love to solve problems. What we're doing is just providing a context in which they can use their science knowledge to solve a problem." That context has proved widely popular. Since its launch in 2003, EiE has been used by more than 32,000 teachers in all 50 states and Washington, D.C.
Most of its 20 units are geared to grades 3–5, Higgins says, but some—such as designing windmills, developing a better process for making play dough, and engineering bridges—have been created specifically for younger elementary students.
In the Designing Bridges unit, for example, first and second graders apply math skills to real-life problems. "Kids love to see structures fail," she says. "We ask them to quantify the weight there is on the bridge before it fails."
Putting Knowledge to Work
Back in Sherri Carvalho's classroom, her fifth graders are quick to share their enthusiasm. "I think building stuff in 3D is exciting," says Kaitlyn Diaz. "It feels like you're a real engineer when you use the materials and plan out what you're going to do."
"I get to show my creativity about how I can help other people," says Donald Gossic. "But what I like mainly is to hear other people's ideas. That helps me work on my own project."
It's apparent that Carvalho's students have picked up valuable lessons applicable to the engineering process—and to almost any challenge they might confront. "Not everything you build will work as planned," says Hunter Cooper. "You may go through the process a hundred times, and it may not come out perfect," Kolby Peixoto chimes in.
Engineering continues to extend its scope at Silvia: This year the school is offering Engineering Adventures during its "enrichment clusters," where it joins more conventional electives such as drama, journalism, and knitting.
One adventure calls upon students to design a small parachute, which they test by timing its drop from a second-floor balcony. Along the way, Facchiano says, "They have to understand drag, suspension lines, how the parachute will open, and what types of material" will keep it aloft.
At Silvia, engineering acts as "an extension of their learning," Carvalho says. "We're saying, 'This is what you know already.'" These units let kids put that knowledge to work.
Lesson 1: Create a Knee Brace
Choose raw materials: Carvalho makes sure to provide a variety of supplies for her students' experimentation.
Brainstorm as a group: Students work in groups to design and build their braces. Questioning and creativity are encouraged.
Try lots of things: Many of the groups go through multiple variations of their braces to see which works best.
Test the model: When it comes time to test their braces, Carvalho encourages her students to take their work to the next level.
Lesson 2: Osmosis
Pose the problem: Facchiano asks: "How can a frog's skin stay moist without its drowning?"
Experiment: Fourth graders test a variety of materials to see which makes the best membrane.
Track data: Students record the rate at which the water flows through each membrane.
Compare notes: At the end of the lesson, students synthesize their data and draw conclusions.
Math Science and Technology


text:
REVIEW: The Girls From Oz at Brasserie Zédel, Crazy Coqs
By ljazzn on 27 January 2018 • ( 1 Comment )
The Girls From Oz
Publicity picture
(Brasserie Zedel, Crazy Coqs, 26 January 2018. Review by Brianna McClean)
Australia Day in London usually goes by without much notice, despite the 200,000 Australians who crowd the streets of this city. However, last night at Brasserie Zédel's Crazy Coqs, Australia Day was celebrated enthusiastically by The Girls From Oz, a lively cabaret group. For most Australians, the 26th of January is a day of pride and joy… mixed with just a touch of embarrassment. From the twinkling Southern Cross and long afternoons on the beach to over-drinking and colonisation, Australian culture has much to celebrate and mourn. Fittingly, this is the impression last night's performance gave, a combination of jubilation and discomfort.
Walking into the Crazy Coqs lounge, it is immediate that the audience is in for an entertaining evening. The room is glamorous and intimate, a full crowd is buzzing in anticipation. Brasserie Zédel is the perfect place for a UK Australia Day celebration, in central Piccadilly and right around the corner from the Ugg store – it is the best of both worlds. Most of the audience appear to hail from Australia, as evident by shared laughter at specifically Southern Hemisphere jokes. This is testament to the multiculturalism of London and its arts scene. Brasserie Zédel is to be congratulated on its global atmosphere.
Unfortunately, The Girls From Oz were better in theory than in practice. Accompanying pianist, Gemma Hawkins, was clearly the stand-out performer, largely because she was not forced to dance or drink a can of Foster's mid-performance. To their credit, the three singers, Natasha Veselinovic, Chloe-Rose Taylor and Melissa Gall, were undeniably spirited and managed to maintain their characters throughout the fast-paced set-list.
The evening consisted mostly of relatively forgettable (but extremely loud) Australian 'anthems'. In their defence, When My Baby Smiles At Me was an enjoyable piece, featuring three-part harmonies which showcased the successful musical theatre careers of all three singers. Similarly, The Girls From Oz's arrangement of Land Down Under was a welcome moment of sobriety and gentleness in the midst of a gaudy evening.
At one point, the Girls told this joke: "What is the difference between Australia and yoghurt? Yoghurt has culture." As an Australian who is proud of the thriving and diverse arts scene in Australia, it saddens me to think that anyone witnessing last night's performance would have found that joke to be true. It is a shame that what could have been an evening of patriotic fun was undermined by mis-fired performance.
To be fair, the rest of the audience seemed engaged and entertained throughout the show. The jaunty tunes and vivacious characters appeared to please the gathered crowd. Perhaps they did not notice the disharmonies and banal production. Or, perhaps I am simply not Australian enough.
EXHIBITION REVIEW: Rhythm & Reaction: The Age of Jazz in Britain at 2 Temple Place
REVIEW: Brotherhood of Breath at the 2018 South Coast Jazz Festival
Philip Putnam says:
The above review saddened me. The other night the third great Sydney gig I've been to already this year proved yet ago how much Australian jazz is truly world class. If you ever get down here please take in some gigs. You'll be pleasantly surprised.


Morph up as the unrivalled King of the Swingers and the jungle V.I.P. Enjoy the life-like print quality of our animal range, you party animal.
Our special mix of material makes our suits last longer and easier to see through.
The real Morphsuit from the guys who started it.
Please note due to hygenic reasons we can not accept any exchanges or returns on Morphsuits.


The EOS 60D (my camera at the moment) offers a range of three Auto focus (AF) modes (One Shot, AI Focus and AI Servo).
This is a really good feature to know about and I suggest you learn it. It can make the difference between getting the shot and not getting the shot. Personally, I don't see much of a reason to use AI Focus. Trusting the camera to do the right thing may be detrimental to your photography experience.
When focus is achieved, the AF point which achieved focus will flash briefly in red, and the focus confirmation light <o> in the viewfinder will also light.
If focus cannot be achieved, the focus confirmation light <o> in the viewfinder will blink. If this occurs, a picture cannot be taken if the shutter button is pressed completely. Recompose the picture and try to focus again.
AI Focus AF switches the AF mode from One-Shot AF to AI Servo AF automatically if the still subject starts moving.
After the subject is focused in the One-Shot AF mode, if the subject starts moving, the camera will detect the movement and change the AF mode automatically to AI Servo AF.
When focus is achieved in the AI focus AF mode with the Servo mode active, the beeper will sound softly. However, the focus confirmation light <o> in the viewfinder will not light.
This mode is for moving subjects when the focusing distance keeps changing. While you hold down the shutter button halfway, the subject will be focused continuously.
With AI Servo, the beeper will not sound even when focus is achieved. Also, the focus confirmation light <o> in the viewfinder will not light.


Promotions helped Verizon add subscribers in the latest quarter. But they came at a cost, hurting margins. Fred Katayama reports.
Competition is taking a toll on Verizon. Although the phone and internet company grew revenue and wireless subscribers in the latest quarter, it relied on a lot of promotions to lure them, and that bit into its profit margins. With rivals like Sprint offering to chop mobile service bills in half to defectors from Verizon and AT&T, more of Verizon's customers ditched its service. Analysts say wireless operators are increasingly competing based on price because they offer similar phones. Nomura analyst Adam Ilkowitz said, "This was clearly a mixed quarter for wireless," noting that subscriber additions and device sales beat forecasts but in turn caused cash flow to disappoint Wall Street. The company posted a big quarterly loss mostly because of pension costs, and it predicts it'll face a pension funding requirement of $700 million this year. Verizon is the first among the big telecom companies reporting earnings. On the plus side: a surge in tablet subscribers, who made up 70 percent of the gains in long term contracts. It also added broadband subscribers and boosted its wireline margins.. Verizon's shares, which have been nearly flat the past 12 months, lost ground in early trading.


text:
Q: Подключение к базе данных MongoDB Пытаюсь подключить в исполняемый файл модуль require('mongoose'); и сразу выдаётся ошибка.

{ Error: Cannot find module '../build/Release/bson'
    at Function.Module._resolveFilename (module.js:555:15)
    at Function.Module._load (module.js:482:25)
    at Module.require (module.js:604:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (C:\Users\Aquarius\Desktop\Node\public\Meadowlark\node
_modules\bson\ext\index.js:15:10)
    at Module._compile (module.js:660:30)
    at Object.Module._extensions..js (module.js:671:10)
    at Module.load (module.js:573:32)
    at tryModuleLoad (module.js:513:12)
    at Function.Module._load (module.js:505:3) code: 'MODULE_NOT_FOUND' }
js-bson: Failed to load c++ bson extension, using pure JS version


Accepted to Waverly on a full scholarship, Kate O'Brien does not share the elite lifestyle of her wealthy classmates. A foster child from an abusive family, Kate is intelligent, and has always manipulated others to get what she wants.
Toni who has been scarred by fire more than once, searches for the truth about the mother she believes hurt and then abandoned her. "Fake courage is better than no courage at all."
Sophie has spent years keeping her crazy family life secret. Determined to fit in at her new school, she devises a plan for making friends - and this time no one will find out the truth.
Life is almost ... well ... potentially perfect for Sophie Kandinsky. After seven years, Sophie's beloved Papa is finally out of prison. Papa is home. Trouble is ... he's supposed to be dead.
Katie likes to believe she's invisible. It seems so much safer than being exposed as who she is: shy, poor, and vulnerable. So getting up in front of audience as the lead in her school's production of The Taming of the Shrew should be complete torture.
This new anthology, edited by Teresa Toten, features stories by some of Canada's finest authors who were born in another country and who went through the experience of trying to "fit in." The young adult audience is a perfectly tuned readership for this collection.
A young girl is excited by her mother's bustling, until she realizes Mommy is going out for the evening without her. Still, mommies take a lot of getting ready before they go, and this mommy needs an extra-special helper to make those crucial dress-up decisions.
Dani Webster had played The Game with her sister, Kelly, for as long as she could remember, but now it is a hazy memory as Dani looks up from the floor of the isolation room at Riverwood Clinic. She remember the vodka and pills.
Life in her new neighborhood isn't going to be easy for Croatian immigrant Lucy Vakovik. Her mother has saved enough to buy them an onlyhouse: a single detached home. But to Lucy's friends, her mother says, "My sometime English is broking."


[CyberSecurity Blog Series] What is Spear Phishing and how to avoid it?
Spear Phishing is a form of Social Engineering. It may be defined as 'highly targeted phishing aimed at specific individuals or groups within an organisation'.
Due to the amount of information that can be found freely with just a little digging around online from sites like LinkedIn, Facebook and company's own websites it is possible to add convincing details to Phishing scams. Spear Phishing emails, for instance, may refer to their targets by their specific name, rank, or position instead of using generic titles as in broader phishing campaigns.
This type of scam is now becoming much more abundant, a 2016 Verizon Data Breach Report states that over 80% of malware infestations are delivered in this targeted way.
Verify the request. Make a call to the genuine sender, ask if they have sent you an email and what it was.
Question all email requests. Avoid responding to the request, do not give any information in reply.


With Fane's guitar speakers rebounding in the market in recent years, Idaho-based Avatar Speakers decided to approach the British maker about creating two bespoke 12" models for exclusive distribution.
With Fane's guitar speakers rebounding in the market in recent years, Idaho-based Avatar Speakers decided to approach the British maker about creating two bespoke 12" models for exclusive distribution. The aim was to capture two perennially popular flavors of genuinely U.K.-made tone at player-friendly prices. The Avatar M65 by Fane has a 35-ounce ceramic magnet, a 99dB sensitivity rating, and 65-watt power handling. It is voiced roughly in the mold of the "beefed-up Greenback," which is to say it's not entirely dissimilar to Celestion's G12-65 or M65 Creamback, but rendered with Fane's own distinctive character. The H75, with its 59-ounce magnet, 100dB sensitivity, and 75-watt capability, shoots for the "heavy magnet" formula of the G12H and H75 Creamback, but again with Fane's own je ne sais quoi.
I tested the pair in a 2x12 cab with both open-and closed-back options, and wired for individual speaker connection, using modified JTM45-style and AC15-style amps, with a wide variety of single-coil and humbucker guitars. Both speakers achieved Avatar's goals beautifully, very much as described, but the secret sauce is in the Fane part of the equation, which I heard, to put it simply, as a little extra punchiness, and a shifting of the midrange bark somewhat more toward the lower-mids spectrum in each speaker. The M65 has that familiar easy breakup, softer low end, and crackly-crunch when pushed, making it a great speaker for anything classic-rock derived. The H75, on the other hand, has more tightness and cutting power; more of a slap in the face from the highs—and a firmer low end, with greater note clarity overall. Tested together, wired in series, they also made a great mixed pair, each greatly complementing and enhancing the characteristics of the other. All in all, the M65 and H75 comprise two great new offerings from Avatar, and are both well-conceived British-speaker alternatives.
KUDOS Great "Greenback-ish" tones with an alternative voice and stout power handling at a good price.
KUDOS Firm lows and excellent note clarity.
CONCERNS Slightly spikey in the highs with some brighter guitars and amps.


In this project we will bridge the sematic gap between (a) academic and industrial methods for timing modeling and analysis, and (b) industrial practices for model-based software development. We will do this by providing: (1) novel techniques for synthesis of predictable code from behavior- and component-models, (2) integration of timing-requirements modeling and timing-analysis tools in the design workflow. In this project, we target specifically the domain of distributed embedded real-time control systems, as represented by, e.g., automotive, aerospace and automation industries. A special focus will be on the automotive sector; a sector which is scientifically interesting due to the major improvement w.r.t. state-of-practice in software development over the last decade (including large-scale industrial adoption of techniques like component-based software engineering and model-based development) Concretely, this project will investigate how research oriented and/or standardized component models intended for the automotive domain (e.g. EAST-ADL, AUTOSAR) can be used together with component models actually used in industry today (Matlab/Simulink, Rubus Component Model) to provide both a functional description of the system as well as providing an analyzable and a resource efficient model of the run-time system, and how we can generate predictable and efficient code from these models.


text:
Q: Best way to extract number of partitions? Assuming that there are only primary partitions on a disk, what is the best way to find the current number of partitions?
Is there any better way than:
fdisk -l > temp
#Following returns first column of the last line of temp e.g. /dev/sda4
lastPart=$(tail -n 1 temp | awk '{print $1}')
totalPartitions=$(echo ${lastPart:8})

$totalPartitions variable sometimes returns NULL. That's why, I was wondering if there is a more reliable way to find the current number of partitions.

A: What about:
totalPartitions=$(grep -c 'sda[0-9]' /proc/partitions)

?
(Where sda is the name of the disk you're interested in, replacing it as appropriate)

A: I found this question while I was writing a script to safely wipe test and re-provision storage, which is sometimes a memory card, so mmcblk0p1 is often the format of its partitions.
Here's my answer:
diskICareAbout="sda"
totalPartitions="$( ls  /sys/block/${diskICareAbout}/*/partition  | wc -l )"

/proc/partitions is archaic and flat.  The sys filesystem can comunicate the heirarchal nature of partitions well enough that grep is not needed.

A: You can use partx for this.
partx -g /dev/<disk> | wc -l

will return the total number of partitions (-g omits the header line). To get the last partition on a disk, use
partx -rgo NR -n -1:-1 /dev/<disk>

which may be useful if there are gaps in the partition numbers. -r omits aligning spaces, and -o specifies the comma-separated columns to include. -n specifies a range of partitions start:end, where -1 is the last partition.


High angle rescue scenarios present responders with a very unique set of challenges such as accurately monitoring a patient during the rescue process.
Weighing in at a single pound, the WVSM is light and small enough to carry in the field and can easily fit in the side pocket of a pack or BDUs.
Tested to JCETS Joint Airworthiness, (MIL-STD 810g), the WVSM is tough, built to military specifications, and designed for use in hostile environments.
The WVSM is a patient worn device and easily fits inside a Stokes litter. The WVSM operates completely automatically keeping responders' hands free for other tasks.
A sealed, lithium-ion battery gives the WVSM a battery life of up to 15 hours while monitoring patient vitals and 7 hours while monitoring and transmitting wireless data simultaneously.
The WVSM system gives responders the ability to monitor multiple patients up to 200 yards away from a single compatible device.
The WVSM can send vitals from the patient location to responders located in a safe location.


, selects the top choices using ideal resolution simply for you, and this images is actually one among images selections inside our best images gallery with regards to Beautiful Stock Of Ideas for A Wedding Gift. I really hope you can enjoy it.
put up by fajar in 2018-11-01 19:26:19. To discover many photos with Beautiful Stock Of Ideas for A Wedding Gift pictures gallery make sure you comply with that link.


TransMagic develops a broad range of 3D CAD interoperability, geometry repair and translation software products. These powerful tools can help solve many of the 3D CAD data exchange problems facing the manufacturing industry. TransMagic customers save time typically lost in reworking non-native CAD files. With TransMagic, diverse multi-CAD data is more usable for those who need it. The intuitive user interface allows all manufacturing professionals and non-CAD experts to quickly reuse 3D CAD data with easy-to-use translation, geometry repair and viewing technology.


Your tuition fee for future years will remain at the same level as 2017-18 for the duration of your studying period.
The University has confirmed that EU students commencing study in 2016, 2017 and 2018 will continue to be charged fees at the same rate as UK students. For more information, see the university statement.
If you will be studying abroad or undertaking an intercalated year in 2017-18, please see the Undergraduate Tuition Fees For Students on Study or Work Placements in 2017-18 for details of the fees you will be charged.
If you will be studying abroad or undertaking an intercalated year in 2018-19, please see the Undergraduate Tuition Fees For Students on Study or Work Placements in 2018-19 for details of the fees you will be charged.


A 50 million euro investment aimed at helping to end the scourge of femicide – where women and girls are killed just because of their gender – was announced at United Nations Headquarters on Thursday, thanks to the 'political courage' of a group of Latin American countries, said the UN deputy chief.
Amina Mohammed was speaking at a high-level event to launch the Spotlight Initiative in Argentina, El Salvador, Guatemala, Honduras and Mexico.
She described the joint UN-European Union initiative as "a bold and comprehensive response to the tragedies that we see across the world every day", aimed at ending violence against women and girls.
"These five countries have shown the political courage to confront and end femicide – a crime that claims the lives of 12 women a day, in Latin America," said the Deputy Secretary-General.
"Given the pervasive, universal, and entrenched nature of violence against women and girls, we knew that we would need to combine our individual efforts if we were to succeed," she added.
Latin America is home to 14 of the 25 countries with the highest rates of femicide in the world and an astonishing 98 per cent of gender-related killings, go unprosecuted.
Ms. Mohammed said that the 50 million Euro investment would help tighten up laws and policy initiatives to curb unchecked violence against women and girls, strengthen institutions and promote gender equality overall.
"Addressing femicide comprehensively from each of these angles is essential to successful and lasting results," she added.
"We need to end impunity for perpetrators and ensure that no woman or girl experiences violence either in the home, from a partner, or in any public space including from gangs, traffickers or others," said Ms. Mohammed.
The Deputy Secretary-General was followed by Federica Mogherini, High Representative of the Union for Foreign Affairs and Security Policy.


text:
Home News Tradition of an eight-hour day five days a week will come to an end, report claims
Tradition of an eight-hour day five days a week will come to an end, report claims
Death of the 9-5 job? Working from home during lockdown was so successful that the tradition of an eight-hour day five days a week will come to an end, report claims
The traditional nine to five will come to an end in 2021, a new report has claimed
Workers will find a pattern that combines personal and professional lifestyles
Report, titled Zoomsday Predictions, written by the author Marian Salzman
By Bhvishya Patel For Mailonline
Britain's workers are unlikely to return to the traditional nine to five ever again and lockdown habits such as stockpiling could also become 'the new normal' once the pandemic is over, a new reports claims.
In her report, titled Zoomsday Predictions, author and cultural commentator Marian Salzman said staff will continue to work the same hours but in a way that combines their personal and professional lifestyles – with many moving to a four-day week.
The publication, which looks at trends that are growing in a way that they will become the new norm for millions, also predicts that stockpiling will become routine among consumers.
Ms Salzman, who last year, predicted the rise of the 'bunker mentality' and the wearing of facemasks to stay healthier, said we are already seeing serious discussions of a four-day workweek.
The traditional nine to five week will come to an end and 2021 will see more people working from home, a new report has predicted. (Stock image)
Author and cultural commentator Marian Salzman (pictured) said staff will continue to work the same hours but in a way that combines their personal and professional lifestyles
She wrote: 'Already, we are seeing more serious discussion of such an approach, including its benefits to people and the planet.
'Microsoft Japan's experiment with a four-day workweek earlier this year resulted in a 40 percent rise in worker productivity.
'Other companies that have adopted or are considering a shorter workweek include U.S. burger chain Shake Shack, New Zealand trust management company Perpetual Guardian, and U.K.-based Radioactive PR. What a revolution it would be if working fewer but smarter hours turns out to be the ultimate productivity hack.'
Lockdown has also encouraged people to think more about those they have not been able to see and there will be a 'reevaluation' of our social circles with more keeping in touch physically rather than just online, the author claims.
She wrote: 'As social distancing restrictions continue (self-imposed or otherwise), we suddenly are desperate to be together—even as we rapidly adapt to life apart.
'Many of us are finding ourselves revising our social circles, drawing in closer people we haven't seen for years while drifting away from friends and acquaintances we used to see all the time.
'Now, it's less about proximity and convenience and more about intimacy and connection. We are more aware, too, of the interconnectedness of the planet's peoples, understanding that no country will be safe from this virus until all countries are safe.'
The author also said 2021 would continue to see the appreciation of local workers that sparked the weekly clapping for NHS heroes.
Despite the rise of veganism and vegan 'leather', Ms Salzman predicts a return to 'real' rather than 'fake' in food, culture and general life from wanting real meat and more intelligent television rather than 'vapid' reality TV.
Stockpiling – once associated with conspiracy theorists who thought the world was coming to an end – will also become routine among consumers, with retailers beginning to have sections specifically catered for this demand of 'emergency rations'.
Ms Salzman added: 'We have seen a bunker mentality take hold for several years now.
For her report, titled Zoomsday Predictions, Ms Salzman looked at trends that are growing in a way that they will become the new norm for millions
The report also predicts that people will re-evaluate their social circles with more keeping in touch physically rather than just online. (Stock image)
'Covid-9 has swelled the ranks of those seeking the security of stockpiles and safe spaces. As people seek to prepare for any and every eventuality, more retailers will stock long-term emergency supply rations.'
Other future trends in the report include an increase in the private sector working to provide more community services in partnership with the public sector and more people wearing facemasks, even once the pandemic is over.
The predictions are based on trends and detecting and connecting 'signs and symbols that tell stories and shed light on where cultures, communities and society at large are moving' adding 'I am hardly clairvoyant.'
The report comes just months after a survey revealed around one in ten office-based staff are working from a beach or pub.
A survey of 2,000 staff by Huawei earlier this year revealed that almost nine out of ten workers want to continue working from home for at least part of the week and one in ten are working from a beach or pub. (Stock image)
The survey of 2,000 workers conducted by the technology giant Huawei showed that staff have found more relaxed environments to carry out their work and almost nine out of ten want to continue working from home for at least part of the week.
The study, which provided a fresh insight into how the world of work will be changing amid the pandemic, also found three out of five respondents say they would prefer to work remotely for at least three days a week.
Many of those working from home said they were setting up their workstation in difference rooms, or in the garden or local park.
Three out of five said they were happier working from home and more than half said being able to choose where they set up to work has had a positive impact on their mental health.
Previous article Europe's medical agency eyes safety of 2 COVID-19 vaccines
Next article Kate Beckinsale dances around her kitchen with daughter Lily Sheen dressed as giant fruit


text:
Михаи́л Бондаре́нко:
 Бондаренко, Михаил Григорьевич (1912—1943) — Герой Советского Союза.
 Бондаренко, Михаил Захарович (1913—1947) — дважды Герой Советского Союза.
 Бондаренко, Михаил Иванович (1901—1943) — Герой Советского Союза.
 Бондаренко, Михаил Ильич (1903—1938) — Первый секретарь Винницкого обкома КП Украины; председатель Совета народных комиссаров Украинской ССР.
 Бондаренко, Михаил Леонтьевич (1897—1959) — Герой Социалистического Труда.
 Бондаренко, Михаил Маркович (1905—1938) — советский государственный и партийный деятель.
 Бондаренко, Михаил Трофимович (1904—1983) — советский военачальник.
 Бондаренко, Михаил Фёдорович (1944—2013) — ректор Харьковского национального университета радиоэлектроники.

redpajama_set_name: RedPajamaWikipedia


text:
Home | About | Projects | Protium Band | Classes | Media | Sponsors | Teacher Resources | Other Fuel Cell Programs | Other Energy | Links
The Hindenburg Disaster
THE TRUE STORY OF HYDROGEN AND THE `HINDENBURG' DISASTER
(Senate - October 06, 1998)
[Page: S11631]
Mr. HARKIN. Mr. President, for many years I have spoken of the promise of hydrogen energy as our best hope for an environmentally safe sustainable energy future. My vision, and the vision of many of our top scientists is simple. Hydrogen, which is produced by renewable energy with absolutely no pollution and no resource depletion of any kind, will prove a truly sustainable energy option.
I recognize that hydrogen is not yet a form of energy widely known to the American public. In fact, hydrogen has an unfortunate association. I would like to spend a few minutes dispelling one unfortunate myth of hydrogen energy.
Mr. President, mention the word `hydrogen' and many people remember the Hindenburg--the dirigible that caught fire back in May of 1937, killing 36 of the 97 people on board. Now, thanks to the scientific sleuthing of Addison Bain, a retired NASA scientist with 30 years experience with hydrogen, we can state with a fair degree of certainty that the Hindenburg would have caught fire even without any hydrogen on board.
This detective story was reported in a recent issue of Popular Science. I ask that the Popular Science article be printed in the Congressional Record at the conclusion of my remarks.
Addison Bain collected actual samples from the Hindenburg--the cloth bags that contained the hydrogen--which were saved as souvenirs by the crowd awaiting the Hindenburg at Lakehurst, New Jersey on May 6, 1937. When these samples were analyzed by modern techniques, Bain discovered that the bags had been coated with cellulose nitrate or cellulose acetate--both flammable materials. Furthermore, the cellulose material was impregnated with aluminum flakes to reflect sunlight, and aluminum powder is used in rocket fuel. Essentially the outside of the Hindenburg was coated with rocket fuel!
Addison now believes that the Hindenburg probably caught fire from an electrical discharge igniting the cellulose-coated gas bags. Remember, the ship docked at Lakehurst with electrical storms in the area, which was against regulations.
I would like to personally thank Addison Bain for his valuable contribution to the history of the Hindenburg, and to lessening the public's concerns over the safety of hydrogen. Hydrogen, in my judgment, will become a premier fuel in the 21st century, since burning hydrogen produces no pollution of any kind, just pure, clean water. And hydrogen can be produced by using sunlight or wind electricity to split water.
Hydrogen energy has been used safely in the Nation's space program for many decades, and I believe it can be used safely for many other applications here on Earth. For example, hydrogen could be a safe alternative fuel for cars. It would be much less dangerous than gasoline in an accident. Hydrogen gas disperses rapidly, while gasoline lingers in the vicinity of the accident, increasing the risks to survivors of the crash. I believe there are also countless other uses for hydrogen. We can pursue those options without fear because of Addison Bain's efforts. Thanks to Addison Bain, we can continue down the path toward a renewable hydrogen future without the undue fear of a singular event from 60 years ago.
The article follows:
What Really Downed the Hindenburg
(BY MARIETTE DICHRISTINA)
May 6, 1937. The sky still appears moody after a stormy day. A stately, silvery marvel, the 240-ton Hindenburg airship glides 200 feet above Lakehurst, New Jersey, at around 7:21 p.m. In a 6-knot wind, the Zeppelin is attempting its first `high landing': The crew throws the spider lines out, preparing for mooring. The gigantic ship, nearly three football fields in length, would be slowly winched down.
If you think you know exactly what happened next, Adison Bain has a surprise for you. Six decades after the infamous Hindenburg disaster, when 36 of 97 aboard died during the horrific blaze that halted rigid-airship travel, Bain has revealed a stunning new explanation for what started the fire. Bain, a recently retired engineer and manager of hydrogen programs who spent more than 30 years at NASA, has recently concluded several years of scientific sleuthing work in search of the culprit behind the conflagration. He combed through thousands of pages of original testimony and materials at four archives in the United States and one in Germany, interviewed survivors and airship experts, and ultimately tested original materials from the model LZ-129 Hindenburg and its contemporaries. Contrary to what the investigators ruled at the time, asserts Bain, the fire did not start with free hydrogen lit by natural electrical discharge or sabotage.
The hunt for the truth about the Hindenburg began in the late 1960s for Bain, a genial man with slicked-backed dark hair and a face lined by many smiles. He was working on a hydrogen safety manual for NASA. Sitting in a `Florida room' of mint and mauve tiled floors and furniture in a Cocoa Beach apartment, Bain recalls how he paged through the literature on hydrogen. `Invariably,' he says, `the topic of the Hindenburg would come up. At the time, I didn't think a lot about it.'
Over the years, however, as he continued his NASA work in hydrogen systems, the reference began to accumulate in his mind. `What I was starting to notice is that the authors were inconsistent,' he says. Hydrogen detractors said the gas was so flammable it killed everyone on the Hindenburg, which wasn't true--about one-third of those aboard had died. On the other hand, hydrogen promoters pooh-poohed safety concerns and claimed that those who perished did so only because they jumped from the burning airship, which also wasn't true. Says Bain: `I thought, wait a minute! Where are they getting their information?' He has also seen the famous photos of the Hindenburg's bright, blistering hot fire and knew that hydrogen doesn't burn in that way. A hydrogen fire radiates little heat and is barely visible to the unaided eye.
By 1990, Bain pulled a one-year assignment in Washington, D.C., at NASA headquarters, then across the street from the National Air & Space Museum. `I like airplanes, so I went over there. Lo and behold, there's this 25-foot-long model of the Hindenburg used in the 1975 movie with George C. Scott,' he recalls. `I'm looking at that model and a plaque on the wall. The plaque says something about how the hydrogen exploded,' As a hydrogen expert, he knew that the pure gas doesn't just explode. That was enough: He made an appointment with the archivists upstairs, dooned a pair of protective gloves, and lost himself in decades-old original documents in the museum's Hindenburg files for the rest of the day.
His research soon became something of a part-time obsession. Over the next few years. Bain would steal away to the archive and travel to others in College Park and Suitland, Maryland, poring through thousands of pages and copying documents in search of answers. He even traveled to the Fires Sciences Lab in Missoula, Montana. He speculated that, perhaps, some of the airship's materials had played a role in the ignition. Maddeningly, however, he couldn't find the exact formulations used. `I had the idea of the problem, but needed enough evidence to back my story up,' he says.
That was as far as he got until 1994, when he ran into Richard van Treuren, a space shuttle technician, at a conference on hydrogen. Van Treuren, a self-avowed `helium head' and member of the airship aficionados called the Lighter-Than-Air Society in Akron, Ohio, was seeking Bain to talk about hydrogen. Van Treuren had a book about airships. Bain spotted the book in the crook of van Treuren's arm and bought it from him on the spot.
`The rain still spatters the wet ground in starts and stops. The air is highly charged from the thunderstorms, investigators would rule later. Six and three-quarter acres of Hindenburg fabrics is kiting in the breeze. A witness later would recall a bluish electrical phenomenon that dances over the aft starboard side of the Hindenburg for more than a minute.'
Through van Treuren, Bain learned that pieces of the Hindenburg's skin still existed. Bain traveled around the country to procure them, spending hundreds of dollars buying original materials, books, and papers from collectors. `What I was trying to find out is, what did they use specifically in the coating?' he says.
Hepburn Walker, who had been stationed in Lakehurst
in the early `40s, was among those in possession of pieces of the Hindenburg, Walker had found them in the soil. Another sample, a part of the swastika painted on the Hindenburg's side, was kept in a safe by Cheryl Gantz, head of the Zeppelin Collectors Club in Chicago.
Bain remembers meeting Gantz. `May I have a little clipping, just anything to take to the lab?' he begged. Gantz was willing, but wanted to impress upon Bain the fabric's value to her: `How much do you value your firstborn?' she asked. Bain laughs: `I got the message!' Bain also located fabric samples in Germany that were representative of the top of the Hindenburg, where the fire started.
Materials in hand, Bain headed to NASA's Materials Science Laboratory at the nearby Kennedy Space Center. Over the next 14 months, he carefully laid out a systematic testing protocol involving some 14 researchers who would volunteer their spare time to assist in what became known as Project H.
`A jagged fire licks along the aft starboard side of the Hindenburg, another witness later recalls. Crewman Helmut Lau, on the lower left of the craft, looks up through the translucent gas cells and sees a red glow. In moments, cells begin to melt before his eyes. The fire crests the top of the Hindenburg and spreads outward and downward, toward lau and the others. Girders start cracking and wires snap. With hydrogen still in the cells, the giant airship maintains level trim.'
What was in that fabric? Work to create a chemical and physical analysis included using an infrared stectrograph and a scanning electron microscope, which provided, respectively, the chemical signatures of the organic compounds and elements present.
A startling variety of highly flammable compounds proved to have been added to the cotton fabric base. `They used a cellulose acetate or nitrate as a typical doping compound, which is flammable to begin with--a forest fire is cellulose fire,' says Bain. `OK, you coat that with cellulose nitrate--nitrate is used to make gunpowder. And then you put [on] aluminum powder. Now, aluminum powder is a fuel used on the solid rocket boosters on the space shuttle.' The wood spacers and ramie cord used to bind the structure together, along with the silk and other fabrics in the ship, would also have added to the fuel-rich inferno. Even the duralumin support framework of the Hindenburg's, rigid skeleton was coated with lacquer, ostensibly to protect it from moisture.
In a flame test, a fabric section ignited and burned readily. The arc test, in which 30,000 volts were zapped across a piece of fabric several inches long, was even more revealing: `Poof, it disappeared. The whole thing happened faster than I can explain it,' Bain says. `I guess the moral of the story is, don't paint your airship with rocket fuel.'
Bain is quick to point out, however, that it's not that the Germans and other airship and aircraft makers of the era were simply foolish in doping the fabric the way they did. They had a number of technical problems to solve using the materials of the time. Today's synthetic fabrics, with their range of properties, did not yet exist. The cotton or linen fabric skin was swabbed with the chemicals to make it taut and reduce flutter for aerodynamics, and then painted with the reflective red iron oxide and aluminum so the sun's heat wouldn't expand the gas in the cells, to help prevent gas from escaping. The skin had to be protected from deterioration from sunlight and rot from moisture. When engineers changed one part of the formulation to address flammability concerns, the mixture might not have adhered well or other problems would crop up.
`And I'm not saying hydrogen didn't contribute to the fire,' adds Bain. It is after all a fuel, he notes--and one he is hoping will develop into a replacement or supplement to natural gas. `But it was a fuel-rich fire already; the hydrogen just added to it.' Bain figures that maybe half of the 5 million cubic feet of hydrogen remaining aboard the Hindenburg after the Atlantic crossing burned in the fire. `But so what? It's academic.'
Also made academic, perhaps, are decades of speculation over the causes behind the start of the Zeppelin fire. All have blamed hydrogen, with various ideas about how the gas became free and ignited. One popular theory has
it that a wire punctured a gas cell. Bain, obviously, finds this doubtful. `If that happened, it should have occurred during one of the final maneuvers.' But, `The ship was stationary for 4 minutes before the first fire was indicated.' If cells were leaking gas that long, `The ship should really start going like this,' Bain says as he tilts a handheld Hindenburg model nose upward. `And it's not. [At the start of the fire,] it's still in trim.'
What about the possibility of loose hydrogen from the vents? Hydrogen was released to help maintain level flight, and others have theorized that a valve may have stuck open. `The Hindenberg had an excellent venting system' says Bain, with vents between cells that measured some 2 feet high and 7 feet across. If hydrogen accumulated--difficult to imagine for the lightest element, which has the greatest dispersal rate in the universe--how come, he asks, none of the fires were observed at the vent sites atop the ship?
`In seconds, the rear half of the Hindenburg is engulfed in bright, writhing flames. Gas cells one and two expand and burst with explosive force; the released hydrogen adds fuel to the conflagration. The ship lurches forward, breaking off water tanks attached by light-release connectors near the bow of the craft. Having lost ballast, the airship's nose heads upward and people start jumping to escape the flames, some too far from the ground to survive the fall.'
What is perhaps most stunning about Bain's research is that what he has discovered comes 60 years after some German airship experts already knew it. While visiting an archive in Germany, he copied two 1937 letters handwritten in German that had not been seen by earlier investigators. Their shocking contents were revealed to Bain only after he returned to Florida and had them translated. They were written by an electrical engineer named Otto Beyerstock, who had incinerated pieces of Hindenburg fabric during electrical tests conducted at the behest of the Zeppelin Co. In the notes, Beyerstock testily dismissed the idea that hydrogen could have started the fire, stating with certitude that it could only have been caused by the fabric's flammability in a charged atmosphere. In a similar craft flying under the same atmospheric conditions that the Hindenburg faced in Lakehurst, the same sort of conflagration would occur, even if noncombustible helium were used as the lifting gas. (In fact, notes Bain, such a fire did take place in 1935, when a helium-filled airship with an acetate-aluminum skin burned near Point Sur, California.)
`I beg you to kindly inform me about the corrective measures to be taken or that have already been taken,' Beyerstock wrote to Zeppelin. Some modifications were made in a subsequent airship plan, such as the addition of a fire retardant. `They knew,' Bain says simply. But shortly after the Hindenburg disaster, and probably because of it, the great Zeppelins were removed from service.
Some detractors are still not ready to put aside the idea of hydrogen as fire-starter. `Addison Bain's hydrogen background carries some weight,' says Eric Brothers, the editor of Buoyant Flight, the Lighter-Than-Air Society's bulletin, but not everyone at the society is convinced. The bulletin this year ran three articles detailing the skin-ignition research, coauthored by van Treuren and Bain. As for Brothers: `I would like to see more independent verification of the tests, though I recognize that that's difficult to do,' he says. Still, `I'm 90 percent convinced that the fabric had some role.'
One of the Buoyant Flight articles' most stringent critics is Donald E. Overs, a retired engineer and pilot who worked on Goodyear blimp construction and engineering for more than 20 years. `Based on the authors' cover burn rate tests, it would have taken anywhere from 15 minutes to probably an hour or more for the cover alone to burn off. The entire ship, on the other hand, was consumed in less than 60 seconds,' he says. Overs' detailed e-mail challenges to Bain's theory--and the various defenses supporters--would occupy some 50 printed pages. `Bain can at most demonstrate or argue that the cover was a brief link in the early ignition of the hydrogen, but he cannot prove even that,' concludes Overs.
`Like the mythical Icarus who ventured too close to the sun, the Hindenburg goes down in flames. As it touches the ground, the ship bounces lightly, perhaps still buoyant with remaining hydrogen.'
None of what Bain has learned has diminished his admiration for the engineering achievement in creating the great airships. `With all due respect,' he says, `the Germans did a fantastic job. I admire their technology.
`It was just an unfortunate little flaw, just like the flaw on the Titanic and the flaw in the Challenger,' he says, referring to the `unsinkable' ship's sulfurous, brittle steel and the space shuttle's O-ring--both of which failed under the prevailing weather conditions. `You never know what Mother Nature is going to do to you.'
A German postcard displays a photograph of the Hindenburg, home from
her regular run to Brazil, and the Graf Zepplin, which circled the world.
This website copyright © 2010 Protium.us
The Ponaganset High School Fuel Cell Education Initiative.
Web Design by Matthew Rounds.


Cannes, of course, isn't just a film festival: It's a celebration of glamour and Hollywood glitz, with a particular emphasis on red carpet fashion for men and women alike. We might even venture to say that the public knows more about who wore what than they do about which films took home awards — and we're absolutely certain that one sartorial issue from this year will be remembered for many Cannes to come.
On Sunday evening, a handful of women in their 50s were denied entry to a screening of Todd Hayne's film, Carol, because they weren't wearing the requisite footwear. Instead of towering heels, these women — some of whom had medical conditions — were sporting dressy flats. Cannes hasn't formally issued a statement on the subject, but Emily Blunt addressed the faux pas in a press conference Tuesday morning.


Powered by a 1600 watt motor, the UberScoot 1600w Electric Scooter delivers over two horsepower. The electric powerboards large 11-inch knobby lets you take on any terrain. The UberScoot 1600w rockets you to speeds of 20+ mph and offers a range of 12 miles. Your range can be extended by activating "Economy Mode." This handy feature partially restricts the scooter's acceleration and the top speed in order to get the added range out your battery. Other great features include a quick release seat, folding feature and locking frame (Posi Lock) that quickly and easily allow you to pack it away. On top of that, the UberScoot 1600w has front and rear lights, keeping your midnight rides well illuminated! Meanwhile, the scooter's front and rear brakes will help keep you safe while you're out and about, and the key ignition feature helps keep your scooter secure.
If this is more than you'd like to spend on an electric scooter, take a look at the lower priced UberScoot 1000w.
• Motor: 1600 watt brushless motor.
• Frame: High-grade steel frame features superior design and quality welding. Durable ABS plastic body, deck, and rear mudguard. BMX style handlebars. Advanced front "Cam-Link" suspension & adjustable rear twin-shock suspension system.
• Drive System: Chain drive, variable speed twist throttle. Economy mode feature that conserves battery life by restricting power from the motor.
• Battery: Four 12v / 12ah sealed lead acid batteries (48-volt system), 250 cycles.
• Charge Time: 6 - 8 hours.
• Dimensions: Length 49", Width 25", Height 43"
• Tires: 11" pneumatic knobby on/off road tires on aluminum alloy rims.
• Warranty: 60-day manufacturer's warranty and LIFETIME technical support!
• One touch easy folding frame with advanced 'Posi Lock' folding/locking system.
UberScoot customer Jason E. unboxes, assembles, then takes the 1600w electric scooter to the streets.
5 of 5 stars One word. Awesome!
This scooter is awesome! Rode over 15 miles today on dirt and pavement and the battery only went from green down to yellow, which is half. I could have easily kept going for some time. It has so much torque and the turbo option leaves people I'm out with in the dust! The suspension and seat/stand option makes riding this scooter enjoyable and fun! I would recommend this scooter to anyone who loves to have fun riding and look good doing it. Awesome product!
5 of 5 stars Thanks UberScoot!
This is the best electric scooter I've found for the price. It's faster than 20mph and climbs my steep driveway easy. It's solid to the ground and handles great. So, I guess it's safe to say that I'm really loving it.
This is the third electric scooter I've picked up from Urban Scooters. I got it on a recommendation from Frank in their main office. Wow! Absolutely, wow! This thing really takes off fast. It's everything he said it was. It's solid and worth the price. These guys give good advice. They're very helpful good guys.


text:
package com.belvin.privtext.crypto;

public interface SMSIO {
	/** The port used for PDUs */
	//static short APP_PORT = (short) 50001;  // 16000-16999 are valid application ports

	/**
	 * @param thePhoneNo
	 * @param theUserData  The user portion of the PDU.
	 * This is not the raw PDU unfortunately since android does not
	 * support that functionality
	 */
	public abstract void sendPDU(String thePhoneNo, byte[] theUserData);

	public abstract void sendText(String thePhoneNo, String theMessage);

        public abstract int getAppPort();

}

redpajama_set_name: RedPajamaGithub


text:
The GCC Experience
Teaching Resource Portal
Greenwood Cultural Center Resources
BWS & 1921 TRM Documents & Resources
B.C. Franklin Lesson Plan and Document
BWS & 1921 TRM Oral History
Teaching About Race
GCC Exhibits
Pictorial Gallery
Mabel B. Little Heritage House
Survivors Remembered
Tulsa's Black Wall Street
The GCC Store
THE INVASION OF BLACK WALL STREET
Any hope that daybreak would bring an end to the violence was soon laid to rest. During the final pre-dawn hours of June 1st, thousands of armed whites had gathered along the fringes of downtown. They were divided into three main groups. One crowd assembled behind the Frisco freight depot, while another waited nearby at the Frisco and Santa Fe passenger station. A third crowd had assembled at the Katy passenger depot. All told, the white rioters may have numbered as many as 10,000.
Smaller bands of whites had also been active. One such group hauled a machine gun to the top floor of the Middle States Milling Company grain elevator off of First Street, setting up the gun to fire north along Greenwood Avenue. Shortly before daybreak, five white men in a green Franklin automobile approached the whites who were massed behind the Frisco freight depot. "What the hell are you waiting on?" one of the men hollered, "Let's go get 'em." But the crowd would not budge, and the men in the car set off alone toward Deep Greenwood. Their bodies, and the bullet-ridden Franklin, were later seen in the middle of Archer, near Frankfort.
Several eyewitnesses later recalled that when dawn came, at 5:08 a.m., an unusual whistle or siren was sounded, perhaps as a signal for the invasion to begin. In any event, the white mobs soon made their move. While the machine gun in the granary opened fire, the white rioters poured across the Frisco tracks. Up at the Katy depot, the stream of whites on foot was soon joined by dozens of others in cars, heading east on Brady and Cameron. While African Americans fought hard to protect the black commercial district, the sheer numerical advantage of the whites soon proved overwhelming. John Williams, an entrepreneur who resided in the family owned Williams Building at Greenwood and Archer, held off the white invaders with both a rifle and a shotgun before he fled north, along the Midland Valley tracks. Mary E. Jones Parrish, who later wrote the first book about the riot, also fled. Dodging bullets, she and her young daughter ran north up Greenwood Avenue toward the section line at Pine Street.
Soon, however, other perils appeared. As whites poured into the southern end of the African American district, as many as six airplanes, manned by whites, appeared overhead, firing on black refugees and, in some cases, dropping explosives. Gunfire also erupted along the western edge of The Black Wall Street. Particularly fierce fighting broke out along Standpipe Hill, where forty to fifty National Guard soldiers traded fire with African American riflemen, who had set up defensive lines off of Elgin and Elgin Place. On Sunset Hill, the white guardsmen opened fire on black neighborhoods to the east, using both their standard issue 30-caliber 1906 Springfield rifles, as well as the semi-automatic machine gun given to them by the Tulsa Police Department.
Next in the Pictorial Exhibit:
Early Greenwood Black Wall Street Pioneers The Destruction of Greenwood
Greenwood's Renaissance Newspaper Articles Potts' Photographs
THE DESTRUCTION OF GREENWOOD


"Accepting a loss is truly difficult, but is just another test of faith. Mike's gentle sole has ascended to heaven & will truly be missed..."
"We love you, Uncle Mikey. ❤"
"To All the Family, Our deepest sympathy. Our prayers are with each of you."
"RIP Mike. You were one of the good guys"
This An Amazing Life memorial website is designed to be a permanent tribute paying tribute to the life and memory of Michael A. Altman. It allows family and friends a place to re-visit, interact with each other, share and enhance this tribute for future generations. We are both pleased and proud to provide this An Amazing Life tribute to the families of our community.
Please check here to receive a one-time email, one week prior to the anniversary of the passing of Michael A. Altman. The email will only serve as a reminder should you choose to connect with the family at what will no doubt be a difficult time.


♥ Jolly Princess @ World Wide Web ♥: Hello WWW!
It has been almost a month I have not posted anything on my blog folks. I am okay, just busy at work. My three in the morning schedule is also a bit of a challenge.
Few weeks after my internet and optic television training I mentioned to my team captain I am getting only few internet and optic television calls. Internet covers broad range of issues. The two weeks training is not enough to be in the know of the intricacy of the job. Besides, I did not take computer course in my college years. Neither a computer subject was into my business course. I was under the old curriculum of the Philippine educational system when I was in college.
Thankful indeed, towards the end of July and the whole month of August I have been into internet and optic tv calls. I received few phone and satellite tv calls. It made me happy but into deep analysis on every call I get. I know it would take a while before I get familiarize with the internet issues. Optic tv is a bit easier than internet issues. As mentioned in my previous post, my internet training was beginning of June for two weeks. Optic tv training was beginning of July for a week.
It would take at least six months or so of taking internet calls before I could adjust fully. No quitting, learning is fun, folks!


EmilyNice KatiaBlue jasmin. Paloma6. sexynudegirl23. BettyBrenner.
KatrinDesireFTestPerf001JanelyaaaKamillaKYLE21 .MaxDominantHighheellover95DominatrixLadynikkagirl .KateHuntHappyAnn1BellyKissLJJessica .BNikitaSubHarrisonShannonBestokla00Cutielily .BNikitaSubLizzyLovellEvanRusellBoobsB0MBS .LucyFerraricalipsosexxxsexynudegirl23LizzyLovell .LunaticLoverMaxDominantangelsLanaangelsLana .CarinaRedsexynudegirl23BettyBrennercheungjoyce .AbieKerrKatrinDesirerheablueeChristineKey .LianeAdrianaClarkXAlexandruuuxxx00Cutielily .AlexandruuuxxxSecretberryAllysonLeeLiane .
ImCharlotteCarolinePriceLizzyLovellLynnRouge .chocolatebabbyMaristella26deexx69RoseWilld .BustyRae77Maristella26LucyFerrariPacifikaAchelois .Maristella26HarrisonShannonAllysonLeeAndrex9 .BoobsB0MBSSexCouplexHotAttractiveBlondeBellaBunting .DessertAliceBettyBrennerKatrinDesireKinkytallndark .LexcusshorsecocktsxnikkagirlLizzyLovell .AlexandruuuxxxlovelyhoneypeaLovelySophie2LynnRouge .FTestPerf001PolinaDoll00CutielilyCarolinePrice .PacifikaAcheloisPollyFairGabiHonestyrheabluee .BestoklahorsecocktsxHappyAnn1LovelySophie2 .


text:
Pharma – Medical
Briova
Knipper
Medventure
Autoneum
Shoe Sensation
Trey Street LLC
Salt River Business Park
Experience Matters More Than Ever
Bowman Valley
Bose Corp. deal is one reason industrial leasing activity is up
Bose Corp., the company well known for its sound systems, now has a home in the Louisville area.
The Framingham, Mass.-based company that designs speakers, radios, sound systems and other electronic devices, has leased 196,000 square feet at 800 Patrol Road in River Ridge Commerce Center in Southern Indiana, according to a quarterly industrial real estate report released Thursday by Louisville-based Commercial Kentucky Inc.
The Bose lease is an indicator of a busy year in the local industrial real estate market. The Commercial Kentucky report shows that industrial leasing activity is up 40 percent for 2015 over the previous year.
Total leasing activity for the second quarter exceeded 1.6 million square feet, bringing total industrial leasing activity in the Louisville market for the year to more than 2.7 million square feet.
How Bose is using the facility could not be determined by Louisville Business First as company officials have not responded to several email and phone call inquiries. Real estate sources familiar with the Bose deal told me they are not permitted to speak about the transaction.
Commercial Kentucky helped broker the deal to bring Bose to the region, but officials at the commercial real estate firm deferred all questions to Bose.
Lee Wilburn, who runs Louisville-based Crossdock Development, owns the building at 800 Patrol Road but has declined to name tenants.
But Wilburn told me in late June that the $28 million warehouse had two tenants taking up 516,000 square feet with 148,000 square feet left to lease.
Lakeland, Fla.-based Saddle Creek Corp., a company that specializes in warehousing, transportation, logistics and packaging services, is the other tenant at 800 Patrol Road.
The River Ridge business park in Jeffersonville had other leasing activity in the second quarter. It also picked up Michigan-based PTI Quality Containment Solutions LLC as a tenant. The company leased a little more than 115,000 square feet at 700 Patrol Road in River Ridge, the report said.
As Business First previously reported, PTI is opening an auto components painting facility that will employ about 100 people.
The report also noted that Derby Industries LLC was displaced after an April fire destroyed building 6 at General Electric Co.'s Appliance Park in Louisville.
Derby Industries now is subleasing 300,000 square feet in a Bullitt County warehouse once occupied by California-based textbook rental company Chegg Inc., the report said.
Chegg (NYSE: CHGG) announced it would close its Shepherdsville warehouse and move its operation out of Kentucky earlier this year.
Derby Industries has plans to lease another 150,000 square feet in that warehouse once Chegg fully vacates, according to the report.
The industrial vacancy rate in the Louisville market dropped by a mere .08 percentage point from the same period a year ago to 5.9 percent, the report said.
However, that vacancy rate is up slightly from the 5.6 percent vacancy rate recorded in the first quarter of 2015 as buildings have come online.
Necia Nast, research and marketing analyst for Commercial Kentucky, said 173,250 square feet of new speculative construction at 4310 Chefs Way and
154,394 square feet of new speculative construction at Kenwood Business Park came online during the second quarter.
"Overall negative absorption of 154,656 square feet for the quarter also contributed to the vacancy rate," Nast said in an e-mail to Business First.
The average annual rental rate per square foot was $3.61 at the end of the second quarter, according to the report. It was $3.59 during the same period a year ago.
Commercial Kentucky's industrial market report looks at Jefferson County industrial submarkets. Those submarkets include the central submarket that is composed of downtown Louisville and the Interstate 65 and Interstate 64 corridors; east, which includes the Jeffersontown and Middletown areas and Westport Road; south, which includes Bishop Lane and Fern Valley Road; and the west/southwest submarket, which includes Iroquois and the Riverport area. The report also captures industrial activity in Bullitt County, south of Louisville, and Clark and Floyd counties in Southern Indiana.
Source: bizjournals.com
© 2019 CrossDock Development | All Rights Reserved | Privacy | Terms


text:
package org.locationtech.geowave.core.store.query.aggregate;

import java.nio.ByteBuffer;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.locationtech.geowave.core.index.ByteArray;
import org.locationtech.geowave.core.index.VarintUtils;
import org.locationtech.geowave.core.index.persist.Persistable;
import org.locationtech.geowave.core.index.persist.PersistenceUtils;
import org.locationtech.geowave.core.store.api.Aggregation;
import org.locationtech.geowave.core.store.api.BinningStrategy;
import org.locationtech.geowave.core.store.api.DataTypeAdapter;
import com.google.common.collect.Maps;

/**
 * A Meta-Aggregation, to be used internally by an aggregation query. <p> This takes an
 * aggregation-supplier and a binning strategy. When new data is aggregated, it is binned, and if
 * that bin does not exist, a new one will be made, along with a new aggregation. <p> See
 * {@link org.locationtech.geowave.core.store.api.AggregationQueryBuilder#buildWithBinningStrategy(BinningStrategy, int)}
 * AggregationQueryBuilder#bin} for usage
 *
 * @param <P> The configuration parameters of the inner aggregation.
 * @param <R> The type of the result that is returned by the inner aggregation.
 * @param <T> The type of the data given to the aggregation.
 */
public class BinningAggregation<P extends Persistable, R, T> implements
    Aggregation<BinningAggregationOptions<P, T>, Map<ByteArray, R>, T> {

  /**
   * An Aggregation that doesn't get used for aggregation, but to forward various helper tasks with,
   * such as merging and persistence.
   */
  private Aggregation<P, R, T> helperAggregation;

  /**
   * The bins and their aggregations. This is not the final result, but will be used to compute it.
   */
  private Map<ByteArray, Aggregation<P, R, T>> result;

  /**
   * The options that are needed to produce a correct aggregation.
   */
  private BinningAggregationOptions<P, T> options;

  /**
   * Create an useless BinningAggregation that must be fully realized through
   */
  public BinningAggregation() {
    this(null, null, -1);
  }

  /**
   * Creates a BinningAggregation based upon a base aggregation and a strategy for binning.
   *
   * @param baseAggregation A supplier of the inner aggregation. This decides what is done to the
   *        data inside of the bin. Make sure that the given aggregation properly implements
   *        {@link Aggregation#fromBinary(byte[]) Aggregation#fromBinary}
   *        {@link Aggregation#toBinary() Aggregation#toBinary}.
   * @param binningStrategy How to bin the given data.
   * @param maxBins The maximum amount of bins that this aggregation should support. If a bin is
   *        computed after reaching the max, it will be silently dropped.
   */
  public BinningAggregation(
      final Aggregation<P, R, T> baseAggregation,
      final BinningStrategy binningStrategy,
      final int maxBins) {
    this.options =
        new BinningAggregationOptions<>(
            PersistenceUtils.toBinary(baseAggregation),
            baseAggregation == null ? null
                : PersistenceUtils.toBinary(baseAggregation.getParameters()),
            binningStrategy,
            maxBins);
    this.result = Maps.newHashMapWithExpectedSize(maxBins == -1 ? 1024 : maxBins);
  }

  @Override
  public Map<ByteArray, R> getResult() {
    return this.result.entrySet().stream().collect(
        Collectors.toMap(Map.Entry::getKey, e -> e.getValue().getResult()));
  }

  @Override
  public Map<ByteArray, R> merge(final Map<ByteArray, R> result1, final Map<ByteArray, R> result2) {
    final Aggregation<P, R, T> agg = this.getHelperAggregation();

    return Stream.of(result1, result2).flatMap(m -> m.entrySet().stream()).collect(
        Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, agg::merge));
  }

  @Override
  public void aggregate(final DataTypeAdapter<T> adapter, final T entry) {
    final ByteArray[] bins = this.options.binningStrategy.getBins(adapter, entry);
    for (final ByteArray bin : bins) {
      if (this.result.containsKey(bin)) {
        this.result.get(bin).aggregate(adapter, entry);
      } else if ((this.options.maxBins == -1) || (this.result.size() < this.options.maxBins)) {
        this.result.put(bin, this.instantiateBaseAggregation());
        this.result.get(bin).aggregate(adapter, entry);
      }
    }
  }

  /**
   * Clear all bins and all sub-aggregations. Future calls to aggregate will be unaffected by past
   * calls, after calling this.
   */
  @Override
  public void clearResult() {
    this.result.clear();
  }

  /**
   * @return A fresh instance of the base aggregation for use in this class.
   */
  private Aggregation<P, R, T> instantiateBaseAggregation() {
    final Aggregation<P, R, T> agg =
        (Aggregation<P, R, T>) PersistenceUtils.fromBinary(this.options.baseBytes);
    final P baseParams = (P) PersistenceUtils.fromBinary(this.options.baseParamBytes);
    agg.setParameters(baseParams);
    return agg;
  }

  @Override
  public BinningAggregationOptions<P, T> getParameters() {
    return this.options;
  }

  @Override
  public void setParameters(final BinningAggregationOptions<P, T> parameters) {
    this.options = parameters;
  }

  @Override
  public byte[] resultToBinary(final Map<ByteArray, R> result) {
    final Aggregation<P, R, T> agg = this.getHelperAggregation();
    final Map<ByteArray, byte[]> mapped =
        result.entrySet().stream().collect(
            Collectors.toMap(Map.Entry::getKey, e -> agg.resultToBinary(e.getValue())));
    final int totalDataSize =
        mapped.entrySet().stream().mapToInt(
            e -> (VarintUtils.unsignedIntByteLength(e.getKey().getBytes().length)
                + e.getKey().getBytes().length
                + VarintUtils.unsignedIntByteLength(e.getValue().length)
                + e.getValue().length)).reduce(0, Integer::sum);
    final ByteBuffer bb = ByteBuffer.allocate(totalDataSize);
    mapped.forEach((k, v) -> {
      VarintUtils.writeUnsignedInt(k.getBytes().length, bb);
      bb.put(k.getBytes());
      VarintUtils.writeUnsignedInt(v.length, bb);
      bb.put(v);
    });
    return bb.array();
  }

  @Override
  public Map<ByteArray, R> resultFromBinary(final byte[] binary) {
    final Aggregation<P, R, T> agg = this.getHelperAggregation();
    final ByteBuffer bb = ByteBuffer.wrap(binary);
    final Map<ByteArray, R> resultMap = new HashMap<>();
    while (bb.hasRemaining()) {
      final int keyLen = VarintUtils.readUnsignedInt(bb);
      final byte[] keyBytes = new byte[keyLen];
      bb.get(keyBytes);
      final ByteArray key = new ByteArray(keyBytes);

      final int valLen = VarintUtils.readUnsignedInt(bb);
      final byte[] valBytes = new byte[valLen];
      bb.get(valBytes);
      final R val = agg.resultFromBinary(valBytes);

      resultMap.put(key, val);
    }
    return resultMap;
  }

  private Aggregation<P, R, T> getHelperAggregation() {
    if (this.helperAggregation == null) {
      this.helperAggregation = this.instantiateBaseAggregation();
    }
    return this.helperAggregation;
  }
}


New tabs on the Tab bar are normally created/opened at the extreme right position. This option, when checked, forces new tabs to be created to the immediate right of the active tab. This position for the tab is used even if the tab is created by a non-active tab elsewhere on the Tab bar using the Context menu, for example.
When this option is enabled (ie. checked), tabs may be closed by double-clicking on the tab in the Tab bar. If disabled, the tab must be closed by an alternate method, such as the Tab bar's close button.
Explorer++ usually disallows closure of the last open tab, but with this option enabled, this can be done, and results in Explorer++ closing completely.
With this setting active, you cannot use the close button on the Tab bar; you must use double-click (subject to option), a key combination (Ctrl+W, Ctrl+F4), or a menu item.