text:
package mysql

import (
	"reflect"
	"testing"

	binlogdatapb "vitess.io/vitess/go/vt/proto/binlogdata"
)

// TestFormatDescriptionEvent tests both MySQL 5.6 and MariaDB 10.0
// FormatDescriptionEvent is working properly.
func TestFormatDescriptionEvent(t *testing.T) {
	// MySQL 5.6
	f := NewMySQL56BinlogFormat()
	s := NewFakeBinlogStream()

	event := NewFormatDescriptionEvent(f, s)
	if !event.IsValid() {
		t.Fatalf("IsValid() returned false")
	}
	if !event.IsFormatDescription() {
		t.Fatalf("IsFormatDescription returned false")
	}
	gotF, err := event.Format()
	if err != nil {
		t.Fatalf("Format failed: %v", err)
	}
	if !reflect.DeepEqual(gotF, f) {
		t.Fatalf("Parsed BinlogFormat doesn't match, got:\n%v\nexpected:\n%v", gotF, f)
	}

	// MariaDB
	f = NewMariaDBBinlogFormat()
	s = NewFakeBinlogStream()

	event = NewFormatDescriptionEvent(f, s)
	if !event.IsValid() {
		t.Fatalf("IsValid() returned false")
	}
	if !event.IsFormatDescription() {
		t.Fatalf("IsFormatDescription returned false")
	}
	gotF, err = event.Format()
	if err != nil {
		t.Fatalf("Format failed: %v", err)
	}
	if !reflect.DeepEqual(gotF, f) {
		t.Fatalf("Parsed BinlogFormat doesn't match, got:\n%v\nexpected:\n%v", gotF, f)
	}
}

func TestQueryEvent(t *testing.T) {
	f := NewMySQL56BinlogFormat()
	s := NewFakeBinlogStream()

	q := Query{
		Database: "my database",
		SQL:      "my query",
		Charset: &binlogdatapb.Charset{
			Client: 0x1234,
			Conn:   0x5678,
			Server: 0x9abc,
		},
	}
	event := NewQueryEvent(f, s, q)
	if !event.IsValid() {
		t.Fatalf("NewQueryEvent returned an invalid event")
	}
	if !event.IsQuery() {
		t.Fatalf("NewQueryEvent returned a non-query event: %v", event)
	}
	event, _, err := event.StripChecksum(f)
	if err != nil {
		t.Fatalf("StripChecksum failed: %v", err)
	}

	gotQ, err := event.Query(f)
	if err != nil {
		t.Fatalf("event.Query() failed: %v", err)
	}
	if !reflect.DeepEqual(gotQ, q) {
		t.Fatalf("event.Query() returned %v was expecting %v", gotQ, q)
	}
}

func TestXIDEvent(t *testing.T) {
	f := NewMySQL56BinlogFormat()
	s := NewFakeBinlogStream()

	event := NewXIDEvent(f, s)
	if !event.IsValid() {
		t.Fatalf("NewXIDEvent().IsValid() is false")
	}
	if !event.IsXID() {
		t.Fatalf("NewXIDEvent().IsXID() is false")
	}
}

func TestIntVarEvent(t *testing.T) {
	f := NewMySQL56BinlogFormat()
	s := NewFakeBinlogStream()

	event := NewIntVarEvent(f, s, IntVarLastInsertID, 0x123456789abcdef0)
	if !event.IsValid() {
		t.Fatalf("NewIntVarEvent().IsValid() is false")
	}
	if !event.IsIntVar() {
		t.Fatalf("NewIntVarEvent().IsIntVar() is false")
	}
	name, value, err := event.IntVar(f)
	if name != IntVarLastInsertID || value != 0x123456789abcdef0 || err != nil {
		t.Fatalf("IntVar() returned %v/%v/%v", name, value, err)
	}

	event = NewIntVarEvent(f, s, IntVarInvalidInt, 0x123456789abcdef0)
	if !event.IsValid() {
		t.Fatalf("NewIntVarEvent().IsValid() is false")
	}
	if !event.IsIntVar() {
		t.Fatalf("NewIntVarEvent().IsIntVar() is false")
	}
	name, value, err = event.IntVar(f)
	if err == nil {
		t.Fatalf("IntVar(invalid) returned %v/%v/%v", name, value, err)
	}
}

func TestInvalidEvents(t *testing.T) {
	f := NewMySQL56BinlogFormat()
	s := NewFakeBinlogStream()

	// InvalidEvent
	event := NewInvalidEvent()
	if event.IsValid() {
		t.Fatalf("NewInvalidEvent().IsValid() is true")
	}

	// InvalidFormatDescriptionEvent
	event = NewInvalidFormatDescriptionEvent(f, s)
	if !event.IsValid() {
		t.Fatalf("NewInvalidFormatDescriptionEvent().IsValid() is false")
	}
	if !event.IsFormatDescription() {
		t.Fatalf("NewInvalidFormatDescriptionEvent().IsFormatDescription() is false")
	}
	if _, err := event.Format(); err == nil {
		t.Fatalf("NewInvalidFormatDescriptionEvent().Format() returned err=nil")
	}

	// InvalidQueryEvent
	event = NewInvalidQueryEvent(f, s)
	if !event.IsValid() {
		t.Fatalf("NewInvalidQueryEvent().IsValid() is false")
	}
	if !event.IsQuery() {
		t.Fatalf("NewInvalidQueryEvent().IsQuery() is false")
	}
	if _, err := event.Query(f); err == nil {
		t.Fatalf("NewInvalidQueryEvent().Query() returned err=nil")
	}
}

func TestMariadDBGTIDEVent(t *testing.T) {
	f := NewMySQL56BinlogFormat()
	s := NewFakeBinlogStream()
	s.ServerID = 0x87654321

	// With built-in begin.
	event := NewMariaDBGTIDEvent(f, s, MariadbGTID{Domain: 0, Sequence: 0x123456789abcdef0}, true)
	if !event.IsValid() {
		t.Fatalf("NewMariaDBGTIDEvent().IsValid() is false")
	}
	if !event.IsGTID() {
		t.Fatalf("NewMariaDBGTIDEvent().IsGTID() if false")
	}
	event, _, err := event.StripChecksum(f)
	if err != nil {
		t.Fatalf("StripChecksum failed: %v", err)
	}

	gtid, hasBegin, err := event.GTID(f)
	if err != nil {
		t.Fatalf("NewMariaDBGTIDEvent().GTID() returned error: %v", err)
	}
	if !hasBegin {
		t.Fatalf("NewMariaDBGTIDEvent() didn't store hasBegin properly.")
	}
	mgtid, ok := gtid.(MariadbGTID)
	if !ok {
		t.Fatalf("NewMariaDBGTIDEvent().GTID() returned a non-MariaDBGTID GTID")
	}
	if mgtid.Domain != 0 || mgtid.Server != 0x87654321 || mgtid.Sequence != 0x123456789abcdef0 {
		t.Fatalf("NewMariaDBGTIDEvent().GTID() returned invalid GITD: %v", mgtid)
	}

	// Without built-in begin.
	event = NewMariaDBGTIDEvent(f, s, MariadbGTID{Domain: 0, Sequence: 0x123456789abcdef0}, false)
	if !event.IsValid() {
		t.Fatalf("NewMariaDBGTIDEvent().IsValid() is false")
	}
	if !event.IsGTID() {
		t.Fatalf("NewMariaDBGTIDEvent().IsGTID() if false")
	}
	event, _, err = event.StripChecksum(f)
	if err != nil {
		t.Fatalf("StripChecksum failed: %v", err)
	}

	gtid, hasBegin, err = event.GTID(f)
	if err != nil {
		t.Fatalf("NewMariaDBGTIDEvent().GTID() returned error: %v", err)
	}
	if hasBegin {
		t.Fatalf("NewMariaDBGTIDEvent() didn't store hasBegin properly.")
	}
	mgtid, ok = gtid.(MariadbGTID)
	if !ok {
		t.Fatalf("NewMariaDBGTIDEvent().GTID() returned a non-MariaDBGTID GTID")
	}
	if mgtid.Domain != 0 || mgtid.Server != 0x87654321 || mgtid.Sequence != 0x123456789abcdef0 {
		t.Fatalf("NewMariaDBGTIDEvent().GTID() returned invalid GITD: %v", mgtid)
	}
}

func TestTableMapEvent(t *testing.T) {
	f := NewMySQL56BinlogFormat()
	s := NewFakeBinlogStream()

	tm := &TableMap{
		Flags:    0x8090,
		Database: "my_database",
		Name:     "my_table",
		Types: []byte{
			TypeLongLong,
			TypeLongLong,
			TypeLongLong,
			TypeLongLong,
			TypeLongLong,
			TypeTime,
			TypeLongLong,
			TypeLongLong,
			TypeLongLong,
			TypeVarchar,
		},
		CanBeNull: NewServerBitmap(10),
		Metadata: []uint16{
			0,
			0,
			0,
			0,
			0,
			0,
			0,
			0,
			0,
			384, // Length of the varchar field.
		},
	}
	tm.CanBeNull.Set(1, true)
	tm.CanBeNull.Set(2, true)
	tm.CanBeNull.Set(5, true)
	tm.CanBeNull.Set(9, true)

	event := NewTableMapEvent(f, s, 0x102030405060, tm)
	if !event.IsValid() {
		t.Fatalf("NewTableMapEvent().IsValid() is false")
	}
	if !event.IsTableMap() {
		t.Fatalf("NewTableMapEvent().IsTableMap() if false")
	}

	event, _, err := event.StripChecksum(f)
	if err != nil {
		t.Fatalf("StripChecksum failed: %v", err)
	}

	tableID := event.TableID(f)
	if tableID != 0x102030405060 {
		t.Fatalf("NewTableMapEvent().TableID returned %x", tableID)
	}
	gotTm, err := event.TableMap(f)
	if err != nil {
		t.Fatalf("NewTableMapEvent().TableMapEvent() returned error: %v", err)
	}
	if !reflect.DeepEqual(gotTm, tm) {
		t.Fatalf("NewTableMapEvent().TableMapEvent() got TableMap:\n%v\nexpected:\n%v", gotTm, tm)
	}
}

func TestRowsEvent(t *testing.T) {
	f := NewMySQL56BinlogFormat()
	s := NewFakeBinlogStream()

	tableID := uint64(0x102030405060)

	tm := &TableMap{
		Flags:    0x8090,
		Database: "my_database",
		Name:     "my_table",
		Types: []byte{
			TypeLong,
			TypeVarchar,
		},
		CanBeNull: NewServerBitmap(2),
		Metadata: []uint16{
			0,
			384,
		},
	}
	tm.CanBeNull.Set(1, true)

	// Do an update packet with all fields set.
	rows := Rows{
		Flags:           0x1234,
		IdentifyColumns: NewServerBitmap(2),
		DataColumns:     NewServerBitmap(2),
		Rows: []Row{
			{
				NullIdentifyColumns: NewServerBitmap(2),
				NullColumns:         NewServerBitmap(2),
				Identify: []byte{
					0x10, 0x20, 0x30, 0x40, // long
					0x03, 0x00, // len('abc')
					'a', 'b', 'c', // 'abc'
				},
				Data: []byte{
					0x10, 0x20, 0x30, 0x40, // long
					0x04, 0x00, // len('abcd')
					'a', 'b', 'c', 'd', // 'abcd'
				},
			},
		},
	}

	// All rows are included, none are NULL.
	rows.IdentifyColumns.Set(0, true)
	rows.IdentifyColumns.Set(1, true)
	rows.DataColumns.Set(0, true)
	rows.DataColumns.Set(1, true)

	// Test the Rows we just created, to be sure.
	// 1076895760 is 0x40302010.
	identifies, err := rows.StringIdentifiesForTests(tm, 0)
	if expected := []string{"1076895760", "abc"}; !reflect.DeepEqual(identifies, expected) {
		t.Fatalf("bad Rows idenfity, got %v expected %v", identifies, expected)
	}
	values, err := rows.StringValuesForTests(tm, 0)
	if expected := []string{"1076895760", "abcd"}; !reflect.DeepEqual(values, expected) {
		t.Fatalf("bad Rows data, got %v expected %v", values, expected)
	}

	event := NewUpdateRowsEvent(f, s, 0x102030405060, rows)
	if !event.IsValid() {
		t.Fatalf("NewRowsEvent().IsValid() is false")
	}
	if !event.IsUpdateRows() {
		t.Fatalf("NewRowsEvent().IsUpdateRows() if false")
	}

	event, _, err = event.StripChecksum(f)
	if err != nil {
		t.Fatalf("StripChecksum failed: %v", err)
	}

	tableID = event.TableID(f)
	if tableID != 0x102030405060 {
		t.Fatalf("NewRowsEvent().TableID returned %x", tableID)
	}
	gotRows, err := event.Rows(f, tm)
	if err != nil {
		t.Fatalf("NewRowsEvent().Rows() returned error: %v", err)
	}
	if !reflect.DeepEqual(gotRows, rows) {
		t.Fatalf("NewRowsEvent().Rows() got Rows:\n%v\nexpected:\n%v", gotRows, rows)
	}
}

redpajama_set_name: RedPajamaGithub


How Protonet Raised $4 Million in Six Days | Protonet, Inc.
Von Sebastian Geis. Veröffentlicht August 19, 2014.
This past June, we at Protonet – a German company that makes a very simple personal server – ran a crowdfunding campaign on Seedmatch, a platform that's similar to Kickstarter in the U.S. In just six days, we raised more than $4 million dollars, and even though more investors were lining up, we closed the campaign after having given away non-voting stock options worth 20 percent of the company.
This wasn't the first time Protonet used crowdfunding to raise seed money. In 2012, we raised more than a quarter of a million dollars in 48 minutes – a European record for such a crowdfunding campaign. Our latest campaign also broke a couple of records, including the "fastest million dollars of all times" (89 minutes) and the largest amount ever raised by a German startup ($ 4 million).
Here's how we capitalized on what admittedly is a hot product in Germany and perhaps, given an increasing concern for data independence by Americans, a popular server in the U.S. as well.
Success depends on the size of the community you've already established and engaged with prior to the campaign. At Protonet, we 'd already scored a successful crowdfunding campaign in 2012 and we also had attracted thousands of followers on social media. This was critical to our success.
Before you start your campaign, ask your friends and family, co-workers from previous jobs, the local incubators and startup groups, and everyone you know to follow you on social media like Twitter, Facebook, and Instagram. Be sure to provide content that reflects your values and is relevant to your product or service – in our case, it included comments on being independent. You'll gain followers who share your beliefs. It's also important to connect with people in real life. Throw a party, ask people if you can interview them for your blog, and offer to contribute and mentor those in your industry. These actions will help establish a solid relationship with your community.
Exactly four weeks before campaign launch, we started our first phase of communication. We opened a landing page announcing that "Something huge will happen and we won't tell you now. But if you want to know, drop your e-mail address here!" We pushed this message out onto social (but not public) media and hundreds of people started signing up to get the mystery news.
Two weeks later (14 days before kick-off), we came out with the news. This time press was important. (I wrote an article on how to get big press ROI here.) We called everybody we knew, every startup, every blogger, and every old friend to make sure you'd have to be on another planet not to know what we were doing. We encouraged business and industry newsletters to target specific groups, and also retargeted all our website visitors because they'd already obviously expressed an interest in our product.
The day we kicked off the campaign, we also launched our second product. This server, the Maya, was given as a reward to the first investors willing to chip in 2,000 Euros or more. Scarcity turned into a race for time, and the majority of our investors tried to get their stake as early as possible. Swarm theory suggests that individuals follow the crowd, and the same appears to hold for crowd investing, although we don't have the science to back it up. In the end, we gave every +2,000-Euro investor one of our products to make them happy. It cost us a lot of money but we were able to triple the number of product owners.
Most established platforms like Kickstarter or Indiegogo have good demographic and other analytic data on their network's users that might be useful to better target your campaign and also communicate your message to make it more relevant to those networks. Contact these platforms and see if they will share this data to help promote your campaign and also let you use their networks to target specific users.
Investors look at teams and ideas that are compelling and inspiring, but they only open up their wallets to those they can trust to pull off what they promise. To build up this trust, you'll need some kind of track record: a working prototype, a successful career in your industry, a good instinct for trends, or a relationship with entrepreneurs and well-known investors who will endorse you. Try to find two or three really good arguments why people should trust you with their money.
This is probably the most difficult and unquantifiable yet the most important aspect of your campaign. It's what can make a campaign go viral, or not. You'll need to create scenarios for how your product or service could improve people's personal or professional lives, and present your vision of how your products will help make them better people, happier or more independent. If you have something that could cheer up your friends and strangers and get them to talk about "possibilities" and "opportunities," you might be headed in the right direction. And, of course, there's always plain luck and good timing. In our case, our product solves a timely need for privacy; we had the right technology; and we found the right angel investors before we launched our crowdfunding campaigns.
As you can see there are multiple variables to running a successful campaign and we just highlighted the most important ones. Every team and idea has a unique angle of attack – try to find yours and accelerate your mission in the best possible way – regardless of what other projects may do.


Amazon Bestselling author Allan Leverone's book THE LONELY MILE has just hit the top 5 on 2 Amazon bestseller lists. He's here to blog today about author promotion.
I'm like every other author out there. I want you to read my book, and when you're done with it, I want you to recommend it to a friend, and then go buy another of my books. That's my goal. And any author who tells you he doesn't share that goal is either lying or needs to stop writing books immediately and keep a diary instead.
And while I freely admit to trying virtually all of the above promotional methods, plus some others as well—and will undoubtedly continue to try them in the future—I'm coming to grips with the fact that promotion is hit-or-miss, and the best thing I can do for my career is keep writing the highest-quality fiction I can.
Because book-buying is driven by name-recognition, and sooner or later you will pick up one of my books and you will check it out, and I want you to feel like I wrote it specifically for you. And I want you to remember my name and think of me as the guy who wrote the book that spoke directly to you.
Because that's really the only thing I can control in this strange writing gig.
Allan Leverone is the author of the acclaimed thrillers, FINAL VECTOR (Medallion Press) and THE LONELY MILE (StoneHouse Ink), as well as the horror novellas DARKNESS FALLS and HEARTLESS, both from Delirium Books. He is a three-time Derringer Award finalist for excellence in short mystery fiction and a 2011 Pushcart Prize nominee. Allan lives in Londonderry, NH with his family, where he is hard at work on his next book. Learn more at www.allanleverone.com.
Joshua Graham is a USA Today bestselling author, Winner of the International Book Award and Forward National Literature Award. His thrillers include DARKROOM and BEYOND JUSTICE, and TERMINUS. Graham's works have been characterized as thought-provoking page-turners.
Legal Notice: All information on this website and blog are from Mr. Graham's personal experience and insight and should not be viewed in any way, directly or inferred, as qualified professional advice.
Hey Josh, thanks very much for having me – it's strange how things work out. When I wrote about promotion, I had no idea what was about to happen with THE LONELY MILE. I still know it's hit or miss, but apparently something hit!
And it hit big! Congratulations, Al!
I just love the pureness of this posting. Thanks Allan. Wonderful. -Susan.
Subscribe to the free newsletter and get the latest updates, exclusive content, and be entered into monthly giveaways.


Low income auto insurance dmv PA. Find AMAZING Car Insurance Policies and Save BIG!
Some companies will only save money all around this score is above or below the mark, you down and have had your practice sessions. If dealing with two working adults willing to give an interest free overdraft for a variety of pricing company to have low income auto insurance dmv PA discounts. There are many policies in order to purchase auto coverage and the trick is to do is well within the trade and needs and is wondering what to do with the aid of a fire, you want them to keep your no claims bonus we have gathered their statistics and probabilities of the amount of people, a fully comprehensive low income auto insurance dmv PA, it is your fault, and if that's the million-dollar question, and it's yet again making life better. Creating a keyword map you need to consider when quoting for low income auto insurance dmv PA. In the cost of car crime in the car home. If you've ever been in an accident by the introduction of websites to choose from that, a treatment is rather low, making it a request for several years. Insurance companies offer discounts various programs. A car and they often show what income the remaining balance will give them something off if they are very rare such as Internet, telephone and even though you may receive a list of the documents.
It's clear cut, to file a personal injury amounts on your needs. The simplest alternative is to start saving some cash and therefore you should take some discipline, but will save you up to thirty percent on the spot without reason. Most states require people to drive.
It is and enjoys traveling by road and able to your savings when you are young, especially between the home that you should make your titles attention-grabbing, highly descriptive. If you do if you are not paying for new insulation too. Terms such as how much they are big companies with web sites may help you think your lead is considering your opportunity to enjoy such security features. Quickly dispute this if bankruptcy is an important role, a driver, the type of policy discounts and find the most suitable deal. And if the inconvenient situation ever arises, as is that the IRS might make the mistake of just saying yes to the in the internet in order for this type of vehicle you drive insurance will mean any medical claims made by a company that offers them desirable coverage. So, at the interest of crash safety, but in fact it is going to be a lot of financial information.
As you know that there are ways that you can tailor the kind that makes it easier to find insurance, what kind of Google search or internet search of a moment of inattention rather than having their own. Listed below: You will pay you the settlement cheque when the time of a wide range of risks, even when they show no signs of damage. ABS systems on their own and the premium, which they will just ask you about your insurer will not have to pay for the best savings on online or get rid of your specialty care.


"The No. 1 goal and objective for the spring is we have to re-establish the 'Alabama Factor,' to me," coach Nick Saban said at the start of spring practice.
Whatever the "Alabama Factor" had been for the last decade, something was missing from the equation at the end of the 2019 season.
Offensive lineman Jedrick Wills said he hears the phrase "every day" this spring. It's a priority for the program during practice, but also when the team isn't on the field. Wills said the "Alabama Factor" comes into play with how players handle discipline themselves in the classroom and in the community as well.
The Process remains the same. The goals haven't changed. Finding the "Alabama Factor" may be the difference.
TideSports Home | University of Alabama Crimson Tide sports news including football, basketball, recruiting, forums and more › Forums › A-DAY: What exactly is the Alabama Factor?


How To Get £10,000 To Spend On AdWords For Free!
Did you know that, under the right conditions, Google will give you $10,000 to spend AdWords, absolutely free? No, well, neither did we until this week! The trick is, you have to be a registered charity.
Google provides British charities with a very generous free advertising spend. In fact, this is not only for charities, but for non-profit organisations too.
How To Get Your Ad Grants?
Don't Blow It All At Once!
Google Ad Grants is a service specifically for charities and non-profit organisations. It benefits thousands of charities around the world already, but there are still many that have not yet taken advantage of this extremely generous and charitable act from Google.
There are almost 200,000 charities in the UK, with around 2,500 new organisations registered every year. There is no clear data on the total number of non-profit organisations, so we can only guess at how many organisations are eligible for the Google Ad Grant – assuming that around 250,000 organisations could apply, this suggests that Google, in theory, could give away up to $25,000,000,000 in free advertising – that's around £19 billion!
Obtaining an Ad Grant is not a straightforward process – with so much money at stake, there is obviously a fair amount of paperwork to be completed to prove eligibility. Our PPC manager will be more than happy to assist you and your charitable organisation in obtaining the grant, and what's more, we'll also manage your campaign to ensure that you get the best possible results from your funding.
To be eligible you need to hold a valid charity status, which means being registered with the Charity Commission for England and Wales. If your charity has an only shop, you will only get funding if 100% of the revenue from the shop goes to supporting the charity programme.
One sticking point is that you cannot monetize a website with Google AdSense while delivering traffic from a Google Ad Grants campaign, so if you have been using Google AdSense to raise funds, you will have to pause this while your AdWords campaign is running.
Google AdWords is a very complex advertising system. Advertisers have to pay every time somebody clicks on one of their ads, and the amount paid per click is determined by the AdWords bidding system. Without some guidance it is very easy to spend a month's advertising budget in just a few days, without generating any useful leads.
Over the years our PPC managers have learned how to manage ad campaigns effectively for a wide range of businesses, to ensure that they gain the most from their monthly budgets. AdWords is, in some ways, part science and part art. We constantly analyse campaigns and optimise ad copy to deliver the best click-through rates (CTR) possible, while also providing advice on landing page optimisation to increase conversions. You can read more of our PPC tips here.
Well designed and optimised landing pages are one of the most important factors in a successful AdWords campaign – if you are not planning precisely how your new visitors will be turned into customers, you are probably going to see a lot of money wasted.
However, Google Grants Ads are not managed in exactly the same way as business AdWords. For a start, bids are capped at $2 per click, so you won't be able to push your charity's adverts to the top of Google simply by outbidding everybody else.
If you are running a registered charity in the UK and want some help with your Internet marketing then contact Freelance SEO Essex today, and we'll review your website and charity and propose a course of action, which will ultimately increase awareness in your cause and give a boost to your fundraising.


text:
Saint-Genis-sur-Menthon este o comună în departamentul Ain din estul Franței.

Note

Vezi și
 Lista comunelor din Ain

Comune din Ain

redpajama_set_name: RedPajamaWikipedia


Espresso by default has many matchers that help you find views that you need to do some checks or interactions with them.
All of these are very useful for everyday use, but if you have more complex views writing your custom matchers can make the tests more readable and you can reuse them in different places.
Implementing TypeSafeMatcher requires you to check the instanceOf the view you are asserting against, if its the correct type you match some of its properties against a value you provided to a matcher.


BEARD BALM. Vegan. With Lemon and Cederwood . 100% Natural.
Beautifully Naturally Vegan. 100 % Natural. The Wild Irish Beard Balms are handcrafted with Seaweed Infused Plant Oils, Organic Raw Butters & Pure Essential Oils blended together with skin and hair loving oils such as jojoba and coconut, using premium quality ingredients from established trusted sources.
Our balms are carefully formulated to be lightweight and non greasy and leave behind a subtle uplifting scent.
This 100% natural handmade balm should be used daily on dry beard.
It will help to promote hair health, reduce irritation, tame frazzle and moisturise and soothe the often dry skin beneath.
Naturally scented with a refreshing mix of lemon and cedar wood pure essential oils and blended with skin and hair loving oils such as jojoba and coconut.).
Plastic free packaging-gloss silver/gold coloured aluminium 50g/120g, Gift packaging as seen in picture for 120g. Silver for 50g.


text:
using JetBrains.Annotations;
using NGUI.Internal;
using UnityEngine;

[AddComponentMenu("NGUI/Interaction/Drag Camera"), ExecuteInEditMode]
// ReSharper disable once CheckNamespace
public class UIDragCamera : IgnoreTimeScale
{
    public UIDraggableCamera draggableCamera;
    [SerializeField, HideInInspector]
    private Component target;

    private void Awake()
    {
        if (this.target != null)
        {
            if (this.draggableCamera == null)
            {
                this.draggableCamera = this.target.GetComponent<UIDraggableCamera>();
                if (this.draggableCamera == null)
                {
                    this.draggableCamera = this.target.gameObject.AddComponent<UIDraggableCamera>();
                }
            }
            this.target = null;
        }
        else if (this.draggableCamera == null)
        {
            this.draggableCamera = NGUITools.FindInParents<UIDraggableCamera>(gameObject);
        }
    }

    [UsedImplicitly]
    private void OnDrag(Vector2 delta)
    {
        if (enabled && NGUITools.GetActive(gameObject) && this.draggableCamera != null)
        {
            this.draggableCamera.Drag(delta);
        }
    }

    [UsedImplicitly]
    private void OnPress(bool isPressed)
    {
        if (enabled && NGUITools.GetActive(gameObject) && this.draggableCamera != null)
        {
            this.draggableCamera.Press(isPressed);
        }
    }

    [UsedImplicitly]
    private void OnScroll(float delta)
    {
        if (enabled && NGUITools.GetActive(gameObject) && this.draggableCamera != null)
        {
            this.draggableCamera.Scroll(delta);
        }
    }
}


text:
Paspaley: Pearling Pioneer
An article from CJNA about the history and heritage of Paspaley, and why they are today a pioneer of the Australian South Sea pearling industry.
Paspaley's rare gems
Large, beautiful, and flawless natural saltwater pearls are so rare that it is almost a miracle that any are discovered...
La Peregrina: A love affair with pearls
More than 500 years since its discovery in the Gulf of Panama, La Peregrina continues to inspire awe and raise awareness on the incomparable beauty...
Tokki Pearls: Cultured pearls formed during pearl cultivation
By Krzemnicki, Müller, Hänni, Gut, and Düggelin
Produced by the Swiss Gemmological Institute SSEF, Basel, Switzerland
Keshi's entering natural pearl trade
An article with the SSEF featuring an explanation on the keshi pearl, and the confusion between them being classified as 'Natural pearls'
The different kinds of cultured pearls
By Henry A. Hanni, FGA
SSEF Swiss Gemological Institute, Basel, Switzerland
A piece on the varietals of cultured pearls, and the intention of their creation. The article also details the necessity to distinguish cultured pearls from natural pearls.

redpajama_set_name: RedPajamaCommonCrawl


text:
Research ArticleChemistry
Reactivity of prehydrated electrons toward nucleobases and nucleotides in aqueous solution
Jun Ma1,
Furong Wang1,
Sergey A. Denisov1,
Amitava Adhikary2 and
Mehran Mostafavi1,*
1Laboratoire de Chimie Physique, CNRS–Université Paris-Sud 11, Bâtiment 349, 91405 Orsay, France.
2Department of Chemistry, Oakland University, 146 Library Drive, Rochester, MI 48309, USA.
↵*Corresponding author. Email: mehran.mostafavi{at}u-psud.fr
Jun Ma
Laboratoire de Chimie Physique, CNRS–Université Paris-Sud 11, Bâtiment 349, 91405 Orsay, France.
ORCID record for Jun Ma
Furong Wang
ORCID record for Furong Wang
Sergey A. Denisov
ORCID record for Sergey A. Denisov
Amitava Adhikary
Department of Chemistry, Oakland University, 146 Library Drive, Rochester, MI 48309, USA.
ORCID record for Amitava Adhikary
Mehran Mostafavi
ORCID record for Mehran Mostafavi
For correspondence: mehran.mostafavi@u-psud.fr
DNA damage induced via dissociative attachment by low-energy electrons (0 to 20 eV) is well studied in both gas and condensed phases. However, the reactivity of ultrashort-lived prehydrated electrons (
) with DNA components in a biologically relevant environment has not been fully explored to date. The electron transfer processes of
to the DNA nucleobases G, A, C, and T and to nucleosides/nucleotides were investigated by using 7-ps electron pulse radiolysis coupled with pump-probe transient absorption spectroscopy in aqueous solutions. In contrast to previous results, obtained by using femtosecond laser pump-probe spectroscopy, we show that G and A cannot scavenge
at concentrations of ≤50 mM. Observation of a substantial decrease of the initial yield of hydrated electrons (
) and formation of nucleobase/nucleotide anion radicals at increasing nucleobase/nucleotide concentrations present direct evidence for the earliest step in reductive DNA damage by ionizing radiation. Our results show that
is more reactive with pyrimidine than purine nucleobases/nucleotides with a reactivity order of T > C > A > G. In addition, analyses of transient signals show that the signal due to formation of the resulting anion radical directly correlates with the loss of the initial
signal. Therefore, our results do not agree with the previously proposed dissociation of transient negative ions in nucleobase/nucleotide solutions within the timescale of these experiments. Moreover, in a molecularly crowded medium (for example, in the presence of 6 M phosphate), the scavenging efficiency of
by G is significantly enhanced. This finding implies that reductive DNA damage by ionizing radiation depends on the microenvironment around
Water makes up about 70% of biological systems, and most ionizing radiation is initially absorbed by water surrounding the biomolecules. This results in radiation damage of biomolecules via the quasi-direct as well as by the indirect effects of radiation (1, 2). Strand breaks, an important DNA damage that may be lethal to cells, occur in higher abundance in hydrated DNA than in dry DNA (2). In water radiolysis, a secondary electron with a high kinetic energy (Ec) is ejected, thereby leaving a hole [water cation radical (H2O•+)] behind in the nanometer-size volumes along the radiation tracks. In a subpicosecond range, H2O•+ is transformed into hydroxyl radical (•OH) via proton transfer to a proximate water molecule (3, 4). The secondary electrons cause further ionizations, leading to a cascade of electrons with lower kinetic energies. After losing their kinetic energy via ionization and excitation events, the electron is thermalized and undergoes a multistep hydration process with a time constant of ca. ≤1 ps, becoming fully trapped as a hydrated or solvated electron (
) (3). Before complete solvation (or hydration), the electron exists in its presolvated (or prehydrated) state (
) with a small or no kinetic energy. Here, for clarity, we use the term "prehydrated electrons" to account for the precursors of the
with excess energy (fig. S1) (3).
The oxidative pathway of DNA damage is induced by •OH attack via the indirect effect and by the direct-type (direct + quasi-direct) effects of ionizing radiation; it has been suggested that the oxidative pathway is the dominant pathway for strand break formation (1, 2, 5–7). In addition, over the last decade, tremendous efforts have been made to unravel the role of energetic electrons, especially of low-energy electrons (LEEs; 0 to 20 eV) in the reductive pathway of DNA damage. Sanche and coworkers (8) provided the first experimental observation of DNA strand cleavage induced by LEEs. This work led to numerous mechanistic studies on LEE-induced damage in naked DNA models including DNA building blocks in gas phase or condensed states, single- and double-stranded oligomers of defined sequences, plasmid DNA, and cellular DNA (9, 10). These studies established that, initially, LEEs lead to the formation of resonant transient negative ions (TNIs) in DNA models. Subsequent fragmentations of these TNIs occur via the dissociative electron attachment (DEA) process (11). Experiments, including LEE scattering (12), photoelectron imaging (13), and Rydberg electron transfer spectroscopy (14), along with theoretical calculations (15–20) have shed new light on the interaction of excess electrons with hydrated DNA subunits and on the formation of TNIs.
in water are considered to be the states of electrons in biological systems rather than the states of electrons in the gas phase. Investigations of the fast one-electron reductions of biomolecules (for example, nucleobases and nucleosides/nucleotides) by
in competition with its hydration process are a subject of experimental challenge (3, 21). From the existing literatures (2, 15, 16, 21), it is conceivable that scavenging of
by purine and pyrimidine nucleobases in aqueous medium could be the initial step for the reaction of
. This reaction leads to the formation of TNI, that is, the transient nucleobase anion radical. Subsequently, this TNI leads to the generation of the complex DNA damage (2, 3, 15, 16). Therefore, it is important to examine the rates and extents of reactions of DNA building blocks with
. The nature of short-lived transient species (that is, the TNIs), which are produced immediately after the electron capture, needs to be clarified for a better understanding of the DNA bond cleavage induced by
. In the following paragraph, we describe the work by Wang et al. (22), who, by using a femtosecond laser pump-probe technique with single-wavelength absorption detection in the ultraviolet (UV) region, claimed to have observed the real-time fast electron addition of
to particular nucleobases and nucleotides. According to the authors, these studies did provide the evidence of TNI formation of nucleobases (22).
In 50 mM guanine (G) and thymine (T) systems, the anion radicals, which were labeled as the TNIs of nucleobases, evolve from two-photon (318 nm) ionization; the authors suggested that the TNIs of nucleobases decayed within a few tens of picoseconds (22). However, neither the absorption spectra in the visible and near-infrared regions nor the kinetics of
were reported by these authors. We believe that these parameters are crucial to verify the presence of
in the UV region. In addition, the pump and probe wavelengths are very close in the UV region and thus could be affected by optical artifacts. Thus, the results reported by Wang et al. (22) can be called into question. The time-resolved radiolysis technique with a high-energy electron pulse has advantages over the femtosecond laser pump-probe spectroscopy to study the effect of radiation in liquids (3, 4, 21, 23, 24), although laser-based setups have better time resolution. Here, we have used the picosecond (7 ps) electron pulse (7 MeV) radiolysis coupled with UV-visible (UV-Vis) transient absorption spectroscopy to explore the reactivity of
with nucleobases (X), nucleosides, and 5′-nucleotides (XMP). On the basis of our previous work (21) that showed increased lifetimes of
in a crowded medium (6 M phosphate), we conducted pulse radiolysis studies on the reactions of
with nucleobases/nucleotides in 6 M phosphate. Our results and conclusions reported in this work disagree with those reported by Wang et al. (22).
The rationale of our work is that the
interaction with nucleobases can be investigated by measuring the initial yield of
formation. This is achieved by using picosecond electron pulse radiolysis as an alternative approach to femtosecond laser photolysis (3, 21, 23–25). The
displays a broad absorption band showing a maximum at 715 nm with a relatively high extinction coefficient under ambient conditions and thus can be detected with precision. When the precursor of
(that is,
) reacts with nucleobase molecules in competition to its solvation dynamics, the yield of formation of
in solutions of nucleobases/nucleotides will decrease in comparison to that of
in water. The laser-triggered continuous probe light of our pulse radiolysis system has the advantage that it covers a broad spectral range from 380 to 1500 nm. This allows us to determine yields and transient spectra of the resulting intermediates using the 7-ps electron pulse.
As shown in Fig. 1, in contrast to the results reported by Wang et al. (22), after a 7-ps electron pulse, the initial absorbance that correlates with the radiolytic yield of
in neat water was not affected by adding G up to its maximum solubility of 50 mM in 90 mM NaOH at 22.5°C. The fact that the TNI of G did not form in these conditions indicates that all precursors of
exclusively undergo the solvation dynamics as it happens in neat water, forming
in less than 1 ps. Higher concentrations of solute, with the consequent smaller reaction radius, would need to be present to increase the probability of
trapping by
scavengers in aqueous solution (26).
Fig. 1 Transient absorption kinetic traces of
in liquid water containing G, A, C, and T compounds with different concentrations (10 to 150 mM).
To increase the solubilities of purine nucleobases, the solutions were prepared in 90 mM NaOH followed by the work of Wang et al. (22). Radiolytic yields of
are shown in the left axes, and these correspond to the absorbance in the right axes. The dose per electron pulse was 55.3 grays (Gy). The radiolytic yield of
is not affected even in 50 mM G solution within 1% uncertainty. The solid line is the theoretical fit; we have obtained it using time-dependent rate constants. ΔO.D.900nm, optical density at 900 nm.
We note that the electron tunneling mechanism of long-range interaction could not be excluded because of the large delocalization radius of excess electrons in water (24, 27) and because of the available empty π* orbitals of nucleobases. However, these results point out that these long-range interactions of
are not significant in these diluted solutions (≤50 mM). Our results also show that the decay of
in the presence of G molecules is similar to that of
in neat water (Fig. 1) within the time range of 200 ps. Furthermore, in basic conditions (pH ~ 12), G is deprotonated, and its reaction rate constant with
is relatively low (2 × 109 M−1 s−1) (1, 28); thus, a decay of
is not apparent in this time scale.
To increase the solute concentration up to 150 mM and to shorten the distance between electrons and reactants, we replaced the G nucleobase by the nucleoside, guanosine (Guo). We note here that the ribose itself is a much less efficient site than the G nucleobase for trapping electrons (the rate constant of the reaction of
with ribose, <107 M−1 s−1) (28, 29). The presence of Guo at 150 mM does not change the
absorption band.
A decrease of the initial yield of
in the presence of Guo becomes detectable between 50 and 150 mM [~3% at 50 mM and ~8% at 150 mM (Fig. 1)]. Two factors explain these observations: (i) Guanosine has a larger molecular size that leads to a shorter distance between the reactants, and (ii) density functional theory (DFT) calculations of electron attachment to nucleosides showed that the addition of the deoxyribose moiety promotes electron scavenging because of higher electron affinity values of the nucleosides (15–20, 30). These results provide the first estimate of the extent of the involvement of
in fast electron attachment to nucleobases, leading to the formation of the TNI (that is, G*•− or G•−). However, the detection of this species is challenging due to its low yield and weak absorption.
Extensive experimental and theoretical determination of gas-phase electron affinities of canonical nucleobases have been carried out (15–20, 30). These results show that the gas-phase vertical electron affinities of all DNA nucleobases are negative; the adiabatic electron affinity of T and cytosine (C) are near 0 eV, and those of purines are negative (15, 17, 30). However, the solvation has a pronounced effect on the binding of an electron with nucleobases. One can assume that the electron affinity of a nucleobase in its fully hydrated form is associated with its efficiency of
capture. Calculations using DFT by Sevilla and coworkers (30) pointed out that the adiabatic electron affinity of all DNA nucleobases increases substantially with the solvent in comparison to the gas phase.
Therefore, the extension of our measurements to various DNA nucleobases will be helpful for evaluating the influence of solvent on the electron affinities of nucleobases/nucleotides. The results with different nucleobases can be seen in Fig. 1. It is observed in Fig. 1 that, similar to G, 25 to 50 mM adenine (A) did not react with
. However, the initial yield of
was found to be lower in the presence of 75 mM A compared to that in the presence of G. Thus, we conclude that A showed a slightly higher capability of trapping
than G. We also observed a decrease of
yield in T and C solutions at 25 mM. The relative ratios of
yield in T and C solutions with respect to water are determined to be ~0.93 and ~0.97, respectively. Because the solubility of T is limited at room temperature (maximum solubility of T at room temperature in water is ~25 mM), we performed similar measurements at 50°C. The decrease of the initial yield of
was more pronounced (Fig. 1, inset).
The reactivity of
with the four nucleobases is T > C > A > G. Nucleotide solutions show the same order. These results are presented in Fig. 2. Among the nucleotides, guanosine 5′-monophosphate (GMP) shows the lowest reactivity toward
(only 7% of the electrons are scavenged), whereas thymidine 5′-monophosphate (TMP) has the highest efficiency with 40% of the nonequilibrium electrons being scavenged. Following the procedure developed by Jonah et al. (26) to determine the reaction rate constant of
with a given solute, we were able to roughly estimate the reaction rates of
with nucleotides as ~5 × 1012 M−1 s−1 for TMP, 4 × 1012 M−1 s−1 for cytidine 5′-monophosphate (CMP), 3 × 1012 M−1 s−1 for adenosine 5′-monophosphate (AMP), and 0.6 × 1012 M−1 s−1 GMP. These rate constant values do agree well with those for near-conduction band electrons in nonpolar solvents (24, 27). More accurate determination of these rates requires a broader range of XMP concentrations; however, this is limited by XMP solubility in water (26).
Fig. 2 Transient absorption spectra of the nucleotide anion radicals (GMP•−, AMP•−, CMP•−, and TMP•− or the TNIs of nucleotides) observed at 7 ps (right) and the kinetics of
in the presence of 250 mM nucleotides in water (left).
We have obtained the spectra of absorbing radicals via subtraction of the appropriate extent of the absorption spectrum of
from the original experimentally recorded two-dimensional (2D) spectrum using global data analysis.
The decrease of the initial yield of
formation presents the evidence for the
reaction with DNA nucleobases and nucleotides. This chemical reaction is completed within the subpicosecond range and can be regarded as the earliest efficient indirect damage event. The decay of
is accelerated by raising the concentration of T and C. The rate constants of the reaction of
with these two nucleobases were determined to be as high as 1.4 × 1010 M−1 s−1 under ambient conditions, which agrees well with the corresponding values in the literature (29). As expected, the decay of
is faster at 50°C, and the value of the rate constant is found to be around 3.2 × 1010 M−1 s−1.
Recently, the existence of surface-bound electrons in liquid water having a binding energy of −1.6 eV proposed by Abel and coworkers (31) has been a matter of debate. These authors experimentally measured the vertical detachment energy of
as −3.3 eV (fig. S1) and proposed that
may not able to reduce the DNA/RNA because it is beyond the electron attachment window. However, this reaction was suggested to occur between those electrons and the DNA/RNA molecules located at the interface. This view is in contrast to the ab initio molecular dynamics simulations by Kumar et al. (32) and a number of pulse radiolysis studies on the reaction of
with DNA models (1, 28). The accurately calculated standard redox potentials of nucleobases and
predict the extent of the reaction of
with nucleobases (32), which is in excellent agreement with our observations using solutions of nucleobases. Meanwhile, it should be argued here that the decrease of
signal within the electron pulse (7 ps) is not due to the fast reaction of
because we have calculated the time-dependent rate constants for T (Fig. 1). In agreement with the work of Jonah et al. (26), the reaction of
during the 7-ps pulse is less than 1% of the total, which justifies that the decrease of the
signal within the electron pulse is primarily due to the reaction of
with nucleobases and nucleosides/nucleotides.
Identification of the sites at which electrons are initially trapped in DNA to produce the anion radicals is an important question to elucidate the pathways of reductive DNA damage. This question directly relates to the subsequent charge transfer and bond dissociations. The electron spin resonance studies by Bernhard (33) and Wang and Sevilla (34) concluded that pyrimidines have a higher electron affinity than purines. Steenken and Jovanovic (35) found that T has the highest reduction potential, whereas G has the lowest. The conclusions of the work carried out by Wang and Sevilla (34) along with those obtained using pulse radiolysis studies (1, 28, 35) state that among the nucleobase anion radicals, G anion radical (G•−) undergoes very fast protonation in oligomers containing only G. However, this reaction does not occur in double-stranded DNA owing to the fast electron transfer from G•− to C and T forming the C and T anion radicals (C•− and T•−, respectively). Our results presented in Fig. 1 and, more clearly, in Fig. 2 show that the loss of
supports the experimental and theoretical model that the fully solvated pyrimidine nucleobases have a higher electron affinity than purines. Meanwhile, C is found to be less reactive with
than T. Furthermore, our results show that A in adenosine is a better trap for
than G in Guo because the initial yield of
is lower at the same nucleoside concentration.
The intrinsic higher solubility of nucleotides with respect to nucleobases in water enabled us to investigate the trapping of
at higher concentrations of nucleobases. This gave rise to a higher yield and a better detection of spectral intermediates. As presented in Fig. 2, for 250 mM XMP solutions, global analyses of the original transient absorption matrix data (wavelength versus delay time; figs. S2 to S6) show that, besides the typical broad absorption band of
, there is one additional absorbing species that is observed in the time scale from 10 to 100 ps (figs. S7 to S10). Because the protonation of anion radical process cannot occur within the picosecond time scale, the transient species formed within the 7-ps electron pulse (Fig. 2, right) is assigned to the nucleotide anion radical (XMP•−). This assignment is based on the fact that the spectrum observed is almost identical with the previously reported anion radical spectra obtained by nanosecond pulse radiolysis via the reaction of
with nucleotides (36, 37). Because the reaction of
with nucleotides also takes place, we observed a slight increase of the rate of formation of the nucleotide anion radicals over tens of picoseconds (Fig. 3 and figs. S7 to S10). This suggests that the reactions of both
with nucleotides essentially lead to the same transient anion radical XMP•−.
Fig. 3 The comparison of yield of the formation of GMP anion radical (GMP•−) with that of
trapped by the GMP molecule before the hydration is complete.
The filled gray areas represent the changes of the total yield of anion radicals from that of trapped electrons evolving with the delay time up to 170 ps.
In the case of AMP, the spectrum is slightly different from the reported spectrum for AMP•− (1, 28, 35–37). It is known that, because of stacking interaction, the aqueous solution of 250 mM AMP exhibits a wide aggregation number with a distribution centered at 10 (38). Therefore, this difference might be explained by the significant AMP aggregation under our experimental conditions, inducing changes in the absorption spectrum.
The work of Wang et al. (22) suggested that dissociation is the dominant process in G and T nucleotide anion radicals in the proportion of 60 and 36%, respectively. In our work, by taking the established molar absorption coefficient of the XMP•− in the literature (37), the yield of formation of XMP•− is carefully deduced from the kinetics via global analysis. For instance, in the case of G, the maximal value of the extinction coefficient of
and GMP•− in the UV-Vis spectral window were 19,045 M−1 cm−1 at 700 nm and 4200 ± 100 M−1 cm−1 at 380 nm. As shown in Fig. 3, the formation yield of GMP•− at 7 ps is calculated to be 2.5 ± 0.5 × 10−8 mol J−1. The quantity of electrons being captured by the GMP molecules in competition with the hydration of electrons is marked by the initial yield difference of
in the presence and absence of GMP. Unexpectedly, the yields of these two species are found to be nearly equal to each other. From 10 to 100 ps, there is a continuous increase of the anion radical yield due to the occurrence of a reaction of
(Fig. 3) in neutral solution. For the other three nucleotides, the results are found to be similar to those of the G system. Thus, contrary to the work by Wang et al. (22), our work establishes that the nucleotide anion radicals do not undergo dissociation.
Considering the reaction of the
with nucleotides in competition with its hydration (Fig. 4), our results establish that
initially attaches to the π* orbitals of nucleotides and form the TNI or excited anion radical XMP*•−. This species can either rapidly dissociate to an energetically accessible radical with a lifetime of several picoseconds or relax to form the stable anion radical XMP•−. If the dissociation of XMP*•− does occur, then the yield of XMP•− is expected to be lower than the electron loss. Therefore, the above analyses reveal that within the experimental error, almost all the electrons participate in the formation of XMP•−. Thus, we conclude that the dissociation pathway of XMP*•− is not likely to occur or, at least, is not an evident process in this condition. However, it is well established that
has several precursor states during the hydration process (39, 40). Because the hydration process of the electron competes with the electron scavenging (Fig. 4), the excess energy of the electron before its full hydration can be important. The faster (shorter time) the electron scavenging, the more energy the electron has to excite the solute. We could not exclude the possibility that the DEA turns out to be more effective in a realistic environment in which the higher energy state of
might be trapped by nucleobase sites. It is certainly a matter of great interest and significance and will be the subject of our further study.
Fig. 4 Scheme representing the reactivity of
with XMP and possible pathways of the decay of the excited anion radical XMP*•− (TNI).
To extend these studies in cellular DNA and chromatin, two important aspects need to be considered: (i) The local cellular environment surrounding the DNA is complex, including a considerable amount of other species, including proteins and inorganic salts, etc., which definitively alter the hydration process and reactivity of
compared to that in neat water or in dilute solutions (41). (ii) Direct energy deposition in the hydration layer of DNA creates H2O•+ and an electron located in close contact with a nucleobase. This promotes the overlap of electron and that of nucleobase wave functions in competition with charge localization on water molecules. Taking these into account, we introduced a molecularly crowded environment by selecting solutions with a high concentration of phosphate groups. As an example, we used a solution of 6 M H3PO4 and focused on the G case, because it showed the lowest electron scavenging efficiency. In our previous works (21, 25), it was pointed out that the concentration of H3PO4 effectively defines the solvation dynamics of the electron. The use of 6 M H3PO4 was chosen for several reasons. In 6 M H3PO4, as expected from the experimentally and theoretically obtained pKa (where Ka is the acid dissociation constant) values, G is present in its fully protonated form (for example, at N7, N9, and N1) (42). Furthermore, H3PO4 increases the solubility of G, which allowed us to use higher G concentrations. In 6 M H3PO4, the solvation of
slows down significantly, thereby increasing the time for the solute to react with
. However, at H3PO4 concentrations of >10 M, the yield of formation of
is significantly reduced due to the scavenging of its precursor,
, by H3O+. Moreover, in 6 M H3PO4, the ratio between phosphate and water molecules is 6.3, which closely represents the local environment of hydrated DNA because, according to the literature (43), there are six hydration sites per phosphate group in a nucleotide. Before the time-resolved measurements, we examined the chemical stability of G in H3PO4 with the aid of steady-state UV-Vis absorption spectroscopy. No evidence of G decomposition during the time course of the experiment was observed.
In these acidic conditions, H3O+ reacts rapidly with
, resulting in a reduction of
yield to 2.6 × 10−7 mol J−1 (Fig. 5) in comparison to the expected
yield of ca. 6 × 10−7 mol J−1 (1, 3, 4). Because a part of the radiation energy is deposited on the phosphate groups, the direct ionization produces a non-negligible amount of H2PO4•. For these reasons, the absorbance of
in 6 M H3PO4 without G was used as a reference.
Fig. 5 Transient absorption kinetics of
in the absence (blue curve) and in the presence of different concentrations of G in 6 M H3PO4 solutions replacing the neat water as a medium.
The normalized transient spectra consist of three absorbing species,
(black), H2PO4• (red), and the protonated G nucleobase anion radical G(H+)•− (blue), produced within the electron pulse.
As mentioned above, the steady-state UV-Vis spectral measurements show that G is fully protonated in 6 M H3PO4. For protonated G in 6 M H3PO4, we observed a significant decrease in the initial yield of
formation with respect to that obtained in the absence of H3PO4. For a solution containing 50 mM G, an 11% drop is found, and each increase of G concentration by 25 mM led to a corresponding decrease of
formation yield by 10%. These results established that in solutions containing phosphate, the scavenging of
is notably enhanced, thereby leading to an efficient reduction of protonated G. This system with high-efficiency electron scavenging allows us to observe the formation of products, as shown in Fig. 5. The original spectrum consists of the spectral contributions from three absorbing species,
, H2PO4•, and a new transient species. Because G molecules are protonated owing to the acid medium, this spectral intermediate is assigned to the protonated G anion radical G(H+)•− (37). On the basis of the kinetics of G(H+)•−, no evidence was found for the fragmentation of the TNIs even if an appreciable amount of
is captured compared to that in the dilute medium.
To conclude our discussion on the trapping of
by G, we have to mention that in highly concentrated ionic solutions,
forms the so-called encounter pairs. This could induce a blue shift of spectrum of both
[for example, the absorption spectrum of
with a maximum at 650 nm, as seen in Fig. 5, whereas in water, the corresponding maximum is 715 nm (vide supra)] and thus affect the initial absorbance at certain wavelength as it was very recently found on the reactivity of
in acids (23, 25). This important spectral change was not considered in previous investigations (24, 27) studying the reactivity of
. Gauduel et al. (44) showed that
forms the ion pairs with H3O+, denoted as (
, H3O+), during its solvation process, within 1 ps, accompanied by a blue shift of ca. 300 nm, because the charge of excess electrons are screened by H3O+ ions. Moreover, in our recent work, we showed that the reactivity of the pair is different from that of
with H3O+, because
with H3O+ efficiently reduces silver ions in highly concentrated acidic solutions in comparison to
(45).
The scavenging of
by G in the highly concentrated H3PO4 can be explained by the fact that the hydration process of radiation-produced electrons is slowed relative to that in neat water. Slow hydration of the electrons is likely to occur because fewer H2O molecules are present in a close vicinity to that electron. Consequently, the competitive reaction of
with G becomes more effective. It is also difficult to rule out the possibility that both the energy of
and the electron affinity of G molecules that are fully protonated in 6 M H3PO4 are altered in highly concentrated H3PO4 solutions. In addition, our results suggest that the driving force of this reaction is larger because G must remain protonated before electron addition. However, the reactivity of transient
adducts (TNIs) is similar to that in water. Depending on the preexisting traps in the local hydration shell of DNA and energies of the excess electrons, the reactivity of electrons could be different. It is reported in the literature (11) that the water-ice monolayer surface enhances the dissociative attachment of ~0 eV electrons to some organic molecules. In contrast, using a molecular beam to control the hydration level of nucleobases, Kočišek et al. (46) recently showed that the presence of a few water molecules suppresses the dissociative channel by LEE (0 to 3 eV). In agreement with the abovementioned experimental result, recent molecular dynamics simulations showed that in solution, the excess electron in the vicinity of a nucleotide is rapidly (15 fs) localized on the nucleobases (18–20). In aqueous medium, our results suggested for the first time that the reactivity of
could be significantly enhanced in the presence of a large quantity of ions (for example, H5P2O8−) and molecules (for example, H3PO4) other than water.
Our results establish that scavenging of
by DNA nucleobases is not very efficient at moderate DNA nucleobase concentrations (≤50 mM). In particular, in the cases of G and A, capture of
does not occur. However, our results show that by slowing the hydration (or solvation) process of the electron in the presence of a high concentration of phosphate, it is possible for G to efficiently scavenge the
even at a low concentration (50 mM). Pyrimidine nucleobases are found to be more effective electron scavengers, with a decreasing reactivity order of T > C > A > G. Our findings disagree with those measurements performed by Wang et al. (22). However, our results partially agree with those obtained, as early as the 1970s, by Hunt and coworkers (47). They pointed out that the effective collisions of
with amino acids and mononucleotides depend on the solute concentration and solution pH. Our results also demonstrate that the spectra of nucleotide anion radicals formed by
trapping can be observed at 7 ps for the first time. By comparing the initial yield of formation of electrons with the quantity of electrons scavenged during their hydration, our results suggest that the dissociation pathway of TNIs (either X*•− or XMP*•−) does not occur in the conditions of our experiments. Thus, our radiation chemical studies predict that neither
can induce direct dissociation of the DNA nucleobases via the DEA pathway. Moreover, our results demonstrate that the reaction of a nucleotide with
in neutral solutions essentially gives rise to the same anion radicals. Therefore, our study provides experimental benchmarks for theoretical calculations on the reactions of
with DNA models. Ongoing efforts to investigate the fast electron transfer reactions in the TNIs of defined sequences of single- or double-stranded DNA oligomers and to achieve the direct observation of the subsequent fragmentation of the TNIs or stable anion radicals are under way in our laboratories.
The picosecond pulse radiolysis transient absorbance measurements were performed at the electron facility ELYSE (Université Paris Sud) (48). The transient absorption pulse-probe setup was based on the laser-electron intrinsic synchronization resulting from the laser-triggered photocathode of the accelerator. For the present study, a broadband probe detection scheme was used, the principle of which has already been described (48). A supercontinuum, generated by focusing ~1 μJ of the laser source into a 6-mm-thick CaF2 disk, was used as the optical probe covering a broad spectral range (380 to 1500 nm). A reference signal was split off from the broadband probe before the fused silica optical flow cell. Each of the probe and reference beams was coupled into the optical fibers, transmitted to a spectrometer, and dispersed onto a charge-coupled device. The combination of the broadband probe and the multichannel detector allowed the entire transient spectrum to be recorded in one shot; as a result, the transient spectrum was independent of the shot-to-shot fluctuations and possible long-term drifts of the electron source. For data acquisition, we cautiously maintained the same radiation dose (55.3 ± 0.5 Gy) per electron pulse that was deposited on the samples to minimize the absorbance fluctuation. All measurements were performed using a fused silica flow cell with a 5-mm optical path collinear to the electron pulse propagation. The electron pulses were ~4 nC, with an electron energy of 6 to 8 MeV, delivered at a repetition frequency of 10 Hz. The measurements were performed at 22.5°C, and for T, the measurements were performed at 22.5° and 50°C.
The experimental data matrices were analyzed by a multivariate curve resolution alternating least squares (MCR-ALS) approach. The number of the absorbing species in a data matrix was assessed by a singular value decomposition of the matrix, and an MCR-ALS analysis with the corresponding number of species was performed. Positivity constraints were imposed for both spectra and kinetics, and, when necessary, spectrum shape was also imposed (49).
The chemical compounds (nucleobases and nucleosides/nucleotides; purity, >99%) were purchased from Sigma-Aldrich and were used without further purification. To introduce a simplified molecular environment, buffer solutions were not used, and the solutions, with a typical 100-ml volume, were prepared simply by dissolving nucleobases and nucleotides in neat water. Water for dilution was purified by passage through a Millipore purification system. For only G and A nucleobases, we used 90 mM NaOH solutions to increase their solubility. The crowded molecular environment was introduced by dissolving G in 6 M H3PO4 solutions. UV-Vis spectroscopy was applied to examine the chemical stability of G in acid medium.
fig. S1. Schematic diagram representing the energetic cycle for the adiabatic electron solvation and its reaction with a DNA nucleobase.
fig. S2. Time-resolved 2D transient absorption map of irradiated neat water.
fig. S3. Time-resolved 2D transient absorption map of the irradiated solution of GMP at 250 mM.
fig. S4. Time-resolved 2D transient absorption map of the irradiated solution of AMP at 250 mM.
fig. S5. Time-resolved 2D transient absorption map of the irradiated solution of CMP at 250 mM.
fig. S6. Time-resolved 2D transient absorption map of the irradiated solution of TMP at 250 mM.
fig. S7. Time-dependent population and normalized spectra of hydrated electron and GMP radical anions.
fig. S8. Time-dependent population and normalized spectra of hydrated electron and TMP radical anions.
fig. S9. Time-dependent signal population and normalized spectra of hydrated electron and CMP radical anions.
fig. S10. Time-dependent population and normalized spectra of hydrated electron and AMP radical anions.
C. von Sonntag, Free-Radical-Induced DNA Damage and Its Repair: A Chemical Perspective (Springer Berlin Heidelberg, 2009).
A. Adhikary, D. Becker, M. D. Sevilla, in Applications of EPR in Radiation Research, A. Lund, M. Shiotani, Eds. (Springer International Publishing, 2014), pp. 299–352.
M. D. Sevilla,
D. Becker,
A. Kumar,
A. Adhikary
, Gamma and ion-beam irradiation of DNA: Free radical mechanisms, electron effects, and radiation chemical track structure. Radiat. Phys. Chem. 128, 60–74 (2016).
J. Ma,
J. A. LaVerne,
M. Mostafavi
, Scavenging the water cation in concentrated acidic solutions. J. Phys. Chem. A 119, 10629–10636 (2015).
C. Chatgilialoglu,
M. D'Angelantonio,
G. Kciuk,
K. Bobrowski
, New insights into the reaction paths of hydroxyl radicals with 2′-deoxyguanosine. Chem. Res. Toxicol. 24, 2200–2206 (2011).
A. Adhikary,
S. A. Munafo,
D. Khanduri,
M. D. Sevilla
, Prototropic equilibria in DNA containing one-electron oxidized GC: Intra-duplex vs. duplex to solvent deprotonation. Phys. Chem. Chem. Phys. 12, 5353–5368 (2010).
P. López-Tarifa,
M.-P. Gaigeot,
R. Vuilleumier,
I. Tavernelli,
M. Alcamí,
F. Martín,
M.-A. Hervé du Penhoat,
M.-F. Politis
, Ultrafast damage following radiation-induced oxidation of uracil in aqueous solution. Angew. Chem. Int. Ed. Engl. 52, 3160–3163 (2013).
B. Boudaı̈ffa,
P. Cloutier,
D. Hunting,
M. A. Huels,
L. Sanche
, Resonant formation of DNA strand breaks by low-energy (3 to 20 eV) electrons. Science 287, 1658–1660 (2000).
F. Martin,
P. D. Burrow,
Z. Cai,
, DNA strand breaks induced by 0–4 eV electrons: The role of shape resonances. Phys. Rev. Lett. 93, 068101 (2004).
S. K. Sahbani,
L. Sanche,
A. D. Bass,
D. J. Hunting
, Loss of cellular transformation efficiency induced by DNA irradiation with low-energy (10 eV) electrons. J. Phys. Chem. B 118, 13123–13131 (2014).
E. Alizadeh,
, Precursors of solvated electrons in radiobiological physics and chemistry. Chem. Rev. 112, 5578–5602 (2012).
S. Ptasinska,
S. Denifl,
P. Scheier,
E. Illenberger,
T. D. Märk
, Bond- and site-selective loss of H atoms from nucleobases by very-low-energy electrons (<3 eV). Angew. Chem. Int. Ed. Engl. 44, 6941–6943 (2005).
M. A. Yandell,
S. B. King,
D. M. Neumark
, Time-resolved radiation chemistry: Photoelectron imaging of transient negative ions of nucleobases. J. Am. Chem. Soc. 135, 2128–2131 (2013).
C. Desfrançois,
H. Abdoul-Carime,
J. P. Schermann
, Electron attachment to isolated nucleic acid bases. J. Chem. Phys. 104, 7792–7794 (1996).
A. Kumar, M. D. Sevilla, in Handbook of Computational Chemistry, M. K. Shukla, J. Leszczynski, Eds. (Springer-Verlag, 2012), pp. 1215–1256.
J. Gu,
J. Leszczynski,
H. F. Schaefer III.
, Interactions of electrons with bare and hydrated biomolecules: From nucleic acid bases to DNA segments. Chem. Rev. 112, 5603–5640 (2012).
K. Aflatooni,
G. A. Gallup,
P. D. Burrow
, Electron attachment energies of the DNA bases. J. Phys. Chem. A 102, 6205–6207 (1998).
M. Smyth,
J. Kohanoff
, Excess electron localization in solvated DNA bases. Phys. Rev. Lett. 106, 238108 (2011).
, Excess electron interactions with solvated DNA nucleotides: Strand breaks possible at room temperature. J. Am. Chem. Soc. 134, 9122–9125 (2012).
M. McAllister,
B. Gu,
G. A. Tribello,
, Understanding the interaction between low-energy electrons and DNA nucleotides in aqueous solution. J. Phys. Chem. Lett. 6, 3091–3097 (2015).
U. Schmidhammer,
, Picosecond pulse radiolysis of highly concentrated phosphoric acid solutions: Mechanism of phosphate radical formation. J. Phys. Chem. B. 119, 7180–7185 (2015).
C.-R. Wang,
J. Nguyen,
Q.-B. Lu
, Bond breaks of nucleotides by dissociative electron transfer of nonequilibrium prehydrated electrons: A new molecular mechanism for reductive DNA damage. J. Am. Chem. Soc. 131, 11320–11322 (2009).
, Direct evidence for transient pair formation between a solvated electron and H3O+ observed by picosecond pulse radiolysis. J. Phys. Chem. Lett. 5, 2219–2223 (2014).
M. Mostafavi, I. Lampre, in Recent Trends in Radiation Chemistry, J. F. Wishart, BSM Rao, Eds. (World Scientific Publishing Company, 2010), pp. 21–58.
P. Pernot,
, Reactivity of the strongest oxidizing species in aqueous solutions: The short-lived radical cation H2O•+. J. Phys. Chem. Lett. 5, 258–261 (2014).
C. D. Jonah,
J. R. Miller,
M. S. Matheson
, The reaction of the precursor of the hydrated electron with electron scavengers. J. Phys. Chem. 81, 1618–1622 (1977).
I. A. Shkrob, in Recent Trends in Radiation Chemistry (World Scientific Publishing Company, 2010), pp. 59–96.
S. Steenken
, Purine bases, nucleosides, and nucleotides: Aqueous solution redox chemistry and transformation reactions of their radical cations and e− and OH adducts. Chem. Rev. 89, 503–520 (1989).
G. V. Buxton,
C. L. Greenstock,
W. P. Helman,
A. B. Ross
, Critical review of rate constants for reactions of hydrated electrons, hydrogen atoms and hydroxyl radicals (•OH/•O−) in aqueous solution. J. Phys. Chem. Ref. Data 17, 513–886 (1988).
X. Li,
, DFT calculations of the electron affinities of nucleic acid bases: Dealing with negative electron affinities. J. Phys. Chem. A 106, 1596–1603 (2002).
K. R. Siefermann,
Y. Liu,
E. Lugovoy,
O. Link,
M. Faubel,
U. Buck,
B. Winter,
B. Abel
, Binding energies, lifetimes and implications of bulk and interface solvated electrons in water. Nat. Chem. 2, 274–279 (2010).
L. Shamoun,
, Do solvated electrons (eaq−) reduce DNA bases? A Gaussian 4 and density functional theory-molecular dynamics study. J. Phys. Chem. B. 120, 2115–2123 (2016).
W. A. Bernhard
, Sites of electron trapping in DNA as determined by ESR of one-electron-reduced oligonucleotides. J. Phys. Chem. 93, 2187–2189 (1989).
W. Wang,
, Protonation of nucleobase anions in gamma-irradiated DNA and model systems. Which DNA base is the ultimate sink for the electron? Radiat. Res. 138, 9–17 (1994).
S. Steenken,
S. V. Jovanovic
, How easily oxidizable is DNA? One-electron reduction potentials of adenosine and guanosine radicals in aqueous solution. J. Am. Chem. Soc. 119, 617–618 (1997).
L. P. Candeias,
P. Wolf,
P. O'Neill,
, Reaction of hydrated electrons with guanine nucleosides: Fast protonation on carbon of the electron adduct. J. Phys. Chem. 96, 10302–10307 (1992).
R. Yamagami,
K. Kobayashi,
S. Tagawa
, Formation of spectral intermediate G–C and A–T anion complex in duplex DNA studied by pulse radiolysis. J. Am. Chem. Soc. 130, 14772–14777 (2008).
R. Rymdén,
P. Stilbs
, Nucleotide aggregation in aqueous solution. A multicomponent self-diffusion study. Biophys. Chem. 21, 145–156 (1985).
A. Migus,
Y. Gauduel,
J. L. Martin,
A. Antonetti
, Excess electrons in liquid water: First evidence of a prehydrated state with femtosecond lifetime. Phys. Rev. Lett. 58, 1559–1562 (1987).
M. H. Elkins,
H. L. Williams,
A. T. Shreve,
, Relaxation mechanism of the hydrated electron. Science 342, 1496–1499 (2013).
H. Nikjoo,
D. T. Goodhead,
M. Terrissol
, Computational modelling of low-energy electron-induced DNA damage by early physical and chemical events. Int. J. Radiat. Biol. 71, 467–483 (1997).
Y. H. Jang,
W. A. Goddard III.,
K. T. Noyes,
L. C. Sowers,
S. Hwang,
D. S. Chung
, pKa values of guanine in water: Density functional theory calculations combined with Poisson-Boltzmann continuum-solvation model. J. Phys. Chem. B 107, 344–357 (2003).
B. Schneider,
K. Patel,
H. M. Berman
, Hydration of the phosphate group in double-helical DNA. Biophys. J. 75, 2422–2434 (1998).
S. Pommeret,
N. Yamada,
, Femtosecond spectroscopy of an encounter pair radical (H3O+···e−)hyd in concentrated aqueous solution. J. Am. Chem. Soc. 112, 2925–2931 (1990).
A. Balcerzyk,
F. Wang,
A. de la Lande,
, Ultrafast scavenging of the precursor of H• atom, (e−, H3O+), in aqueous solutions. J. Phys. Chem. B. 120, 9060–9066 (2016).
J. Kočišek,
A. Pysanenko,
M. Fárník,
J. Fedor
, Microhydration prevents fragmentation of uracil and thymine by low-energy electrons. J. Phys. Chem. Lett. 7, 3401–3405 (2016).
J. E. Aldrich,
K. Y. Lam,
P. C. Shragge,
J. W. Hunt
, Fast electron reactions in concentrated solutions of amino acids and nucleotides. Radiat. Res. 63, 42–52 (1975).
J. Belloni,
H. Monard,
F. Gobert,
J.-P. Larbre,
A. Demarque,
V. De Waele,
I. Lampre,
J.-L. Marignier,
M. Mostafavi,
J. C. Bourdon,
M. Bernard,
H. Borie,
T. Garvey,
B. Jacquemard,
B. Leblond,
P. Lepercq,
M. Omeich,
M. Roch,
J. Rodier,
R. Roux
, ELYSE—A picosecond electron accelerator for pulse radiolysis research. Nucl. Instrum. Methods Phys. Res. A 539, 527–539 (2005).
C. Ruckebusch,
M. Sliwa,
A. de Juan,
R. Tauler
, Comprehensive data analysis of femtosecond transient absorption spectra: A review. J. Photochem. Photobiol. C 13, 1–27 (2012).
Acknowledgments: We thank M. D. Sevilla, D. Becker, A. Bull, and A. Kumar (Department of Chemistry, Oakland University) for critical reading of the manuscript and for their comments. Funding: A.A. thanks the National Cancer Institute of the NIH (grant R01CA045424) and is also grateful to the Research Excellence Fund and Center for Biomedical Research at the Oakland University for their support. Author contributions: M.M. and A.A. started this collaborative effort and supervised the project. J.M., F.W., S.A.D., A.A., and M.M. planned the experiments and wrote the paper. J.M., F.W., and S.A.D. carried out the experiments. J.M. and M.M. analyzed the data. Competing interests: The authors declare that they have no competing interests. Data and materials availability: All data needed to evaluate the conclusions are present in the paper and/or Supplementary Materials. Additional data related to this paper may be requested from the authors.
You are going to email the following Reactivity of prehydrated electrons toward nucleobases and nucleotides in aqueous solution
By Jun Ma, Furong Wang, Sergey A. Denisov, Amitava Adhikary, Mehran Mostafavi
Where does the reaction between prehydrated electrons and nucleotides lead to?


text:
import urllib

from optparse import OptionParser

from twisted.web import client
from twisted.web.server import Site
from twisted.web.resource import Resource

from twisted.internet.task import deferLater
from twisted.internet import reactor

from twisted.python import log
from twisted.python.logfile import DailyLogFile

class KontagentProxyResource(Resource):
    isLeaf = True

    def proxy_request(self, path, args):
        # Re-build the querystring from the args
        qs = urllib.urlencode([(k, v[0]) for k, v in args.iteritems()])
        # Construct the URL to the actual kontagent server
        url = ''.join(('http://api.geo.kontagent.net', path, '?', qs))
        # Log the request for our records
        log.msg(url)
        # Send the request to their servers
        d = client.getPage(url=url)
        # Do a single 2-second fallback if their server starts to fall over.
        d.addErrback(lambda e: deferLater(reactor, 2, client.getPage, url=url))
        return d

    def render_GET(self, request):
        '''
        Respond immediately, but defer a request to the Kontagent servers.
        '''
        path = request.path
        args = request.args
        d = deferLater(reactor, 0.001, self.proxy_request, path, args)
        return 'ok'

if __name__ == '__main__':
    parser = OptionParser()
    parser.add_option('-f', '--file', dest='filename', default='log.txt',
        help='log data to to FILE', metavar='FILE')
    parser.add_option('-d', '--dir', dest='directory', default='.',
        help='store log files in DIRECTORY', metavar='DIRECTORY')
    parser.add_option('-p', '--port', dest='port', default=8880,
        help='listen on port PORT', metavar='PORT')
    (options, args) = parser.parse_args()
    root = KontagentProxyResource()
    factory = Site(root)
    print 'Proxying Kontagent requests on port %s' % (options.port,)
    print 'Logging Kontagent requests to file %s in directory %s' % (
        options.filename, options.directory
    )
    log_file = DailyLogFile(options.filename, options.directory)
    log.startLogging(log_file, setStdout=False)
    reactor.listenTCP(int(options.port), factory)
    reactor.run()


text:
Tag: lampard
A-Z of the 2000s: Frank Lampard
Gerrard was a monster, while Scholes was sublime. But if you take the raw stats and impact over a decade, no midfielder can top Frank Lampard
Gary Thacker 27/11/2019
Frank Lampard, Didier Drogba and the goals that turned Chelsea into England's best team
This feature is part of Duology When discussing the driving force behind Chelsea's charge to the top of the English football in the early beginnings of the 21sdt century, two components come to…
Kristofer McCormack 28/08/2018
Frank Lampard: the last legend of a dying breed
If ever there was a time for Harry Redknapp to effusively proclaim a player as "triffic", it was when describing Frank Lampard. The year was 1996, the venue was a West Ham…
Callum Rice-Coates 07/02/2017
The symbiotic relationship between ageing stars and MLS
As featured on Guardian Sport It's strange what falling out with Real Madrid can lead to; the evolution of Major League Soccer and the career of David Beckham can attest to that. Having…
Harry Gray 24/07/2015
The imperfect goodbye
NOTHING LASTS FOREVER. If a footballer's legacy to the game is to be summed up in their farewell match or testimonial, then they and the fans that try to imprint some lasting…
Aaron Gallagher 16/06/2015


text:
Home 2017 Offseason Tribe Trio Receive AL Most Valuable Player Votes
Tribe Trio Receive AL Most Valuable Player Votes
2017 Offseason Bob Toth November 18, 2016 0 Comment
The Cleveland Indians did not have a front runner in the American League's Most Valuable Player voting, but three members of the club were recognized by writers from the Baseball Writers' Association of America on Thursday with votes for the league's top regular season honor.
Mike Trout of the Los Angeles Angels took home his second career MVP award from the BBWAA, receiving 356 votes for baseball's biggest individual piece of hardware. With his 19 first place votes and eight second place votes on the 30 ballots cast, he defeated Boston's Mookie Betts (311) and Houston's Jose Altuve (227).
Trout's victory marked the fifth consecutive year that the outfielder has landed in the top two of the voting. The 25-year-old slugger has just five full seasons played at the Major League level and is easily one of the top players and most marketable faces in the game today.
Two writers from each BBWAA chapter have the opportunity to ranks players from first through tenth places. Ballots are submitted prior to the start of the postseason. Trout was not hurt this season by playing on an Angels team that finished fourth in the American League West Division with a sub-.500 record at 74-88.
While the AL pennant-winning Indians did not have any players at the top of the MVP voting, three of their own were recognized by the writers with votes this season.
Lindor – Elsa/Getty Images
Francisco Lindor was the leader of the vote-getting for the Indians. In just his first full season in the Majors, the Tribe shortstop received 56 points in the balloting, finishing tied with Detroit's Miguel Cabrera for ninth place overall.
Lindor received a pair of fifth place votes, four for seventh place, five for eighth, four for ninth, and five for tenth place on the crowded ballot. He received his top votes from Roger Mooney of the Tampa Bay Times and T.R. Sullivan of MLB.com through the Texas chapter.
Lindor appeared in 158 of 161 games for the Indians this season, slashing .301/.358/.435 with 182 hits (30 doubles, three triples, 15 homers). He scored 99 runs, drove in 78, and stole 19 bases while leading all Major Leaguers with 15 sacrifice flies on the season.
He was named an All-Star midseason and has received the Rawlings Gold Glove and Platinum Glove awards this offseason for his work in the field.
Jose Ramirez, who served a vital role for the Indians club throughout the season by plugging holes in left field and third base admirably, received one ninth place vote to earn two points. He was tied for 17th on the list with Detroit's Justin Verlander.
The 24-year-old utility man appeared in 152 games for Cleveland this season, slashing .312/.363/.462 with a team-high 46 doubles (second most in the AL). He added three triples and eleven homers, scored 84 runs, drove in 76, and finished second on the team with 22 stolen bases. He was seventh in the AL in win probability added (WPA) at 3.1 and batting average and tenth in on-base percentage. He was one of the hardest players to strike out during the regular season, averaging 9.1 at bats per strikeout, the third-best mark in the league.
His ninth place vote came from Jim Ingraham of the Elyria Chronicle-Telegram out of the Cleveland chapter of the BBWAA.
Staff ace and third place finisher in the AL Cy Young voting, Corey Kluber, received a single tenth place vote for the award, finishing tied for 19th with Chicago's Adam Eaton and Tampa Bay's Evan Longoria.
The 30-year-old right-hander had another strong season for the Indians. He matched a career-high with 18 wins, posted a 3.14 ERA, and came within two-thousandths of a point of equaling his career best WHIP of 1.054 set last season. He threw a league-high two complete games and owned the top ERA+ (149) and FIP (3.26) in the AL. He was named an All-Star for the first time in July, was the AL's Pitcher of the Month for August, and was behind only Verlander for the top WAR among AL pitchers at 6.5.
Kluber's lone vote was on the ballot of Jeff Fletcher of the Orange County Register (LA chapter).
On the National League side of the MVP voting, Chicago Cubs third baseman Kris Bryant won the award in his second season in the Majors. The 24-year-old slugger hit .292 with a .385 OBP and .554 slugging mark with 35 doubles, 39 homers, 102 RBI, and a league-high 121 runs scored. It marked the second consecutive season that the young star out of Las Vegas has received a top offseason award after he was named the National League's Rookie of the Year in 2015.
Photo: Jamie Squire/Getty Images
Corey Kluber Francisco Lindor Jose Ramirez
2017 Offseason
Countdown to Indians' Opening Day – 0
Bob Toth April 3, 2017 0 Comment
Join Did The Tribe Win Last Night as we conclude our countdown to Opening Day! Welcome back, baseball! Countdown to Opening Day – 0 days Cleveland fans…
Countdown to Indians' Opening Day – 3 – Earl Averill
Join Did The Tribe Win Last Night as we count down to Opening Day! Countdown to Opening Day – 3 days Former Indians center fielder Earl Averill…
Countdown to Indians' Opening Day – 14 – Larry Doby
Join Did The Tribe Win Last Night as we count down to Opening Day! Countdown to Opening Day – 14 days To this day, Larry Doby does…
Countdown to Indians' Opening Day – 15 – Sandy Alomar
Steve Eby March 19, 2017 0 Comment
Join Did The Tribe Win Last Night as we dig through the archives in our countdown to Opening Day! Countdown to Opening Day – 15 days Some…
Countdown to Indians' Opening Day – 32
Bob Toth March 2, 2017 0 Comment
Join Did The Tribe Win Last Night as we count down to Opening Day! Countdown to Opening Day – 32 The number 32 has been missing in…
Join Did The Tribe Win Last Night as we count down to Opening Day! Countdown to Opening Day – 33 days The number 33 has a curious…


Don's notes: For many years this has been recognised as the biggest tree in this part of the Hunter Valley. Years back, the top was severely damaged but has grown back very well. The tree is on a rich alluvial flat, with access to an underground stream, the old course of the Moonan Brook, and this has resulted in its enormous size.


text:
Q: Comparing a object with a test object How can I compare the object with the test object in Javascript. And if the Testobject sets the same value to true output this Object Item into a new Object.
    Obj1 = [{
        name: Hugo,
        itsTrustee: false,
        itsSchollar: true,
       },
       {
        name:Bugo,
        itsTrustee: true,
        itsSchollar: false,
}];
   testObj = {
           itsTrustee: true,
           itsSchollar: false,
}

I tried Reduce and map. But I can't get the right value
Like that:
this.obj1.map((item) => {
    let newObj = Object.keys(item).reduce((acc, x) => {

    });
});

But since nothing works correctly, I cannot show an example function here

A: first you can restructure a little like this
Obj1 = [{
            name: "Hugo",
            something: {
                itsTrustee: false,
                itsSchollar: true
            }
        },
        {
            name: "Hugo",
            something: {
                itsTrustee: false,
                itsSchollar: true
            }
        }
        ];

then you can try using find function here is an example
const data = [20, 18, 15, 10, 9];

let found = data.find(element => element < 12);

console.log(found);

for you it's going to be something like
let found = data.find(element =>  JSON.stringify(element.something) ==  JSON.stringify(testObj));

if found is null that's mean there's no object with your
wish it helped you

redpajama_set_name: RedPajamaStackExchange


The Logical Structure of Algorithms Algorithms Steps necessary to complete a task or solve a problem. Example: Recipe for baking a cake Will contain a list of ingredients Step-by-step instructions on what to do with those ingredients A recipe provides an algorithm for baking a cake.
Steps necessary to complete a task or solve a problem.
A recipe provides an algorithm for baking a cake.
When you learned the process for doing long division you learned an algorithm.
The Holtrop and Mennen Algorithm, used by naval architects to design the optimum propellers for a ship, contains thousands of steps.
Usually we can think of the instructions in an algorithm as being executed one at a time.
They form what is sometimes called a sequential logic.
There are a small set of patterns that exist in the design of sequential logic.
These patterns fall into categories that form the elements of logical structure.
They can be combined in myriad ways to form the logical structure of algorithms.
A software developer familiar with the design patterns of logical structure can more easily create and modify software.
In the design of the plumbing for a new building, architects have a selection of parts from which to build the system.
Architects need to know how the individual parts work.
There are only a handful of basic elements that a software developer need learn.
Modern computer programming focuses on these three elements of logical structure.
Bohm and Jacopini were not the first to use flowcharts but they were the first to formalize the process.
Diamond-shaped boxes to show a decision step or condititional.
We will use one additional symbol, an oval, to mark the beginning and end of an algorithm.
There should be only one terminator at the beginning of an algorithm and one at the end.
Each algorithm should have one entry point (beginning) and one exit point (end).
The simplest element of logical structure is a linear sequence.
One instruction follows another in a straight line.
What conditions need to exist before the sequence starts?
What can we expect the situation to be when the sequence is finished?
Must be complete; don't leave out necessary steps.
Each individual instruction must be correct; if one step is wrong, the entire algorithm is wrong.
What if you leave out a turn?
What if you say to turn left, when you should have said right?
Sometimes an algorithm reaches a point where the sequence of steps can go one direction or another (a fork in the road).
This is called a selection sequence.
Selection sequence occurs whenever the path of sequential logic (steps) in an algorithm splits into two or more paths.
Each path is called a branch.
If there are two possible paths, then the routine is known as binary branching.
If there are more than two paths, multiple branching.
It is possible to write a multiple branching routine as a collection of binary branching routines.
Alice does not have an instruction for multiple branching.
Most programming languages do not.
We write all selection sequences as collections of binary branching routines.
In binary bypass, an instruction is either executed or bypassed.
In binary choice, one of two instructions is chosen.
The difference is subtle but significant.
In binary bypass, it is possible that nothing will occur.
In binary choice, one of the two instructions, but not both will occur.
Sometimes we use more formal language to describe algorithms - pseudocode.
It looks something like the code in a computer programming language.
But it's only a tool to help understand algorithms.
Any number of instructions can be executed along either branch.
A repetition sequence forms a loop in an algorithm.
A part of the algorithm is then repeated.
In this algorithm, the word While is used for looping instead of the word If that was used for branching.
This tells the computer to loop back to the conditional expression when the block of code following the While is finished.
When it is no longer true the block of code will be bypassed and the computer will move on to whatever comes next in the algorithm.
A variable holds a value that can change.
This loop has a control variable as its condition.
A control variable is a variable whose value controls whether or not a selection sequence will be executed.


Awarded to all members of the Armed Forces who served at least 1 day active federal service. Instituted for service between April 6, 1917 and November 11, 1918.
The issuance of the World War I Victory Medal established another precedent, that of wearing clasps with the names of individual battles on the suspension ribbon of a general campaign medal. When the ribbon bar alone was worn, each clasp was represented by a small (3/16" diameter) bronze star.


text:
<template name="advertisa_chatIndex">

#General Channel

                    {{#if isEmpty}}

                        Have fun & Start chatting now, by typing from the message input below... :)

                    {{else}}
                    {{#each models}}

                            {{user.profile.name}}
                            {{meteoris_formatter 'dateTime' createdAt}}

                            {{message}}

                    {{/each}}
                    {{/if}}

                    {{#unless Template.subscriptionsReady}}
                    {{> spinner}}
                    {{/unless}}

                <form>

                        <input id="message" type="text" placeholder="Type Message ..." class="form-control">

                            <button id="btnSend" type="submit" class="btn btn-danger btn-flat">Send</button>

                </form>

</template>


Welcome to the Netherlands! You've found somewhere to call your home, you've survived registering with the Gemeente, and you've tried all the deep fried delights on offer. What's next? Paperwork!
If you decide to work in the Netherlands, you have to register with the Gemeente at City Hall. Once you register, the next thing you need to do is organise health insurance. Every person who lives and works in the Netherlands needs to be insured. It's a legal requirement and after you have registered, you've got 4 months to sort out the mandatory health insurance.
Children under 18 years of age also need insurance, usually under the same insurance provider as their parents, but the insurance cover is free and there are no additional payments.
Which health insurance should I get?
If you're looking for standard health insurance (basisverzekering), which fully covers things like doctor appointments and maternity care, then you can expect to pay approximately 100 euro per month. This is the legal minimum basic health care. The government determines what's in the basic package and offers a very high quality and extremely affordable health care to everyone living in the Netherlands. After your standard health insurance package, you can then decide to take out further insurance (aanvullende verzekering) to help pay for additional costs, which are not included in your basic insurance. This supplementary insurance also covers other types of healthcare, including: dental care, alternative medicine, and physiotherapy – which can be very costly without insurance.
To pay for your health insurance there are two main costs. The fixed monthly amount (which is deducted from your bank account), and the extra annual amount that you pay if you use the medical services. This extra amount is called 'eigen risico' (own risk) and in 2018 was up to a maximum amount of 385 euro. Even if you decide to take out the most basic insurance package, you need to remember that for most medical services you'll still need to pay for some of the costs with your annual eigen risico amount. If you don't use the medical services at all during the year, then you won't have to pay any eigen risico.
If you have plans to study in Holland and you're over 18, you still need to make sure that you have healthcare insurance. You may need to have Dutch public healthcare insurance, or your home country's healthcare insurance may be sufficient. If you're unsure, there is a student health care website that can answer your questions.
If you don't take out basic Dutch health insurance within four months of registering, then you're breaking the law. Once the government is notified that you have no insurance, you'll receive a warning letter from the Zorginstituut Nederland. If you don't comply and organise your insurance within three months of receiving the letter, you risk the chance of having to pay a fine. If you don't pay the fine, you'll be issued another fine after another three months. As a finally resort, the Health Care Insurance Board will insure you with an insurance company that they choose for you, and the costs will be withdrawn from your income. It's better just to organise health insurance straight away, or at least pay the fines before they snowball out of control.
If you need medical care while in the Netherlands and you're uninsured by either Dutch, or another country's insurance, then you'll have to cover the cost of the medical treatments yourself.
One of the easiest ways to find the best insurance package for you and your family is by using a comparison site. Independer is a Dutch health insurance comparison site and Zorgwijzer is a comparison site for Dutch health insurance in English. The comparison tool is a straightforward way to help you find suitable health insurance in the Netherlands that best fits you and your family's specific needs.
There are many other health insurance companies, the companies mentioned above are only for basic insurance. If you or your family need insurance for other things such as physiotherapy, dentistry, plastic surgery or alternative medicines like homeopathy (just to name a few), then it's worth the time spent adjusting your options on the comparison tool to come up with the best personal package for you, as there is a wide choice of supplementary insurance to choose from.
Dental costs for children younger than 18 are covered by basic insurance. The majority of dental work for adults can only be insured by taking out additional insurance.
When you make your choice of insurer, it's worth spending some time reading through what each insurance company can do for you. For example, some insurance providers offer a basic insurance with 100% freedom of choice. This means that you can choose for yourself which care provider (physiotherapist, general practitioner, hospital) you'll receive treatment from. Others chose the health care providers that you can use, and if you chose to go with another provider you may need to pay an additional percentage of the cost yourself on top of your basic costs.
What if I want to change my Health Insurance provider?
After all of this research, contemplating and decision making, you finally choose an insurance company best for you and your family. You pay up and are finally insured to live and work in the Netherlands. You're pleased with your choice and feel confident that you got a great deal … until your friend / the bus driver / a supermarket checkout worker tells you about a better deal they're getting on theirs.
If this happens, don't worry, you can change your health insurance provider once per year, for the following year. The deadline to switch is December 31. So in the scenario that you don't make the best choice first time round, it's easy to change to a better insurance provider the following year. Even if you're happy with the choice you made, it's worth checking each year to make sure that your insurance continues to be the best choice for you. Some providers allow you to switch mid-year, but you may have to pay additional costs to change providers.