Each week will have a different theme which will always be based in a special forest school site with a fire circle as a central focus for each session. Children will learn to become confident in the woodland setting, learn basic skills, explore their natural surroundings, including storytelling, singing and lots of woodland activities. It'll provide a great opportunity for you and your little ones to have fun in the natural environment and will aim to encourage an early interest in wildlife. Camp fire, warm drink and mud provided.
Meet at the Pump Barn behind the Visitor Centre, Seven Sisters Country Park, Exceat, nr Seaford, East Sussex, BN25 4AD.
Please state on booking if you are bringing a younger sibling aged two and under to enjoy the songs, stories and games freeof charge.
All children must be accompanied by an adult. Please wear outdoor clothing and walking boots/wellingtons. Log fire, warm drinks and mud provided.
Pay and display car park charges apply.


text:
Q: Flask app on Elasticbeanstalk - "Target WSGI script not found or unable to stat" I have built an application using Flask called "app.py". It runs locally when I use "flask run". However, when I upload it to AWS Elasticbeanstalk, the environment status changes to "Severe" and in the logs I get the error message "Target WSGI script not found or unable to stat".
I solved the issue, and have posted the solution below in case it is helpful to others.

A: The application runs locally because I previously ran the command "export FLASK_APP=app.py" to modify the environment variable. This informs Flask my application is called "app.py". However, on Elasticbeanstalk the default application name is "application.py". You can see this by going to the AWS Console > Elasticbeanstalk > Your environment > Configuration > Software > Modify > Container Options > WSGI Path.

There are therefore 2 solutions.

*

*Rename your application file from "app.py" to "application.py" to conform to the default WSGI Path on AWS Elasticbeanstal.

*Change the WSGI Path environment variable on AWS Elasticbeanstalk to "app.py" to match the name of your application file. This can be done in one of two ways. First, via the AWS Console > Elasticbeanstalk > Your environment > Configuration > Software > Modify > Container Options > Change the WSGI Path variable > Apply. And second, using the Elasticbeanstalk Command Line Interface (EB CLI) with the command "eb config" > Scroll down to the heading aws:elasticbeanstalk:container:python: > Modify WSGIPath > Save changes.
If you are still receiving this error, also check that your application file is in the root directory.

A: Milos answer works. I wanted to add that if your Flask app is created inside an __init__.py then you have to specify the packagename as well.
For example, the Flaskr application would have a WSGI Path of "flaskr/__init__.py"

redpajama_set_name: RedPajamaStackExchange


Copic's range of marker pens form the finest marker system available for all types of designers and artists. Ideal for everything from commercial illustration to manga art to crafting, rubber-stamping and scrapbooking. The Copic Ciao Marker is great value, while the Copic Sketch Marker is the professional's choice - refillable, replaceable tips and an enormous 358 colour range. Other tips are available for the larger Copic Original markers - larger markers for heavy use. Refill all Copic markers with Copic Various Ink marker refill bottles - available in all 358 colours.
Copic markers are made in Japan to exacting quality standards by the Too Corporation.


text:
youth of the 80s
Feel Free to Donate!
..: SciFi :..
Moon 44 (1990)
Action, SciFi, Thriller
In 2038, Earth's mineral resources are drained, there are space fights for the last deposits on other planets and satellites. This is the situation when one of the bigger mining corporations has lost many mineral moons except one and many of their fully automatic mining robots are disappearing on their…
Battletruck (1982)
Action, Adventure, SciFi
Post World War III futuristic tale of collapsed governments & bankrupt countries heralding a new lawless age. Director: Harley Cokeliss (as Harley Cokliss) Writers: Michael Abrams (story), Irving Austin (screenplay) Stars: Michael Beck, Annie McEnroe, James Wainwright
Abraxas, Guardian of the Universe (1990)
Action, SciFi
An alien "policeman" arrives on Earth to apprehend a renegade of his own race who impregnates a woman with a potentially destructive mutant embryo. Director: Damian Lee Writer: Damian Lee Stars: Jesse Ventura, Sven-Ole Thorsen, Damian Lee
TerrorVision (1986)
Comedy, Horror, SciFi
A civilization on a distant planet has found a way to solve its garbage problem: turning it into energy and beaming it into outer space. A flaw in this system is found when the signal is accidentally picked up on Earth by the Putterman Family's home satellite dish. While this…
Horror, SciFi
During a routine flight, two veteran space shuttle pilots discover an alien artifact and bring it back to earth. It soon turns out to be an extraterrestrial war robot, which is able to recycle any biological or technical material for its own deadly use. The two astronauts are sent to…
Chopping Mall (1986)
A group of teenagers that work at the mall all get together for a late night party in one of the stores. When the mall goes on lock down before they can get out, The robot security system activates after a malfunction and goes on a killing spree. One by…
Night of the Comet (1984)
Two sisters, high school seniors in the early 1980s, awaken one morning to blood red skies and the realization that the human race has been wiped out. This becomes apparent that anyone who was not surrounded by steel when Earth recently passed through the tail of a comet has been…
Robot Jox (1989)
50 years after a nuclear war, the two superpowers handle territorial disputes in a different way. Each fields a giant robot to fight one-on-one battles in official matches, each piloted by a man inside, known as robot jockeys or jox. The contest for possession of Alaska will be fought by…
During World War II, a brave, patriotic American Soldier undergoes experiments to become a new supersoldier, "Captain America." Racing to Germany to sabotage the rockets of Nazi baddie "Red Skull", Captain America winds up frozen until the 1990s. He reawakens to find that the Red Skull has changed identities and…
Venus Wars (1989)
Animation, SciFi
The new frontier of Venus has degenerated into a dystopia ravaged by the civil war between Ishtar and Aphrodia. Bubbly reporter Susan Sommers arrives in the capital of Aphrodia just before it's captured by Ishtar. She falls in with a bunch of teenagers who live for a sort of motorcycle…
WATCH NOW! Watchers (1988)
Youth of the 80's is a pop culture site devoted to music, movies, television and fashion/fads of the 1980s. You can rediscover or simply discover the 80's.
info@youthofthe80s.com

redpajama_set_name: RedPajamaCommonCrawl


Speed Unlimited, Incorporated values its customers and all technically feasible steps are taken to protect their privacy. We do not sell or rent personal information. In order to demonstrate our commitment to your privacy, we have prepared this statement disclosing the privacy practices for the entire site. Additional terms and conditions, if any, regarding the collection and use of your information may also be provided to you before you sign up for a particular service.
In general, when you visit our website and access information, you remain anonymous. Personal information from visitors to our website is collected on a voluntary basis only and an explanation is provided as to its use at the time it is requested. This collected personal information is used to respond to online queries, supply requested information on Speed Unlimited, Incorporated products and services, enable online sales, ship ordered products, establish approved links, and for internal market analysis. Speed Unlimited, Incorporated collects certain information from and about its users in three ways - directly from the user, from our server logs, and with cookies.
When you visit website, you disclose certain information about yourself, such as your Internet Protocol (IP) address, the time of your visit, and the referring location (e.g., the site or page that offered a link to our page). Speed Unlimited, Incorporated, like many other sites, records this basic information about visits to its site. This information helps us identify which areas of our site are of interest to our visitors. We review the IP addresses of our visitors for the purposes of system administration, to improve the content of our pages, and to verify web traffic to our site.
The privacy and protection of your personal information is vitally important to us. Speed Unlimited, Incorporated does not make personal information available to any third parties without your permission. Companies under the direct control of Speed Unlimited, Incorporated may share information with one another, but all such companies are equally committed to protecting your privacy. Speed Unlimited, Incorporated may disclose personal information when we believe in good faith that the law requires it or to protect the rights or property Speed Unlimited, Incorporated.
Unfortunately, no data transmission over the Internet can be guaranteed to be 100% secure. Accordingly, despite our efforts to protect your personal information, Speed Unlimited, Incorporated cannot ensure or warrant the security of any information you transmit to us, or to or from our online products or services. However, once we receive your transmission, we make our best effort to ensure its security on our systems.
We recommend that you do not divulge your user name and password to anyone. Speed Unlimited, Incorporated will never ask you for your password in an unsolicited phone call or in an unsolicited e-mail. In addition, if applicable, you should remember to sign out of your Speed Unlimited account or service at the end of each session. You may also wish to close your browser window when you have finished your work, especially if you share a computer with someone else, or are using a computer in a public place like a library or Internet cafe.
Speed Unlimited, Incorporated does not intend to collect personally identifiable information from children under age 13 without permission of the child's parent or legal guardian. Children under the age of 13 should submit personally identifiable information to Speed Unlimited, Incorporated only with the explicit permission of their parent or legal guardian. Where appropriate, Speed Unlimited, Incorporated will instruct children not to submit personal information. If your child has submitted personal information and you would like to request that such information be removed, you may do so by contacting the Marketing Manager at Speed Unlimited, Incorporated at 301-420-2727 and reasonable efforts will be used to comply with your request.
This website may contain links to other third party sites. We take steps to link only to sites that share our high standards and respect for privacy. However, we are not responsible for the privacy standards and practices of third parties. Speed Unlimited, Incorporated strives to keep online visitor information secure against unauthorized access and use.
Speed Unlimited, Incorporated is committed to providing you a quality experience. We are constantly reviewing your feedback to improve and enhance your shopping experience. You can tell us what you think by contacting our customer service department at 301-420-2727.


text:
Q: Old flags appear as "pending" All my flags that were raised before April 2011 are marked as "active", except spam/offensive flags which are marked helpful:

Checking some, they were obviously helpful (e.g. post deleted as result) so most likely the "helpful" bit was not recorded yet back then.
I don't think it should stay "pending" forever, better just remove it and put "status not recorded" or something like that.
Worth also to mention, this is causing a mis-calculation in the new flag history, as reported here: My flagged posts count is missing one

A: Now these really old flags have a new home: "Aged Away" -

It seems that any flag over two weeks old that is still pending ages away and is no longer reviewable. This answer was created on December 27, the last flag to age away was from December 3, only 24 days old:


text:
There's hardly anything worse for a company's morale, according to Bruna Martinuzzi than a leader who practices the "Do as I say, not as I do" philosophy.
For example, the manager who tells everyone to stay late and finish the project, but leaves promptly at 5:00 pm to golf. How can anyone trust a leader who talks about one thing, but does another? Leading by example, is the most potent form of leadership. This is why effective and inspirational leaders model the way for others to follow.
Great leaders push their people forward with excitement, inspiration, trust, and vision. To become one of the great leaders, it takes the strength of character and a firm commitment to do the right thing, at the right time, for the right reason. This means doing what you say when you say it and creating an environment of trust that allows everyone to produce their very best work.
For a copy of my Amazon Best Seller in Woman & Business and Women's Spirituality, The Inspirational Leader, Inspire Your Team To Believe In The Impossible, you can click on the link below.


text:
Dedication of new Coronet Bay War Memorial
Minister for Veterans' Affairs, Stuart Robert, together with local Federal Member for Flinders, Greg Hunt, today attended the dedication of the new Coronet Bay War Memorial and met with local veterans in Melbourne's south east. "It is always wonderful coming down to this corner of Victoria and I am extremely pleased to see the new…
Roads to Recovery funding improves safety at Somerville roundabout
Greg Hunt today officially opened the fully refurbished intersection at Bungower and Tyabb-Tooradin Road in Somerville. "I am delighted that the Federal Government has been able to invest $1.7 million in upgrading this intersection, making it safety for local motorists," Mr Hunt said. "Local roads such as Bungower Road provide key links from our homes,…
Like many young people her age, Bridget Allan's interest in archery was inspired by the popular book and film series The Hunger Games. After being captivated by the films she begged her mother to take her along to an archery day at Frankston Archery Club and has never looked back. Greg Hunt met 13-year-old Bridget…
French Island Community Association to play a vital role in developing a long-term strategy for ferry service
Following letters I wrote to Victorian Premier Daniel Andrews regarding the Stony Point railway line and the French Island ferry, I have received a positive response indicating the French Island Community Association will be heavily involved in the future of the French Island ferry. The Victorian Government has committed to consulting closely with the French…
Campaign continues for improved safety at dangerous Mount Martha intersection
As a community we are keeping up the pressure on the Victorian Government to improve safety at the notoriously dangerous intersection of Forest Drive and Nepean Highway in Mount Martha. I first wrote to VicRoads about this issue in August, 2013 and have been campaigning with the community on this issue ever since. The danger…
$39 million for local councils in the Flinders electorate
Local governments in Flinders are set to benefit from $39 million in funding under the Australian Government's Financial Assistance Grant Program in 2015-16. The Australian Government is providing $2.3 billion to local governments nationwide in 2015-16. This includes $1.1 billion in Financial Assistance Grants already paid to councils to ensure immediate access to untied funding…
Men's shed all sorted with new shipping container
On Friday Greg Hunt MP visited the Western Port Men's Shed to inspect the group's newest piece of equipment – a shipping container. When he visited the shed several months ago, Mr Hunt was made aware the group was in desperate need of a storage facility. With wood offcuts taking up valuable working space, Mr…
Funding available for local Men's Sheds
Boys love their toys and men are no different – Men's Sheds are always looking for new tools and equipment to add to their collections. Round 11 of the National Shed Development Program is now open until September 18 for grants of up to $8,000. These organisations play an important role in our community, keeping…
Dromana Drive-in to host premier screening of Planetary
I invite you to attend a special screening of the documentary movie Planetary at the Dromana Drive-in on September 18. This is a thought-provoking and aesthetically stunning visual exploration of our world and the Drive-in will host the only Australian screening. The documentary includes spectacular imagery from NASA Apollo missions with powerful footage of the…
Green Army graduates celebrate success on the Bass Coast and Phillip Island
Today, a group of young people involved in the Australian Government's Green Army program can be proud of their contributions to their community and the environment. I was delighted to join participants, project sponsors and service provider Conservation Volunteers Australia at the Koala Conservation Centre on Phillip Island, one of the many sites that have…


text:
All posts tagged "Apartment 11 Productions"
2019 YMA Awards of Excellence Winners Announced
This year's Youth Media Alliance awards gala unfolded before an enthusiastic audience on May 29 at...
YMA Awards of Excellence Nominees 2019
Canada's Youth Media Alliance (YMA) has announced the nominees for English-language Awards of Excellence for television...
Youth Media Alliance Adds New Board Members
Canada's Youth Media Alliance (YMA) announced the appointment of two new members to its Board of...
YMA English Awards of Excellence Nominees Revealed
Canada's Youth Media Alliance has revealed the TV series, digital and interactive productions in the running...


text:
Home Black News Black Woman rejected by her airline job goes & starts her own airline
Black NewsBusinessFEATURED
Black Woman rejected by her airline job goes & starts her own airline
When Sibongile Sambo, a 42-year old woman from South Africa, was told by South African Airways that she did not qualify for a flight attendant position because she did not meet their minimum height requirement, she decided to take matters into her own hands.
She became an entrepreneur, and started her very own airline called SRS Aviation, and until this day, her company is the only Black woman-owned and operated aviation company in Africa.
So, how did she do it?
Starting an airline is not an easy or cheap thing to do, but despite this, she was still able to get it off the ground.
First, she formed her company and gave it the name of SRS Aviation. Then, she bid and won a contract for cargo transport issued by the South African government and formed a partnership with MCC Aviation – a South African-based fixed & rotor wing charter operator. Finally, she sold her car and cashed out her mother's pension to help her obtain an Air Operating Certificate from the South African Civil Aviation Authority (CAA). It wasn't an easy process, but she was able to raise the needed capital and make it work!
Now, Sambo's company offers their clients professional and personalized flight options to destinations in Africa and around the world. Their services include VIP charters, tourist charters, cargo charters, game count & capture, and helicopter services. Her customers pay anywhere from $1,000 USD to $200,000 USD per flight.
Her vision
Sambo's vision is to be the number one choice in affordable air service solutions for individuals and businesses, locally and worldwide, by providing an unparalleled air service. She also aims to uphold the highest safety standards.
When it comes to giving back to her local community, she is also very passionate about helping young people by sharing her knowledge and expertise. During a recent interview with CNN, she commented, "I'm where I am today because somebody invested in me. It's my opportunity now to invest in other people."
For more details about SRS Aviation, visit www.srsaviation.co.za
Black Woman rejected by her airline job goes & starts her own airline was last modified: July 22nd, 2016 by Stephen Brown
Black BusinessBlack Business LeadersBlack EntrepreneursWomen of color in business
STEM STARS E-Learning: Coding The Future!
Bill O'Reilly Slaves That Built The White House 'Were Well Fed and Well Taken Care Of'
Cook Co. Sheriff says half of inmates...
Teen Gets Accepted Into All 8 Ivy...
11 Yr Old College Student Carson Huey...
10 Black Child Geniuses You Need To...
What We Know So Far About Dimitrios...
How Sarah Huckabee Sanders Violated Federal Law...
Comedian Byron Allen Buys the Weather Channel...
Racial Profiling?? Two White Police Officers Almost...
First Look At Will.I.Am's New SmartWatch It...
15 Mistakes Brothers Make When Texting Women
Independent Filmmakers Deal With The Real Issue...
Outstanding African American Pilots Leading Us In...
Waze App Lets Celebrities Do Your Turn-By-Turn...
This Pheonominal 4-year-old girl has read more...
Pennsylvania Court Rules Denying Jobs After Prison...
Opinion: Black Lives Need To Matter To...
How Steve Brown is preparing African American Youth to be tech leaders of tomorrow
What Do You Really Think About Migos Music?
Don Cheadle Producing Film About John G Hamilton, The First Black Millionaire
Comedian Byron Allen Buys the Weather Channel for $300 Million
Digital Afro Media In The News: Read The Feature About Us in Craigslist


At What Stage Is Your Hair Loss?
If you're experiencing male pattern baldness (Androgenic Alopecia), you're not alone. Pattern baldness is the most common form of hair loss for men, typically caused by some combination of genetics and hormonal factors.
Each hair on your body sits in a hair follicle. Male pattern baldness usually begins when certain hair follicles start shrinking over time, making hair finer, shorter and weaker. Eventually, those brittle follicles stop producing new hair altogether, resulting in hair thinning and pattern baldness.
Although male pattern baldness can usually be traced at the hairline, it can take many different forms on the head.
For instance, as your hairline gradually recedes with time, it may begin forming an "M" shape on your head starting at your widow's peak. As additional follicles begin to weaken and more hair fall out, that "M" shape may eventually transform into an inverted "U" shape on both sides of your head, leaving little hair on top of your head and some on the sides.
Alternately, other men may experience balding only on top of their head, while still maintaining a healthy overall hairline. In any case of pattern baldness, the underlying causes are often the same.
How Do You Know If You Have Male Pattern Baldness?
For the most part, male pattern baldness can be determined by examining the appearance and pattern of hair loss using the Norwood Scale.
In cases where the usual patterns do not exist or are not easily identifiable, undergoing a skin biopsy or other diagnostic procedure may be needed to understand the root cause of your hair loss, and to know if male pattern baldness is the culprit.
How Can Male Pattern Baldness Be Treated?
Luckily, today there are enough options for patients to choose from to help manage their hair loss, and avoid the emotional trauma, psychological stress, and loss of self-esteem that often comes with it. And, of course, if you are perfectly comfortable with the gradual changes in your appearance as your hair loss progresses, you can embrace your state of baldness!
There are a multitude of treatment options available today aimed at treating male pattern baldness, but it's important to understand what these treatments promise and how they work.
There are two main types of hair loss solutions. One works by slowing down the progression of hair loss and the other helps regrow hair. Unfortunately there is no cure for hereditary hair loss. The only permanent way to get your hair restored remains to be surgical hair restoration (hair transplantation).
Topical solutions: Topicals can be applied directly to your scalp to revitalize hair follicles that are shrunken due to male pattern hair loss and regrow hair. Depending on the condition and severity of hair loss, some people are able to regrow new hair, but continued use of the topical solution is necessary to maintain sustained results over time. The most common solution is Minoxodil, which is the main active ingredient in Rogaine®.
Oral medications: Certain prescription pills can help curb the production of the male hormone (Dihydrotestosterone or DHT) responsible for pattern baldness. Much like the topical solutions, continued use is necessary to maintain any results yielded from the medication Today, Propecia is the most common drug used to treat male pattern baldness.
Hair replacement: Many cosmetic solutions— like hair systems, wigs, toupees, and weaves— do not involve a surgical procedure. These solutions typically require some maintenance, and often come down to factors including one's lifestyle, willingness to continue ongoing replacement maintenance and costs. The main benefit of cosmetic hair replacement is the full-head-of-hair results one can get immediately post application.
Hair transplantation surgery: As performed by Bosley, this procedure involves taking hair follicles from one part of your head where there is healthy growing hair, and transferring them to the areas affected by baldness where hair is needed.
Typically, the area where the hair is transferred from can be found on the back of your head. That's because the hair found in these areas of your scalp are known to be resistant to the hormone Dihydrotestosterone (or DHT) ─ the main culprit in male pattern baldness. The logicbehind hair transplant surgery is that these DHT-resistant hairs, when transferred to balding or thinning areas, will continue to thrive and grow naturally as they would have in the donor area. And that's why hair transplant surgery is often viewed as a permanent solution to hair loss.
Good hair transplantations are virtually undetectable. Bosley is known for permanent and natural-looking results, having perfected the art and science of hair restoration for more than 40 years.
To help determine which treatment option is best for your male pattern hair loss, you may want to take the first step by consulting with your physician or contacting Bosley to explore the various treatments options available to you, including permanent hair restoration. Schedule your free Bosley consultation now to learn which hair loss treatment options are best for you.


Fat Losing Techs: Do They Work?
There are literally thousands of technological devices out there in the market today that promise to help you shed the pounds without having to restrict your diet, exercising or even breaking a sweat. Basically, they promise you everything without costing anything. To test this out, a study was undertaken where standard weight loss techniques were compared with advanced weight … [Read more...] about Fat Losing Techs: Do They Work?
How Often to Go to the Gym for Better Results?
The general question among trainers and athletes is how many times a week they should train according to the strength training protocol design? This is particularly important when one wants to put on muscle mass and increase their strength. A scientific study over a course of twelve weeks was undertaken to assess this belief. The test compared subjects during their resistance … [Read more...] about How Often to Go to the Gym for Better Results?


Samantha and Denise welcome Bryn Blankinship for an exciting conversation about hypnotherapy and past life regressions!
Bryn Blankinship, CMHt, CI is the founder of Hypnotic Solutions Hypnosis Center. She is a CertifIed Master Hypnotherapist, Int'l Certified Hypnosis Instructor and author. Bryn developed and teaches HypnoSkillets© and Past Life H ypnoRegression© certification courses and offers private sessions in both clinical and transpersonal hypnosis, past hypnoregression© and Life Between Lives Spiritual Regression. Bryn has served as an IACT-approved Hypnosis Instructor with the International Association of Counselors and Therapists (IACT) since 2009. Her courses are also approved by The Michael Newton Institute's Alliance Training Program offering a fast-track for students wishing to take Life Between Lives Spiritual Regression to further their training.


text:
#import "FBSnapshotTestController.h"

#import <objc/runtime.h>

#import <UIKit/UIKit.h>

#import "UIImage+Compare.h"
#import "UIImage+Diff.h"

NSString *const FBSnapshotTestControllerErrorDomain = @"FBSnapshotTestControllerErrorDomain";

NSString *const FBReferenceImageFilePathKey = @"FBReferenceImageFilePathKey";

typedef struct RGBAPixel {
  char r;
  char g;
  char b;
  char a;
} RGBAPixel;

@interface FBSnapshotTestController ()

@property (readonly, nonatomic, copy) NSString *testName;

@end

@implementation FBSnapshotTestController
{
  NSFileManager *_fileManager;
}

#pragma mark - Lifecycle

- (instancetype)initWithTestClass:(Class)testClass;
{
    return [self initWithTestName:NSStringFromClass(testClass)];
}

- (instancetype)initWithTestName:(NSString *)testName
{
    if ((self = [super init])) {
        _testName = [testName copy];
        _fileManager = [NSFileManager new];
    }
    return self;
}

#pragma mark - Properties

- (NSString *)description
{
  return [NSString stringWithFormat:@"%@ %@", [super description], _referenceImagesDirectory];
}

#pragma mark - Public API

- (UIImage *)referenceImageForSelector:(SEL)selector
                            identifier:(NSString *)identifier
                                 error:(NSError **)errorPtr
{
  NSString *filePath = [self _referenceFilePathForSelector:selector identifier:identifier];
  UIImage *image = [UIImage imageWithContentsOfFile:filePath];
  if (nil == image && NULL != errorPtr) {
    BOOL exists = [_fileManager fileExistsAtPath:filePath];
    if (!exists) {
      *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
                                      code:FBSnapshotTestControllerErrorCodeNeedsRecord
                                  userInfo:@{
               FBReferenceImageFilePathKey: filePath,
                 NSLocalizedDescriptionKey: @"Unable to load reference image.",
          NSLocalizedFailureReasonErrorKey: @"Reference image not found. You need to run the test in record mode",
                   }];
    } else {
      *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
                                      code:FBSnapshotTestControllerErrorCodeUnknown
                                  userInfo:nil];
    }
  }
  return image;
}

- (BOOL)saveReferenceImage:(UIImage *)image
                  selector:(SEL)selector
                identifier:(NSString *)identifier
                     error:(NSError **)errorPtr
{
  BOOL didWrite = NO;
  if (nil != image) {
    NSString *filePath = [self _referenceFilePathForSelector:selector identifier:identifier];
    NSData *pngData = UIImagePNGRepresentation(image);
    if (nil != pngData) {
      NSError *creationError = nil;
      BOOL didCreateDir = [_fileManager createDirectoryAtPath:[filePath stringByDeletingLastPathComponent]
                                  withIntermediateDirectories:YES
                                                   attributes:nil
                                                        error:&creationError];
      if (!didCreateDir) {
        if (NULL != errorPtr) {
          *errorPtr = creationError;
        }
        return NO;
      }
      didWrite = [pngData writeToFile:filePath options:NSDataWritingAtomic error:errorPtr];
      if (didWrite) {
        NSLog(@"Reference image save at: %@", filePath);
      }
    } else {
      if (nil != errorPtr) {
        *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
                                        code:FBSnapshotTestControllerErrorCodePNGCreationFailed
                                    userInfo:@{
                 FBReferenceImageFilePathKey: filePath,
                     }];
      }
    }
  }
  return didWrite;
}

- (BOOL)saveFailedReferenceImage:(UIImage *)referenceImage
                       testImage:(UIImage *)testImage
                        selector:(SEL)selector
                      identifier:(NSString *)identifier
                           error:(NSError **)errorPtr
{
  NSData *referencePNGData = UIImagePNGRepresentation(referenceImage);
  NSData *testPNGData = UIImagePNGRepresentation(testImage);

  NSString *referencePath = [self _failedFilePathForSelector:selector
                                                  identifier:identifier
                                                fileNameType:FBTestSnapshotFileNameTypeFailedReference];

  NSError *creationError = nil;
  BOOL didCreateDir = [_fileManager createDirectoryAtPath:[referencePath stringByDeletingLastPathComponent]
                              withIntermediateDirectories:YES
                                               attributes:nil
                                                    error:&creationError];
  if (!didCreateDir) {
    if (NULL != errorPtr) {
      *errorPtr = creationError;
    }
    return NO;
  }

  if (![referencePNGData writeToFile:referencePath options:NSDataWritingAtomic error:errorPtr]) {
    return NO;
  }

  NSString *testPath = [self _failedFilePathForSelector:selector
                                             identifier:identifier
                                           fileNameType:FBTestSnapshotFileNameTypeFailedTest];

  if (![testPNGData writeToFile:testPath options:NSDataWritingAtomic error:errorPtr]) {
    return NO;
  }

  NSString *diffPath = [self _failedFilePathForSelector:selector
                                               identifier:identifier
                                             fileNameType:FBTestSnapshotFileNameTypeFailedTestDiff];

  UIImage *diffImage = [referenceImage diffWithImage:testImage];
  NSData *diffImageData = UIImagePNGRepresentation(diffImage);

  if (![diffImageData writeToFile:diffPath options:NSDataWritingAtomic error:errorPtr]) {
    return NO;
  }

  NSLog(@"If you have Kaleidoscope installed you can run this command to see an image diff:\n"
        @"ksdiff \"%@\" \"%@\"", referencePath, testPath);

  return YES;
}

- (BOOL)compareReferenceImage:(UIImage *)referenceImage toImage:(UIImage *)image error:(NSError **)errorPtr
{
  if (CGSizeEqualToSize(referenceImage.size, image.size)) {

    BOOL imagesEqual = [referenceImage compareWithImage:image];
    if (NULL != errorPtr) {
      *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
                                      code:FBSnapshotTestControllerErrorCodeImagesDifferent
                                  userInfo:@{
                 NSLocalizedDescriptionKey: @"Images different",
                   }];
    }
    return imagesEqual;
  }
  if (NULL != errorPtr) {
    *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
                                    code:FBSnapshotTestControllerErrorCodeImagesDifferentSizes
                                userInfo:@{
               NSLocalizedDescriptionKey: @"Images different sizes",
        NSLocalizedFailureReasonErrorKey: [NSString stringWithFormat:@"referenceImage:%@, image:%@",
                                           NSStringFromCGSize(referenceImage.size),
                                           NSStringFromCGSize(image.size)],
                 }];
  }
  return NO;
}

#pragma mark - Private API

typedef NS_ENUM(NSUInteger, FBTestSnapshotFileNameType) {
  FBTestSnapshotFileNameTypeReference,
  FBTestSnapshotFileNameTypeFailedReference,
  FBTestSnapshotFileNameTypeFailedTest,
  FBTestSnapshotFileNameTypeFailedTestDiff,
};

- (NSString *)_fileNameForSelector:(SEL)selector
                        identifier:(NSString *)identifier
                      fileNameType:(FBTestSnapshotFileNameType)fileNameType
{
  NSString *fileName = nil;
  switch (fileNameType) {
    case FBTestSnapshotFileNameTypeFailedReference:
      fileName = @"reference_";
      break;
    case FBTestSnapshotFileNameTypeFailedTest:
      fileName = @"failed_";
      break;
    case FBTestSnapshotFileNameTypeFailedTestDiff:
      fileName = @"diff_";
      break;
    default:
      fileName = @"";
      break;
  }
  fileName = [fileName stringByAppendingString:NSStringFromSelector(selector)];
  if (0 < identifier.length) {
    fileName = [fileName stringByAppendingFormat:@"_%@", identifier];
  }
  if ([[UIScreen mainScreen] scale] > 1.0) {
    fileName = [fileName stringByAppendingFormat:@"@%.fx", [[UIScreen mainScreen] scale]];
  }
#if TARGET_OS_TV
  fileName = [fileName stringByAppendingString:@"_tvOS"];
#endif
  fileName = [fileName stringByAppendingPathExtension:@"png"];
  return fileName;
}

- (NSString *)_referenceFilePathForSelector:(SEL)selector identifier:(NSString *)identifier
{
  NSString *fileName = [self _fileNameForSelector:selector
                                       identifier:identifier
                                     fileNameType:FBTestSnapshotFileNameTypeReference];
  NSString *filePath = [_referenceImagesDirectory stringByAppendingPathComponent:_testName];
  filePath = [filePath stringByAppendingPathComponent:fileName];
  return filePath;
}

- (NSString *)_failedFilePathForSelector:(SEL)selector
                              identifier:(NSString *)identifier
                            fileNameType:(FBTestSnapshotFileNameType)fileNameType
{
  NSString *fileName = [self _fileNameForSelector:selector
                                       identifier:identifier
                                     fileNameType:fileNameType];
  NSString *folderPath = NSTemporaryDirectory();
  if (getenv("IMAGE_DIFF_DIR")) {
    folderPath = @(getenv("IMAGE_DIFF_DIR"));
  }
  NSString *filePath = [folderPath stringByAppendingPathComponent:_testName];
  filePath = [filePath stringByAppendingPathComponent:fileName];
  return filePath;
}

- (BOOL)compareSnapshotOfView:(id)view
                     selector:(SEL)selector
                   identifier:(NSString *)identifier
                        error:(NSError **)errorPtr
{
  if (self.recordMode) {
    return [self _recordSnapshotOfView:view selector:selector identifier:identifier error:errorPtr];
  } else {
    return [self _performPixelComparisonWithView:view selector:selector identifier:identifier error:errorPtr];
  }
}

#pragma mark - Private API

- (BOOL)_performPixelComparisonWithView:(UIView *)view
                               selector:(SEL)selector
                             identifier:(NSString *)identifier
                                  error:(NSError **)errorPtr
{
  UIImage *referenceImage = [self referenceImageForSelector:selector identifier:identifier error:errorPtr];
  if (nil != referenceImage) {
    UIImage *snapshot = [self _snapshotView:view];
    BOOL imagesSame = [self compareReferenceImage:referenceImage toImage:snapshot error:errorPtr];
    if (!imagesSame) {
      [self saveFailedReferenceImage:referenceImage
                           testImage:snapshot
                            selector:selector
                          identifier:identifier
                               error:errorPtr];
    }
    return imagesSame;
  }
  return NO;
}

- (BOOL)_recordSnapshotOfView:(UIView *)view
                     selector:(SEL)selector
                   identifier:(NSString *)identifier
                        error:(NSError **)errorPtr
{
  UIImage *snapshot = [self _snapshotView:view];
  return [self saveReferenceImage:snapshot selector:selector identifier:identifier error:errorPtr];
}

- (UIImage *)_snapshotView:(UIView *)view
{
  [view layoutIfNeeded];

  CGRect bounds = view.bounds;

  NSAssert1(CGRectGetWidth(bounds), @"Zero width for view %@", view);
  NSAssert1(CGRectGetHeight(bounds), @"Zero height for view %@", view);

  UIGraphicsBeginImageContextWithOptions(bounds.size, NO, 0);
  CGContextRef context = UIGraphicsGetCurrentContext();
  NSAssert1(context, @"Could not generate context for view %@", view);

  UIGraphicsPushContext(context);
  CGContextSaveGState(context);
  {
    BOOL success = [view drawViewHierarchyInRect:bounds afterScreenUpdates:YES];
    NSAssert1(success, @"Could not create snapshot for view %@", view);
  }
  CGContextRestoreGState(context);
  UIGraphicsPopContext();

  UIImage *snapshot = UIGraphicsGetImageFromCurrentImageContext();
  UIGraphicsEndImageContext();

  return snapshot;
}

@end

redpajama_set_name: RedPajamaGithub


I stare at myself in the mirror, then with a deep breath, I get to work.
Covering the major stuff first. The fresh cuts, which have only just sprouted scabs, the bruises and breaks, then the old scars and the dark circles uder my eyes.
I paint my face until I look normal, untouched and when I smile, yes, I look happy. That is what happiness looks like, isn't it?
I can't really remember anymore.
Alright so I knew I was going to regret it the minute I thought it up and usually I can stop myself from doing this kind of stupid stuff, but this time… I guess I was just too messed up to stop myself and now I can't change what I did. So I guess I'm living with it.
Usually when I do stupid stuff I don't do it… publicly, so I don't feel as much regret about this. But this was… well sort of publicly, no one has found out yet, but I'll be living on pins and needles, waiting for someone to find out and say something. THe only thing that's keeping me from doing something else stupid, is the thought that I'm far far away from everyone I know right now and they have no way of getting to me. I know that sounds kind of odd and it's part of the reason why I was so messed up yesterday. I mean I went from a down to and up without even really realising it, because there was no… transitional phrase this time or anything like that.
I had been doing silly things all day and I guess it was the climax.
It's a horrible overcast day outside and it's matching how I'm feeling, groggy.


Spaces Available limited FREE 16 HOURS council funding available for 3+ years old. Spaces available for 2 years old. No waiting list. Deliver loads of fun learning opportunities. Stay and play sessions available.
HOST FAMILIES needed for FRENCH STUDENTS in WHITSTABLE 11th -24th July 2019 Students out all day GOOD RATES OF PAY Students are at school & on activities all day. Even if you work, you can earn extra cash! It's fun!!!
Home care assistant offered for elderly, helping with personal care, light cleaning cooking, also company. If you enjoy crafts or model making I will assist with this. Friendly and caring, many years experience. Crb on request.
Live in Au Pair Required In Hampstead London NW3 close to Underground. Own Room. To Live with 85 Years Old Woman. Light Duties. Immediate Availability.
Newton House is a new childcare nursery on 111 Dysart Road in Grantham we offering a free session of Stay and Play.
See flyer for details.We really look forward to seeing you there!
Ironing 4 U. Pressed & Simply the Best! Hate Ironing? Let me do it for you! Door to Door Service!
£10 in Bitcoin for FREE? Interested please email me today and I will contact you to take you through how to claim you're free bitcoin. No catch, just need 20 minutes of your time online! Make sure you have a smart phone and laptop/computer available.
Canon Eos camera found near Clifton Hampden on river Thames pathway near Clifton lock bridge, Oxfordshire, Didcot/ Abongdon area. Call or text: 0754-954 7663.
Mobile Disco, DJ, Sound and Light services for hire. Amazingly low, reasonable rates.
Combe Village Garage Sale - over 15 garages open!
Drama Impact presents 'William Shakespeare's' much loved brilliant comedy 'Much Ado About Nothing'.
'William Shakespeare's' much loved brilliant comedy 'Much Ado About Nothing'.


text:
Q: Penalty function for nonlinear inequality constraints in Mystic are evaluated outside of bounds I would like to use mystic solver to solve the following nonlinear optimisation problem with nonlinear constraints. Here the code:
import numpy as np
import matplotlib.pyplot as plt
from math import sqrt
from mystic.solvers import diffev2, fmin, fmin_powell
from mystic.monitors import VerboseMonitor
from mystic.penalty import quadratic_inequality, quadratic_equality

def pos_scale(c, q):
    return 1.0 / (1 + c*sqrt(q))

def omega_scaled(w, c, q):
    return min(w, pos_scale(c, q))

def constraints(q1, q2, w1, w2, c1, c2, fx1, fx2):
    #print('{} {}'.format(q1, q2))
    v1 = omega_scaled(w1, c1, q1)*q1*fx1
    v2 = omega_scaled(w2, c2, q2)*q2*fx2
    return v1 + v2

constraints_f = lambda q1, q2: constraints(q1, q2, 0.95, 0.92, 0.06, 0.05, 10000, 1000)
constraints_v = np.vectorize(constraints_f)

def cost(q1, q2, w1, w2, c1, c2, fx1, fx2):
    v1 = (1-omega_scaled(w1, c1, q1))*q1*fx1
    v2 = (1-omega_scaled(w2, c2, q2))*q2*fx2
    return v1 + v2

cost_f = lambda q1, q2: cost(q1, q2, 0.95, 0.92, 0.06, 0.04, 10000, 1000)
cost_v = np.vectorize(cost_f)

objective = lambda x: cost_v(x[0], x[1]).item()

def penalty_value(x, target):
    return target - constraints_f(x[0], x[1])

@quadratic_inequality(penalty_value, kwds={'target': 200000.0})
def penalty(x):
  return 0.0

I model the constraints with a quadratic penalty. The constraints require the domain to be the positive orthant.
mon = VerboseMonitor(10)
bounds=[(0, 50), (0, 300)]
result = fmin(objective, x0=[15, 150], bounds=bounds, penalty=penalty,
              npop=10, gtol=200, disp=False, full_output=True, itermon=mon, maxiter=500)

result

Generation 0 has ChiSquare: 77606.160271
Generation 10 has ChiSquare: 62080.449073
Generation 20 has ChiSquare: 55726.285526
Generation 30 has ChiSquare: 55505.829370
Generation 40 has ChiSquare: 55478.612377
Generation 50 has ChiSquare: 55475.462051
Generation 60 has ChiSquare: 55474.597220
Generation 70 has ChiSquare: 55474.532390
Generation 80 has ChiSquare: 55474.530891
Generation 90 has ChiSquare: 55474.530773
STOP("CandidateRelativeTolerance with {'xtol': 0.0001, 'ftol': 0.0001}")
(array([21.50326424, 42.0783277 ]), 55474.53077292251, 98, 177, 0)

The solver finds the optimal solution if I use a reasonable starting value. However, another starting value (or another solver like the Powell solver) triggers in the step search a call to the constraints function outside of the valid domain.
How can I best force the constraints function in the penalty to be restricted to the bounds that I provide to the solver? Should that not be checked by the solver itself? Or do I need to take care of that myself also in the constraints function?
To visualize the solution:
fig = plt.figure(figsize=(12,6))
left, bottom, width, height = 0.1, 0.1, 0.8, 0.8
ax = fig.add_axes([left, bottom, width, height])

q1 = np.linspace(0.1, 50, 100)
q2 = np.linspace(1, 300, 100)
X, Y = np.meshgrid(q1, q2)

Z = constraints_v(X, Y)
cp1 = plt.contour(X, Y, Z, 20, colors='black', linestyles='dashed')
cp2 = plt.contour(X, Y, Z, [200000], colors='white', linestyles='solid')
plt.clabel(cp2, inline=True, fontsize=12)

Z = cost_v(X, Y)
cp3 = plt.contourf(X, Y, Z, 25)
plt.colorbar(cp3)

sol = list(result[0])
plt.plot(sol[0], sol[1], 'go--', linewidth=2, markersize=14)

A: I'm the mystic author.  Penalty functions are essentially soft constraints, so they can be violated. When they are, they will add a penalty to the cost.  If you want to restrict the input values explicitly, then you want a hard constraint... given with the constraints keyword.  So, add the following to ensure that the candidate solutions are always chosen from the positive orthant (i.e. from within your chosen bounds).
...[snip]...

import mystic.symbolic as ms
from mystic.constraints import and_
bounds = '''
x0 >= 0
x0 <= 50
x1 >= 0
x1 <= 300
'''
eqn = ms.simplify(bounds, all=True)
cons = ms.generate_constraint(ms.generate_solvers(eqn), join=and_)

mon = VerboseMonitor(10)
bounds=[(0, 50), (0, 300)]
result = fmin_powell(objective, x0=[15, 150], bounds=bounds, penalty=penalty,
                     npop=10, gtol=200, disp=False, full_output=True,
                     constraints=cons, itermon=mon, maxiter=500)

I have a feature request open to do this automatically, or at least with a toggle/flag -- but currently, you need to manually add the bounds to the hard constraints.


This multi-purpose case has a pocket large enough to hold 100 size cigarettes, or small camera, or small cell phone. Velcro closure on flap. Outside 1 small pocket. Loop on back to hang on belt.
Campaign bar symbol shown not available, only those listed.


I hope you enjoy these videos. Steve gives some valuable insight to the "behind the scenes" of making some really wonderful images. Both are featuring the FourSquare 30″ softbox as well as the new Grid that just went up for sale in the LightwareDirect store.


text:
Registration & Permits
Illinois Nature Preserves
Danada Equestrian Center
Fullersburg Woods Nature Education Center
Kline Creek Farm
Mayslake Peabody Estate
St. James Farm
Willowbrook Wildlife Center
Find a Camp for Kids or Teens
DuPage Forest Preserves @Home
Discover School Programs & Teacher Resources
Bring Your Scouts
Request a Group Adventure
Have It at Herrick
Pay Citation Fine
Plants & Wildlife
Restoring Habitats & Conserving Wildlife
Native Wildlife Rescue Advice
Be Our Friend & Donate
Be Our Community Partner
Friends Board
Friends of the Forest Preserve District Board
The Friends of the Forest Preserve District of DuPage County is our fundraising foundation and accepts financial donations on behalf of all forest preserve facilities, restoration projects, wildlife support, and educational programs and events.
Board Chair Diane Addante
Diane Addante has served in numerous officer positions with the Lombard Junior Women's Club and the General Federation of Women's Club for more than 27 years, and is still involved with both organizations. She is currently Illinois conservation chairman of the General Federation of Women's Clubs. She has more than 37 years of experience in accounting, community work and volunteering.
fundraising@dupageforest.org
Board Vice Chair Larry C. Larson
Larry C. Larson retired from College of DuPage as a supervisor in library computer resources and printing services and an adjunct instructor in graphic arts technology and desktop publishing. Larson served on the college's Classified Personnel Association as a board member and Annuitants Association as a communications committee chair. He volunteered with WFMT 98.7 FM, assisting with membership drives and participating in a matching challenge. He has supported the Friends of the Forest Preserve District as a donor and volunteer since 2013.
Board Treasurer Brian Battle
Brian Battle, a director at the Performance Trust Companies, is recognized nationwide as a financial market expert who provides valuable insight on issues related to liability management, mortgage securities, the municipal market and taxable bonds and is a frequent on-air commentator. He joined Performance Trust in 2005 as a trader and underwriter. Prior to Performance Trust, he began his career at American National Bank and then spent a decade at Griffin, Kubik, Stephens & Thompson, Inc. His 30 years of experience in analyzing, underwriting and trading are beneficial to the Friends' fundraising and investment goals.
Board Member Penny Chanez
Penny Chanez is the executive assistant at the DuPage County Health Department and chairs the Department's Work Life Committee which focuses on employee wellness. She is an advocate for the environment and open spaces and the importance of nature for health and well-being. A former member of the Lombard Junior Women's Club and the General Federation of Women's Club, she held various leadership positions and has served her community as a volunteer and leader for over 20 years.
Board Member Karyn Charvat
Karyn Charvat is the executive director of PowerForward DuPage, an organization that represents over 400 electrical contractors throughout DuPage County. Charvat also serves on the boards of Choose DuPage, Chamber 630 and the Naperville Rotary After Dark Club, where she also serves as Sergeant-at-Arms and Membership Chair. She is also an active member of the board of directors for the General Federation of Women's Clubs, headquartered in Washington, D.C. She brings more than 27 years of experience in advertising, marketing and public relations to the Friends of the Forest Preserve District board.
Board Member Ashley Guest
Ashley Guest is a senior accountant at Calamos Investments. Her experience as a certified public accountant supports the Friends' finance committee with its financial planning, analysis and reporting. She has a bachelor of science degree in accounting and an MBA in accounting, both from North Central College. She enjoys running, hiking, biking and kayaking in DuPage forest preserves.
Board Member Carl Schultz
Carl Schultz has a degree in horticulture and a science-based background relating to plants, their cultivation and landscapes. Schultz is a former Forest Preserve District of DuPage County commissioner and an avid nature lover. He operates a horticultural consulting service.
Board Member Ray Vogt
Ray Vogt retired as senior vice president and assistant to the chief executive officer at Lincoln Electric Holdings, Inc. in 2004 with more than 39 years of human resources experience as an executive, administrator and manager. Vogt volunteers with the Danada Model Farm at the Danada Forest Preserve.
Ex-Officio Member Jeff Gahris
Commissioner Jeff Gahris of District 4 was elected to the Forest Preserve District board of commissioners in Nov. 2020. A 30-year resident of DuPage County, Gahris has been an active volunteer for numerous organizations, including the Sierra Club's river Prairie Group, the DuPage Clean Energy Coalition, Illinois Solar Energy Association, and Citizens Climate Lobby.
Chair Diane Addante
Vice Chair Larry Larson
Treasurer Brian Battle
Member Penny Chanez
Member Karyn Charvat
Member Ashley Guest
Member Carl Schultz
Member Ray Vogt
Friends of the Forest Preserve District
Friends' Annual Reports
3S580 Naperville Road
Email: forest@dupageforest.org
Email: police@dupageforest.org
Contact Our Board
Help keep our forest preserves beautiful and safe places. If you have a concern, let us know.
FOIA Center
The Forest Preserve District is committed to making its facilities accessible to all visitors. Contact 630-933-7683 or TTY 800-526-0857.
© 2021 FOREST PRESERVE DISTRICT OF DUPAGE COUNTY


I only started to enjoy eating asparagus recently. I should have discovered it earlier as it's one of the easiest vegetables to prepare and I like how crunchy it taste when it's freshly cooked. In fact, I like it so much so that I've been cooking a dish with this spring vegetable for my lunchbox almost every other day.
Asparagus is packed with 93 percent water content and chock-full of vitamins.  It has low sodium and high vitamins level, especially vitamin B6. Other than that, the plant also has zinc, magnesium, and calcium, making it an ideal vegetable to eat all year round.
Asparagus contains glutathione, a phytochemical with antioxidant and anticarcinogenic properties that help to protect the cells of the body from the harmful toxins. As a side effect, glutathione make the skin lighter as it protects the cells from free radicals responsible for skin pigmentation and blemishes.
Asparagus contains vitamins A and C, which are known to boost production of collagen fibers that help keep skin smooth and firm.  The glutathione found in asparagus also help to stop the action of some enzymes that naturally break down collagen.
Regular consumption of asparagus help regulate blood sugar as this vegetable is an excellent source of many different B vitamins, including B1, B2, B3, and B6. These B vitamins work together to metabolize glucose to regulate blood sugar, which prevent inflammation and glycation. For those who aren't aware, glycation is bad news for our skin as it causes the break down of collagen and elastin, as well as exacerbate skin conditions like acne and rosacea.
The high water content found in asparagus help to keep the skin hydrated, which in turn will reduce the sebum secretion on the face. As sebum secretion is lessened, acne and pimples are less likely to multiply. At the same time, asparagus is a good source of fiber that will aid in maintaining a healthy digestive system. Naturally, acne is less likely to thrive with a healthy digestive system.
With a high vitamin K content, asparagus acts as a natural diuretic that helps detoxify the body and remove excess water (your pee might smell a bit funky too). With frequent consumption, this spring vegetable can help to reduce puffiness in our face or body due to excessive water content.
Asparagus has low calories and contains about 11 percent fiber. This fiber content helps to suppress appetite, thereby making you feel filled for a long time—eventually reducing food intake, thereby decreasing the body weight. Because asparagus also help maintain stable blood sugar levels, that'll help you avoid crashes and binges that can lead to overeating.
Asparagus is often recommended as a nourishing food to restore hormonal balance in women. Regular consumption can help to regulate the menstrual cycle and ease PMS symptoms like mood swing and tension as well as combat symptoms of menopause. In fact, asparagus has been used traditionally to treat many reproductive conditions such as heavy bleeding, painful periods, absence of menstruation, infertility, low libido, fibroids and the various symptoms of menopause.
The vitamin A, C, antioxidants and calcium contents in the asparagus add more strength to the roots of hair. As a result, it prevents hair fall and promotes hair growth.
You are encouraged to eat the asparagus to gain these benefits but I am also aware that asparagus can be used in topical application. Apparently, some people apply asparagus directly to the skin as it's supposedly great for cleansing, drying sores and treating acne.
I've been purchasing organic asparagus but I understand that it's one of the cleanest vegetables around with lesser traces of pesticides. So it may be quite safe to purchase non-organic asparagus if cost is a concern. Also, look for those that are green with smooth and firm spears. Avoid wrinkled ones and those that have a yellowish look that aren't as fresh.
You should cook your asparagus soonest as storing them for a couple of days in the fridge can result in a wooden texture. But if you must store them, keeping them wrapped in a damp cloth will make them last longer in the fridge.
To prepare asparagus, all you need is to wash them. You can cook the entire spear or cut them up into small stalks. There are many ways to cook them—roast, grill or stir-fry your asparagus. You can even boil or steam them for around 5 minutes until they are tender.
Here's a simple dish I've been whipping up for my lunchbox with asparagus. Stir-fried asparagus with mushroom and carrot topped on 5-grain rice.
This is an easy recipe which does not take up a lot of time to prepare. Of course you can adapt it to include other ingredients of your choice. If you don't have chicken stock, you can also add some chicken stock powder. If the latter is used, there is no need for you to add any more salt.
Personally, I find asparagus taste better with some seasoning so I'm less incline to steam or boil them. Also, I like them a little crunchy so I may consider roasting them in future. Oh, I've come across some smoothie recipes that include asparagus but I'll give those a pass. Thank you very much.
Anyway, if you like asparagus, do let us know how you usually eat them.
Love asparagus 🙂 Usually will try roasting the asparagus, and add a couple of fresh cloves of garlic and a little freshly grated of lemon zest for that extra flavour.


Easy DIY Guide: How To Build A Slatted Fence. Step by step tutorial with photos, we could just use standard tanalised wooden slats instead.
Back in the spring I revealed our DIY Stone Patio and today I'm sharing another big project that we just completed, a DIY Garden Slat Wall. I love it! And it was actually really easy.
How to Build a Wood and Metal Patio Fence. Wooden posts are combined with metal railings to create a decorative fence for a raised patio.


text:
Careers Business Ownership
How to Build a Wind Power Farm
Piotr Jaczewski / Getty Images
Becoming an Owner
Operations & Success
Wendy Lyons Sunshine
Wendy Lyons Sunshine is a former writer for The Balance, where she wrote on the topic of energy policy, production, efficiency, and resources.
The wind is one of the Earth's most sustainable natural resources when it comes to generating electrical power. To harness it, all you need to do is construct a wind power turbine that converts the movement of the air into kinetic energy. To do that on a large scale, however, you'll need a wind farm—a collection of specially designed wind turbines positioned across the landscape or ocean, where the winds are steady and strong. Wind turbines have multiple blades, which are set high on towers, that spin in the breeze and harvest power.
Industry experts say the United States has enough wind resources to effectively double its current wind generation capacity, and that doing so comes with a slew of environmental benefits. In America alone, wind power prevents the release of about 62 million tons of greenhouse gases, and it conserves 20 billion gallons of water annually.
Potential obstacles to building wind farms include the public controversy over the placement of the wind turbines, permitting challenges, financial concerns, and technical issues, such as the need for infrastructure to transmit the power to the electrical grid that serves customers. However, if you wish to construct your own wind farm, it isn't too hard to do.
Getting Started: Planning Your Wind Farm
Building a wind farm is a big project that requires teams of specialists to handle the many aspects of the project—from conception and planning to implementation. Planning is especially crucial for this type of energy generator. The proper location must be assessed for any risks to wildlife, permits must be acquired, and the turbines themselves need to be tested.
First, make sure to choose a location that has enough wind resources. The best sites for commercial wind farms have wind speeds of 13 miles per hour (6 meters per second) or more, according to the American Wind Energy Association. While it may seem like the more wind the better, too much wind can strain equipment and make the project more expensive.
Special wind speed maps can help you identify a region with suitable wind resources. For example, the U.S. Department of Energy offers a handy wind map. You can also take wind energy measurements yourself, using a tool called an anemometer, at the site you're considering. Some states even offer anemometer loan programs. Your engineer may use specialized services and software to optimize the location, such as Windnavigator and GH WindFarmer, which analyze topography, weather conditions, and aerodynamics.
Furthermore, you'll need to consider special concerns of the target location, such as road access, potential noise impacts, flickering shadows from the blades, and cultural issues.
Assessing Wildlife Risks
The spinning blades on wind turbines can kill endangered birds, bats, raptors, and waterfowl, so it's best to position turbines away from busy wildlife corridors and annual migratory paths. The U.S. Fish and Wildlife Service's Wind Turbine Guidelines Advisory Committee recommends a tiered approach that includes a preliminary assessment, site characterization, and field studies to predict and assess the species and habitats harmed by the wind farm.
As the site developer, you'll need to work closely with the appropriate government agency (or permitting authority) to reduce and mitigate the deaths of animals due to the wind farm. In some cases, you may be allowed to build the wind farm in sensitive areas if you alter its operation to be more wildlife-friendly. For example, you could be required to temporarily stop turbines during migration seasons or during periods of low wind, when bats are most active and power yield is minimal.
Wind Farm Costs and Financing
Think about how much energy you want to produce—or how much the site can produce—and how much money you can spend. Purchasing wind turbines alone can set you back an average of $1.37 million per megawatt of capacity.
Generally, it's cheaper for utilities to develop wind power facilities than it is for private investors because utilities can tap into favorable financing structures that reduce costs by about 30%, or about 1.4 cents per kilowatt-hour, according to a report funded by the U.S. Department of Energy.
Government stimulus programs also make it easier to develop a wind farm. The production tax credit (PTC) now provides a 2.3-cent-per-kilowatt-hour tax credit during the first decade of operation.
To project the levelized cost of financing your wind project, plug your specific details into the interactive BITES tools (buildings, industry, transportation, and electricity scenarios) provided by the National Renewable Energy Laboratory. You may also want to browse the database of state and federal incentives for renewable energy.
Ensure Your Farm Meet Legal Requirements
Electricity producers are governed by federal laws such as the Public Utility Regulatory Policies Act of 1978 (PURPA), the Energy Policy Act of 2005 (EPACT 2005), and the Energy Independence and Security Act of 2007 (EISA 2007). Individual states also have different interpretations of how these federal laws apply, and they have varying mandates to promote renewable energy through Renewable Portfolio Standards (RPS) legislation.
A lawyer or consultant who specializes in renewable energy development can help you navigate the laws governing your proposed project. These people can also help you acquire the various building and environmental permits you will need from government agencies.
If your wind farm will sit on government property or has a federal agency partner, permitting can be contingent on a formal environmental impact assessment process. For example, wind farms placed on property managed by the U.S. Bureau of Land Management are governed by certain guidelines intended to protect federally protected species and other natural resources.
Identify Equipment and Wind Farm Design
Modern wind turbines are sleeker and bigger than old-fashioned windmills, with enormous blades and towers as tall as high-rise buildings. The precise placement of these turbines on a wind farm affects its overall energy production.
As a general rule, the larger the wind turbine, the greater its generation capacity. The most commonly installed wind turbine has a capacity rating of 1.5 megawatts and can power up to 500 homes, but newer models run even bigger. General Electric's website lists sizes of up to 3.4 megawatts for onshore use and up to six megawatts for offshore use. Other leading wind turbine manufacturers include Vestas, Goldwind, Enercon, Siemens, Sulzon, Gamesa, United Power, Ming Yang, and Nordex.
Large and heavy wind turbines require bigger foundations, and they cost more to install. Offshore wind turbines must be designed for ocean conditions. Wind turbines rarely run at full capacity since their energy generation is weather-dependent.
In addition to wind turbines, a wind farm requires an electrical power collection system, transformers, a communications network, and substations. What's more, a supervisory control and data acquisition (SCADA) information system is used to monitor performance. An engineer can recommend suitable equipment and turbine placement based on your site, finances, and energy goals.
Secure Transmission Capacity
If you're planning a commercial-scale wind farm, you need a way to deliver energy to wholesale or retail customers. Typically this requires transmission lines linking the output of your wind farm to the electric power transmission network—the energy grid—in your region. Commercial wind farms in remote locations can find it challenging to secure transmission capacity and interconnectivity with the grid.
Alternatively, smaller wind farms can be used as a dedicated source of electricity for a community or business. In these cases, the wind farm may not require a link to the regular electric grid. However, to sell excess power, you still need a way to deliver that power to the electric utility.
For more information, check with the National Renewable Energy Laboratory (NREL), which works with wind developers to secure transmission capacity and interconnectivity. The Utility Wind Integration Group also provides resources for connecting a wind farm into the electric system.
Install, Test, and Run the Equipment
Wind farm construction can be completed within a few months. However, you may first need to build roads into the site for hauling in the wind turbines and other equipment.
For each wind turbine, you'll need to excavate a hole and fill it with reinforced concrete to serve as a stabilizing foundation. This process is more demanding in rocky conditions or on offshore wind farms. Once the foundation is prepared, you'll need to erect the turbines with specialized hoists.
Next, you'll put the electrical wiring and systems in place and run tests to ensure that all the elements are operating properly. It often takes six months before the kinks are ironed out and the wind farm achieves full commercial production capacity.
Each wind turbine needs about a week's worth of routine maintenance per year. The American Wind Energy Association says it takes one wind technician to service every 10 megawatts of installed generating capacity.
Engineering Careers: Job Options, Job Titles, and Descriptions
Top 10 Green Dream Jobs
The World's Top Renewable Energy Companies
The World's Greatest Power Generator Systems
Save Money With Solar Energy for Your Business
Most Expensive and Cheapest Electricity by State
Green Business Ideas for Entrepreneurs
Different Types of Water Energy
Organic Farming Irrigation Systems
Highest Paying In-Demand Government Jobs
9 Best Drone Business Ideas to Start Right Away
What is a "Green" Home?
Green Ideas for Making Your Business Environmentally Sustainable
Top 10 Fastest Growing Careers
Earth-Moving Heavy Equipment for Construction
What Does an Electrician Do?


Yoga is a wonderful way to strengthen the body and mind, relieve stress, improve flexibility and mobility, build core strength and calm the mind. The best thing about Yoga is anyone can do it.
Join us for a flowing dynamic class with tailored instructions and adjustments to suit your ability. Expect classes to be down to earth, challenging, yet safe and fun for everyone – from beginners to more experienced people looking to be more challenged.
Jenny Box has been practicing and teaching for over 10 years and has the Yoga Alliance 500 hour accreditation and is currently working towards her Iyengar Yoga qualification.
Over the past few years Jenny has built up a loyal following from teaching at leading yoga studios and health clubs across London as well as running workshops and retreats in the UK and abroad.