I have to break up with you. I'm sorry, I know this comes as shock, but I just can't do it anymore. I love you, and I have loved you since I first started dating in my teen years. Actually, I think I've loved you since I was about seven and I chased you around on the playground.
I always thought I could fix you, Mr. Unavailable. That if I were patient enough, loving enough, kind enough, smart enough, enough enough, you would suddenly and magically transform into someone that wanted to go all in with me.
You have misled me too many times and frankly, I'm tired of your crap.
I finally, finally got it — I can't fix you. God knows I've tried. But I'm not the real fixer, He is, and for some reason it's a lesson I have to live over and over.
It doesn't matter why you're unavailable, Mr. Unavailable, because the end result is the same for me. I slip into the comfortable relationship with you because it's so familiar. I know this dance. Or should I say I know what it's like to be a wallflower in love, waiting for you to finally pick me.
I say I want a nice guy, but instead I've been picking the challenging ones. The ones that don't love Jesus, or the ones that say they do but don't mean it. The workaholics, the underachievers, the closeted gays, the ones that aren't over their exes, or the ones that only text at midnight after a few drinks — I'm not making excuses for you anymore.
Why am I waiting for you to love me, Mr. Unavailable, when I've had a perfect love in front of me this whole time? Jesus loves me, and if I'm good enough for Him, then I'm good enough for me too.
I don't know what your problem is, but I have finally recognized my part in it. I trusted in myself and my own abilities too much while simultaneously doubting my own value. Isn't that insane? No wonder I keep pursuing crazy men.
Needless to say, it's not you, it's me. I didn't get divorced just so I could make the same mistakes over and over again. After three months of first dates and an unrequited crush or two, I'm going to stop obsessing.
If you don't like me, you don't like me. I can't make you like me. Jesus likes me, and you know what? That's enough for me.
Hello friends my name is Steven Paige From USA. My life I was infected with HERPES in 2017, i went to several hospitals for cure but there was no solution, so I was thinking how can I get a solution so that i can live a normal life again. One day I was in the trabaco side thinking on how i can find the cure because the pain was to much i always feel embarrass any where i go to sitting alone lamenting in tears a lady walked to me her name is Monica asking me why i am crying, i open up to her telling her my problem,that i have herpes genital and i also narrate how it started to her. she told me not to worry that she can help me out, she introduce me to Dr.Voodoo who uses herbal medication to cure HERPES. so i exchange my contact with wendy when i got home i receive a call from her that she has contacted Dr.Voodoo on my behalf and she also send Dr.Voodoo contact, so i mail Dr.Voodoo and explain to him about my illness. He told me that he can cure my herpes within 8 days and he told me all the things I need to do.after 3 days he send the herbal medicine to me and also give me instructions how to take the medication which I did and i followed his instruction properly. Before I knew what is happening after one week i cured from herpes totally and all the blister and itching was gone. i decide to share this story because i believe a lot of people are passing through the same stress and they have it in mind that there's no cure for herpes.i am telling each and everyone who's reading my testimony that there's cure for herpes. if you have the faith try and use Dr.Voodoo herbal medicine, i promise you after 8 days you will also share a marvelous testimony like me.if you are having herpes,HIV or any kind of disease kindly mail Dr.voodoo via email.([email protected]) or call (+2348135790702) for more information or WhatsApp with him…..
Post by Jenny Erikson. She's not even officially a member of the family yet, but Meghan Markle is already stepping up to the plate when it comes to royal duties. In fact, she's already going to take over a major appearance for Kate Middleton this spring, before her May wedding to Prince Harry.
Post by Jenny Erikson. It looks like it's official -- Counting On is moving on without Jill (Duggar) and Derick Dillard. The Duggar family shared a new promo photo for their reality series on TLC, and the controversial duo was nowhere in sight.


text:
package aQute.bnd.build.model.clauses;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.StringTokenizer;
import java.util.TreeSet;

import aQute.bnd.header.Attrs;

public class HeaderClause implements Cloneable, Comparable<HeaderClause> {

	private static final String	INTERNAL_LIST_SEPARATOR				= ";";
	private static final String	INTERNAL_LIST_SEPARATOR_NEWLINES	= INTERNAL_LIST_SEPARATOR + "\\\n\t\t";

	protected String			name;
	protected Attrs				attribs;

	public HeaderClause(String name, Attrs attribs) {
		assert name != null;

		this.name = name;
		this.attribs = attribs == null ? new Attrs() : attribs;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getName() {
		return name;
	}

	public Attrs getAttribs() {
		return attribs;
	}

	public List<String> getListAttrib(String attrib) {
		String string = attribs.get(attrib);
		if (string == null)
			return null;

		List<String> result = new ArrayList<String>();
		StringTokenizer tokenizer = new StringTokenizer(string, ",");
		while (tokenizer.hasMoreTokens()) {
			result.add(tokenizer.nextToken().trim());
		}

		return result;
	}

	public void setListAttrib(String attrib, Collection< ? extends String> value) {
		if (value == null || value.isEmpty())
			attribs.remove(attrib);
		else {
			StringBuilder buffer = new StringBuilder();
			boolean first = true;
			for (String string : value) {
				if (!first)
					buffer.append(',');
				buffer.append(string);
				first = false;
			}
			attribs.put(attrib, buffer.toString());
		}
	}

	public void formatTo(StringBuilder buffer) {
		formatTo(buffer, null);
	}

	public void formatTo(StringBuilder buffer, Comparator<Entry<String,String>> sorter) {
		String separator = newlinesBetweenAttributes() ? INTERNAL_LIST_SEPARATOR_NEWLINES : INTERNAL_LIST_SEPARATOR;
		// If the name contains a comma, then quote the whole thing
		String tmpName = name;
		if (tmpName.indexOf(',') > -1)
			tmpName = "'" + tmpName + "'";
		buffer.append(tmpName);

		if (attribs != null) {
			Set<Entry<String,String>> set;
			if (sorter != null) {
				set = new TreeSet<Map.Entry<String,String>>(sorter);
				set.addAll(attribs.entrySet());
			} else {
				set = attribs.entrySet();
			}

			for (Iterator<Entry<String,String>> iter = set.iterator(); iter.hasNext();) {
				Entry<String,String> entry = iter.next();
				String name = entry.getKey();
				String value = entry.getValue();

				if (value != null && value.length() > 0) {
					buffer.append(separator);

					// If the value contains any comma or equals, then quote the
					// whole thing
					if (value.indexOf(',') > -1 || value.indexOf('=') > -1)
						value = "'" + value + "'";

					buffer.append(name).append('=').append(value);
				}
			}
		}
	}

	protected boolean newlinesBetweenAttributes() {
		return false;
	}

	@Override
	public HeaderClause clone() {
		try {
			HeaderClause clone = (HeaderClause) super.clone();
			clone.name = this.name;
			clone.attribs = new Attrs(this.attribs);
			return clone;
		} catch (CloneNotSupportedException e) {
			throw new RuntimeException(e);
		}
	}

	public int compareTo(HeaderClause other) {
		return this.name.compareTo(other.name);
	}

	@SuppressWarnings("deprecation")
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((attribs == null) ? 0 : attribs.hashCode());
		result = prime * result + ((name == null) ? 0 : name.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		HeaderClause other = (HeaderClause) obj;
		if (attribs == null) {
			if (other.attribs != null)
				return false;
		} else if (!attribs.isEqual(other.attribs))
			return false;
		if (name == null) {
			if (other.name != null)
				return false;
		} else if (!name.equals(other.name))
			return false;
		return true;
	}
}

redpajama_set_name: RedPajamaGithub


Wired and wireless Internet access is complimentary. Business-related amenities consist of a business center and a meeting room. A complimentary breakfast is offered. Event facilities measure 400 square feet (36 square meters). This business-friendly hotel also offers coffee/tea in a common area, complimentary newspapers in the lobby, and laundry facilities. Onsite self parking is complimentary.
Quality Inn & Suites has designated areas for smoking.
Situated in Grand Prairie, this hotel is 0.8 mi (1.2 km) from Grand Prairie Premium Outlets and 2.4 mi (3.9 km) from Epic Waters Indoor Waterpark. Arlington Highlands and Lynn Creek Park are also within 6 mi (10 km).
Along with coffee/tea in a common area, this hotel has a business center and a meeting room. Free buffet breakfast, free WiFi in public areas, and free self parking are also provided. Additionally, laundry facilities, a 24-hour front desk, and express check-out are onsite.
All 50 rooms provide conveniences like sitting areas and refrigerators, plus free WiFi and LCD TVs with cable channels. Microwaves, coffee makers, and free local calls are among the other amenities available to guests.
Quality Inn & Suites offers 50 air-conditioned accommodations with video-game consoles and safes. Accommodations offer separate sitting areas. 32-inch LCD televisions come with premium cable channels. Refrigerators, microwaves, and coffee/tea makers are provided. Bathrooms include complimentary toiletries and hair dryers. Guests can surf the web using the complimentary wireless Internet access. Business-friendly amenities include desks and phones; free local calls are provided (restrictions may apply). Additionally, rooms include irons/ironing boards and blackout drapes/curtains. Housekeeping is provided daily.


In the state of Israel, primary medical care has become a basic commodity in our life, given the unfortunate situation that we are forced to live in. Therefore, we take extra care and importance on providing the best and most efficient way of making sure that when an unfortunate event occurs, our students – will be able to provide the best medical aid there is to give.
- Our Course Instructors: We take a great care of choosing the best and most experienced instructors. All of our instructors are professional, well-experienced first aid givers that attended many events and took care of many patients.
o Paramedics from the Israeli first aid agencies.
- Updating course contents according to new guidelines – leaded and controlled by Prof. Pinchas Halpern - Board certified in Anesthesiology, Critical Care and Emergency Medicine, special competence in Hyperbaric and Diving Medicine. ATLS & ACLS graduate. The Director of the Department of Emergency Medicine.
And by choosing our teachers staff that works daily on giving first aid – with a vast experience and the obligation to attend many training courses to keep them updated and better prepared.
o A feedback system in which every guide is observed and receives a feedback on his or hers instructing skills.
o In-house meeting and briefings on new guidelines and new ways and techniques of teaching.
- We provide our teaching services to medical doctors of any field of expertise.
These are the main reasons why we are one of Israel`s top leading medical companies.
At the end of the course the students who passed the test will receive training certificates, SHA'AG is the only company in Israel that is standard certified for an instructional department as well.


text:
Namibia ministers resign over fishing bribe allegations
Two Namibian ministers resigned on Wednesday following a Wikileaks report exposing alleged corruption in the fishing industry, released as the country readies for a presidential election later this month.
Iceland-based multinational fishing company Samherji is suspected of bribing senior Namibian officials for continued access to the country's shores, according to documents published by Wikileaks on Tuesday.
Fisheries Minister Bernard Esau and Justice Minister Sakeus Shanghala resigned on Wednesday, presidential spokesman Alfredo Hengari said in a statement.
They stepped down "following press and media reports in which allegations of corruption have been made against" them, he added.
Samherji has denied any wrongdoing, saying it had "nothing to hide".
The scandal surfaced during the last leg of campaigning for presidential elections on November 27, in which incumbent Hage Geingob is vying a second five-year term.
Wikileaks said Namibian authorities have been investigating the case for almost a year.
The whistleblower was tipped by Samherji's former country director Johannes Stefansson, who came forward to testify about the company's activities.
He cooperated with the police and anti-corruption authorities, Wikileaks said.
"We are deeply shocked that Johannes Stefansson not only admits being involved in illegal activities, he is now also making allegations against colleagues," said Samherji CEO Thorsteinn Mar Baldvinsson in a statement on Tuesday.
"This is not how we do business. This is not Samherji," he said.
Fishing is one of Namibia's key economic sectors, second to mineral mining.
The vast southern African country is second in aridity to the Sahara desert, with mobile dunes and sandy plains stretching along its 1 500km coastline.
That coast is home to a vibrant fishing and fish processing industry that has contributed to around 20% of export earnings since 1990.
Russian Troops settled in Mali…
Gabon and Ghana have joined…
South Africa mourns the death…
At least six people were…
In the midst of protests…
Omicron Threat: South African scientists…
Nigeria: Lawmakers reject gender equality…
French officials finally give the…
Nigeria will destroy one million…
Cyril Ramaphosa Request People For…
Burkina Faso's President appoints a…
Climate change impacts are being…
Liberia's senator & Ex-warlord Prince…
Redistribution of Land Becomes Main…
Covid cases increases rapidly in…

redpajama_set_name: RedPajamaCommonCrawl


Fluorine is the chemical element with atomic number 9, represented by the symbol F. Fluorine forms a single bond with itself in elemental form, resulting in the diatomic F2 molecule. F2 is a supremely reactive, poisonous, pale, yellowish brown gas. Elemental fluorine is the most chemically reactive and electronegative of all the elements. For example, it will readily "burn" hydrocarbons at room temperature, in contrast to the combustion of hydrocarbons by oxygen, which requires an input of energy with a spark. Therefore, molecular fluorine is highly dangerous, more so than other halogens such as the poisonous chlorine gas.
Fluorine's highest electronegativity and small atomic radius give unique properties to many of its compounds. For example, the enrichment of 235U, the principal nuclear fuel, relies on the volatility of UF6. Also, the carbon–fluorine bond is one of the strongest bonds in organic chemistry. This contributes to the stability and persistence of fluoroalkane based organofluorine compounds, such as PTFE/(Teflon) and PFOS. The carbon–fluorine bond's inductive effects result in the strength of many fluorinated acids, such as triflic acid and trifluoroacetic acid. Drugs are often fluorinated at biologically reactive positions, to prevent their metabolism and prolong their half-lives.
F2 is a corrosive pale yellow or brown gas that is a powerful oxidizing agent. It is the most reactive and most electronegative of all the elements on the classic Pauling scale (4.0), and readily forms compounds with most other elements. It has an oxidation number -1, except when bonded to another fluorine in F2 which gives it an oxidation number of 0. Fluorine combines with the noble gases argon, krypton, xenon, and radon. Even in dark, cool conditions, fluorine reacts explosively with hydrogen. The reaction with hydrogen can occur at extremely low temperatures, using liquid hydrogen and solid fluorine. It is so reactive that metals, water, as well as most other substances, burn with a bright flame in a jet of fluorine gas. In moist air, it reacts with water to form the also dangerous hydrofluoric acid.
Hydrogen fluoride is a weak acid when dissolved in water, but is still very corrosive and attacks glass. Consequently, fluorides of alkali metals produce basic solutions. For example, a 1 M solution of NaF in water has a pH of 8.59 compared to a 1 M solution of NaOH, a strong base, which has a pH of 14.00.
Although fluorine (F) has multiple isotopes, only one of these isotopes (F-19) is stable, and the others have short half-lives and are not found in nature. Fluorine is thus a mononuclidic element.
The nuclide 18F is the radionuclide of fluorine with the longest half life (about 110 minutes), and commercially is an important source of positrons, finding its major use in positron emission tomography scanning.
Elemental fluorine, F2, is mainly used for the production of two compounds of commercial interest, uranium hexafluoride and sulfur hexafluoride.
Tetrafluoroethylene and perfluorooctanoic acid (PFOA) are directly used in the production of low friction plastics such as Teflon (or polytetrafluoroethylene).
Fluorine is used indirectly in the production of halons such as freon.
Fluorochlorohydrocarbons are used extensively in air conditioning and in refrigeration. Chlorofluorocarbons have been banned for these applications because they contribute to ozone destruction and the ozone hole. Interestingly, since it is chlorine and bromine radicals which harm the ozone layer, not fluorine, compounds which do not contain chlorine or bromine but contain only fluorine, carbon and hydrogen (called hydrofluorocarbons) are not on the United States Environmental Protection Agency list of ozone-depleting substances, and have been widely used as replacements for the chlorine- and bromine-containing fluorocarbons. Hydrofluorocarbons do have a greenhouse effect, but a small one compared with carbon dioxide and methane.
Fluorides have been used in the past to help molten metal flow. Hence the name, which derives from Latin verb fluere, meaning to flow.
Inorganic compounds of fluoride, including sodium fluoride (NaF), stannous fluoride (SnF2) and sodium MFP, are used in toothpaste to prevent dental cavities. These or related compounds are also added to some municipal water supplies, a process called water fluoridation, although the practice has remained controversial since its beginnings in 1945.
The fluorinated antiinflammatories dexamethasone and triamcinolone are among the most potent of the synthetic corticosteroids class of drugs.
SSRI antidepressants, except in a few instances, are fluorinated molecules. These include citalopram, escitalopram, fluoxetine, fluvoxamine, and paroxetine. A notable exception is sertraline. Because of the difficulty of biological systems in dealing with metabolism of fluorinated molecules, fluorinated antibiotics and antidepressants are among the major fluorinated organics found in treated city sewage and wastewater.
Compounds containing 18F, a radioactive isotope that emits positrons, are often used in positron emission tomography, because its half-life of 110 minutes is long by the standards of positron-emitters. One such species is fluorodeoxyglucose.
Fluorine forms a variety of very different compounds, owing to its small atomic size and covalent behavior. Elemental fluorine is a dangerously powerful oxidant, reflecting the extreme electronegativity of fluorine. Hydrofluoric acid is extremely dangerous, whereas in synthetic drugs incorporating an aromatic ring (e.g. flumazenil), fluorine is used to help prevent toxication or to delay metabolism.
Fluorine as a freely reacting oxidant gives the strongest oxidants known.
The reactivity of fluorine toward the noble gas xenon was first reported by Neil Bartlett in 1962. Fluorides of krypton and radon have also been prepared. Argon fluorohydride has been observed at cryogenic temperatures.
The substitution of fluorine for hydrogen in organic compounds offers a very large number of compounds. An estimated fifth of pharmaceutical compounds and 30% of agrochemical compounds contain fluorine. The -CF3 and -OCF3 moieties provide further variation, and more recently the -SF5 group.
The mineral fluorspar (also called fluorite), consisting mainly of calcium fluoride, was described in 1530 by Georgius Agricola for its use as a flux. Fluxes are used to promote the fusion of metals or minerals. The etymology of the element's name reflects its history: Fluorine is pronounced /ˈflʊəriːn/, /ˈflʊərɨn/, or commonly /ˈflɔr-/; from Latin: fluere, meaning "to flow". In 1670 Schwanhard found that glass was etched when it was exposed to fluorspar that had been treated with acid. Carl Wilhelm Scheele and many later researchers, including Humphry Davy, Caroline Menard, Gay-Lussac, Antoine Lavoisier, and Louis Thenard all would experiment with hydrofluoric acid, easily obtained by treating fluorite with concentrated sulfuric acid.
Owing to its extreme reactivity, elemental fluorine was not isolated until many years after the characterization of fluorite. Progress in isolating elemental fluorine was slowed because it could only be prepared electrolytically and even then under stringent conditions since the gas attacks many materials. In 1886, the isolation of elemental fluorine was reported by Henri Moissan after almost 74 years of effort by other chemists. The generation of elemental fluorine from hydrofluoric acid is exceptionally dangerous, killing or blinding several scientists who attempted early experiments on this halogen. These individuals came to be referred to as "fluorine martyrs". For Moissan, it earned him the 1906 Nobel Prize in chemistry.
The first large-scale production of fluorine was undertaken in support of the Manhattan project, where the compound uranium hexafluoride (UF6) had been selected as the form of uranium that would allow separation of its 235U and 238U isotopes. Today both the gaseous diffusion process and the gas centrifuge process use gaseous UF6 to produce enriched uranium for nuclear power applications. In the Manhattan Project, it was found that UF6 decomposed into UF4 and F2. The corrosion problem due to the F2 was eventually solved by electrolytically coating all UF6 carrying piping with nickel metal, which forms a nickel difluoride that is not attacked by fluorine. Joints and flexible parts were made from teflon, then a very recently discovered fluorocarbon plastic which is also not attacked by F2.
Though F2 is too reactive to have any natural biological role, fluorine is incorporated into compounds with biological activity. Naturally occurring organofluorine compounds are rare, the most notable example is fluoroacetate, which functions as a plant defence against herbivores in at least 40 plants in Australia, Brazil and Africa. The enzyme adenosyl-fluoride synthase catalyzes the formation of 5'-deoxy-5'-fluoroadenosine. Fluorine is not an essential nutrient, but its importance in preventing tooth decay is well-recognized. The effect is predominantly topical, although prior to 1981 it was considered primarily systemic (occurring through ingestion).
Elemental fluorine (fluorine gas) is a highly toxic, corrosive oxidant, which can cause ignition of organic material. Fluorine gas has a characteristic pungent odor that is detectable in concentrations as low as 20 ppb. As it is so reactive, all materials of construction must be carefully selected and metal surfaces must be passivated.
Fluoride ions are toxic: the lethal dose of sodium fluoride for a 70 kg human is estimated at 5–10 g.
Hydrogen fluoride and hydrofluoric acid are dangerous, far more so than the related hydrochloric acid, because undissociated molecular HF penetrates the skin and biological membranes, causing deep and painless burns. The free fluoride, once released from HF in dissociation, also is capable of chelating calcium ion to the point of causing death by cardiac dysrhythmia. Burns with areas larger than 25 square inches (160 cm2) have the potential to cause serious systemic toxicity.
Organofluorines are naturally rare compounds. They can be nontoxic (perflubron and perfluorodecalin) or highly toxic (perfluoroisobutylene and fluoroacetic acid). Many pharmacueticals are organofluorines, such as the anti-cancer fluorouracil. Perfluorooctanesulfonic acid (PFOS) is a persistent organic pollutant.
↑ Theodore Gray. "Real visible fluorine". The Wooden Periodic Table.
↑ "pKa's of Inorganic and Oxo-Acids". Evans Group. Retrieved on 2008-11-29.
↑ M. Jaccaud, R. Faron, D. Devilliers, R. Romano (2005). Fluorine, in Ullmann's Encyclopedia of Industrial Chemistry. Weinheim: Wiley-VCH. ISBN 3527310975.
↑ Leonel R Arana, Nuria de Mas, Raymond Schmidt, Aleksander J Franz, Martin A Schmidt and Klavs F Jensen (2007). "Isotropic etching of silicon in fluorine gas for MEMS micromachining". J. Micromech. Microeng. 17: 384. doi:10.1088/0960-1317/17/2/026.
↑ compiled by Alexander Senning. (2007). Elsevier's dictionary of chemoetymology : the whies and whences of chemical nomenclature and terminology. Amsterdam: Elsevier. p. 149. ISBN 9780444522399, http://books.google.de/books?id=Fl4sdCYrq3cC&pg=PT158.
↑ Steve S Lim. "eMedicine - Corticosteroid-Induced Myopathy".
↑ "Fluorine's treasure trove". ICIS news (2006-10-02). Retrieved on 2008-11-29.
↑ Bernhard Stump, Christian Eberle, W. Bernd Schweizer, Marcel Kaiser, Reto Brun, R. Luise Krauth-Siegel, Dieter Lentz, François Diederich (2009). "Pentafluorosulfanyl as a Novel Building Block for Enzyme Inhibitors: Trypanothione Reductase Inhibition and Antiprotozoal Activities of Diarylamines". ChemBioChem 10 (1): 79. doi:10.1002/cbic.200800565. PMID 19058274.
↑ "Discovery of fluorine". Fluoride History.
↑ H. Moissan (1886). "Action d'un courant électrique sur l'acide fluorhydrique anhydre". Comptes rendus hebdomadaires des séances de l'Académie des sciences 102: 1543–1544, http://gallica.bnf.fr/ark:/12148/bpt6k3058f/f1541.chemindefer.
↑ Richard D. Duncan. (2008). Elements of faith : faith facts and learning lessons from the periodic table. Green Forest, Ark.: Master Books. p. 22. ISBN 9780890515471, http://books.google.com/books?id=kgVAlzGXx6oC.
↑ "The Nobel Prize in Chemistry 1906". Nobelprize.org. Retrieved on 2009-07-07.
↑ Proudfoot AT, Bradberry SM, Vale JA (2006). "Sodium fluoroacetate poisoning". Toxicol Rev 25 (4): 213–9. doi:10.2165/00139709-200625040-00002. PMID 17288493.
↑ Olivares M and Uauy R (2004). "Essential nutrients in drinking-water (Draft)". WHO. Retrieved on 2008-12-30.
↑ Pizzo G, Piscopo MR, Pizzo I, Giuliana G (September 2007). "Community water fluoridation and caries prevention: a critical review". Clin Oral Investig 11 (3): 189–93. doi:10.1007/s00784-007-0111-6. PMID 17333303.
↑ Aigueperse, Jean; Paul Mollard, Didier Devilliers, Marius Chemla, Robert Faron, Renée Romano, Jean Pierre Cuer (2005). "Fluorine Compounds, Inorganic". in Ullmann. Encyclopedia of Industrial Chemistry. Weinheim: Wiley-VCH.
↑ "Recommended Medical Treatment for Hydrofluoric Acid Exposure" (PDF). Honeywell Specialty Materials. Retrieved on 2009-05-06.


Who is Dr. Angela Barnett?
Crystal Magic Orchestra's Cosmic Jazz Music is a Magical element that will assist in preparing the listener to become a Multidimensional Person and then also be able to manifest the reality that makes one happy and joyful.
to Learn the Truth About everything regarding the Ascension of this Universe, how it all began, what is taking place now and in the future and how the most important thing that needs to be done is to TUNE Into the Frequencies or Vibrations within your own Cellular Structure that aligns you into the Vortex of All that Is and allows that Frequency of Eternal Life and Manifestation to flow through you continuously.
Those who align their vibrations into their individual Source frequencies will begin to soar and gain lift off in 2018. Many of us have been preparing the rest of the world for the past twenty years for this event that has finally begun.


text:
Dionne Searcey
Photo: Rod Searcey
Dionne Searcey was the West Africa bureau chief for The New York Times from 2015 to 2019. She won the Michael Kelly Award for courage in international reporting, the Society of Professional Journalists' Sigma Delta Chi award for international reporting for her coverage of Boko Haram, and a citation for her work by the Overseas Press Club. She and a team of Times journalists were nominated for an Emmy for her stories on Boko Haram.
She joined the Times in 2014 to write about the American economy after working for ten years at The Wall Street Journal, where she was an investigative reporter and national legal correspondent, and covered the telecom industry. She has worked as a political reporter at Newsday and The Seattle Times and was a reporting resident at the Chicago Tribune. She started her career as a crime reporter at the City News Bureau of Chicago.
She was raised in Wymore, Nebraska, and lives with her husband and three children in Brooklyn, New York.


PM, PHILIP MORRIS. BENSON & HEDGES PART-TIME INNER CITY SAMPLING PROGRAM. 1985 June 03. Philip Morris Records.
Insecure follower. Has menial boring job. Probably leads fairly dull existence. Emotionally insecure. Problems with self-esteem. Passive-aggressive. Lacks inner resources. Grooming not a strong priority. Lower standard of living. These are all terms taken from Big Tobacco's files that have been used to describe different groups of potential customers for their deadly, addictive products.
Source: Hunter, C.S. "Marketing Research Report. Inner City Black Creative Exploratory." Truth Tobacco Industry Documents. 16 Jan. 1989: 5.


I'm still a terrible blogger. Since I've been home I've just been out or alseep. Hopefully this will change when I have a new laptop, if I get one, I've arugued with mother over silliness. Anyway I've started the day zero project, so feel free to suggest things things I should add to it!


Willow Technologies offer highly innovative miniature Magnetic Switches with high sensitivity and low supply voltage operation, integrating a single axis magnetic field sensor element with complete control and processing circuitry all on a single chip. The Magnetic Switches are minute at 1.1 x 1.0 x 0.57mm, operate with a 1.5V battery and are becoming smaller and lighter with every new development. Our Engineers are available to offer free support and advice on design in projects or simply on the most suitable solution for your requirements.
Applications Opening & closing detection, mobile phones, note PCs, digital video & still cameras, home electrical appliances, door security, water level detection, dehumidifiers, humidifiers, encoders, pointing devices etc.
Opening & closing detection, mobile phones, note PCs, digital video & still cameras, home electrical appliances, door security, water level detection, dehumidifiers, humidifiers, encoders, pointing devices etc.


Sharp closing splits when 2nd to The Empress in qualifier. Nice workout since.
Starved of room last weekend. Strikes a field with more depth. Inclined to lay.
Looked smart in the coat and turned in an eyecatching debut. Tough to toss.
Butting heads without success in good company. Due a change of luck. Needed.
Frankly disappointing with run to suit last weekend. Wide draw hurts. Crumbs.
Several here were superior the last time they clashed. Prefer in an easier race.
Stern challenge to be close up Dec 8. Follows out sketchy sort. Want fair odds.
First race for a month but typically gives an honest account. First 4 possible.
Ragged under pressure last start. Likely to go quicker here and that could help.
Slow recovery and minor leg cut after Nov 23 race. Gives stable a strong hand.


The space along side of 1100 8th Street – the new home of Las Placitas – will be the site of a 38 seat sidewalk cafe.
The three Amaya brothers (Isadoro, Roman, and Jose) owners of Las Placitas Restaurant, hope to reopen the popular restaurant at its new location at 1100 8th Street, SE, on November 1. The news was announced Tuesday night at ANC6B's October meeting where an application for a liquor license for the restaurant was before the Commission. The application was approved by a vote of 9 – 0 – 1.
Las Placitas had occupied the space at 517 8th Street for 24 years and 360 days, making it one of the oldest existing restaurants on Barracks Row. The Amayas lost the lease at that location this month and the neighboring Matchbox restaurant will expand into the space. The new restaurant will seat 78 – 40 inside and 38 at a sidewalk café alongside the restaurant.


text:
Cyclone sandwich! Two powerful cyclones Trevor and Veronica both expected to make landfall this weekend in northwest and northeast of Australia
Map Weatherzone
Two powerful cyclones have sandwiched northern Australia and both are expected to make landfall this weekend.
Tropical Cyclone Trevor will make its second landfall this weekend in the northeast after strengthening, with winds expected to reach almost 100 mph.
Evacuations have already occurred and an emergency was declared in parts of the Northern Territory.
On the northwestern part of the country, a very powerful Tropical Cyclone Veronica will also make landfall during the weekend.
Map RSOE Alertmap
According to the Weather Channell, two tropical cyclones, Trevor and Veronica, are expected to bring heavy rainfall, flooding and damaging winds to two parts of Australia into this weekend.
Up first is Tropical Cyclone Trevor, which actually already made the first landfall earlier this week as the equivalent of a Category 3 hurricane in the Cape York Peninsula, in northern Queensland.
Heavy rain and strong winds there resulted in downed trees and power outages, as well as closed schools and roads. More than 10 inches of rain has fallen over the past week in parts of Cape York Peninsula and wind gusts up to 73 mph have been measured.
Trevor weakened over land but has now emerged into the Gulf of Carpentaria where it is expected to strengthen before making another landfall in the Northern Territory Saturday, local time. It is currently forecast to be the equivalent of a Category 2 or 3 hurricane when it strikes the Northern Territory, according to the Joint Typhoon Warning Center.
Heavy rainfall, dangerous storm surge and strong winds are expected near where the centre of the storm tracks. Gusts over 75 mph may develop Friday night, local time, along with the Northern Territory coast, with increasing winds into Saturday.


My research focuses on the astrophysics of accreting black holes and compact objects within the context of galactic feedback. I am interested in the physical processes and conditions that enable the formation of supermassive black holes with masses of up to 10 billion suns. I try to understand how fast can black holes accrete and grow.
My research also aims at determining the aftermath of black holes growth onto the Galactic medium, in particular the effects of black hole jets and winds onto the evolution of the host galaxy and, at larger scales, in clusters of galaxies (active galactic nuclei feedback). I am also involved in the optimisation of future missions such as ATHENA and provide support for simulations, instruments validation and white papers preparation.
The image on the top/right panel shows an artistic view of my first discovery of ultrafast, relativistic, winds in ultraluminous X-ray sources as evidence of super-Eddington accretion (Pinto et al. 2016, Nature) and published on an ESA press release. Image credit: ESA-C. Carreau. A TV interview was recorded and it's available at Cambridge TV.
The image on the right panel shows the Hitomi high-spectral-resolution X-ray spectrum of the Perseus cluster of galaxies superimposed onto a high-spatial-resolution image taken with Chandra. I directly contributed to the Hitomi analysis after having studied Perseus also with XMM-Newton (Pinto et al. 2016, MNRAS - Hitomi Collaboration 2016, Nature). We obtained the most accurate measurements of turbulence in the hot intracluster medium and provided implications onto the AGN radio-mode feedback in the cluster of galasies. Background: NASA / CXO; Spectrum: Hitomi Collaboration / JAXA, NASA, ESA, SRON, CSA (ESA Press Release).
The image to the right is the correlation between the velocity and the ionization parameter of an ultrafast, relativistic, wind in an AGN with its luminosity. When the source is brighter the winds becomes faster but also more ionized which explains why its lines seem to disappear. This discovery - led by my previous group in Cambridge - provided new insights on the formation of powerful winds in AGN and their effect on the surrouding medium, particularly in the regime of accretion rates near the Eddington limit, a rather new field of research (Parker, Pinto et al. 2017, Nature - Pinto et al. 2018, MNRAS - ESA Press Release).
When the debate is over, slander becomes the tool of the loser (Socrates).
I love stars above everything because the brightest one, my mom, showed me the way.


text:
<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/aiplatform/v1/metadata_service.proto

namespace Google\Cloud\AIPlatform\V1;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\RepeatedField;
use Google\Protobuf\Internal\GPBUtil;

/**
 * Request message for [MetadataService.CreateContext][google.cloud.aiplatform.v1.MetadataService.CreateContext].
 *
 * Generated from protobuf message google.cloud.aiplatform.v1.CreateContextRequest
 */
class CreateContextRequest extends \Google\Protobuf\Internal\Message
{
    /**
     * Required. The resource name of the MetadataStore where the Context should be
     * created.
     * Format:
     * `projects/{project}/locations/{location}/metadataStores/{metadatastore}`
     *
     * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
     */
    private $parent = '';
    /**
     * Required. The Context to create.
     *
     * Generated from protobuf field .google.cloud.aiplatform.v1.Context context = 2 [(.google.api.field_behavior) = REQUIRED];
     */
    private $context = null;
    /**
     * The {context} portion of the resource name with the format:
     * `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}`.
     * If not provided, the Context's ID will be a UUID generated by the service.
     * Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`.
     * Must be unique across all Contexts in the parent MetadataStore. (Otherwise
     * the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED if the
     * caller can't view the preexisting Context.)
     *
     * Generated from protobuf field string context_id = 3;
     */
    private $context_id = '';

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type string $parent
     *           Required. The resource name of the MetadataStore where the Context should be
     *           created.
     *           Format:
     *           `projects/{project}/locations/{location}/metadataStores/{metadatastore}`
     *     @type \Google\Cloud\AIPlatform\V1\Context $context
     *           Required. The Context to create.
     *     @type string $context_id
     *           The {context} portion of the resource name with the format:
     *           `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}`.
     *           If not provided, the Context's ID will be a UUID generated by the service.
     *           Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`.
     *           Must be unique across all Contexts in the parent MetadataStore. (Otherwise
     *           the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED if the
     *           caller can't view the preexisting Context.)
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Google\Cloud\Aiplatform\V1\MetadataService::initOnce();
        parent::__construct($data);
    }

    /**
     * Required. The resource name of the MetadataStore where the Context should be
     * created.
     * Format:
     * `projects/{project}/locations/{location}/metadataStores/{metadatastore}`
     *
     * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
     * @return string
     */
    public function getParent()
    {
        return $this->parent;
    }

    /**
     * Required. The resource name of the MetadataStore where the Context should be
     * created.
     * Format:
     * `projects/{project}/locations/{location}/metadataStores/{metadatastore}`
     *
     * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
     * @param string $var
     * @return $this
     */
    public function setParent($var)
    {
        GPBUtil::checkString($var, True);
        $this->parent = $var;

        return $this;
    }

    /**
     * Required. The Context to create.
     *
     * Generated from protobuf field .google.cloud.aiplatform.v1.Context context = 2 [(.google.api.field_behavior) = REQUIRED];
     * @return \Google\Cloud\AIPlatform\V1\Context|null
     */
    public function getContext()
    {
        return $this->context;
    }

    public function hasContext()
    {
        return isset($this->context);
    }

    public function clearContext()
    {
        unset($this->context);
    }

    /**
     * Required. The Context to create.
     *
     * Generated from protobuf field .google.cloud.aiplatform.v1.Context context = 2 [(.google.api.field_behavior) = REQUIRED];
     * @param \Google\Cloud\AIPlatform\V1\Context $var
     * @return $this
     */
    public function setContext($var)
    {
        GPBUtil::checkMessage($var, \Google\Cloud\AIPlatform\V1\Context::class);
        $this->context = $var;

        return $this;
    }

    /**
     * The {context} portion of the resource name with the format:
     * `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}`.
     * If not provided, the Context's ID will be a UUID generated by the service.
     * Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`.
     * Must be unique across all Contexts in the parent MetadataStore. (Otherwise
     * the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED if the
     * caller can't view the preexisting Context.)
     *
     * Generated from protobuf field string context_id = 3;
     * @return string
     */
    public function getContextId()
    {
        return $this->context_id;
    }

    /**
     * The {context} portion of the resource name with the format:
     * `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}`.
     * If not provided, the Context's ID will be a UUID generated by the service.
     * Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`.
     * Must be unique across all Contexts in the parent MetadataStore. (Otherwise
     * the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED if the
     * caller can't view the preexisting Context.)
     *
     * Generated from protobuf field string context_id = 3;
     * @param string $var
     * @return $this
     */
    public function setContextId($var)
    {
        GPBUtil::checkString($var, True);
        $this->context_id = $var;

        return $this;
    }

}


text:
Jorge Miota González (Abancay, 1871-Buenos Aires, 1926) fue un periodista y escritor peruano. Narrador modernista, escribió cuentos y crónicas para publicaciones periódicas; no llegó a publicar libros. Es más recordado como el introductor del término huachafo (equivalente a cursi) en el habla peruana.

Biografía
Nacido en Abancay, a temprana edad se estableció con su familia en Lima, donde debió soportar las vicisitudes de la guerra del Pacífico; su padre murió combatiendo en la batalla de Miraflores (1881). Gracias a los esfuerzos de su madre, pudo educarse en el Colegio Guadalupe; y tras pasar por varios empleos precarios, consiguió el puesto de secretario de la prefectura del departamento de Apurímac. Pero enfermó de malaria, y debió regresar a Lima para recuperar su salud.

Finalizando el siglo XIX, viajó a Buenos Aires, para pasar luego a Montevideo y Asunción, antes de regresar a Lima. En la capital peruana colaboró intensamente en el diario El Comercio y en la revista Actualidades, y algo menos en las revistas Prisma, Siluetas, Cinema, Contemporáneos y Monos y Monadas. Luego viajó a Europa, y vivió en París entre 1911 y 1912. Logró que Francisco García Calderón Rey (entonces segundo secretario de la legación peruana en París), le diera carta de recomendación para el poeta Rubén Darío, aunque no se sabe si este le favoreció de algún modo.

Cuando retornó al Perú, se hallaba ya presa de una enfermedad mental. Sufría de ataques de ira y de delirio persecutorio; llegó incluso a acusar a su madre y a dos médicos de secuestro. El diagnóstico que le dieron era de «insano peligroso». El asunto se comenzó a ventilar públicamente cuando el escritor Clemente Palma publicó un artículo en donde trataba del «caso del escritor señor Miota» (1913).

Miota estuvo un tiempo internado en el Manicomio de Lima, para luego ser alojado en una Casa de Salud. Finalmente, convenció a su madre para emprender viaje a Buenos Aires (1916). Allí se perdió su rastro; diez años después, llegó al Perú una vaga noticia de su fallecimiento, posiblemente acaecido en un sanatorio mental (1926).

Valoración
Miota es un representante del modernismo literario en el Perú, aunque no publicó libros. Su obra literaria, conformada por cuentos, artículos y crónicas, lo dejó dispersa en publicaciones periódicas. Alberto Tauro del Pino lo describe como «escritor original y penetrante», destacando el hecho de que «supo describir tipos y costumbres, exponer críticas tan agudas como elegantes, y proyectar hacia las cosas una visión emocionada». Luis Alberto Sánchez lo define como «un excelente cuentista, dueño de una prosa melódica», y considera que sus personajes «revelan intensos conflictos sicológicos».

Introductor del término huachafo
La fama de Miota se debe al hecho circunstancial de haber introducido en el habla peruana la palabra huachafo, que equivale al cursi español y al siútico chileno.  Ese uso apareció por primera vez en 1908, en la revista Actualidades. Es una adaptación del colombianismo guachafita, que tiene otro significado (el de desorden o barullo). La anécdota sobre su origen mencionaba a una familia de exiliados colombianos en Lima, que aparentando ser de clase alta, celebraban continuas fiestas o algazaras, que ocasionaban alborotos, que los colombianos llamaban guachafitas, y esta palabra vino a aplicarse como apelativo a las damas de esa familia, que presumían de una clase que en realidad no tenían, y así por extensión, el término vino también a tener ese significado. Un peruanismo que a diferencia de otros, se ha mantenido su uso en el Perú pese al tiempo transcurrido.

Referencias

Abancaínos
Cuentistas de Perú
Escritores de Perú
Escritores en español del siglo XX
Guadalupanos (siglo XIX)
Periodistas de Perú

redpajama_set_name: RedPajamaWikipedia


text:
Belef
Sofest
Belgrade Winter
Nemanja Stanković, Cello, and Marino Formenti, Piano, at the Belgrade Philharmonic on 3 November
||||| |||||
On the third day of BEMUS, on 3 November from 8 p.m., the famous Serbian cellist Nemanja Stanković will perform in the Belgrade Philharmonic, accompanied by Marino Formenti on the piano. Tickets can be purchased at the ticket office of the Belgrade Philharmonic.
The concert programme will include the following works:
Arvo Pärt – Fratres
Béla Bartók – Rhapsody for Cello and Piano No. 1, Sz. 88
Rodion Shchedrin – In the Style of Albéniz
Anton Webern – Drei kleine Stücke, Op. 11
Robert Schumann – Fantasiestücke, Op. 73
Johannes Brahms – Sonata for Piano and Cello No. 1, Op. 38
Nemanja Stanković, cellist, is considered one of the leading young stars on Serbian scene. He has had solo performances with the Belgrade Philharmonic, RTS Symphony Orchestra, Camerata Serbica Orchestra, Italian Youth Orchestra (OGI), Czech Virtuosos, St George Strings, Niš Symphony Orchestra, BGO Dušan Skovran, Bitola Chamber Orchestra, Zrenjanin Chamber Orchestra, Faculty of Music Symphony Orchestra in Belgrade, Kristiansand Symphony Orchestra. He has collaborated with conductors: Rafael Payare, Fabrice Bollon, Bojan Suđić, Noam Zur, Denis Shapovalov, Biljana Radovanović, Le Fi Fi and has performed throughout Europe, North America, as well as in Japan, Senegal and Tunisia.
Stanković has won awards at numerous competitions and contests, such as the International Cellist Competition in Liezen (Austria), the International Music Youth Competition in Belgrade (Serbia), Johannes Brahms (Austria), Fidelio Special (Austria), Antonio Janigro (Croatia), Petar Konjović (Serbia). He was named the Most Promising Music Artist in Serbia by the ArtLinK Association in 2007 and by the Muzika klasika magazine in 2018, and in 2019 the Art Association Le Dimore del Quartetto named the Trio Imersio ensemble, of which Stanković is a member, the Ensemble of the Year, which earned them an award from the Brivio Sforza Foundation. He had notable performances at international festivals: BEMUS, NIMUS, OKTOH, Alpen Classica, KotorArt, Days of Mokranjac, Cello Fest, BUNT, STRINGS, LilaLo, etc.
Marino Formenti is considered to be one of the most interesting musicians of his generation. Praised by the Los Angeles Times as 'a Glenn Gould for the 21st Century', his fondness for experimenting with new and unexpected combinations led to the development of new concert experiences and unexampled projects. His performances include interpretations of the most recent works, improvisations, as well as individual reflections on classical masterpieces, and his latest projects often feature non-Western and popular forms of music.
CEBEF prepares and organizes film, music and multimedia ambient festivals with a tradition spanning over decades.
Svetogorska bb
Email : info@cebef.rs
Copyright © 2023 | CEBEF. All Rights Reserved.


text:
Nara Dreamland, an Abandoned Amusement Park in Japan
Inspired by the American Disneyland, the Japanese developers of Nara Dreamland decided to build its own version of the amusement park of their own.
However, when the Dreamland opened in 1961, the resulting structure looked like a complete knockoff mocking the real Disneyland. Its entrance was almost identical to the Californian theme park, as well as the Train Depot, Main Street U.S.A., and the Sleeping Beauty Castle. While they didn't have their own version of Mickey Mouse, Dreamland had bear mascots in British guard costumes named Ran-chan and Dori-chan.
After 45 years of monopolizing the big crowds, Nara Dreamland finally lost its kiddie patrons in 2001 when Universal Studios Japan opened in Osaka. By 2006, Dreamland permanently closed down. For some reason though, the rides weren't torn down and are still standing today. The rides include Aska, a wooden roller coaster, the photogenic Screw Coaster, a Figure-8 Monorail, and a carousel — subjects of many a haikyo's (Japanese urban explorer) photography.


text:
Maryland Lawmakers Pledge to Defend Obamacare, Turn Back GOP Repeal Efforts
As Senate Republicans get to work crafting their own plan to repeal and replace the Affordable Care Act, also known as Obamacare, Maryland's Congressional delegation re-committed themselves to defending the law.
Republican lawmakers face a similar challenge as their House counterparts in creating a bill which will generate the 50 votes needed to pass. The House passed a health care reform bill earlier this month after an initial, rushed attempt became an embarrassing public failure.
Chris Van-Hollen
U.S. Sen. Chris Van Hollen (D) believes the Affordable Care Act should be strengthened, not repealed. For an issue as important as healthcare, Marylanders deserve a bi-partisan approach, he said, not a GOP-led effort which will put tax breaks ahead of improving wellness.
"There are plenty of ways we can improve our health care system and work to bring costs down, but this partisan effort to dismantle our health care system and give tax breaks to millionaires and insurance companies will not prevail," Van Hollen said.
According to The Maryland Office of Policy Analysis, Maryland has benefitted considerably from the Affordable Care Act. The percentage of Marylanders who were uninsured due to the cost of insurance fell dramatically from 7.0 percent in 2011 to 2.8 percent in 2014.
Rep. John Sarbanes, (D-3) serves on the Energy and Commerce Committee, one of two House panels responsible for the GOP's health care reform bill, called the American Health Care Act. Sarbanes voted against that legislation, which narrowly passed the House of Representatives on May 3.
"Estimates show 400,000 Marylanders are in jeopardy of losing their insurance. Scaling back Medicaid will not only strip thousands of people off the health care rolls, but will hurt the state's ability to address the growing problems of opioid addiction and mental illness," Sarbanes said.
U.S. Sen. Ben Cardin (D) joined Van Hollen in pledging to wage a vigorous fight against turning back the Affordable Care Act.
"We will not lose track of Republican efforts to sabotage America's health care system. We will fight it every step," he said in a tweet after the House passed the Republican-backed health bill.
According to the Center for American Progress, the healthcare policy recently passed by the House would leave an additional 313,300 Marylanders uninsured by 2026, and increase the costs of insurance to those who could afford it by an additional $3,456 annually over the next 10 years.
Congressman Elijah Cummings
Congressman Elijah Cummings was particularly concerned that the Congressional Budget Office had not had a chance to analyze the economic impact of the American Health Care Act.
The CBO's report on the House measure, issued May 24, predicted an additional 23 million Americans would lose insurance by 2024, and coverage would skyrocket for those who are currently ill or face pre-existing conditions.
Baltimoreans such as Simone Barrett and Johnny Jowers are joining their Congressional leaders and watching the Senate effort carefully.
Barrett, who closely monitors the health of her 19-year-old son, as well as her mother, who is in her senior years, said that the Republican-backed healthcare proposal will hurt many of President Trump's core supporters as well as African Americans who overwhelmingly voted against him.
"The Republicans are talking about access to healthcare but access and affordability are two different things," she said. "They are playing word games with people. The healthcare initiatives proposed by Republicans and backed by Trump will hurt both poor Blacks and poor Whites. If neither group can afford the healthcare they have access to, then everybody's worse off."
Octogenarian Johnny Jowers lives independently and is in good health right now. But he said he knows that the financial limits on coverage for major illnesses in the Republican plan would be devastating for many of his contemporaries and their families.
"I'm a veteran, so my health care needs are largely taken care of," Jowers said. "Now that the healthcare debate has shifted to the Senate, I'm hoping that more seasoned and experienced voices will inform lawmakers of the impact of the healthcare policies being considered before they act."
"I'm on a fixed income but able to watch my expenses and still live a comfortable life. Yet, I know very well that life on a fixed income changes considerably when you are faced with a major illness," he said.
Reps. Steny Hoyer (D-5), Elijah Cummings (D-7), Sarbanes (D-3) and Jamie Raskin (D-8) protested in front of Maryland Governor Larry Hogan's residence this year after Hogan failed to join four other GOP governors who issued their own proposals to overhaul Medicaid for low-income people. The lawmakers were concerned about Hogan's silence on Republican healthcare policy, especially since Maryland opted to utilize Medicaid expansion. That expansion offered healthcare coverage to an additional 248,000 Marylanders, according to the Kaiser Family Foundation.
CategoriesBlack health Week
Previous PostPrevious Kehinde Wiley Paints The Formative Black Artists Of Our Time
Next PostNext Elvis link, red velvet boost value of jet up for auction


text:
Boarding Schools for Boys Wisconsin
Home Boarding Schools for Boys Boarding Schools for Boys Wisconsin
Boarding Schools in Wisconsin
WinGate Wilderness Therapy is a leading provider of Wilderness programs for struggling teens from Wisconsin. Unlike traditional Boarding Schools, WinGate takes a more therapeutic approach to healing; we not only allow teens to benefit from substance abuse treatment and recovery, but we also give them the opportunity to learn important life skills as they re-build themselves both mentally and physically in the outdoors.
Additionally, while WinGate Wilderness Therapy may be located outside Wisconsin, it is highly recommended that teens with any form of addiction or mental health issues are provided treatment away from unsupportive peers and negative influences. For this reason, seeking treatment out of state is ideal, and as a result, Wingate has made it our priority to accept troubled teens from all areas of the country.
However, although Wilderness therapy participants are encouraged to find their own path toward internal balance in the outdoors, there are strict rules and consequences for when rules are broken. Thus, students inevitably change their behavior willingly and on their own, receiving positive consequences for positive actions. It takes more than boarding school to produce the kind of change that will give teens the tools they need for permanent sobriety, and Wisconsin troubled teens desperately need the right kind of help.
Wisconsin Boarding Schools for Boys
Treating extreme substance abuse problems of troubled teen boys often comes down to taking drastic action. However, while parents of struggling teens may find themselves searching for Wisconsin boarding schools for boys, these schools aren't necessarily the solution. In fact, they rarely are; because, although they may provide structure and education, they fail to treat the underlying problems that have caused teen boys to exhibit negative behaviors in the first place. When parents need to find help for their struggling teens, it's wilderness programs like that of WinGate Wilderness Therapy, that garner the most successful and enduring results.
The adventure therapy programs that WinGate provides have changed the lives of many troubled teen boys, even when they didn't want – or think – they could change. For any parent who believes their troubled teen boy is finally in need of professional help, it's not Wisconsin boarding schools that will do it, but a true therapeutic program like WinGate Wilderness Therapy, which will finally facilitate significant change.
Boarding schools in Wisconsin aren't the only choice for parents of struggling teens. In fact, whether the problem stems from ongoing mental health or behavioral issues, or whether substance abuse or addiction has taken over, finding an alternative that can provide a thorough, therapeutic environment is nearly always a better option. Wingate Wildness Therapy is such a place, and as leading boys boarding school alternative, the results we achieve are designed to provide permanent and meaningful change in each of our student's lives.
These improvements aren't just limited to academic performance and moderate behavior modification either, we also include the development of better communication skills, impulse control, self-efficacy, life skills development, and improved self-esteem. There's no doubt that Wisconsin boarding schools have their place in society. Yet, when it comes to additional challenges – like those which come through addiction and behavioral or mental health problems – a boarding school just isn't enough.
Most people with obsessive-compulsive disorder are either, washers who are afraid of contamination, doubters who are afraid that something terrible will happen, checkers who are constantly turning things off, counters who are obsessed with order, or hoarders who are afraid to throw anything away. Is your young person struggling with OCD?
From the first time your child was exposed to the media, it has influenced him or her. Some media play a significant role in socialising children, and forming their ideas about the world. Besides their own family, a young person's views can be strongly affected by television and books, as well as friends, school, etc.
Choose a City Page in WI
Appleton (WI)
Beloit (WI)
Brookfield (WI)
Eau Claire (WI)
Edmonds (WI)
Fond du Lac (WI)
Franklin (WI)
Green Bay (WI)
Janesville (WI)
Kenosha (WI)
La Crosse (WI)
Madison (WI)
Manitowoc (WI)
Menomonee Falls (WI)
Milwaukee (WI)
New Berlin (WI)
Oak Creek Vernon (WI)
Oshkosh (WI)
Racine (WI)
Sheboygan (WI)
Sun Prairie (WI)
Waukesha (WI)
Wausau (WI)
Wauwatosa (WI)
West Allis (WI)
West Bend (WI)
Why Wilderness Therapy Works
Wilderness therapy is often the last option loved ones think of when an adolescent or teen is in trouble – but it is one of the most effective. Done...
What Happens at Wilderness Camps for Troubled Teens?
For rebellious or defiant teenagers that struggle with emotional or behavioral issues, therapeutic wilderness therapy programs can make a...
Wilderness And Outdoor Therapy for Troubled Teens
As a parent, you know all too well how difficult the adjustment can be for your child as they move from childhood to adulthood. For some teens, the...
Antidepressants for Teens Cause More Harm Than Good Study...
New Study Says Antidepressants May Make Teens More Depressed There are few things more heartbreaking for a parent than helplessly watching their child suffer...
How Common is Depression and Anxiety
Talking about mental health can be challenging. One thing to keep in mind is that mental health concerns are not unusual. Many people deal with them over the...
Teenage Girls with Depression & The Culture of Silence
This is part of the LiveOutLoud series of reports by GlobalGirl Media Reporters for teens of color that struggle with Depression. Explore the Experience of Young...
Is Your Child Abusing Prescription Drugs
As some common drugs of abuse – such as alcohol – become less popular among teens, the risk of prescription drug abuse is increasing. According to...
Trauma In Teenagers And Its Effects on Troubled Teens
When troubled teens have suffered a traumatic experience, they need help. It's easy to think that counseling and therapy can provide a simple solution for...
The Secret to Successful Transformation: A Wingate...
Mary Ford is not your typical college student. But for a while, she was your typical troubled teen and Wingate student. Growing up in Stockton, CA turned out to be..
Substance Abuse Induced Mental Disorders - How Wilderness...
A Cycle Of Abuse With substance abuse, the self-destructive behavior becomes habitual in a way that isn't just psychological, but also physical. Even alcohol..
Staff Discusses What Makes WinGate Wilderness Therapy Unique
Staff share what makes WinGate Wilderness Therapy unique and why they choose to work here. It is the dedication and passion of our staff that makes WinGate the best ..


text:
#include <string>  // for ::memset()

#include <stdint.h>
#define NOMINMAX
#include <cstdint>

#include <gtest/gtest.h>

#include <geode/DataInput.hpp>
#include <geode/DataOutput.hpp>
#include <geode/SharedPtr.hpp>
#include "ByteArrayFixture.hpp"

using namespace apache::geode::client;

class TestDataInput {
 public:
  explicit TestDataInput(const char *str)
      : m_byteArray(ByteArray::fromString(str)),
        m_dataInput(m_byteArray.get(), m_byteArray.size()) {
    // NOP
  }

  explicit TestDataInput(const wchar_t *str)
      : m_byteArray(ByteArray::fromString(str)),
        m_dataInput(m_byteArray.get(), m_byteArray.size()) {
    // NOP
  }

  operator const DataInput &() const { return m_dataInput; }

  operator DataInput &() { return m_dataInput; }

  void read(uint8_t *value) { m_dataInput.read(value); }

  void read(int8_t *value) { m_dataInput.read(value); }

  void readBoolean(bool *value) { m_dataInput.readBoolean(value); }

  void readBytesOnly(uint8_t *buffer, uint32_t len) {
    m_dataInput.readBytesOnly(buffer, len);
  }

  void readBytesOnly(int8_t *buffer, uint32_t len) {
    m_dataInput.readBytesOnly(buffer, len);
  }

  void readBytes(uint8_t **buffer, int32_t *len) {
    m_dataInput.readBytes(buffer, len);
  }

  void readBytes(int8_t **buffer, int32_t *len) {
    m_dataInput.readBytes(buffer, len);
  }

  void readInt(uint16_t *value) { m_dataInput.readInt(value); }

  void readInt(int16_t *value) { m_dataInput.readInt(value); }

  void readInt(uint32_t *value) { m_dataInput.readInt(value); }

  void readInt(int32_t *value) { m_dataInput.readInt(value); }

  void readInt(uint64_t *value) { m_dataInput.readInt(value); }

  void readInt(int64_t *value) { m_dataInput.readInt(value); }

  void readArrayLen(int32_t *len) { m_dataInput.readArrayLen(len); }

  void readUnsignedVL(int64_t *value) { m_dataInput.readUnsignedVL(value); }

  void readFloat(float *value) { m_dataInput.readFloat(value); }

  void readDouble(double *value) { m_dataInput.readDouble(value); }

  void readASCII(char **value, uint16_t *len = NULL) {
    m_dataInput.readASCII(value, len);
  }

  void readASCIIHuge(char **value, uint32_t *len = NULL) {
    m_dataInput.readASCIIHuge(value, len);
  }

  void readUTF(char **value, uint16_t *len = NULL) {
    m_dataInput.readUTF(value, len);
  }

  void readUTFHuge(char **value, uint32_t *len = NULL) {
    m_dataInput.readUTFHuge(value, len);
  }

  void readUTFNoLen(wchar_t **value, uint16_t decodedLen) {
    m_dataInput.readUTFNoLen(value, decodedLen);
  }

  void readUTF(wchar_t **value, uint16_t *len = NULL) {
    m_dataInput.readUTF(value, len);
  }

  void readUTFHuge(wchar_t **value, uint32_t *len = NULL) {
    m_dataInput.readUTFHuge(value, len);
  }

  template <class PTR>
  void readObject(SharedPtr<PTR> &ptr,
                  bool throwOnError = DINP_THROWONERROR_DEFAULT) {
    m_dataInput.readObject(ptr, throwOnError);
  }

  bool readNativeBool() { return m_dataInput.readNativeBool(); }

  int32_t readNativeInt32() { return m_dataInput.readNativeInt32(); }

  bool readNativeString(CacheableStringPtr &csPtr) {
    return m_dataInput.readNativeString(csPtr);
  }

  void readDirectObject(SerializablePtr &ptr, int8_t typeId = -1) {
    m_dataInput.readDirectObject(ptr, typeId);
  }

  void readObject(SerializablePtr &ptr) { m_dataInput.readObject(ptr); }

  void readCharArray(char **value, int32_t &length) {
    m_dataInput.readCharArray(value, length);
  }

  void readString(char **value) { m_dataInput.readString(value); }

  void readWideString(wchar_t **value) { m_dataInput.readWideString(value); }

  void readStringArray(char ***strArray, int32_t &length) {
    m_dataInput.readStringArray(strArray, length);
  }

  void readWideStringArray(wchar_t ***strArray, int32_t &length) {
    m_dataInput.readWideStringArray(strArray, length);
  }

  void readArrayOfByteArrays(int8_t ***arrayofBytearr, int32_t &arrayLength,
                             int32_t **elementLength) {
    m_dataInput.readArrayOfByteArrays(arrayofBytearr, arrayLength,
                                      elementLength);
  }

  const uint8_t *currentBufferPosition() const {
    return m_dataInput.currentBufferPosition();
  }

  int32_t getBytesRead() const { return m_dataInput.getBytesRead(); }

  int32_t getBytesRemaining() const { return m_dataInput.getBytesRemaining(); }

  void advanceCursor(int32_t offset) { m_dataInput.advanceCursor(offset); }

  void rewindCursor(int32_t offset) { m_dataInput.rewindCursor(offset); }

  void reset() { m_dataInput.reset(); }

  void setBuffer() { m_dataInput.setBuffer(); }

  const char *getPoolName() { return m_dataInput.getPoolName(); }

  void setPoolName(const char *poolName) { m_dataInput.setPoolName(poolName); }

 private:
  ByteArray m_byteArray;

  DataInput m_dataInput;
};

class DataInputTest : public ::testing::Test, protected ByteArrayFixture {
 public:
  virtual ~DataInputTest() {
    // NOP
  }
};

TEST_F(DataInputTest, ThrowsWhenReadingInputWithSizeZero) {
  TestDataInput dataInput("");

  uint8_t aByte = 0U;
  ASSERT_THROW(dataInput.read(&aByte),
               apache::geode::client::OutOfRangeException);
}

TEST_F(DataInputTest, ThrowsWhenReadingMoreBytesThanSizePassedToConstructor) {
  TestDataInput dataInput("01");

  uint8_t aByte = 0U;
  dataInput.read(&aByte);
  EXPECT_EQ(1U, aByte);

  aByte = 0U;
  ASSERT_THROW(dataInput.read(&aByte),
               apache::geode::client::OutOfRangeException);
}

TEST_F(DataInputTest, CanReadUnsignedBytesFromInput) {
  TestDataInput dataInput("FF00");

  uint8_t aByte = 0U;
  dataInput.read(&aByte);
  EXPECT_EQ(aByte, 255);

  aByte = 0U;
  dataInput.read(&aByte);
  EXPECT_EQ(aByte, 0);
}

TEST_F(DataInputTest, CanReadSignedBytesFromInput) {
  TestDataInput dataInput("807F");

  int8_t aByte = 0U;
  dataInput.read(&aByte);
  EXPECT_EQ(aByte, -128);

  aByte = 0;
  dataInput.read(&aByte);
  EXPECT_EQ(aByte, 127);
}

TEST_F(DataInputTest, CanReadABooleanFromInput) {
  bool boolArray[2] = {true, false};
  DataInput dataInput(reinterpret_cast<uint8_t *>(boolArray), 2);

  bool aBool = false;
  dataInput.readBoolean(&aBool);
  EXPECT_EQ(aBool, true);

  aBool = true;
  dataInput.readBoolean(&aBool);
  EXPECT_EQ(aBool, false);
}

TEST_F(DataInputTest, CanReadAnArrayOfBytesFromInput) {
  TestDataInput dataInput("010203");

  uint8_t byteArrayCopy[4];
  dataInput.readBytesOnly(byteArrayCopy, 3);
  EXPECT_EQ(byteArrayCopy[0], 1);
  EXPECT_EQ(byteArrayCopy[1], 2);
  EXPECT_EQ(byteArrayCopy[2], 3);
}

TEST_F(DataInputTest,
       ThrowsWhenReadingMoreContinuousBytesThanSizePassedToConstructor) {
  TestDataInput dataInput("010203");

  // fails to read 4 bytes from 3 byte buffer
  uint8_t byteArrayCopy[4];
  ASSERT_THROW(dataInput.readBytesOnly(byteArrayCopy, 4),
               apache::geode::client::OutOfRangeException);
}

TEST_F(DataInputTest, CanReadIntWithAMaxSizeUnsigned64BitIntInput) {
  uint64_t intArray[1] = {std::numeric_limits<uint64_t>::max()};
  DataInput dataInput(reinterpret_cast<uint8_t *>(intArray), sizeof(intArray));

  uint64_t aInt = 0UL;
  dataInput.readInt(&aInt);
  EXPECT_EQ(aInt, std::numeric_limits<uint64_t>::max());
}

TEST_F(DataInputTest, CanReadASCIIWithAnASCIIStringInput) {
  char *actualString;
  const char *expectedString = "foobar";
  DataOutput stream;
  stream.writeASCII(expectedString);

  DataInput dataInput(stream.getBufferCopy(), stream.getBufferLength());
  dataInput.readASCII(&actualString);

  EXPECT_TRUE(std::string(expectedString) == std::string(actualString));
}

TEST_F(DataInputTest, ThrowsWhenCallingReadStringWithAnASCIIStringInput) {
  char *actualString;
  const char *expectedString = "foobar";
  DataOutput stream;
  stream.writeASCII(expectedString);

  DataInput dataInput(stream.getBufferCopy(), stream.getBufferLength());

  // ASCII and non-ASCII: consider matching exception string
  ASSERT_THROW(dataInput.readString(&actualString),
               apache::geode::client::IllegalArgumentException);
}

TEST_F(DataInputTest, CanReadASCIIWithAnUTFStringInput) {
  char *actualString;
  const char *expectedString = "foobar";
  DataOutput stream;
  stream.writeUTF(expectedString);

  DataInput dataInput(stream.getBufferCopy(), stream.getBufferLength());
  dataInput.readASCII(&actualString);

  EXPECT_TRUE(std::string(expectedString) == std::string(actualString));
}

TEST_F(DataInputTest, ThrowsWhenCallingReadStringWithAnUTFStringInput) {
  char *actualString;
  const char *expectedString = "foobar";
  DataOutput stream;
  stream.writeUTF(expectedString);

  DataInput dataInput(stream.getBufferCopy(), stream.getBufferLength());

  // UTF and non-UTF: consider matching exception string
  ASSERT_THROW(dataInput.readString(&actualString),
               apache::geode::client::IllegalArgumentException);
}

TEST_F(DataInputTest, CanReadUTFWithAnUTFStringInput) {
  char *actualString;
  const char *expectedString = "foobar";
  DataOutput stream;
  stream.writeUTF(expectedString);

  DataInput dataInput(stream.getBufferCopy(), stream.getBufferLength());
  dataInput.readUTF(&actualString);

  EXPECT_TRUE(std::string(expectedString) == std::string(actualString));
}

TEST_F(DataInputTest, CanReadUTFWithAnASCIIStringInput) {
  char *actualString;
  const char *expectedString = "foobar";
  DataOutput stream;
  stream.writeASCII(expectedString);

  DataInput dataInput(stream.getBufferCopy(), stream.getBufferLength());
  dataInput.readUTF(&actualString);

  EXPECT_TRUE(std::string(expectedString) == std::string(actualString));
}

TEST_F(DataInputTest, InputResetCausesPristineRead) {
  TestDataInput dataInput("010203");

  // 1) read byte off buffer
  // 2) then reset buffer back
  uint8_t aByte = 0U;
  dataInput.read(&aByte);
  dataInput.reset();

  // 3) next byte read should be start byte
  aByte = 0U;
  dataInput.read(&aByte);
  EXPECT_EQ(aByte, 1);
}

TEST_F(DataInputTest, InputRewindCausesReplayedRead) {
  TestDataInput dataInput("010203");

  uint8_t aByte = 0U;
  dataInput.read(&aByte);
  dataInput.read(&aByte);
  dataInput.read(&aByte);

  dataInput.rewindCursor(1);

  dataInput.read(&aByte);
  EXPECT_EQ(aByte, 3);
}

TEST_F(DataInputTest, TestReadUint8) {
  TestDataInput dataInput("37");
  uint8_t value = 0U;
  dataInput.read(&value);
  EXPECT_EQ((uint8_t)55U, value) << "Correct uint8_t";
}

TEST_F(DataInputTest, TestReadInt8) {
  TestDataInput dataInput("37");
  int8_t value = 0;
  dataInput.read(&value);
  EXPECT_EQ((int8_t)55, value) << "Correct int8_t";
}

TEST_F(DataInputTest, TestReadBoolean) {
  TestDataInput dataInput("01");
  bool value = false;
  dataInput.readBoolean(&value);
  EXPECT_EQ(true, value) << "Correct bool";
}

TEST_F(DataInputTest, TestReadUint8_tBytesOnly) {
  TestDataInput dataInput("BABEFACE");
  uint8_t buffer[4];
  ::memset(buffer, 0U, 4 * sizeof(uint8_t));
  dataInput.readBytesOnly(buffer, 4);
  EXPECT_EQ((uint8_t)186U, buffer[0]) << "Correct zeroth uint8_t";
  EXPECT_EQ((uint8_t)190U, buffer[1]) << "Correct first uint8_t";
  EXPECT_EQ((uint8_t)250U, buffer[2]) << "Correct second uint8_t";
  EXPECT_EQ((uint8_t)206U, buffer[3]) << "Correct third uint8_t";
}

TEST_F(DataInputTest, TestReadInt8_tBytesOnly) {
  TestDataInput dataInput("DEADBEEF");
  int8_t buffer[4];
  ::memset(buffer, 0, 4 * sizeof(int8_t));
  dataInput.readBytesOnly(buffer, 4);
  EXPECT_EQ((int8_t)-34, buffer[0]) << "Correct zeroth int8_t";
  EXPECT_EQ((int8_t)-83, buffer[1]) << "Correct first int8_t";
  EXPECT_EQ((int8_t)-66, buffer[2]) << "Correct second int8_t";
  EXPECT_EQ((int8_t)-17, buffer[3]) << "Correct third int8_t";
}

TEST_F(DataInputTest, TestReadUint8_tBytes) {
  TestDataInput dataInput("04BABEFACE");
  uint8_t *buffer = NULL;
  int32_t len = 0;
  dataInput.readBytes(&buffer, &len);
  EXPECT_NE((uint8_t *)NULL, buffer) << "Non-null buffer";
  ASSERT_EQ(4, len) << "Correct length";
  EXPECT_EQ((uint8_t)186U, buffer[0]) << "Correct zeroth uint8_t";
  EXPECT_EQ((uint8_t)190U, buffer[1]) << "Correct first uint8_t";
  EXPECT_EQ((uint8_t)250U, buffer[2]) << "Correct second uint8_t";
  EXPECT_EQ((uint8_t)206U, buffer[3]) << "Correct third uint8_t";
  GF_SAFE_DELETE_ARRAY(buffer);
}

TEST_F(DataInputTest, TestReadInt8_tBytes) {
  TestDataInput dataInput("04DEADBEEF");
  int8_t *buffer = NULL;
  int32_t len = 0;
  dataInput.readBytes(&buffer, &len);
  EXPECT_NE((int8_t *)NULL, buffer) << "Non-null buffer";
  ASSERT_EQ(4, len) << "Correct length";
  EXPECT_EQ((int8_t)-34, buffer[0]) << "Correct zeroth int8_t";
  EXPECT_EQ((int8_t)-83, buffer[1]) << "Correct first int8_t";
  EXPECT_EQ((int8_t)-66, buffer[2]) << "Correct second int8_t";
  EXPECT_EQ((int8_t)-17, buffer[3]) << "Correct third int8_t";
  GF_SAFE_DELETE_ARRAY(buffer);
}

TEST_F(DataInputTest, TestReadIntUint16) {
  TestDataInput dataInput("123456789ABCDEF0");
  uint16_t value = 0U;
  dataInput.readInt(&value);
  EXPECT_EQ((uint16_t)4660U, value) << "Correct uint16_t";
}

TEST_F(DataInputTest, TestReadIntInt16) {
  TestDataInput dataInput("123456789ABCDEF0");
  int16_t value = 0;
  dataInput.readInt(&value);
  EXPECT_EQ((int16_t)4660, value) << "Correct int16_t";
}

TEST_F(DataInputTest, TestReadIntUint32) {
  TestDataInput dataInput("123456789ABCDEF0");
  uint32_t value = 0U;
  dataInput.readInt(&value);
  EXPECT_EQ((uint32_t)305419896U, value) << "Correct uint32_t";
}

TEST_F(DataInputTest, TestReadIntInt32) {
  TestDataInput dataInput("123456789ABCDEF0");
  int32_t value = 0;
  dataInput.readInt(&value);
  EXPECT_EQ((int32_t)305419896, value) << "Correct int32_t";
}

TEST_F(DataInputTest, TestReadIntUint64) {
  TestDataInput dataInput("123456789ABCDEF0");
  uint64_t value = 0U;
  dataInput.readInt(&value);
  EXPECT_EQ((uint64_t)1311768467463790320U, value) << "Correct uint64_t";
}

TEST_F(DataInputTest, TestReadIntInt64) {
  TestDataInput dataInput("123456789ABCDEF0");
  int64_t value = 0;
  dataInput.readInt(&value);
  EXPECT_EQ((int64_t)1311768467463790320, value) << "Correct int64_t";
}

TEST_F(DataInputTest, TestReadArrayLen) {
  int32_t len = 0;

  TestDataInput dataInput0("FF12345678");
  dataInput0.readArrayLen(&len);
  EXPECT_EQ(-1, len) << "Correct length for 0xFF";

  TestDataInput dataInput1("FE12345678");
  dataInput1.readArrayLen(&len);
  EXPECT_EQ(4660, len) << "Correct length for 0xFE";

  TestDataInput dataInput2("FD12345678");
  dataInput2.readArrayLen(&len);
  EXPECT_EQ(305419896, len) << "Correct length for 0xFD";

  TestDataInput dataInput3("FC12345678");
  dataInput3.readArrayLen(&len);
  EXPECT_EQ(252, len) << "Correct length for 0xFC";
}

TEST_F(DataInputTest, TestReadUnsignedVL) {
  // DataInput::readUnsignedVL() uses a variable-length encoding
  // that uses the top bit of a byte to indicate whether another
  // byte follows. Thus, the 64 bits must be split into 7-bit
  // groups and then the follow bit applied. Note that integer
  // is encoded byte-at-a-time from the smaller end.
  //
  //  0001  0010  0011  0100  0101  0110  0111  1000  1001  1010  1011  1100
  //  1101  1110  1111  0000
  //  0  0010010  0011010  0010101  1001111  0001001  1010101  1110011  0111101
  //  1110000
  // 00    12       1A       15       4F       09       55       73       3D 70
  // 00    92       9A       95       CF       89       D5       F3       BD F0
  TestDataInput dataInput("F0BDF3D589CF959A9200");
  int64_t value = 0;
  dataInput.readUnsignedVL(&value);
  EXPECT_EQ((int64_t)1311768467463790320, value) << "Correct int64_t";
}

TEST_F(DataInputTest, TestReadFloat) {
  TestDataInput dataInput("123456789ABCDEF0");
  float value = 0.F;
  dataInput.readFloat(&value);
  EXPECT_FLOAT_EQ(5.6904566e-28F, value) << "Correct float";
}

TEST_F(DataInputTest, TestReadDouble) {
  TestDataInput dataInput("123456789ABCDEF0");
  double value = 0.;
  dataInput.readDouble(&value);
  EXPECT_DOUBLE_EQ(5.626349274901198e-221, value) << "Correct double";
}

TEST_F(DataInputTest, TestReadASCII) {
  TestDataInput dataInput(
      "001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  char *value = NULL;
  uint16_t len = 0U;
  dataInput.readASCII(&value, &len);
  ASSERT_EQ((uint16_t)27U, len) << "Correct length";
  EXPECT_STREQ("You had me at meat tornado.", value) << "Correct char *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadASCIIHuge) {
  TestDataInput dataInput(
      "0000001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  char *value = NULL;
  uint32_t len = 0U;
  dataInput.readASCIIHuge(&value, &len);
  ASSERT_EQ((uint32_t)27U, len) << "Correct length";
  EXPECT_STREQ("You had me at meat tornado.", value) << "Correct char *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadUTFNarrow) {
  TestDataInput dataInput(
      "001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  char *value = NULL;
  uint16_t len = 0U;
  dataInput.readUTF(&value, &len);
  ASSERT_EQ((uint16_t)27U, len) << "Correct length";
  EXPECT_STREQ("You had me at meat tornado.", value) << "Correct char *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadUTFHugeNarrow) {
  TestDataInput dataInput(
      "0000001B0059006F007500200068006100640020006D00650020006100740020006D0065"
      "0061007400200074006F0072006E00610064006F002E");
  char *value = NULL;
  uint32_t len = 0U;
  dataInput.readUTFHuge(&value, &len);
  ASSERT_EQ((uint32_t)27U, len) << "Correct length";
  EXPECT_STREQ("You had me at meat tornado.", value) << "Correct char *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadUTFNoLen) {
  TestDataInput dataInput(
      "596F7520686164206D65206174206D65617420746F726E61646F2E");
  wchar_t *value = NULL;
  dataInput.readUTFNoLen(&value, static_cast<uint16_t>(27U));
  EXPECT_STREQ(L"You had me at meat tornado.", value) << "Correct wchar_t *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadUTFWide) {
  TestDataInput dataInput(
      "001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  wchar_t *value = NULL;
  uint16_t len = 0U;
  dataInput.readUTF(&value, &len);
  ASSERT_EQ((uint16_t)27U, len) << "Correct length";
  EXPECT_STREQ(L"You had me at meat tornado.", value) << "Correct wchar_t *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadUTFHugeWide) {
  TestDataInput dataInput(
      "0000001B0059006F007500200068006100640020006D00650020006100740020006D0065"
      "0061007400200074006F0072006E00610064006F002E");
  wchar_t *value = NULL;
  uint32_t len = 0U;
  dataInput.readUTFHuge(&value, &len);
  ASSERT_EQ((uint32_t)27U, len) << "Correct length";
  EXPECT_STREQ(L"You had me at meat tornado.", value) << "Correct wchar_t *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadObjectSharedPtr) {
  TestDataInput dataInput(
      "57001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  CacheableStringPtr objptr;
  dataInput.readObject(objptr);
  EXPECT_STREQ((const char *)"You had me at meat tornado.",
               (const char *)objptr->toString())
      << "Correct const char *";
}

TEST_F(DataInputTest, TestReadNativeBool) {
  TestDataInput dataInput("0001");
  const bool value = dataInput.readNativeBool();
  EXPECT_EQ(true, value) << "Correct bool";
}

TEST_F(DataInputTest, TestReadNativeInt32) {
  TestDataInput dataInput("0012345678");
  const int32_t value = dataInput.readNativeInt32();
  EXPECT_EQ((int32_t)305419896, value) << "Correct int32_t";
}

TEST_F(DataInputTest, TestReadNativeString) {
  TestDataInput dataInput(
      "57001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  CacheableStringPtr objptr;
  ASSERT_EQ(true, dataInput.readNativeString(objptr)) << "Successful read";
  EXPECT_STREQ((const char *)"You had me at meat tornado.",
               (const char *)objptr->toString())
      << "Correct const char *";
}

TEST_F(DataInputTest, TestReadDirectObject) {
  TestDataInput dataInput(
      "57001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  SerializablePtr objptr;
  dataInput.readDirectObject(objptr);
  EXPECT_STREQ(
      (const char *)"You had me at meat tornado.",
      (const char *)(dynCast<SharedPtr<CacheableString> >(objptr))->toString())
      << "Correct const char *";
}

TEST_F(DataInputTest, TestReadObjectSerializablePtr) {
  TestDataInput dataInput(
      "57001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  SerializablePtr objptr;
  dataInput.readObject(objptr);
  EXPECT_STREQ(
      (const char *)"You had me at meat tornado.",
      (const char *)(dynCast<SharedPtr<CacheableString> >(objptr))->toString())
      << "Correct const char *";
}

TEST_F(DataInputTest, TestReadCharArray) {
  TestDataInput dataInput(
      "1C0059006F007500200068006100640020006D00650020006100740020006D0065006100"
      "7400200074006F0072006E00610064006F002E0000");
  char *value = NULL;
  int32_t length = 0;
  dataInput.readCharArray(&value, length);
  ASSERT_EQ((int32_t)28, length) << "Correct length";
  EXPECT_STREQ((const char *)"You had me at meat tornado.", value)
      << "Correct const char *";
}

TEST_F(DataInputTest, TestReadString) {
  TestDataInput dataInput(
      "57001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  char *value = NULL;
  dataInput.readString(&value);
  EXPECT_STREQ("You had me at meat tornado.", value) << "Correct char *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadWideString) {
  TestDataInput dataInput(
      "57001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  wchar_t *value = NULL;
  dataInput.readWideString(&value);
  EXPECT_STREQ(L"You had me at meat tornado.", value) << "Correct wchar_t *";
  DataInput::freeUTFMemory(value);
}

TEST_F(DataInputTest, TestReadStringArray) {
  TestDataInput dataInput(
      "0157001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  char **value = NULL;
  int32_t length = 0;
  dataInput.readStringArray(&value, length);
  ASSERT_EQ((int32_t)1, length) << "Correct length";
  EXPECT_STREQ("You had me at meat tornado.", value[0]) << "Correct char *";
  DataInput::freeUTFMemory(value[0]);
  GF_SAFE_DELETE_ARRAY(value);
}

TEST_F(DataInputTest, TestReadWideStringArray) {
  TestDataInput dataInput(
      "0157001B596F7520686164206D65206174206D65617420746F726E61646F2E");
  wchar_t **value = NULL;
  int32_t length = 0;
  dataInput.readWideStringArray(&value, length);
  ASSERT_EQ((int32_t)1, length) << "Correct length";
  EXPECT_STREQ(L"You had me at meat tornado.", value[0]) << "Correct wchar_t *";
  DataInput::freeUTFMemory(value[0]);
  GF_SAFE_DELETE_ARRAY(value);
}

TEST_F(DataInputTest, TestReadArrayOfByteArrays) {
  TestDataInput dataInput("0104DEADBEEF");
  int8_t **arrayOfByteArrays = NULL;
  int32_t arrayLength = 0;
  int32_t *elementLength = NULL;
  dataInput.readArrayOfByteArrays(&arrayOfByteArrays, arrayLength,
                                  &elementLength);
  EXPECT_NE((int8_t **)NULL, arrayOfByteArrays)
      << "Non-null array of byte arrays";
  ASSERT_EQ((int32_t)1, arrayLength) << "Correct array length";
  EXPECT_NE((int8_t *)NULL, arrayOfByteArrays[0])
      << "Non-null first byte array";
  ASSERT_EQ(4, elementLength[0]) << "Correct length";
  EXPECT_EQ((int8_t)-34, arrayOfByteArrays[0][0]) << "Correct zeroth int8_t";
  EXPECT_EQ((int8_t)-83, arrayOfByteArrays[0][1]) << "Correct first int8_t";
  EXPECT_EQ((int8_t)-66, arrayOfByteArrays[0][2]) << "Correct second int8_t";
  EXPECT_EQ((int8_t)-17, arrayOfByteArrays[0][3]) << "Correct third int8_t";
  GF_SAFE_DELETE_ARRAY(elementLength);
  GF_SAFE_DELETE_ARRAY(arrayOfByteArrays);
}

TEST_F(DataInputTest, TestGetBytesRead) {
  TestDataInput dataInput("123456789ABCDEF0");
  EXPECT_EQ((int32_t)0, dataInput.getBytesRead())
      << "Correct bytes read before any reads";
  uint8_t value = 0U;
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  EXPECT_EQ((int32_t)4, dataInput.getBytesRead())
      << "Correct bytes read after half of the reads";
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  EXPECT_EQ((int32_t)8, dataInput.getBytesRead())
      << "Correct bytes read after all of the reads";
}

TEST_F(DataInputTest, TestGetBytesRemaining) {
  TestDataInput dataInput("123456789ABCDEF0");
  EXPECT_EQ((int32_t)8, dataInput.getBytesRemaining())
      << "Correct bytes remaining before any reads";
  uint8_t value = 0U;
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  EXPECT_EQ((int32_t)4, dataInput.getBytesRemaining())
      << "Correct bytes remaining after half of the reads";
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  EXPECT_EQ((int32_t)0, dataInput.getBytesRemaining())
      << "Correct bytes remaining after all of the reads";
}

TEST_F(DataInputTest, TestAdvanceCursor) {
  TestDataInput dataInput("123456789ABCDEF0");
  EXPECT_EQ((int32_t)0, dataInput.getBytesRead())
      << "Correct bytes read before any advancement";
  EXPECT_EQ((int32_t)8, dataInput.getBytesRemaining())
      << "Correct bytes remaining before any advancement";
  dataInput.advanceCursor(5);
  EXPECT_EQ((int32_t)5, dataInput.getBytesRead())
      << "Correct bytes read after forward advancement";
  EXPECT_EQ((int32_t)3, dataInput.getBytesRemaining())
      << "Correct bytes remaining after forward advancement";
  dataInput.advanceCursor(-3);
  EXPECT_EQ((int32_t)2, dataInput.getBytesRead())
      << "Correct bytes read after rearward advancement";
  EXPECT_EQ((int32_t)6, dataInput.getBytesRemaining())
      << "Correct bytes remaining after rearward advancement";
}

TEST_F(DataInputTest, TestRewindCursor) {
  TestDataInput dataInput("123456789ABCDEF0");
  EXPECT_EQ((int32_t)0, dataInput.getBytesRead())
      << "Correct bytes read before any rewinding";
  EXPECT_EQ((int32_t)8, dataInput.getBytesRemaining())
      << "Correct bytes remaining before any rewinding";
  dataInput.rewindCursor(-5);
  EXPECT_EQ((int32_t)5, dataInput.getBytesRead())
      << "Correct bytes read after forward rewinding";
  EXPECT_EQ((int32_t)3, dataInput.getBytesRemaining())
      << "Correct bytes remaining after forward rewinding";
  dataInput.rewindCursor(3);
  EXPECT_EQ((int32_t)2, dataInput.getBytesRead())
      << "Correct bytes read after rearward rewinding";
  EXPECT_EQ((int32_t)6, dataInput.getBytesRemaining())
      << "Correct bytes remaining after rearward rewinding";
}

TEST_F(DataInputTest, TestReset) {
  TestDataInput dataInput("123456789ABCDEF0");
  EXPECT_EQ((int32_t)0, dataInput.getBytesRead())
      << "Correct bytes read before any reads";
  EXPECT_EQ((int32_t)8, dataInput.getBytesRemaining())
      << "Correct bytes remaining before any reads";
  uint8_t value = 0U;
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  EXPECT_EQ((int32_t)4, dataInput.getBytesRead())
      << "Correct bytes read after the reads";
  EXPECT_EQ((int32_t)4, dataInput.getBytesRemaining())
      << "Correct bytes remaining after the reads";
  dataInput.reset();
  EXPECT_EQ((int32_t)0, dataInput.getBytesRead())
      << "Correct bytes read after the reset";
  EXPECT_EQ((int32_t)8, dataInput.getBytesRemaining())
      << "Correct bytes remaining after the reset";
}

TEST_F(DataInputTest, TestSetBuffer) {
  TestDataInput dataInput("123456789ABCDEF0");
  EXPECT_EQ((int32_t)0, dataInput.getBytesRead())
      << "Correct bytes read before any reads";
  EXPECT_EQ((int32_t)8, dataInput.getBytesRemaining())
      << "Correct bytes remaining before any reads";
  uint8_t value = 0U;
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  dataInput.read(&value);
  EXPECT_EQ((int32_t)4, dataInput.getBytesRead())
      << "Correct bytes read after the reads";
  EXPECT_EQ((int32_t)4, dataInput.getBytesRemaining())
      << "Correct bytes remaining after the reads";
  dataInput.setBuffer();
  EXPECT_EQ((int32_t)4, dataInput.getBytesRead())
      << "Correct bytes read after the setting";
  EXPECT_EQ((int32_t)0, dataInput.getBytesRemaining())
      << "Correct bytes remaining after the setting";
}

TEST_F(DataInputTest, TestSetPoolName) {
  static const char *poolName = "Das Schwimmbad";
  TestDataInput dataInput("123456789ABCDEF0");
  EXPECT_EQ((const char *)NULL, dataInput.getPoolName())
      << "Null pool name before setting";
  dataInput.setPoolName(poolName);
  EXPECT_NE((const char *)NULL, dataInput.getPoolName())
      << "Non-null pool name after setting";
  EXPECT_STREQ(poolName, dataInput.getPoolName())
      << "Correct pool name after setting";
}


In the form of sponsorship, Bankia supports activities that help improve the environment, whether in the cultural, sporting or business areas.
In addition, the bank is particularly committed to supporting innovation-related activities such as the 'La Digitalizadora' programme developed with Insomnia in Valencia and Valladolid, which addressed issues such as robotics, 3D printing and artificial intelligence in ten information sessions.
The professional group is made up of young musicians who have completed their educational career without ever having reached a stable orchestra. The challenges of OSB are the discovery of musical talent, continuous training and job placement. During 2018, two concert series were held in six Spanish cities with more than 7,000 attendees who enjoyed the talent and professionalism of the 52 instrumentalists who are part of the Orchestra.
This programme promotes music education and fights school failure through music bands. It is organised through the granting of scholarships to students of music schools in the Valencian Community. In 2018, a total of 709 students benefited from the 5th Call for Scholarships, the third edition of the Valencian Community Orchestra Contest and the historic pieces recovery programme were launched.
Bankia sponsors this event, one of the most important cultural events in the capital and the main promoter of book dissemination in Spain. The bank has been an 'Official Sponsor' and an 'Exclusive Sponsor' between companies in the financial sector.
The project of the Gran Teatro Príncipe Pío includes the setting up of a cabaret, a concert hall, an exhibition hall, a television set and, of course, a grand theatre; which will be located in the main building of the old Príncipe Pío station in Madrid. In 2018, 308 performances took place, with almost 159,000 viewers.
From Bankia we are committed to preserving the historical heritage by supporting the 23rf edition of the Las Edades del Hombre (Ages of Man).
Thanks to the agreement established with Fundación Caja de Ávila, more than 400 children who have demonstrated a special school effort enjoy the summer camps that take place in Ávila.
Organised by Editorial Prensa Valenciana, the Bankia Premios Talento Joven (Young Talent Awards) support the development of Valencian society through the recognition of its young talents in the categories of social action, science, culture, sport and business.
These awards, organised in collaboration with the Joly Editorial Group, award training grants to young Andalusians who stand out for their involvement in science, sports, social action, business and culture.
Bankia supports digitisation, innovation and the internationalisation of companies. For this reason, since 2016, the bank has been supporting the operation of an ambitious project and, together with Insomnia, is developing the first intech incubator and accelerator in Spain, called Bankia Fintech by Insomnia, based in Valencia.
In collaboration with Conector, Bankia has launched Accelerator by Conector, a programme designed to help and drive innovative startups with social impact. This project is part of the philosophy of the banking institution in its contribution to the digitalisation, innovation and internationalisation of companies.
Bankia's sports sponsorship focuses on sport practised by children in sports schools. Thus, in Las Palmas, Bankia sponsors the young players of the Gran Canaria Basketball Club; in Ávila, the Puente Romanillos Athletics Club and the Óbila basketball club academy, and in Segovia, Futsal Football Club School. More than 2,000 children benefit from these activities.
The Valencia Basketball Club has also reached an agreement to foster the values of a culture of effort among young people, through the social programmes 'Més que un Triple', the 'Triple Solidario' and the 'Campus' del Esfuerzo', as well as the Valencia Basket Card.
Bankia supported the Valencian pilota in 2018 for the fourth consecutive year. This sport has been declared an Asset of Intangible Cultural Interest (BIC) by the Regional Government and its practice extends to the three provinces within the community. In 2018 the sponsorship included two modalities: 'escala i corda and raspall'.
In addition to the Professional League and the Individual Championship, the Lliga Bankia d'Elit Femenina and the Bankia d'Elit Femení Individual Championship were included in the sponsorship, in clear support for women.
The bank also carried out specific actions in 2018 with different business associations, business circles and chambers of commerce. It sponsored more than 40 workshops, attended by more than 2,500 people, and which addressed issues such as digital transformation, tax reform and business financing.