text:
From July 11 to July 15, 2021, Mongolians will celebrate Naadam, the Festival of the Three Manly Sports.
In Ulaanbaatar, as well as in towns across Mongolia, athletes will compete in wrestling, archery and horse racing.
Classic Trips
- Nomadic Life and Naadam
Custom Travel
- Contact Us
On the morning of July 11, Mongolians gather at Ulaanbaatar's National Central Stadium for the Naadam Opening Ceremony, a grand celebration of Mongolian dance, music and culture.
Naadam commemorates the 100th anniversary of the Mongolian Revolution, the 815th anniversary of the Mongol Empire and the 2,230th anniversary of the Hunnu Empire.
Zodog, Mongolian wrestler's frontless vests, are based on the legend of a princess whom no man could defeat in wrestling. Men now wrestle bare-chested to prevent a woman from entering a tournment and defeating them again.
Wrestling in the National Naadam Festival takes place in the National Central Stadium in Ulaanbaatar. The nation's top 1,024 wrestlers compete for two days in ten untimed, single-elimination rounds.
Read more about Naadam Wrestling
A Mongolian bow takes a full year to make using birch bark, mountain goat horns and other animal parts.
Monoglia's tradition of archery has shaped world history, allowing Genghis Khan to conquer the world. The National Naadam Festival features both men's and women's competitions at the National Archery Field next to Ulaanbaatar's Naadam Stadium.
Read more about Naadam Archery
At the end of each horse race, the crowd rushes forward, surrounding the winning horse. Touching the sweat of the winning horse brings good luck for the rest of the year.
For Naadam, horses race long distance across the open steppe. Horses are categorized by age, while jockeys are children who ride bareback.
Read more about Naadam Horse Racing
- Sheep anklebones, or shagai, are important objects, used by Mongolians for both games and fortune-telling. In the tradition-rich game of anklebone shooting, competitors fling a domino-like bullet, trying to knock down a row of sheep anklebones.


text:
I am sitting here in a shelter in Newbury outside of somewhere in the heart of God's country. Everyone is being so kind. I have yet to hear the news, but my home is/was in Fort Myers and not a good location. I had saddled up to one of the early bunkervites Mandy Williams in Bradenton, outside of Tampa thinking I would be fine there as the home we were going to was fitted out with the best in hurricane accoutrements. Needless to say, by Friday it was apparent this was not the place I wanted to have the experience.
So I got on route 75 passed Ocala and Gainesville. No hotels available and what the heck,$100 bucks a night or more wouldn't last long. Almost to route 10. I called Red Cross for a shelter. No one wanted me with the cat, she apparently was expendable. Finally I found one which was full but lucky me, a new one was just opening up down the road, and God took care of me to land here.
So the floor is kind of hard, and the food is a bit tough and being homeless probably is more than I can think about. Someone said it is turning west so I hold out faint hope of something left. Maybe a picture or two. I will write more as the day goes. But wanted to let everyone know I am alive and more or less okay.
We are in for a Cat 1 hurricane here, but I am told we should be ok. Thanks for your prayers and well wishes.

subset: commoncrawl


text:
Dedicated Server
Dedicated Servers Entry
Included with your server
|Ipv4 and Ipv6 We include free /64 Ipv6 and 1 usable Ipv4 per server, Ipv4 is expandable to 5 usable Ipv4 paid on a monthly basis. Do you need more Ipv4? we provide up to 13 usable Ipv4 per Entry level server at a one time setup fee of $3,- per Ipv4 with proper usage justifications according to ARIN/RIPE regulations.
|Free 500 GB of storage space per server expandable to up to 4TB at a monthly fee.
Operating System
|A lot of operating systems available for automatic installation using the Swiftcare control panel See the list of compatible operating systems (Available-OS-List)
|Swiftcare control panel allowing reboots, hardware health monitoring and access using KVM/IP Root access to the server Automated Operating reinstallations Traffic monitoring with configurable overusage alerts Access to our DNS servers using Swiftcare control panel
Support and SLA
|Standard dedicated servers come all with Swiftway BASIC SLA


text:
At this moment in time, millions of men from all around the world, regardless of age, suffer from some form of baldness, or hair-loss. The issue is mostly present in older men, but during the last couple of years, younger persons have started experiencing the condition as well. Leaving aside the obvious symptom of such a condition, it is important to keep in mind the fact that hair-loss can also lead to a couple of psychological issues later down the road. These include, but are not limited to a lack of self-confidence, irritability, anxiety and even depression, in cases that tend to be more severe.
Fortunately, there are a wide variety of medicines that can be used to treat this condition. With this in mind, Finpecia represents a popular drug that works thanks to Finasteride, its active ingredient. Currently, it is being used to treat male pattern baldness, but also to prevent and reverse hair loss. Before anything else, it is important to understand how the medicine works. Based on this, the Finpecia tablets work by inhibiting the formation of the popular male hormone known by the name of dihydrotestosterone, also known as DHT, and which is responsible for hair loss. Once this is done, the pill proceeds to increase hair growth in all areas of the head, including the scalp, while also preventing future accounts of hair loss.
What should patients know prior to taking Finpecia?
To kick things off, patients should be aware of the fact that Finpecia is only used to treat low and medium hair loss, and will not work for patients who are facing major cases of the condition, or those who have stayed bald for a long period of time, without starting any form of treatment.
Prior to purchasing and taking the drug, it is important for patients to be consulted by their physician. This will help ensure that they are in the optimal health state to take the pill without suffering from major side effects. During your consultation, make sure to let your doctor know if you are allergic to anything, your current health conditions and what other medicines you are currently taking.
How should patients go about taking the medicine?
When it comes down to taking Finpecia, patients should do so exactly as prescribed by their doctors, while also following the medication's prescription label. With this in mind, do not take more or less of the medicine and make sure to take it at the same time daily. Also, do keep in mind the fact that stopping your treatment without letting your doctor know beforehand, can lead to a reverse of the symptoms, and to new hair loss in around 12 months.
The pills should not be crushed, chewed or opened up, but should rather be swallowed whole, with a glass of water.
What are the side effects associated with Finpecia and what should patients do in case of an overdose?
Common side effects include temporary erectile dysfunction, breast enlargement and tenderness, alongside with an itchy skin rash.


text:
Book Paintings
Submitted by Blake on June 9, 2011 - 8:12am
Book Paintings
A really great artist can create wonderful things almost anywhere – on walls, grounds, lips, eyelids, or on book pages. Look at these paintings from Mike Stilkey, I bet everyone would think of one same word "wow". But wait, and imagine what will happen when these books fall apart onto the ground…


text:
RALEIGH, N.C. – The Belmont women's basketball team put a scare in the nationally ranked North Carolina State Wolfpack on Wednesday, proving the Bruins' dream season from a year ago was no anomaly.
But foul trouble caught up with Belmont and NC State's post presence helped the [17/16] Wolfpack fend off the upset-minded Bruins in a 77-62 final from Reynolds Coliseum in Raleigh, N.C.
Belmont (0-1) led nearly wire-to-wire in the first half, trailing for only 20 seconds before intermission in the season opener for both teams. The Bruins forced three turnovers in the opening three minutes and used their speed to keep the taller NC State (1-0) off balance.
"The whole month of October we focused on playing fast," said junior Ellie Harmeyer (Kenosha, Wis.). "We want to get the ball going, run the ball the entire game. We've really focused on conditioning so we can run the ball like that."
Conley Chinn beats the buzzer to help Belmont take the 36-29 lead to halftime over #16/17 NC State— Belmont WBasketball (@BelmontWBB) November 8, 2018
Watch the game here: https://t.co/fLPRUNRXdD #itsbruintime pic.twitter.com/6pyFNxOdxu
Harmeyer led all players with 10 first-half points and Belmont pulled into the break with an overall advantage on the scoreboard. The visitors led 36-29 after freshman Conley Chinn (Jackson, Miss.) hit a 3-pointer just before the buzzer for her first career basket.
As a top-20 team in the country tends to do, North Carolina State flexed its depth in the second half. The Wolfpack benefited from a third-quarter foul-fest to rip the momentum back in its direction. Belmont was whistled for six fouls to the Pack's none in the quarter and the home team went nearly two full quarters in between called fouls.
NC State didn't do much to take advantage of all those trips to the line and shot just 8 of 16 there – Belmont attempted just three free throws for the game – but the whistles helped slow things down and get the Bruins on the heels.
"We played with a little bit better pace in the first half," said Darby Maggard (Larwill, Ind.), Belmont's senior point guard. "Obviously they're a really, really good basketball team and we need to be able to learn from this and keep that pace up for the entire game. If we can do that, we'll put ourselves in a better position to be in it at the end of games."
The Pack showed why pollsters around the country picked NC State so high. NC State shot better than 70 percent in the second half on the strength of its play in the paint and put the game away with a 14-0 run in the fourth.
Ellie Harmeyer with her 2nd 3-pointer already. Belmont leads 10-6 at midway point of 1Q— Belmont WBasketball (@BelmontWBB) November 8, 2018
Watch the game here: https://t.co/fLPRUNRXdD pic.twitter.com/GkjyG214KH
Maggard and Harmeyer each netted 13 points while senior Jenny Roy (Brentwood, Tenn.) posted a team-high 14. Roy nearly capped things off with a double-double, adding nine rebounds.
It's Belmont's second straight year opening up against a ranked opponent. The Bruins fell 96-73 at [22/21] Oklahoma in last season's debut before reeling off 31 wins in their next 33 games to reach a third straight NCAA Tournament.
This year's team is hoping for another deep postseason run and is encouraged by the way it contended with a stout NC State squad.
"That was fun. Those types of games are the games you live for," Maggard said. "We didn't win, but now know what we're capable of and where we can go. There's a lot of good stuff ahead for our team."
The Bruins will make their home debut next on Monday against Tulsa. That game is scheduled for 5 p.m. at the Curb Event Center.
Darby Maggard with the 4-point play!— Belmont WBasketball (@BelmontWBB) November 8, 2018
Watch the game here: https://t.co/fLPRUNRXdD#itsbruintime pic.twitter.com/R98KxOmIlJ


text:
COLLEGE PARK, MD – In its final meet of the season, the University of the District of Columbia Women's Track & Field team secured a third-place finish at the Kehoe Twilight Meet on Friday, May 5th, 2017.
Freshman Shanell Hibbert had an impressive 2nd place finish in the 100M by running a time of 12.65s, and she also flourished on the winning 4x400M Relay team, which finished in a time of 4:03.49. Hibbert also led the Firebirds to a 2nd place finish with a time of 47.60s on the 4x100M Relay. Her teammates included Stacy-Ann Rowe, Niasia Harding and Temera Duncan.
UDC's 4x400M Relay team, which included freshmen sensations, Shannell Hibbert, Temera Duncan, Diasia Greer and Niasia Harding, boasted an impressive time of 4:03.49s on their way to a 1st place finish.
In the Long Jump, senior, Brittany Okon finished 3rd with a leap of 5.42M, while Greer obtained a 4th place finish with a leap of 5.23M.
To round out the competition, Harding, finished 4th in the 400M Hurdles by running a time of 1:05.38.


text:
Funeral Tributes
Traditional or contemporary arrangements, available at short notice.
At Designer Lily we offer a warm and personal service. Feel free to visit our shop in Portglenone where you and your family are invited to browse our arrangements.
We will help you choose personal tributes – perhaps using favourite flowers and colours. Each funeral tribute that we create is personal to you.


text:
Tree Pendant in Oregon Myrtlewood
This wooden tree pendant was created by my husband Jeff in Oregon myrtlewood. Myrtlewood is a special (and beautiful) wood that grows in southern Oregon and northern California, along the coast. According to folklore, it is said to bring prosperity. Jeff created this gorgeous tree design, which I adore. Jeff sands and polishes the wood until it simply glows, burns his original tree design into the wood, then finishes the wood with a natural oil finish. This pendant comes on a dark brown cotton cord with a slide knot so you can adjust the length. (To adjust the length, just pull the knots.)
Made for the nature lover. Enjoy this beautiful pendant and bring the energy of nature with you wherever you go.
Measurements: Just a little over 1 inch wide.
(A note: the pendant you order will not be the exact one pictured here. It is made to order, so there could be a brief waiting period while Jeff makes it for you. The pendant you receive will be the same design, same wood, and very similar in size. Yet each will be unique and have slight variations, thus the beauty of handmade.)
Join us on the blog: www.woolymossroots.com
WoolyMossRoots thanks you for buying handmade!
Shipping from United States
**FREE SHIPPING in the US on all orders over $125 when you use the coupon code: HOORAYFREESHIPPING at checkout.**
In the US, we ship items though USPS Priority Mail almost always, unless otherwise requested. Please give us 3-5 business days to mail your order out. (If it is a made-to-order item it will take longer while we make the item for you.) Priority Mail takes 2-3 days to reach anyone in the United States. (Priority Mail is flat rate shipping, so you can add more items to your order and the weight won't increase the price. Take advantage of this great deal when ordering in our shop and only pay one shipping charge for multiple items!) *Shipping rates have gone up for priority and I know some of you would prefer an alternative shipping method. If that is the case, please contact me about that before you order, thanks!*
Returns & Exchanges
I gladly accept exchanges
Just contact me within: 14 days of delivery
Ship items back to me within: 30 days of delivery
I don't accept returns or cancellations
But please contact me if you have any problems with your order.
The following items can't be returned or exchanged
Because of the nature of these items, unless they arrive damaged or defective, I can't accept returns for:
- Custom or personalized orders
- Perishable products (like food or flowers)
- Digital downloads
- Intimate items (for health/hygiene reasons)
If you are interested in wholesale, please send us a message to find out more about our wholesale policy. Thanks!
Reviews (6)
Oct 7, 2019
Very nice souvenirs for my daughter-in-laws after my travels to Oregon. I recommend this Etsy shop.
Jun 12, 2019
Perfect trade - thanks a lot!
Aug 3, 2018
So happy with this necklace! The pendant is perfect, and I absolutely love that the length is adjustable.
Aug 2, 2018
prompt shipment. well packaged. pendant necklace as described.
May 18, 2018
This pendant was even more beautiful in person. Gorgeous detail and excellent customer service!


text:
Thinking of building an online customer community?
Not sure where to start? Check out these five sources of inspiration.
ModCloth: Let The Community Pick Your Inventory
Ever wanted to become a virtual fashion buyer? If so, you should hop on over to women's clothing retailer ModCloth, where you can participate in their 'Be the Buyer' program.
From a company-selected sample of clothes, customers can vote on their favorite pieces. When a product receives enough votes, ModCloth will order it to sell.
Why It Rocks for the Business
ModCloth's Be the Buyer program creates an instant customer base. Presumably, a portion of people to vote will return to by the item later on. Furthermore, the data from the voting feature can help ModCloth forecast supply and demand on niche items. The company can use this information to plan its inventory more efficiently.
Why It Rocks for the Customer
It's fun! Browsing through new pieces and voting on them is a great way for twenty-something women to kill time and find fashion inspiration. It's a community feature that people enjoy.
Ideas Worth Trying
Build a community around your inventory. Get your customers involved with ordering what you decide to stock on your shelves. After all, the amount that you sell will always depend on the number of people who are available to buy. So, get people interested in buying by letting them tell you exactly what they want.
Udemy: Let The Community Create Your Inventory
Udemy is a peer to peer (P2P) learning platform where people can create and enroll in classes.
The entire company is based around its community of instructors who upload educational materials to the site — and sell them for a fee. While this exact business model won't be a fit for everyone, it does highlight two key takeaways:
- incentives are important for getting people involved
- people enjoy engaging with and learning from one another.
Why It Rocks for the Business
You'll have a constant stream of ideas and content from a community of people who are self-promoting what they are creating. Self-promotion will yield more extensive reach.
Why It Rocks for Customers
People get a chance to connect with and learn from each other — or become experts, themselves.
Ideas Worth Trying
Not ready to revamp your entire online inventory for peer-created products? No worries. How about involving people with the products and services that you're already offering? If you're thinking of creating instructional guides, for instance, you could ask your most active customers to help develop them.
Fiskateers: Let The Community Build The Content
Thousands of scissor wielding craft makers (Fiskateers) create the content and the audience for this Fiskars scissors community.
Why It Rocks for the Business
The audience creates the content and a built-in network that will help generate an audience. The business will never have to worry about writer's block — hundreds of heads are better than one for generating great ideas.
Why It Rocks for Customers
They'll have a trusted dedicated resource to discover and share new ideas.
Ideas Worth Trying
If you're thinking of launching a blog, consider leveraging your most loyal and dedicated customers to contribute the content.
Threadless: Let The Community Design The Products
For years, Threadless has relied on its community to create its designs. People can submit designs for fellow community members to critique and score. Designers who submit successful t-shirt ideas receive a combination of cash and gift cards.
Why It Rocks for the Business
Beginning as a simple t-shirt design contest, The Threadless community has kept the business going for years — since 2000, to be exact. The company continues to print and reprint user generated designs. With thousands of community members involved in the process, the company has a bottomless supply of design ideas. The audience submits the designs, votes on the designs and then buys the designs.
Why It Rocks for Customers
It's a fun and creative outlet where ideas can evolve and designs can come to life as actual products. People can also build on their design skills by critiquing each others work.
Ideas Worth Trying
Host a community contest where people can learn from one another. Let people vote on their favorite ideas and pick the winner. If the idea can become a real product — even better.
Slickdeals: Let The Community Share Value With Each Other
If you're a bargain-hunter, then you've probably heard of Slickdeals, a forum where people can sign up to share their favorite offers, coupons, and deals.
What makes the website so powerful is not the owners of Slickdeals, it's the audience. The value of Slickdeals is based entirely around what consumers share. This dynamic has given Slickdeals a powerful reputation and brand image as one of the most reputable online deals sites.
Why It Rocks for the Business
The value of Slickdeals is based entirely around what consumers share. Behind the dialogue, the company can stay relatively anonymous in the background — and they do. Slickdeals' members are constantly scouring the web to help build the company's product. The brand image is authentic, as it comes directly from the community.
Why It Rocks for Customers
Customers get to pick the exact content and offers that they want to see.
Ideas Worth Trying
Struggling to figure out your brand image and core value proposition? Let your customers define it by empowering them with a forum to communicate and share information.
Final Thoughts
What are some of your favorite customer communities?
How do you integrate community into your business? Share your thoughts, suggestions, and ideas in the comments below.
Ritika Puri
Latest posts by Ritika Puri (see all)
- The Shifting SEO Landscape in 3 Infographics - May 16, 2014
- March's Best: Favorites in Analytics, Conversion, and Copywriting - March 31, 2014
- February's Best: Favorites in Conversion, Analytics & Copywriting - February 28, 2014


text:
I've heard numerous people suggest that itemizing deductions under the new tax law is no longer beneficial. For some that is true. For others however, strategies exist to help you keep more of your hard-earned money.
New Online IRS Services for Taxpayers
The IRS recently announced two new online services that will allow more convenient interaction and better access to information for taxpayers. The first service allows online payment of IRS balances including individual estimated payments and balance due with income tax returns. This new method supplements the "Official Payments" website and has the advantage of allowing payments from savings and checking accounts without any fees. The Official Payments website allows the use of credit and debit cards, however these payments require a nearly 3% convenience fee to process. At the current time the ability to schedule future payments doesn't exist so if you wish to use the service for estimated payments you'll need to remind yourself to pay before each individual due date.
New ObamaCare Requirements for Certain Employers
Many of you are familiar by now with several of the provisions of the Affordable Care Act such as the healthcare exchanges and the potential penalties for lack of coverage. You probably also have heard the the penalty provision that applies to employers with over 50 employees has been delayed until 2015. But did you know that there is a new notice requirement for employers which still takes effect this October 1, 2013?
Pennsylvania Act 32 Information
If you are an employer located in Pennsylvania or have PA residents as employees, a significant change to the local tax laws called Act 32 will affect you starting in 2012. The intent of this new law is to standardize the local earned income tax system across the various municipalities – a change which is welcomed by many employers and accountants. Unfortunately, as with many changes, some effort will be required to implement the new law correctly.
QuickBooks Training Available
With three QuickBooks Professional Advisors in our firm, we can provide you and your business the expertise you need to accurately and efficiently account for your company's transactions. We will assist you at whatever level you desire, from installing the program and designing the chart of accounts, to training you in the operations of the program and customizing the information that you receive from the reports.
Keep Your Tax Bill Down
Help keep your tax bill down by staying up-to-date on tax developments from our Tax Newsletter. Tax season sneaks up on all of us so make sure you stay up to date on how you can save money.


text:
1627 West Main Street #295
Bozeman, MT 59715
Diablo is doing great! He loves his cart and we are very happy with it. He has not lost a bit of competitiveness with my parent's dogs while playing ball. He also has started to work cattle with me again. He is much happier since we have gotten the cart.- Zac


text:
The oven is one of the most important appliances in your home. This is the thing, which helps you cook your meals. If you think about it, the oven is very precious and even life saving. It cooks your meals, which prevents you from feeling hungry, and it kills all the germs in the raw meat and fish. It turns out that our ovens practically save our lives on a daily basis. But in the process they get dirty with grease, different oils and food particles. If they are not cleaned, they can turn into a death trap, full of germs and dangerous bacteria. This is why you should try your best to keep your oven clean. But how to keep your oven clean and cook in it at the same time? Well, I hope these useful tips will help you with this hard task.
How to Keep Your Oven Clean
$0 or Free
30 Minutes
Inspired From:
Step by Step Instructions
Step 1
Cover up. The biggest problem when you cook your food is the possibility of splatters. As you know, when your food is heated it starts to boil and small splatters of souse and food get stuck to the walls of the oven. And if you don't clean them right away, they will dry in there, and it will be very difficult to scrub them off. If you want to keep your oven clean at all times, it's a good idea to put a lid or a piece of foil over the food you're cooking. This way all the splatters will get on the foil, and you can just throw it away after you're done. This will save you a lot of cleaning and scrubbing, and nerves.
Step 2
A drip pan. This is also a very good idea, especially if you're cooking something which is likely to boil and to bubble over. You just need to put the drip pan on the bottom of the oven, and everything which tries to escape will be caught in time. After you're done cooking, you just need to get the drip pan out of there and into the sink. It's best to wash these things right away, because otherwise the grease will stick and you'll have to scrub a lot to get it off there.
Step 3
Use foil. This is another great way to use foil to protect your oven and keep it clean. Some very clever people decide to wrap the walls of their ovens and stoves in aluminium foil. This way every splatter and food particle will get on the foil instead of your oven. Just make sure to change the foil on a regular basis, because otherwise germs will start to develop and they can even infest your food, which is not healthy in any way.
Step 4
Warm up. Another tip I can give you to keep your oven clean, is to not wait around for too long with the cleaning. It's better to clean your oven right away after you cook, because then the food particles and the grease are still not stuck for good. You should wait for it to cool down a little though, because you risk burning yourself in the process. But if it's too late and your oven is already very dirty, don't worry – there are probably professional cleaners in your area, who can help you. They can make your oven look like a new one in no time, no matter how bad the situation is.
Step 5
Use steam. Another great trick to keep your oven clean is to use steam. Don't worry, you don't need to buy any machines, which produce steam. The only thing you need is a bowl of boiling water inside the oven for about 20 minutes. It will help the grease and food particles to loosen up, and it will be a lot easier to clean them.


text:
A 3D PRINTING technique that produces clusters of stem cells could speed up progress towards the creation of artificial organs, scientists claim.
In the more immediate future it could be used to generate biopsy-like tissue samples for drug testing.
The technique relies on an adjustable "microvalve" to build up layers of human embryonic stem cells (hESCs). Altering the nozzle diameter precisely controls the rate at which cells are dispensed.
Dr Will Shu, from Heriot-Watt University in Edinburgh, said: "We found that the valve-based printing is gentle enough to maintain high stem cell viability, accurate enough to produce spheroids of uniform size, and most importantly, the printed hESCs maintained their pluripotency – the ability to differentiate into any other cell type."
Embryonic stem cells, which originate from early stage embryos, are blank slates with the potential to become any type of tissue. The research is reported in the journal Biofabrication.
In the long term, the new technique could pave the way for hESCs being incorporated into transplant-ready laboratory-made organs and tissues.


text:
"A beautifully written, stylish novel . . . a gripping mystery"
"Expertly weaves the multiple threads of its plot . . . into a captivating whole."
Apostolos Doxiadis
Multi-award Winning Author of International Bestsellers Logicomix and Uncle Petros and Goldbach's Conjecture
"A gripping novel . . . a pacey thriller. . . . An enjoyable read from the very first chapter, the kind of book you cannot stop reading till the end. An impressive debut!"
Guillermo Martínez
Multi-award Winning Author of International Bestsellers The Oxford Murders and The Book of Murder
"It is really nice to know that an alumnus of IIT is penning a book. It makes me feel joyous that the book is on mathematics and that, too, in a novel form to make it more interesting. . . . A fast-paced mystery-thriller, the book beautifully links the ancient and the modern to keep the readers thoroughly absorbed. . . . It brings out the fascinating power of maths and its history and the unique role played by religion and culture in the most entertaining and enjoyable fashion. India has had a rich tradition in mathematics since Aryabhatts era."
Anand Kumar
Founder - Super 30
Goodreads Reviews
"Wow! . . . was helluva reading delight . . . Believe me, this could be the best thriller you would've read by an Indian . . . Highly recommended!"
A reader on Goodreads
Media Reviews
"An edge-of-the-seat thriller . . . explosive, Robin Cook-style novel . . . keep(s) readers guessing till the last page."
The New Indian Express
"A racy high-octane novel that needs to be read without too many interruptions."
The Hindu Literary Review
"An intelligently written thriller"
CNN-IBN IBN Live
"Science, religion and crime - the perfect ingredients for a mystery thriller. Mix them with a tinge of Dan Brown's satire and Sherlock Holmes' subtle humour, and what you get is a fast-paced read called The Steradian Trail. . . . (the author) must have grilled his grey cells to invent such a page-turner."
The New Indian Express
"A Pacey, Juicy Thrill Ride on Science, Culture and Crime"
VIRSA The Culture, Hong Kong
"Makes for an engrossing read! . . . I would recommend this book to one & all as it is humourous & has mystery & lots of drama."
Storizen Magazine
"This book is one of a kind and should definitely be read by all."
Metro India
"Do give this gripping, fast-paced first novel a read."
"A fascinating read"
Analytics India Magazine
"The mystery unravels in such a way that you just cannot keep the book down. I was even reading it while walking from the metro to the lift."
Metro Reader
"Has succeeded in creating an intelligent thriller with Indian historical elements. Mystery and thriller fans shouldn't miss this one."
Literary Grand Rounds
"If you're looking for a story on a completely new, unexplored subject, a simple, light yet engrossing thriller, go ahead and read 'The Steradian Trail'. . . . Go, grab it!"
"Despite getting absolutely no time because of work commitments, I picked this book up as my saturday night read and I just couldn't stop reading it till I finished it. . . . make sure you spend some uninterrupted 8-10 hours with it. It would not fail to impress you, I can vouch for that."
Yatin Gupta
"If you love thrillers, get ready for an exciting journey of suspense filled, mathematics, science, mythology and religion oriented thriller spread over 356 pages. . . . go ahead and grab The Steradian Trail."
Books and Authors
"An intelligently written thriller and a refreshing change"
Thriller Writing Help
"The book is in action from the first chapter itself. . . . It is an out and out thriller . . . which kept me hooked to the book and my chair till the end."
The Enchanting World of Books


text:
The MexicoBlog of the CIP Americas Program monitors and analyzes international press on Mexico with a focus on the US-backed War on Drugs in Mexico and the struggle in Mexico to strengthen the rule of law, justice and protection of human rights. Relevant political developments in both countries are also covered.
Jan 4, 2012
Mexico Prison Violence: Prison fight in northern Mexico leaves 31 inmates dead; 13 injured - The Washington Post
AP/Washington Post: "A vicious fight among inmates armed with makeshift knives, clubs and even stones left 31 people dead in a prison in a drug cartel-plagued state in northern Mexico, authorities said. Another 13 prisoners were wounded in the brawl in the penitentiary in the Gulf Coast city of Altamira, Tamaulipas state's Public Safety Department said in a statement." read more
Subscribe to: Post Comments (Atom)


text:
Monday, July 2, 2012
The Client-Focused Lawyer
[by Bill Henderson, originally published in The National Jurist, January 2011 (PDF)]
Over the last three years, the majority of my research has focused on lawyer competencies, or what I prefer to call lawyer success factors. This research has fundamentally changed my perceptions of legal education, primarily because the majority of success factors are not taught, assessed, or measured during law school. It is not that we law professors are deliberating ignoring something important. Rather, we are not even aware that something beyond legal knowledge and technical skills are necessary for success.
Based upon my own observation, and a fair amount of time sifting through data, I think the single best predictor of both success and satisfaction as a lawyer is the ability to become truly client focused. Unfortunately, this client-focused mindset is completely absence in the large law school classes that are the core of the law school curriculum.Everyone has heard the old saw that law school teaches students how to think like a lawyer. For over a century, this has been accomplished by guiding students through a series of edited appellate opinions. Drawing upon precedents, students begin to undertake how a particular "black letter" rule produces different legal outcomes depending upon the facts—hence the endless stream of law professor hypotheticals.
The law, however, can sometimes be indeterminate. Law professors like to focus on the indeterminacy because it makes for great exam questions (and law review articles). Students who deftly handle the gray area tend to get the highest grades. It is also how the law professoriate replicates itself.
Once in the world of practice, however, clients hire lawyers to solve problems, not manufacture ambiguity. Before giving any advice, or taking any action, we need to understand the true nature of the problem. This requires us to ask open-ended questions. To listen. To gather missing facts. To put ourselves in the client's shoes. To find an appropriate and effective way to convey to the client that we understand the problem. To listen some more. And then to prescribe a course of action, or, alternatively, to candidly admit that we cannot provide a cost-effective solution.
In my hundreds of conversations with lawyers over the years, the one common factor I have noticed with happy (and typically financially successful) lawyers is their ability to connect with clients by earning their trust. Why, then, is this skill set missing from the law school curriculum?
I think the answer is two-fold. First, legal knowledge and technical skills are often critical to solving our clients' problem. Second, focusing on the needs of the client requires us to become conscious of own on limitations as counselors and strategists. Because many of us want to feel expert and important—that is why we went to law school after all—we falsely conclude that technical mastery is all that is needed to serve clients well. Law professors in particular tend to overswing the technical hammer because our security and livelihood does not depend upon our ability to solve the problems of actual clients.
In his book, The Trusted Advisor, the professional services guru David Maister describes the difficulties of becoming client focused. As the client relates his or her problem, our minds race to formulate words that will make us sound expert—not unlike the anxiety of the entire first year of law school. "If we are honest and strip down all of these distractions to the core," write Maister, "we likely to find some form of fear at the root. It may be fear of embarrassment, or failure, of appearing ignorant or incompetent, or fear of loss of reputation or security."
Maister notes that the professions like law attract a disproportion number of people who are prone to fears. We compensate by overachieving. Indeed, many of us worked for years to win an academic marathon that continues throughout law school. Ironically, it is the very success at technical excellence that makes it more difficult for us to connect with clients and develop a client following.
This pattern shows up again and again in my work with law firms. For example, entry level layer typically spike on a measures such as "quality focus" and "analytical reasoning". Highly successful partners share these attributes. But they also spike on measure like "customer focus", "innovation", "problem solving" and "fearlessness."
Clients are not the best judges of our technical abilities. But they are capable of sizing up our motives. When we step out of our comfort zone to truly listen to clients' problems, and to ask questions that reveal our own lack of understanding but also our sincere desire to help, we have the potential to connect with our clients and earn their trust. Lots of lawyers are willing to sell them legal advice. But you are interested in solving their problem.
For readers interested in learning more on how to connect with clients—and peers and colleagues throughout the legal profession—I would recommend reading Maister's The Trusted Advisor. Another worthwhile book on the topic is Patrick Lencioni's Getting Naked: Overcoming the Three Fears that Sabotage Client Loyalty. I am happy to say that both of these authors are influencing the curriculum of the 1L Legal Professions course at the Indiana University Maurer School of Law. My colleagues are working hard to be client-centered law professors.


text:
My favorite curmudgeon today begins his seventh year as JoeMyGod. Like their coffee, many people will not start the day without him. He perpetually scowls at my camera but I ignore that. You may click here for one of the few photos he didn't mind. It was taken four years ago. My husband is the guy next to him. Seems like five minutes!
Happy Anniversary to JoeMyGodFollow farmboyz
Recent Entries Filed under Entertainment:
Leave a comment
We want to know your opinion on this issue! While arguing about an opinion or idea is encouraged, personal attacks will not be tolerated. Please be respectful of others.
The editorial team will delete a comment that is off-topic, abusive, exceptionally incoherent, includes a slur or is soliciting and/or advertising. Repeated violations of the policy will result in revocation of your user account. Please keep in mind that this is our online home; ill-mannered house guests will be shown the door.
7 years. That's a DAMN good amount of time spent blogging.
I really loved Joe's longer story-like posts from the beginning. It's what made me start reading him. His way with words in those personal anecdotes is magical. I've stopped reading it as much now that it's mostly short quips and news updates, but it's obviously not hurt his traffic! Still, I wish he'd give us new personal essays; I really miss those.
He really is a gifted writer. I sent "Fake Morning View" to just about everyone I know. His memories of friends gone by just make me ache. Maybe he'll publish a book of memoirs now that his blog has turned to politics and news.
Fr Tony, you misled us! That photo of Joe still ahows him scowling at the camera. (erm... or does it?)
I like JoeMyGod, its a fun mix. Often he has information I wouldn't see otherwise, and he tosses in some witty remark which brings a smile. I often marvel that he does it as a one person effort.


text:
Dispatching Solutions hires new president to manage day to day business operations
Upland, CA – April 14, 2015 – Dispatching Solutions, Inc. is pleased to announce the appointment of Ron Souza as President. He will report to the current CEO and founder of Dispatching Solutions, Jim Jackson, and will have oversight of day to day operations at DSi in order to improve the overall efficiency and profitability of the company.
"Ron brings great organizational and management skills to the president position at DSI, and exhaustive experience in our core markets" says CEO Jim Jackson. "Ron will continue and improve DSI's focus on customer needs while reinvigorating internal staff and streamlining processes to help DSI achieve growth objectives."
Ron has more than 30 years of experience in the construction service industry and brings a wealth of insight to Dispatching Solutions from his previous roles in executive positions.
Ron has already begun his official duties as president, effective April 1st, 2015.
A letter from Ron to DSi customers
I wanted to put a little note about my background and my coming on board with DSI. I have spent 16 years working for Caterpillar Dealerships, 10 years working for rental companies, 4 years in a manufacturing company and 8 years in construction. I see DSI as a platform to be a consultant and a business partner for our current and potential customers.
My experience in finance, sales, inventory management, rentals, transportation and Six Sigma has taught me to listen to clients and help them with their processes. DSI is a small enough company that allows us to be flexible and address the issues quickly. We have a broad and diverse customer base that helps us bring innovative solutions and provide significant benefits to our customers. We are focused on helping clients improve operational performance and help them grow their business.
The business environment in the US is improving, yet there are still signs of companies being cautious in new investments. As we enter this "new reality" of the business environment and what that means to each of our companies and employees, we need to constantly look for ways to keep it lean. A survey of Harvard business school alumni released in September found that nearly half would rather invest in technology than retain or hire workers.
Our software can give you the tools to help you see the metrics and make the decisions to keep your company profitable and grow. We are very excited about 2015 and the products and improvements we have coming this year. I look forward to meeting a lot of you and listening to how we can improve our services.
Thank you,
Ron Souza, President, Dispatching Solutions, Inc.


text:
One of Those Days / One of Those Nights
|Mixed media image by Inbar Dekel.
Yesterday wasn't one of my best days. I arrived home after a long day's work, which wasn't too bad other than the fact that the baby stumbled right between my feet and hit her head while her mother was looking directly at me. Okay. Moved on, another job—my once a week regular German family.
We must have gotten past the polite phase since I was "asked" on my way over to bring "2 milk, waffles" and something called "ZIMTIES". After several failed inquiries I ended up bringing three Cinnabons, but alas, the aforementioned Zimties are a brand of cereal …
The mother had been in an exceptionally good mood following a one-hour shower session and single glass of white wine on the rocks, hovering over a giant pot of the "Wedding soup" she had been cooking (following a long detailed explanation, it turned out be some sort of German version of Ramen). She continued with some clothes fitting in which I was put in my place for not being honest enough regarding the true scope of her thighs in the pair of jeans she had on—'cause naturally I "should say what I really think, otherwise it's just not polite".
Later on that day while embodying the roll of the bad witch, counting rope jumps, and making Easter eggs and bunnies out of colorful construction paper, I was texting my friend, who is on the standard of the perfect host while her brother is in town, and as one, she must obviously tend to his every 22-year-old whim.
Next, as I was riding the bus towards the nearest S-Bahn station, I texted her that they should visit a very legitimate hotspot I'm personally fond of, but I instead repeatedly encountered tyranny-afflicted criticism; the brother, as it had appeared, simply "can't stand hipsters"—and what, in fact, is this weird place to which I've dared to lead them? An art gallery? What's that??
Meanwhile, missed my station. Didn't push the button in time, and although the driver did stop to board passengers, it's presumably, I guess, unheard of that the back door would also open for offloading unless asked in advance.
So walking back one station I got back on on the train and finally arrived home, one-and-something hours later, exhausted yet determined to go out to meet a friend. Trying on different outfits after what had seemed like forever, eyeing my reflection, my own thigh scope didn't seem to settle with me. Nothing seems to work today—what happened?
23:55 (instead of the original 22:30 planning) I was off again. Waiting for my train to arrive, shedding breaking point first-tears-of-the-day, I whipped out a pocket mirror in a sheer narcissistic, obsessive, yet typical moment, saying to myself I would hear the train, "I am right here." But I didn't hear it. Right to the familiar ring sound of closing doors. I tried running, but it was too late.
Just before I started cursing the very existence of my being, I heard a man's voice calling me from the driver's cabin. Of course I had done something wrong, otherwise what could he possibly want with me? Had the Universe not turned its hairy plumber's crack at me enough today??! But there are still good people along the way—driver invited me into the cabin to ride one station with him so I could change to a normal car the next stop.
As I was coming to grips with the realization that something nice had actually happened in all of this travesty of a day, the driver asked me if everything was okay. Years of practice prevented me from breaking into tears, and I just said, "You know, one of those days…"
Stepped off at the right station this time. Hallelujah. After a not very interesting night in an over-crowded dance floor alongside bling-wearing chain-smokers insistent on sticking their torsos way too close, trying in vain not to ash on random people, I had, at last, returned to my little room. The content of my also-small closet now scattered all around, I looked happily towards that long-awaited sleep.
So without waiting another minute, not even to bother setting the alarm clock, I shoved whatever scattered pieces of wardrobe from the bed onto the chair, lay down, closed my eyes and sank into deep satisfying slumber.
Tomorrow I'll rise again to yet another full and frenetic day of meetings, friends, work and complexity that is living in this city I call home.
Those aching-breaking moments come hand in hand with the high ones. They're an integral, not at all less substantial part of this fragile humanity of ours. Instead of chasing after ultimate happiness, which everybody seems to think is to be found in a proper job or a stable relationship, for the first time in my life, I'm trying to do what my heart says. Not that this makes it any easier to obtain, but at least I'll be true to myself along the way. And that's a lot—it's everything.
By Inbar Dekel


text:
Sen. Bernie Sanders hits the road, teases 2016 presidential bid
On the list of people who could plausibly be the next president of the United States, Sen. Bernie Sanders, I-Vermont, is nowhere near the top. But with a slew of upcoming visits to early primary states, it's clear the longtime senator wants to at least be a part of the conversation.
Sanders, a progressive independent who caucuses with Senate Democrats, is headed to South Carolina this week to speak at a gathering of progressive activists. He's scheduled to visit New Hampshire, next door to his home state, over Labor Day weekend to address an AFL-CIO breakfast, with another visit planned for the end of the month. And in mid-September, he'll travel to Iowa for a series of town hall meetings.
The trips, he told The Hill newspaper, are "part of my trying to ascertain the kind of support that exists for a presidential run."
Polls have shown former Secretary of State Hillary Clinton running away with the nomination in 2016 if she decides to run. Progressives have cast about for alternatives, saying they respect and like Clinton, but they're worried about her ties to Wall Street and her occasionally hawkish positions on foreign policy.
The hope is that pitting a credible primary challenger against Clinton could foster a vibrant conversation about the Democratic Party's priorities, pushing the presumptive frontrunner to embrace a more progressive message.
The problem, though, is finding someone who's willing to take on that near-quixotic task.
Sen. Elizabeth Warren, D-Massachusetts, is beloved by progressives, and a strong fundraiser to boot, but she's repeatedly ruled out a bid. Other alternatives, like Gov. Martin O'Malley, D-Maryland, and former Gov. Brian Schweitzer, D-Montana, have openly entertained a run, but their support in primary polls amounts to a rounding error.
Sanders, the chairman of the Senate Veterans Affairs Committee and longtime liberal crusader, would certainly have the requisite ideological bona fides, but he'd likely suffer from the same fundraising and visibility problems that dog other Democrats who aren't named Clinton.
And it's also not clear Sanders is willing to play the role of progressive attack dog. The senator has suggested he's more in addressing issues that concern him, like income inequality, Wall Street reform, and job creation, than he is in tearing down fellow Democrats. "I don't want to speak about other people," he told the Hill when asked to critique Clinton's record.


text:
The previous post in this series is: Hacking ZAP #3 - Passive scan rules
Active scan rules are another relatively simple way to enhance ZAP.
Active scan rules attack the server, and therefore are only run when explicitly invoked by the user.
You should only use active scan rules against applications that you have permission to attack.
You can also write active scan rules dynamically using scripts, as we will see later in this series, but even then its very useful to understand some of the concepts underlying classes available to you.
Where to start
As with passive rules, the easiest way to get started is to rip off an existing rule.Active scan rules can be found in 3 locations in the zap-extensions project, depending on their status:
- Release quality: master/src/org/zaproxy/zap/extension/ascanrules
- Beta quality: branches/beta/src/org/zaproxy/zap/extension/ascanrulesBeta
- Alpha quality: branches/alpha/src/org/zaproxy/zap/extension/ascanrulesAlpha
These are all in the alpha branch.
The main classes
Unlike passive scan rules there are different classes that you should extend depending on the type of rule you want to implement.
AbstractPlugin - you typically will not extend this class directly, but it provides key methods that you will need to use and abstract methods that will need to be implemented.
AbstractHostPlugin - extend this class if you want your code to be run once against the top node that the user scans. This is ideal for scanning things that are not 'page' related, such as the SSL certificate.
The key method you'll need to implement is the void scan() method inherited from AbstractPlugin - this is where you perform your attacks.
AbstractAppPlugin - extend this class if you want your code to be run against every node (or page) being scanned. This is ideal for scanning elements that are not related to existing parameters, such as trying new debug flags.
The key method you'll need to implement is the void scan() method inherited from AbstractPlugin - this is where you perform your attacks.
AbstractAppParamPlugin - extend this class if you want your code to run against every parameter in every node being scanned. This is ideal for scanning existing parameters.
The key method you'll need to implement is void scan(HttpMessage msg, String param, String value) - this is where you attack the specified parameter.
Performing attacks
Unlike passive scan rules, active scan rules are expected to make requests to the server.
You should use the AbstractPlugin.getNewMsg() method to get hold of a new HttpMessage that you can use for your attack. If you make multiple requests then call getNewMsg() for each request. The message will be a copy of the original request but with an empty response. You can access the original request and response via the getBaseMsg() but you should not modify it.
You should use one of the AbstractPlugin.sendAndReceive(HttpMessage msg, …) methods to actually make the request. The variants allow you to choose whether the underlying code should handle redirects and/or anti CSRF tokens.
The sendAndReceive methods also handle user controlled features like authenticating as a specified user.
When you find potential issues you can raise them via one of the AbstractPlugin.bingo(..) methods.
Like passive scan rules, active scan rules support AlertThresholds which allow the user to indicate how strictly you should check for vulnerabilities.
Simple example
The ExampleSimpleActiveScanner class implements a very simple active scan rule.
As you will see, it just raises an alert randomly, so it isnt of any practical use.
Like the simple example passive scanner introduced in the previous post it uses the Vulnerabilities class for the documentation associated with the vulnerability.
Most of the methods should be self explanatory, but there are 2 that are worth explaining.
The getCategory() method is used to group related rules in the UI.And the getRisk() method affects the order the rules are run - the rules which report higher risks are run before those that report lower risks.
File based example
The ExampleFileActiveScanner class implements a slightly more complex active scan rule which is equivalent to the example file passive scan rule introduced in the previous post.
This class introduces another feature, the attack strength, which allows the user to adjust the number of attacks each rule performs.
If you are implementing a rule just for your own use then you dont need to worry about this. However if you plan to publish it for others to use then you should consider supporting it.
The getAttackStrength() method returns an AttackStrength class which can be one of:
- LOW: Limit to around 6 requests per scan call
- MEDIUM: Limit to around 12 requests
- HIGH: Limit to around 24 requests
- INSANE: No limit, although 1000s wouldnt be a good idea
You should periodically check to see if the AbstractPlugin.isStop() method returns true - this indicates that the user has stopped the scan so your code should immediately return. The infrastructure will check this before invoking your code to scan a new target (eg page or parameter).
Advanced featuresIf your rule depends on another rule having been run then you need to specify that via the getDependency() method.
The persistent XSS rules do this, eg in TestPersistentXSSSpider and TestPersistentXSSAttack
If you need to know the exact type of parameter you are scanning, for example to ignore some types that are not relevant, then you can override the AbstractAppParamPlugin.scan(HttpMessage msg, NameValuePair originalParam) method and provide a null scan(HttpMessage msg, String param, String value) method. The NameValuePair class includes the parameter type.
Building and deploying
All ZAP add-ons are build using Apache Ant.
For the alpha active scan rules the build file is: branches/alpha/build/build.xml
All you need to do is run the deploy-ascanrulesAlpha target and the relevant add-on will be built and copied to the correct location, assuming you have a ZAP core project called 'zaproxy'.If you want to deploy to a different location then you can change it at the top of the file.
ZAP automatically extracts the files specified in the manifest into a directory underneath the ZAP user directory.
An knowledgeable user can manually edit these files and any changes will take affect when ZAP is restarted.
Updating the help and manifest
As with passive scan rules its good to add a short description of the rule to the help file: ascanalpha.html and include the new class along with any files it uses in the add-on manifest: ZapAddOn.xml
The next post in this series will be: Hacking ZAP #5: Extensions


text:
Wednesday, 29 September 2010
Slight coming of age fluff played against a backdrop of affectionate nostalgia that appears to be portraying the origin of rave culture.
Posted by McK at 23:19 No comments:
Monday, 27 September 2010
The Town
Held up against the canon of cinematic crime dramas, this musters an 'above average'.
Held up against the canon of Ben Affleck movies, this swings in at a comfortable 'really very good'.
Posted by McK at 08:31 2 comments:
Thursday, 23 September 2010
Lumbering nonsense seemingly built on the notion that a belief in the ineffectuality of the police will render you with a single digit IQ.
Changes tack several times due to what the director seems to think are twists but he's deluding himself, it's just meandering shit.
Posted by McK at 22:40 No comments:
Wednesday, 22 September 2010
My Son, My Son, What Have Ye Done
A wonderful portrait of creeping madness, chock full of Lynch hallmarks (coffee, idiosyncratic cops, Grace Zabriskie's face giving the impression it's going to jump off her head and attack) all nestled neatly in a blistering cascade of Herzog lunacy.
Posted by McK at 23:01 2 comments:
Tuesday, 21 September 2010
Russian Ark [Русский ковчег]
One shot love letter to the importance of remembering the past. An organisational feat that culminates in 2000 people desperately trying not to look directly at the camera and for the most part failing.
Posted by McK at 21:54 1 comment:
Sunday, 19 September 2010
Sleeping Beauty
Posted by McK at 11:05 No comments:
:| The Monster
Monday, 13 September 2010
Scott Pilgrim Vs. The World
A touch over eager, but they really didn't have to try so hard, I was hooked immediately by the chiptune rendition of the Universal ident music followed by the sweet tinklings of the Zelda theme.
Posted by McK at 22:49 3 comments:
Sunday, 12 September 2010
The Last Exorcism
Slow to the point of tedium. Then, just at the point when the film managed to construct a coherent justification as to why this should be, it blows itself apart with a climax of bizarre stupidity so intense an intelligence vacuum formed in my brain large enough to make me think my skull might cave in.
Posted by McK at 23:25 7 comments:
Incredible, visually epic, early dystopia.
Huge sets, staggering miniature work and a giant cast of extras invoke both a phenomenal sense of scale and a lingering lament on how modern day CGI saturation has managed to extinguish such wonder from our screens.
Posted by McK at 19:36 1 comment:
Saturday, 11 September 2010
Posted by McK at 20:53 1 comment:
Thursday, 9 September 2010
Valhalla Rising
It would appear that the best way to break a film watching hiatus is with a metaphysical viking movie.
The cinematography mimics a graphic novel, the tone is closer to that of space exploration and the whole thing is soundtracked by droning, doomy, post rock. All of which calls for cries of pretension, but then one man's pretension is another man's genius.
I'm the other man, this is fucking ace.
Posted by McK at 16:29 2 comments:
:| Refn
Wednesday, 1 September 2010
This Is England
Shane Meadows aims his considerable evocation skills at the early eighties and produces a masterpiece.
Posted by McK at 10:31 No comments:
Subscribe to: Posts (Atom)


text:
Contact me here for your next headshot session. Please feel free to reach out and say hello and contact me about shooting together prior booking your next actor headshots photo session. (I don't bite).
I'm happy to have a brief chat about your requirements and answer any questions you may have. If you simply want to sound me out and see if we connect before booking that's fine too. I'm all ears! Just pick up the phone!
Studio Contact:
My London Studio is based in North London which has great Public TFL transport links: Enfield Town, Enfield Chase, Southbury station and to Oakwood Tube station. Alternatively, I am available for a photo session at a location of your choice. (subject to numbers).
Vincenzo Photography
Telephone: 07962338289
Email: [email protected]
Parking and other bits and bobs
There's plenty of street parking for you! Please ring the doorbell and be patient. If you're early, in consideration for other clients, please come in only at your scheduled time so I'm prepared for your arrival.
Other Questions
Please feel free to get in touch to have a chat about the way I work. You can also check out my price page and also the Actors Toolbox Blog page.
Self tape requests
Please send a text or call on 07962338289 rather than sending an email for your self tape slot request. Once we have agreed the slot it's best that you forward the sides so I can prep you and the session as best as possible


text:
Due to popular demand, we are hosting another FREE QuickBooks training seminar. Are you a new user of QuickBooks? Do you need help with your bookkeeping? Do you stress every year when it comes tax time to get your books in order? This seminar is for you. Topics we will cover:
Denny & Company, LLP is offering a free, three hour seminar at our offices in Valencia on January 21st, 2009, from 9am – 12pm. Hosted by our very own Certified QuickBooks ProAdvisor.
Please contact Lisa Starr at our office to reserve your spot – 661-286-8860


text:
MAC just picked out some of their spring colored PERMANENT eyeshadows, for "Fresh Faves"!
Recent Posts
Popular Posts
Upcoming Posts
Thursday, April 10, 2008
MAC Fresh Faves
Posted by Vanessa at 9:46 AM .
1 comment
- BeautyTalk said...
Love this soft look.
- April 10, 2008 at 10:46 AM
:a: :b: :c: :d: :e: :f: :g: :h: :i: :j: :k: :l: :m: :n:
Subscribe to: Post Comments (Atom)


text:
Below are questions that have been submitted to the BFCSA. Answers will be shown as and when they are available.
Got a question? Then Click Here.
Through my job I've met a guy who is related to one Dexter Adams, coincidently I have also found out that we have some neighbours also related to him!. Obviously I know the name, but I wondered if you could supply me with a potted history of his involvement with the Bees as I would hate to get my facts wrong! Thanks Figgybee (Richard Dumayne)
Submitted 23/06/02
We're on the case - answer soon (hopefully!)
I've had a query from a Margate fan - who scored the Barnet goal against Margate in our 2-1 defeat at Hartsdown in 1968? Any pointers would be much appreciated.
Michael (Miguelito)
Submitted 12/04/02
The exact date of this match was 03/02/68, and the scorer for Barnet was Roger Figg.
Published 13/04/02
I have just read on a Wealdstone FC website that ex Barnet midfielder Steve Brinkman has died recently. Can anyone confirm this sad story as Steve was a favourite of mine. Perhaps a mention on the site would be fitting. Many Thanks, Tony Hammond aka Reckless
Submitted 17/11/01
We are sorry to say that Steve Brinkman died of a Heart-Attack recently. There is now a tribute here.
Published 19/11/01
|You invited
me to ask why the UBFCSA don't use the Durham Suite as a
meeting place.
John Cosgrove.
Submitted 15/10/01
|The BFCSA
have discussed this possibility (only informally) on
various occasions, with various chairmen over the years.
The reasons are one of cost to the club. Meetings are
held once per month (first Thursday) and run from about
7:30 to 11:00 in the evening. Although there are
sometimes up to twenty people present at the meeting,
there are often less than this. If the club were to host
the meeting in the Durham Suite then they would have to
pay for the Barstaff to open the place up, get the
heating on (during the winter months) and close and clean
up afterwards. On top of that would be the costs of
heating and lighting.
The majority of the BFCSA committee do not have more than one or two drinks in the course of the evening, so for the sake of example - if twelve people spent £4.00 each, this would be a gross income of £48.00 to the club. Assuming the Barperson is on Minimum Wage of £4.00 per hour (This is probably lower than the minimum - and lower than the barstaff are actually paid?) and they had to be paid from 7:00pm to midnight then this would cost £20.00 staight away. Add to this the cost of heating and lighting and the amount the club would actually make soon becomes neglible, if not a loss.
This has always been the mutual conclusion over the years, when it has been discussed.
Published 15/10/01


text:
« Hi, this is Antoine and Kevin! We are two, young French producers who have fallen in love with the Launchpad and we've created this blog to share our passion with you guys! You'll find lots of free resources on this website that will help you learn and play the Launchpad. Enjoy! »
For your navigation comfort, this website stores cookies. Thanks for your understanding. This website is not affiliated to Novation and does not refer to the Launchpad Pro product but to the Launchpad community and ressources.
by ULT1MOD | 4824 downloads | 8 points
The second LED pack that includes 32+ new effects, a fix for the old effects, macro mapping and cleaner set-up of the racks.


text:
Free State edges Shawnee Mission West
By Jim Bradford PrepsKC Senior Writer
OVERLAND PARK, Kan. — The stadium announcer was mispronouncing Lawrence Free State's quarterback all night long.
Something tells me that's the last time that will happen.
Bryce Torneden introduced himself to the Sunflower League Thursday night in the Firebirds 20-14 win over Shawnee Mission West at SM South District Stadium in the season opener for both teams.
Torneden, a junior two-way starter for the Firebirds, led Free State with 144 yards on 25 carries and accounted for all three Firebird scores — rushing for two touchdowns and throwing the game-winning touchdown pass to Joel Spain with 4:45 to play.
What everyone in attendance saw Thursday night is something that Free State coach Bob Lisher and the Firebirds have been seeing throughout the preseason.
"We have been seeing it in practice," Lisher said. "He makes some plays that just make you shake your head. He's legit."
Yep, that about sums it up.
With the Firebirds up 14-7 early in the fourth quarter and driving deep into the Vikings end of the field, Torneden had to come out because of cramps. The drive stalled at the Viking 5-yard line.
It's probably no coincidence that Torneden still on the sideline when the defense took the field and West went 95 yards in five plays to tie the game.
It may just be the first game of the year, but as Torneden goes, so too could the Free State Firebirds.
He was back on the field after the ensuing kickoff and led his team on a seven-play, 80-yard scoring drive that ended with Torneden hitting Spain on a 19-yard scoring strike down the middle of the Vikings defense.
"When the safety went one way, I saw Joel and just tried to get it over the linebacker," Torneden said. "I was afraid I got too much in it, but Joel made a great catch."
The Firebirds left some points on the field on Thursday. Quite a few points, really.
"We left four touchdowns out there and to do that against an excellent team like that on the road and still come out with a win is impressive," Lisher said.
Two opportunities stood out like sore thumbs as the Firebirds turned the ball over on downs inside the 5-yard line twice — once I the first half and once in the second.
Despite the offensive advantage the Firebirds had, the Vikings were never completely out of it until Shane Hofer sacked Jonathan Shull at his own 20 as time expired.
"You know that was a good sign to be able to stay close like that," said West head coach Tim Callaghan. "It shows a lot of maturity for such an inexperienced team.
"Last year, we let the game (against Free State) get away from us and we were down 28-7 at the half."
The Firebirds outgained the Vikings 397-245, including an advantage of 262-190 on the ground. That may not seem like that big of a difference, but 81 yards for the Vikings came on two rushes.
The first a 41-yarder by Tarik Watson to set up Asher Goldston's 40-yard touchdown run that tied the game with 1:35 to play in the third quarter.
Torneden had a pair of 11-yard touchdown runs — one late in the first quarter and another midway through the second quarter.
Sandwiched in between those scoring runs was an Adam Rellihan to Asher Goldston 12-yard scoring pass to get the Vikings on the board.
Park Hill Trojans
Lawrence Free State Firebirds
Savannah Savages
Atchison Redmen
Wellington-Napoleon Tigers
St. Thomas Aquinas Saints
Mill Valley Jaguars
Frontenac Raiders
John Burroughs
Maize South
Lighthouse Christian Academy
Andover Central
Heritage Ark.
St. Pius X (Festus)
Francis Howell
Leavenworth Pioneers
El Dorado Springs


text:
Cookies, cakes, candies. Five, ten, fifteen pounds. If this sounds like your holiday season, you may be thinking of lacing up those running shoes or dusting off that bike seat as a New Year's commitment to exercise more.
The American Animal Hospital Association (AAHA) asks that you also start your pet on an exercise routine.
Dogs, and even cats, need exercise too; and there's no better time for both of you to start than now.
Many dogs are weekend athletes. After a long week, it's their chance to get out and burn off energy.
Because of their enthusiasm, many of the popular breeds such as Labrador Retrievers and Golden Retrievers, will overdo it.
Unfortunately, veterinarians find that weekend warriors suffer more orthopedic injuries."The most common athletic injury is the rupture of ligaments in the knee joints, similar to what skiers and basketball players experience," says Columbia Animal Hospital veterinarian, Dr. David Tayman.
"This is caused by sudden twists or sharp change in direction often from playing Frisbee or catch."
"Field trial dogs, like Black Labs, Yellow Labs, and Golden Retrievers, usually have a lot of energy and big attitudes," says Dr. Tayman. "Plus, some of these dogs have degenerative joint disease such as hip dysplasia and elbow problems.
Too much exercise too young may contribute to arthritis."
Dr. Tayman advises owners to be more careful with animals that have more drive and will.
Avoid the type of activity that encourages turning abruptly and landing; and offer more opportunities to walk, run, or even swim.
The Columbia Animal Hospital staff recommends starting younger and middle-aged dogs on a moderate program of walking 10 to 15 minutes once or twice a day, and stepping it up to one hour a day as time permits.
If you're too busy to walk your dog every day, hire a high school student, a 4-H member, a pet-sitter, or senior volunteer to do it for you.
"Running is good exercise too, but its hard on the animals who run five miles on concrete," says Dr. Tayman. "Take your dog on a hiking trail or other soft surface to run."
And remember not to overdo it in the beginning. A novice runner wouldn't run five miles the first day out. So don't expect that of your pet.
If you're starting an exercise program for an older dog, consider having him examined by a veterinarian first.
Your pet's doctor will look at his health history, listen to his heart, check for weight gain, and possibly do blood work.
Toy dogs, like Maltese and Chihuahuas, that usually don't go for strenuous activity can be trained to be outdoor dogs, said Dr. Tayman.
An there may be hope for that fat cat who just sits on your lap.
Try changing the cat's diet to one that's calorie restricted, and introduce some physical activity such as playing with string or chasing the cat up stairs.
Weight problems often go hand-in-hand with inactive lifestyles.
Carrying a heavier load can increase the likelihood of tearing ligaments and wearing down joints. When that happens, an animal won't want to exercise which further adds to the weight problem.
This is especially a problem with older dogs.
Dr. Tayman suggests starting an overweight dog on a 15-minute walk once a day and decrease the amount of food.
Diet is important so don't feed table scraps and extras.
Your pet doesn't have to eat a lot of holiday treats to begin an exercise program.
So start the year off right with an exercise routine that will make the year healthier and brighter for both of you.


text:
VoiceByJeremy – Home – Click "Play" to hear this page read aloud in my voice!
There's no doubt that your media project is very important to you.
And there's nothing like a quality voice behind the text or message you want to convey, giving a real human connection to your business and/or artistic endeavor.
I would like the chance to be that voice. My voice over and voice recording services aim to provide a valuable addition to your project or business, including:
- Corporate Advertising (web/print/TV/radio)
- Voicemail or Answering Machine Recordings
- YouTube Video Narrations
- Literature Readings
- Special Event Announcements
- And much more!
Please take a look at the Samples and Pricing pages from the Main Menu to see if Voice By Jeremy is the right fit for you. If so, please use the Contact page to send me a message about your exciting project, and I would be happy to see how well my voice could lend to its success!


text:
Effective tools are particularly helpful. If tools are effective, one is a shrub skillful. Shrub aficionados insist passionate gardeners to avail quality tools. Metal hacksaw, trunk cutter, wood saw and many more. These tools are superb. One does not have to face difficulty now. Tree Pruning is effortless now. Branch cutting effort is easier, one gets an outstanding cutter method.
The process as to how they're going to remove the tree. Will they be going employ a crane or tower, or perhaps other regarding materials? The jobsite too as ailment of the tree to be removed will influence choice.
Another service called stump grinding is a job for tree lopping Perth specialists. There are times when old trees fall a person may have managed to mow your true but the stump and the roots are nevertheless embedded. This cannot be removed in one, several sessions. Desire to have skilled traffic to grind the stump help to make the lot area plantable by another tree a number of plants much more.
After a hurricane has gone by through the area, consumers are anxious to out and assess the damage. This is a time when injuries arise. Many people get through the actual storm just fine, then again get hurt dealing when using the aftermath. Taking proper health concerns will prevent injuries. Use common sense before approaching unstable casings.
Who doesn't like completely new cut turf? You could have the best looking lawn in the neighborhood and everyday living make your average looking home stand out. A fresh cut front yard can even make an abandon house look somewhat decent.
Many tree service providers who are participating in tree trimming and tree removal services need arborists of their staff, which inspects this site and give free advice or estimates. These service providers have got everything together including measuring tapes, string, cutters, pruners etc.
You see, with stump grinding it isn't necessary which to work with a professional, without any you carry out the job yourself you go to need all kinds equipment. Chances are you'll not own this equipment or it's going to cost you an arm including a leg to rent.
Ask to be able to visit your house and the quotation with the job which will perform. Get quotations from as any service providers as possible and then short listed them making an allowance for the service provided, the duvet of the insurance and the cost.


text:
How I picture the Twitter
I tend to resist technological change. I still don't know how to work a DVR, I use a computer made in 2004, and I'd rather carry five pounds of books than a six-ounce e-reader. Most of my tech knowledge comes from exposure through other people. I tend to be suspicious and dismissive of the new, the trending, the latest, and the popular.
But in becoming professional, that's not gonna fly.
So I'm done fighting the current. The Internet is going to become my ally in achieving authorship instead of an invasive immensity always peering over my shoulder. If social media savvy and suavity is what it takes to get noticed in a noisy world, then that's a slope I'm willing to scale — starting here:
And so it begins
Today's agenda:
- A pleasant morning cup of Method and Madness: The Making of a Story by Alice LaPlante. Chapter 1: "What is this thing called creative writing?"
- Setting up, optimizing, linking, demystifying, and blogging about the Twitter account
- Following and being followed by people thereon
- Learning about WordPress themes
- Switching themes so my bullets stop looking like X's
- Reading Michael Hyatt's blog because he knows about influence and stuff
- Reading about how to get freelance writing jobs when you have no portfolio
- Job hunt!
- Blog about something else?
To my utter surprise, breaking open the Twitterverse has actually been — well, fun! I followed some of my friends and favorite people (e.g. Dustin Kensrue, Randall Munroe, Joshua Harris, and The Batman), snazzed up my profile, ceased to care about Twitter having access to all of my Facebook, and basically learned how to get by in a whole new world! Introduction today — domination tomorrow!
Other tasks:
- Googling "how to center picture captions in WordPress"
- Getting a headache when told to add .post p.wp-caption-text {text-align:center;padding:3px;background-color:#eee;border:solid 1px #999;font-size:11px;}
.aligncenter {text-align:center;margin:0 auto;} to the end of the Stylesheet (I don't know what that is!)
- Getting further headaches from googling "what is a stylesheet." Acronym soup out there.
- Giving up and manually captioning the above twitpic.
- Reading
- about the average T-Rex's caloric intake at http://what-if.xkcd.com/78/
- Snow Hunters by Paul Yoon
- The Pilgrim's Regress by C.S. Lewis
Other share-worthy things from the last 24 hours:
- Life Won't Begin at Your Next Milestone
- Eli Glasman on not freezing the present by living in the future
And with that, NtP is out!
Far over
the Misty Mountains rise
leave us standing
upon the heights


text:
About Sudakshina
Sudakshina (Kina) Bhattacharjee (née Mukherjee) is a commercial writer, a qualified journalist, a published Business English author and an experienced digital content marketer based in the United Kingdom.
She holds a BA (2.1) Honours degree in New Media Journalism with Film and Television Studies from the University of West London (circa 2005).
Sudakshina is also a certified lecturer in the Further and Higher Education sectors and has spent seven years teaching journalism, mass media communications and psychology.
She is also a co-author of a textbook in Business English with a leading international publishing house.


text:
Laura Joseph Pres Pro Tem
Laura Joseph Pres Pro Tem
Place 4 Laura Joseph President Pro Tempore
Elected Office
Laura Joseph was elected to the Helena City Council, Place 4 in 2016. She ran on a platform of strengthening the local economy, continuing to support city departments, and marketing the city as an attractive tourist destination. .
Business and Education
Laura Joseph earned her degree in Communications from the University of Alabama's College of Communication and Information Sciences in 2001, with a concentration in advertising and a minor in studio art. She is currently employed as Art Director by NorthCape, a multi-national outdoor furniture manufacturer, and is primarily responsible for marketing and communications development, graphic design, and website administration.
Before her 10-year career the outdoor furniture industry, Laura gained experience in public utilities as Communications Director at Joe Wheeler EMC, a member-owned electric cooperative serving Morgan and Lawrence counties, where she received statewide awards for marketing planning, journalism, and graphic design.
Laura also serves as the Communications Director for the Shelby County Republican Party (SCGOP) and serves on the Alabama Republican Party Executive Committee. In addition to managing the SCGOP newsletter, website and social media, Laura has also worked on numerous local, statewide, and out-of-state campaigns, gaining valuable experience in communications planning and strategy.
Laura is a graduate of the YourTown Alabama program, a 2-day workshop which focuses on the role of design in community planning. The workshop course material addressed a range of issues in rural community planning, with special emphasis on the process by which rural communities construct a vision about their future, evaluate natural and cultural assets, and implement decisions about how their community should look and function.
Current Public Service
Laura Joseph serves as the City Council Liaison to the Helena Library Board, and as Treasurer of the Helena Library Foundation, a 501(c)3 organization that is dedicated to supporting the needs of our growing community by constructing a new library and cultural arts center.
Laura is also the City Council Liaison to the Helena Beautification Board, and has volunteered with her daughter at "basket planting time" for the past several years. She looks forward to working with the Beautification Board to help increase home values, attract business investment, and inspire community pride through beautification efforts throughout the City.
Laura and her husband, T.J. have been married 10+ years, and have two children: Anna Kate (9) and John Marshall (5). Both children attend Helena's public schools and are involved in Helena's rec league sports programs. The family lives in the Old Cahaba neighborhood, and attends Riverchase United Methodist Church, where Laura and T.J. teach the 3 year old Sunday School class.


text:
Our mission is to work with our customers to develop a comprehensive service and support plan to suit the customers' requirements. We work with our partners to provide integrated automation solutions.
We offer customised solutions for our customers in the areas of:
- Manufacturing Support Partnership
- Maintenance Management Programmes
- Industrial Parts & Machinery Repair and Overhaul
To discuss how BAY services can benefit your business, contact us via email or phone 061 603900.


text:
At West Rise Junior School, we strongly believe in celebrating success. Therefore, each Friday, we hold a Celebration Assembly to do just that!
Record of Achievement Awards:
Children can receive a Record of Achievement for just about anything but it must have been outstanding, be it outstanding work, manners or behaviour. These are recorded by members of staff in their 'Record of Achievement'. When a child receives 10 Records of Achievement, they are awarded their Bronze certificate. A further 10 sees them achieve their Silver award, while another 10 gets them the much coveted Gold award. More and more children are reaching the illusive Platinum award each year, so much so that we have now introduced the Diamond award!
These awards are given out during our Celebration Assembly each Friday and parents and carers of these children are invited to come along and share in their success.
Golden Book:
Also, during our Celebration Assembly, awards are given to any children who have been nominated in the Golden Book. These awards are for showing particular qualities and going above and beyond the call of duty in the following areas: Friendship; Respect; Courage; Determination; Inspiration; Equality; Excellence.
Tribe Points:
Much excitement surrounds the revealing of the weekly results of the Tribe Points during our Celebration Assembly. Children collect Tribe Points for anything positive, be it good behaviour, kindness, manners, working hard, trying hard and for good work. These are then totalled across the school and the winning tribe receives the winners rosette on the display in the hall.
Max the Attendance Water Buffalo:
Yes you did read correctly! We have a soft toy called Max who travels around the school staying with the class which has the highest attendance that week. He often arrives in assembly dressed up and styled in relation to what the class has been doing that week! The class with the highest attendance will be the first to leave the hall after assembly and is given ten minutes extra playtime.
And if that doesn't sound like enough for one assembly, we also have very talented children in our school who like nothing more than to perform on the stage! With this in mind, they are invited to 'audition' during Thursday break time, to see if they can get through to Celebration Assembly. The performances vary greatly and include singing, dancing, gymnastics, cheerleading, card tricks, piano playing, poetry recitals, stand-up comedy, in fact you name it, someone has probably done it!


text:
Home › Forums › Discussions › Support Portal › trouble modifying passthru sample
- This topic has 6 replies, 2 voices, and was last updated 10 years, 2 months ago by asmercer2004.
September 18, 2009 at 8:28 pm #5306
I installed the winpkfilter api and tried modifying the passthru application in the samples directory. I am trying to append gps data (latitude/longitude/altitude) to every outgoing udp packet. I think that I am modifying the data correctly, but nothing passes beyond the passthru application. I modified the code in the if case for sending, all other code is the same as the sample. The UDP packet consists of a platform header (31 bytes) and a string of data (something along the lines of this: update UAV-123 10 20 30 40 ID 3-0). I know that data is going out before I start the application, but whenever i run it the data stops flowing. As soon as I close it the data resumes.
// if the packet is to be sent
if (PacketBuffer.m_dwDeviceFlags == Ndisapi.PACKET_FLAG_ON_SEND)
// get a pointer to the EF header
pPlatformHeader = (PlatformHeader*)((byte*)pUdpHeader + sizeof(UdpHeader));
// get a pointer to the data and the length of the data
byte* pData = (byte*)pPlatformHeader + sizeof(PlatformHeader);
long dataLength = PacketBuffer.m_Length – (sizeof(ETHER_HEADER) + sizeof(IPHeader) +
sizeof(UdpHeader) + sizeof(PlatformHeader));
// copy the data into a local array
byte[] data = new byte[dataLength];
Marshal.Copy((IntPtr)pData, data, 0, (int)dataLength);
// look to see if the message is an update message
String msg = ASCIIEncoding.ASCII.GetString(data);
if (msg.Contains("update"))
// get the platform data from the message
String[] tokens = msg.Split(new char[] { ' ' });
PlatformLatitude = System.Convert.ToDouble(tokens[2]);
PlatformLongitude = System.Convert.ToDouble(tokens[3]);
PlatformAltitude = System.Convert.ToDouble(tokens[4]);
PacketBuffer.m_Length += (uint)sizeof(GPSHeader);
// Change the length field of the IP header
ushort IPLen = (ushort)(ntohs(pIpHeader->Len) + (ushort)sizeof(GPSHeader));
pIpHeader->Len = htons(IPLen);
// Recalculate IP checksum
pIpHeader->Sum = 0;
byte[] ipHeader = new byte[sizeof(IPHeader)];
Marshal.Copy((IntPtr)pIpHeader, ipHeader, 0, ipHeader.Length);
ushort newChecksum = ComputeHeaderIpChecksum(ipHeader, 0, ipHeader.Length);
pIpHeader->Sum = htons(newChecksum);
// adjust udp packet length
ushort udpLength = (ushort)(ntohs(pUdpHeader->length) + (ushort)sizeof(GPSHeader));
pUdpHeader->length = htons(udpLength);
// recalc udp checksum
pUdpHeader->th_sum = 0;
// build the outgoing packet
byte[] newPacket = new byte[sizeof(ETHER_HEADER) + sizeof(IPHeader) + sizeof(UdpHeader) +
sizeof(PlatformHeader) + dataLength + sizeof(GPSHeader)];
Marshal.Copy((IntPtr)pEthHeader, newPacket, 0, sizeof(ETHER_HEADER));
Marshal.Copy((IntPtr)pIpHeader, newPacket, sizeof(ETHER_HEADER), sizeof(IPHeader));
Marshal.Copy((IntPtr)pUdpHeader, newPacket, sizeof(ETHER_HEADER) + sizeof(IPHeader),
Marshal.Copy((IntPtr)pPlatformHeader, newPacket, sizeof(ETHER_HEADER) + sizeof(IPHeader) +
sizeof(UdpHeader), sizeof(PlatformHeader));
Marshal.Copy((IntPtr)pData, newPacket, sizeof(ETHER_HEADER) + sizeof(IPHeader) +
sizeof(UdpHeader) + sizeof(PlatformHeader), (int)dataLength);
int gpsOffset = sizeof(ETHER_HEADER) + sizeof(IPHeader) + sizeof(UdpHeader) +
sizeof(PlatformHeader) + (int)dataLength;
Array.Copy(System.BitConverter.GetBytes(PlatformLatitude), 0, newPacket, gpsOffset, sizeof(double));
Array.Copy(System.BitConverter.GetBytes(PlatformLongitude), 0, newPacket, gpsOffset+8,
Array.Copy(System.BitConverter.GetBytes(PlatformAltitude), 0, newPacket, gpsOffset+16, sizeof(double));
IntPtr outgoingPacket = Marshal.AllocHGlobal((IntPtr)(newPacket.Length));
Marshal.Copy(newPacket, 0, outgoingPacket, newPacket.Length);
ETH_REQUEST outgoingRequest = new ETH_REQUEST();
outgoingRequest.hAdapterHandle = Request.hAdapterHandle;
outgoingRequest.EthPacket.Buffer = outgoingPacket;
// put the modified packet on the network card for sending
Ndisapi.SendPacketToAdapter(hNdisapi, ref outgoingRequest);
// free outgoing memory
Also here is the code I used for the IP checksum calculation, in case that is the problem.
ushort ComputeHeaderIpChecksum(byte[] header, int start, int length)
ushort word16;
long sum = 0;
for (int i = start; i < (length + start); i += 2)
word16 = (ushort)(((header << 8) & 0xFF00) + (header & 0xFF));
sum += (long)word16;
while ((sum >> 16) != 0)
sum = (sum & 0xFFFF) + (sum >> 16);
sum = ~sum;
return (ushort)sum;
Any help would be greatly appreciated.September 20, 2009 at 11:08 am #6838Vadim SmirnovModerator
I'm not experienced in C# well enough to inspect your code for possible errors. However, I would recommend you to install network sniffer like Network Monitor or Wireshark and intercept your handcrafted packets from the network. Network sniffer will show if anything is wrong with checksum.
Also, I can't see in the code fragment where do you check if you are working with UDP packet. Or do you treat every outgoing packet as UDP one?September 21, 2009 at 3:08 am #6839
i have wireshark installed and just can't see the packets at all. When i modified the receiving section of the passthru code i could see bad ip checksum, but got that part fixed (which makes me think it isn't a checksum problem). To test all this i have an application in the background that generates an outgoing packet every 5 seconds. When the modified passthru program is run there is NOTHING put on the network (not just a bad packet or header or something, but absolutely nothing). If I shut it down the packets are sent as normal.
In answer to your other question, I am looking exclusively for packets that are udp and on ports 34401-34403. That part of the code wasn't in what i posted, but I am checking these header fields in the loop before comparing the device flags for a send/receive flag. I am not at my desk right now or i'd post that code if you think it would help.September 21, 2009 at 2:56 pm #6840Vadim SmirnovModerator
SendPacketToAdapter can send any packet on the network even if it is not in correct format. I think you just don't form the correct INTERMEDIATE_BUFFER. I'm not sure I fully understand what you are doing in your C# code as I'm not really experienced in C#, but to my limited knowledge the code is incorrect.
byte[] newPacket = new byte[sizeof(ETHER_HEADER) + sizeof(IPHeader) + sizeof(UdpHeader) +
sizeof(PlatformHeader) + dataLength + sizeof(GPSHeader)];
IntPtr outgoingPacket = Marshal.AllocHGlobal((IntPtr)(newPacket.Length));
Marshal.Copy(newPacket, 0, outgoingPacket, newPacket.Length);
ETH_REQUEST outgoingRequest = new ETH_REQUEST();
outgoingRequest.hAdapterHandle = Request.hAdapterHandle;
outgoingRequest.EthPacket.Buffer = outgoingPacket;
In your code above you use newPacket as managed INTERMEDIATE_BUFFER and outgoingPacket as unmanaged INTERMEDIATE_BUFFER. However, the size for allocation for newPacket must be sizeof(INTERMEDIATE_BUFFER), not the size you have used above. As well when you copy managed INTERMEDIATE_BUFFER into unmanaged memory once again you should copy sizeof(INTERMEDIATE_BUFFER).
Note that you have to initialize INTERMEDIATE_BUFFER fields (you can copy values from the original structure and adjust m_Length).
Also note that the resulted packet must fit into MAX_ETHER_FRAME (more exactly it should not exceed network interface MTU value).September 21, 2009 at 3:11 pm #6841
That actually makes sense. I actually wasn't using the INTERMEDIATE_BUFFER structure at all. I was just builing and IntPtr to a packet that I built. I will correct that to look something like:
INTERMEDIATE_BUFFER outgoingBuffer = new INTERMEDIATE_BUFFER();
outgoingBuffer.m_dwDeviceFlags = PacketBuffer.m_dwDeviceFlags; outgoingBuffer.m_Flags = PacketBuffer.m_Flags;
outgoingBuffer.m_Length = PacketBuffer.m_Length + sizeof(GPSHeader);
outgoingBuffer.m_qLink = PacketBuffer.m_qLink;
outgoingBuffer.m_IBuffer = ???
should the m_IBuffer field contain just the udp packet data or the entire packet (ether_header, ipheader, etc.)September 21, 2009 at 5:10 pm #6842
A quick update:
I modified my code based on your last comments (thanks for the response by the way), and ended up with this:
byte[] newPacket = new byte[sizeof(ETHER_HEADER) + sizeof(IPHeader) + sizeof(UdpHeader) + sizeof(PlatformHeader) + dataLength + sizeof(GPSHeader)];
INTERMEDIATE_BUFFER outgoingBuffer = new INTERMEDIATE_BUFFER();
outgoingBuffer = PacketBuffer;
outgoingBuffer.m_Length = PacketBuffer.m_Length + (uint)sizeof(GPSHeader);
outgoingBuffer.m_IBuffer = newPacket;
IntPtr outgoingPacket = Marshal.AllocHGlobal(Marshal.SizeOf(outgoingBuffer));
Marshal.StructureToPtr(outgoingBuffer, outgoingPacket, false);
ETH_REQUEST outgoingRequest = new ETH_REQUEST();
outgoingRequest.hAdapterHandle = Request.hAdapterHandle;
outgoingRequest.EthPacket.Buffer = outgoingPacket;
// put the modified packet on the network card for sending
Ndisapi.SendPacketToAdapter(hNdisapi, ref outgoingRequest);
When it gets to the line Marshal.StructureToPtr(…) I get the following error:
Type could not be marshaled because the length of an embedded array instance does not match the declared
length in the layout.
I assume that this is a problem with the data length or something but I can't figure it out. Any idea as to why I would be getting this error?September 21, 2009 at 6:41 pm #6843
Another update;
I got it working. It turns out the problem I was having was due to how I was allocating the newPacket array. I changed to allocate a byte array of MAX_ETHER_FRAME size and it works fine now. Thanks for your help. I must say that it is refreshing to be able to post a question and get a reasonable answer instead of the usual "reading off the cue card" response that people seem to put on other forums.
- You must be logged in to reply to this topic.