text:
Home Government Foreign Government BREAKING: Mattis Says North Korea Threats to US and Its Allies Will...
BREAKING: Mattis Says North Korea Threats to US and Its Allies Will Be Met With MASSIVE MILITARY RESPONSE (Video)
Defense Secretary James Mattis issued a statement while ago only hours after North Korea announce they had tested a d hydrogen bomb on Sunday afternoon.
Secretary Mattis warned North Korea that continued threats will be met by massive military force.
The Hill reports:
Defense Secretary James Mattis on Sunday issued a stark warning to North Korea, saying the country would be met with a "massive military response" if it threatened the U.S. or its allies.
"Any threat to the United States or its territories including Guam or our allies will be met with a massive military response," Mattis said in a statement outside of the White House after meeting with President Trump.
"Kim Jong Un should take heed the United Nations Security Council's unified voice. All members unanimously agreed on the threat North Korea poses. And they remain unanimous in their commitment to the denuclearization of the Korean peninsula. Because we are not looking to the total annihilation of a country, namely, North Korea," he continued.
Mattis said the U.S. had "many military options" regarding the Korean peninsula, and that the president wanted to be briefed on all of them.
Mattis's aggressive, holiday-weekend statement comes hours after North Korean state media announced the country had successfully tested a miniaturized hydrogen bomb capable of fitting on an intercontinental ballistic missile (ICBM).
The move is a show of defiance against Washington and the international community.
Transcript of video:
Good afternoon ladies and gentlemen.
We had a small-group national security meeting today with the president and the vice-president about the latest provocation on the Korean peninsula.
We have many military options and the president wanted to be briefed on each one of them.
We made clear that we have the ability to defend ourselves and our allies, South Korea and Japan, from any attack and our commitments among the allies are iron-clad. Any threat to the United States or its territories including Guam, or our allies, will be met with a massive military response, a response both effective and overwhelming.
Kim Jong-un should take heed of the United Nations security council's unified voice, all members unanimously agreed on the threat North Korea poses, and they remain unanimous in their commitment to the denuclearization of the Korean peninsula.
Because we are not looking to the total annihilation of a country, namely North Korea, but as I said we have many options to do so.
Thank you very much, ladies and gentlemen.
H/T Gateway Pundit
Scroll down to leave a comment below.
US allies
Previous articleHUMA ABEDIN EXPOSES HILLARY's RELATIONSHIP With GEORGE SOROS … It's NOT JUST SICK, IT's TREASON!
Next articleWATCH: Horrifying Moment Knife-Wielding Black Teen Attacks a Fellow Customer in McDonald's


text:
Q: Retaining root access while not being able to access emails I'm the sysadmin for a medium sized business, we run our own mail server on premises (linux). Of course, I have sudo privileges on that box, and the email server stores emails in mbox format so in principle I am able to access everybody's mailbox and read emails at will.
I strictly follow the System Administrators' Code of Ethics and I never abused my powers (except when specifically ordered by management to make a copy of someone's inbox, before firing the poor lad).
Now, I'm the one getting laid off, and my manager asked me to lock myself out to prevent to be able to read (presumably their) emails; please note that this is still a "friendly" separation and that I'm going to be employed for few months still (to hand over to a new sysadmin, to be hired). I replied that I can't do my job (administering the server) without root access, and she has just to trust me on this.
Is there a way I can lock myself out while retaining full access?

A: Short answer probably not.
You might try fashion some written agreement between you and management for the interrum however...your pledge to do no wrong if you will.
Afterall, how effective are contract system administrators (which many companies are going to) without full root access.

redpajama_set_name: RedPajamaStackExchange


It is ironic that the collection of city-states that made up Ancient Greece could have had such an impact on so much of the world. Greece never achieved the political or economic dominance of the Persians or Romans, but the cultural legacy of Greece contributed to the development of Roman, Sassanid, Islamic, Western European and even Indian culture.
c. 1100 BC: The Dorian invasion of Greece.


text:
Q: How to set base url to flutter http package? I tried using http package of flutter and create a custom client with headers.
Code
class ApiClient extends http.BaseClient {
  final http.Client _inner;

  ApiClient(this._inner);

  _setHeaders() => {
    'Content-type': 'application/json',
    'Accept': 'application/json',
    'Authorization': 'Bearer token here...'
  };

  Future<http.StreamedResponse> send(http.BaseRequest request) {
    request.headers.addAll(_setHeaders());
    return _inner.send(request);
  }
}

How can I add a base URL to my custom client?

A: Since ApiClient inherits http.BaseClient, you should be able to have access to other methods as well. Simply access the method on your ApiClient for example.
var baseUrl = Uri.parse('https://example.com/');
var response = await ApiClient.post(baseUrl);

A: I use a similar approach on my projects:
class ApiClient extends http.BaseClient {
  final http.Client _inner;
  final String baseUrl;

  ApiClient(this._inner, this.baseUrl);

  Uri url(String path, [Map<String, String?>? queryParameters]) {
    return Uri.parse('$baseUrl$path').replace(queryParameters: queryParameters);
  }

  // other methods ...
}

Usage sample:

final api = ApiClient(inner, 'https://testhost/api/v1');
final response = await api.post(api.url('/test', {'q': 'a'}));


Jul 14, 2018· Plant Description G20 trommel wash plant is a portable gold and heavy metal a mobile plant can be moved easily which enables progressive rehabilitation of mine Processing Plant Equipment, Liner Handler, Liner Handler, Mclellan, 4,000 Lb, USED 10,000 TPD Crushing/ Grinding Circuit Gold Plant, Canada, P.O.R.
Used Gold Wash Plant Wholesale, Gold Washing Plant ... Alibaba.com offers 284 used gold wash plant products. About 46% of these are mineral separator, 24% are other mining machines, and 9% are sand washer. A wide variety of used gold wash plant options are available to you, such as gravity separator, circular, and sprial separator.
Mini gold wash plant hard rock gravity mining plant centrifuge concentration machine. Add to Compare Hard rock dumping mine car for sale. Add to Compare. Get Price Gold Plant, Gold Plant Suppliers and Manufacturers gold mining wash plants for sail used. Gold Washing Plant Spiral Chute Machine, Gold Mining Equipment .
Equipment » used wash plant for gold mining prices. used wash plant for gold mining prices. Gold Net Australia Online May 1999. 3. BENDIGO'S BULLIONS by Tom Ferguson. The enormous quantities of gold that the ground gave up in the Bendigo region in the 1850's, ranks among the worlds great gold .
used msi gold wash plant price . used m50 wash plant Solution for ore mining » used m50 wash plant Home Here is a video of our medium sized M50 wash plant. price list wash plant gwp m50 Gold cost of msi wash plant.
2014 New Gold Mining Washing Plant/gold Mining Washing Machine For Sale, Find ... Gold placer mining plant is widely used for classification according to the particle ... The water inlet and axis of the screw axle adopt durable pig iron cover.


Fill out this form in advance for a quicker check in.
Let Clear Lakes Dental be your go-to source whenever you need to see a Dentist. To learn more about the services we offer, give us a call today or stop by our office in St Paul, MN to schedule a consultation.


Rebecca returns to work and, although Nathaniel is avoiding her, she aces a meeting with one of the firms biggest clients. Still feeling dissatisfied,Crazy Ex-Girlfriend Season 4 DVD Dr. Akopian tells Rebecca that she doesnt have to be a lawyer if she doesnt enjoy it. Rebecca runs into Josh in the waiting room, as he now sees the other Dr. Akopian for therapy, and Josh tells Rebecca that hes started dating again. She helps him pick out dates, but neither are successful. Back at the firm,Crazy Ex-Girlfriend Season 4 Rebecca discovers a new pretzel shop in the lobby, run by her former co worker Jim. He explains that he wasnt happy practicing law, so he quit, which inspires Rebecca to do the same.


text:
Green March
This article is about the historical event. For the aerobatic team, see Marche Verte.
The Green March was a strategic mass demonstration in November 1975, coordinated by the Moroccan government, to force Spain to hand over the disputed, autonomous semi-metropolitan province of Spanish Sahara to Morocco. At that time, the Spanish government was preparing to abandon the territory as part of the decolonization of Africa, just as it had previously granted independence to Equatorial Guinea in 1968. The Sahrawi people aspired to form an independent state. The demonstration of some 350,000 Moroccans advanced several kilometres into the Western Sahara territory. Morocco later gained control over most of the former Spanish Sahara, which it continues to hold.
Hispanic-Moroccan conflicts
Marches of 7 November (in green) and military action of 31 October (in red)
Spanish Sahara
Madrid Agreements
Spain leaves the territory and Morocco and Mauritania partially occupy it
Spain Morocco
United States[1]
France[1]
Commanders and leaders
Prince Carlos
Carlos Arias Navarro Hassan II
Units involved
Units of Tropas Nómadas Light cavalry groups of the Third and Fourth Thirds of the Legion
Expeditionary battalion of the Canary Infantry Regiment 50 Royal Armed Forces
5000 legionaries 350,000 civilians
25,000 soldiers
The Green March was condemned by the international community, notably in United Nations Security Council Resolution 380, as the march was considered an attempt to bypass the International Court of Justice's Advisory opinion on Western Sahara that had been issued three weeks prior.[2]
Morocco gained control of most of the former Spanish Sahara, which it still holds to this day. The refusal of the Saharawi people to submit to the Moroccan monarchy gave rise to the Western Sahara conflict, still unresolved today, and whose main episode was the Western Sahara War.
2 The Green March
3 The Moroccan arguments for sovereignty
4 The Madrid Accords
BackgroundEdit
Further information: Greater Morocco
Morocco, to the north of Spanish Sahara, had long claimed that the territory was historically an integral part of Morocco. Mauritania to the south argued similarly that the territory was in fact Mauritanian. Since 1973, a Sahrawi guerrilla war led by the Polisario Front (armed and financed by Algiers) had challenged Spanish control, and in October 1975 Spain had quietly begun negotiations for a handover of power with leaders of the rebel movement, both in El Aaiún, and with foreign minister Pedro Cortina y Mauri meeting El Ouali in Algiers.[3]
Morocco intended to vindicate its claims by demanding a verdict from the International Court of Justice (ICJ), which was issued on 16 October 1975. The ICJ stated that there were historical legal ties of allegiance between "some, but only some" Sahrawi tribes and the Sultan of Morocco, as well as ties including some rights relating to the land between Mauritania and other Sahrawi tribes.[4] However, the ICJ stated also that there were no ties of territorial sovereignty between the territory and Morocco, or Mauritania, at the time of Spanish colonization; and that these contacts were not extensive enough to support either country's demand for annexation of the Spanish Sahara. Instead, the court argued, the indigenous population (the Sahrawis) were the owners of the land, and thus possessed the right of self-determination. This meant that regardless of which political solution was found to the question of sovereignty (integration with Spain, Morocco, Mauritania, partition, or independence), it had to be explicitly approved by the people of the territory. A UN visiting mission had concluded on 15 October, the day before the ICJ verdict was released, that Sahrawi support for independence was "overwhelming".[citation needed]
However, the reference to previous Moroccan-Sahrawi ties of allegiance was presented by Hassan II as a vindication of his position, with no public mention of the court's further ruling on self-determination. (Seven years later, he formally agreed to a referendum before the Organisation of African Unity). Within hours of the ICJ verdict's release, he announced the organizing of a "green march" to Spanish Sahara, to "reunite it with the Motherland".[citation needed]
In order to prepare head off any possible counter-invasion from Algeria, the Moroccan Army entered the far northeast corner of the region on 31 October, where it was met with stiff resistance from the Polisario, by then a two-year-old independence movement.[5]
The Green MarchEdit
A 100 dirham note from 1991 commemorating the Green March
The Green March was a well-publicized popular march of enormous proportions. On 6 November 1975 approximately 350,000 unarmed Moroccans[6] converged on the city of Tarfaya in southern Morocco and waited for a signal from King Hassan II to cross into the region of Saguia El Hamra. They brandished Moroccan flags and Qur'an; banners calling for the "return of the Moroccan Sahara," photographs of the King and the Qur'an; the color green for the march's name was intended as a symbol of Islam.[citation needed] As the marchers reached the border, the Spanish Armed Forces were ordered not to fire to avoid bloodshed. The Spanish troops also cleared some previously mined zones.
The Moroccan arguments for sovereigntyEdit
According to Morocco, the exercise of sovereignty by the Moroccan state was characterized by official pledges of allegiance to the sultan. The Moroccan government was of the opinion that this allegiance existed during several centuries before the Spanish occupation and that it was a legal and political tie.[7] The sultan Hassan I, for example, had carried out two expeditions in 1886 in order to put an end to foreign incursions in this territory and to officially invest several caids and cadis. In its presentation to the ICJ, the Moroccan side also mentioned the levy of taxes as a further instance of the exercise of sovereignty.[8] The exercise of this sovereignty had also appeared, according to the Moroccan government, at other levels, such as the appointment of local officials (governors and military officers), and the definition of the missions which were assigned to them.[9]
The Moroccan government further pointed to several treaties between it and other states, such as with Spain in 1861, the United States of America in 1786, and 1836 and with the United Kingdom in 1856 [10][11]
The International Court of Justice found that "neither the internal nor the international acts relied upon by Morocco indicate the existence at the relevant period of either the existence or the international recognition of legal ties of territorial sovereignty between Western Sahara and the Moroccan State. Even taking account of the specific structure of that State, they do not show that Morocco displayed any effective and exclusive State activity in Western Sahara. They do, however, provide indications that a legal tie of allegiance existed at the relevant period between the Sultan and some, but only some, of the nomadic peoples of the territory, through Tekna caids of the Noun region, and they show that the Sultan displayed, and was recognized by other States to possess, some authority or influence with respect to those tribes. "[4]
The Madrid AccordsEdit
This section needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Green March" – news · newspapers · books · scholar · JSTOR (November 2020) (Learn how and when to remove this template message)
Main article: Madrid Accords
The Green March caught Spain in a moment of political crisis. The caudillo General Franco, who had led the country for 36 years, was dying. Despite the overwhelming military and logistic superiority of the Spanish armed forces based in Western Sahara in relation to the Moroccan armed forces, the Spanish government feared that the conflict with Morocco could lead to an open colonial war in Africa, which could put Francoist Spain into question and lead to an abrupt political change or a social instability and disaster. The Spanish government, directed by Prince Juan Carlos, who was acting Head of State in substitution of General Franco, and the incumbent Prime Minister Don Carlos Arias Navarro, was in no mood for troubles in the colony. Only the year before, the Portuguese government had been toppled by the Portuguese armed forces after becoming bogged down in colonial wars in Angola and Mozambique. Therefore, following the Green March, and with a view to avoid war and preserving as much as possible of its interest in the territory, Spain agreed to enter direct bilateral negotiations with Morocco, bringing in also Mauritania, who had made similar demands. Under pressure from Morocco, Spain also agreed that no representatives of the native population would be present in the negotiations that resulted in 14 November Madrid Accords. This was a treaty which divided Spanish Sahara between Mauritania and Morocco.[12] In the agreements Spain agreed to cede the possession of the colony to Morocco and Mauritania, under the condition, expressed in point 3 of the Trilateral Agreement, that the views of the Saharan population had to be respected.
Spain received a 35% concession in the phosphate mines of Bou Craa and offshore fishing rights[13] that were not respected by Morocco. Morocco and Mauritania then formally annexed the parts they had been allotted in the Accords. Morocco claimed the northern part, i.e. Saguia el-Hamra and approximately half of Río de Oro, while Mauritania proceeded to occupy the southern third of the country under the name Tiris al-Gharbiyya. Mauritania later abandoned all claims to its portion in August 1979 and ceded this area to Popular Army of Saharwi Liberation (Polisario), but it was instead promptly occupied by Morocco. Nevertheless, Mauritania preserved for itself a small outpost at La Güera to preserve the security of its major port of Nouadhibou.
The Polisario, now with heavy Algerian backing, refused the Madrid Accords, and demanded that the ICJ's opinion on Sahrawi self-determination be respected. The consequence was that a conflict raged between the Polisario and the Moroccan government. The conflict has still not been resolved. Currently, there is a cease-fire in effect, after a Moroccan-Polisario agreement was struck in 1991 to solve the dispute through the organization of a referendum on independence. A UN peace-keeping mission (MINURSO) has been charged with overseeing the cease-fire and organizing the referendum, which has still not taken place as of 2019[update]. Morocco has rejected the idea of the referendum as unworkable in 2000 and has suggested a plan of autonomy for Western Sahara within Morocco. That proposal has been rejected by the Polisario, and also by its Algerian backers; it was presented to the UN in April 2007.
Spain is divided between its desire to preserve a good relation with Morocco, its southern neighbor with whom it shares terrestrial borders in Ceuta and Melilla, and its responsibility to the international legality as the former colonial power. The traditional position of all the Spanish democratic governments until the election of Prime Minister Zapatero had been that the wishes of the Western Saharan population have to be respected, and of support to the organization of the referendum requested by the United Nations. According to the US Department of State's documents leaked by Wikileaks, Spain, under Zapatero, has changed its traditional position concerning the organisation of the referendum for the Western Sahara, and now supports the Moroccan position. The documents also stated that Spain had been trying to broker an agreement between the two parties. However, in her speech to the Spanish Parliament of 15 December 2010, the Spanish Minister of Foreign Affairs Trinidad Jiménez denied that Spain supports the Moroccan position in Spanish Sahara. She also argued that Spain will support any agreement between the Polisario and Morocco. In 2022, Prime Minister Pedro Sánchez announced that Spain would back Morocco's autonomy plan during a visit to Rabat.[14]
History of Western Sahara
List of Spanish colonial wars in Morocco
^ a b Boukhari 2004. sfn error: no target: CITEREFBoukhari2004 (help)
^ Bereketeab, R. (2014). Self-Determination and Secession in Africa: The Post-Colonial State. Routledge Studies in African Development. Taylor & Francis. p. 260. ISBN 978-1-317-64969-4. Retrieved 2 March 2022.
^ Mundy, Jacob (September 2006). "Neutrality or Complicity? The United States and the 1975 Moroccan takeover of the Spanish Sahara". Journal of North African Studies. Routledge/Taylor & Francis Publishing. 11 (3): 283. doi:10.1080/13629380600803001. S2CID 145455013.
^ a b "Case Summaries : WESTERN SAHARA: Advisory Opinion". icj-cij.org. International Court of Justice. 16 October 1975. Archived from the original on 11 February 2002.
^ Mundy, Jacob (January 2006). "How the US and Morocco seized the Spanish Sahara". mondediplo.com.
^ Hamdaoui, Neijma (31 October 2003). "Hassan II lance la Marche verte". JeuneAfrique.com (in French). Archived from the original on 3 January 2006. Retrieved 21 April 2015.
^ ICJ, Reports 1975, p. 83. For more details, Cf. pp. 83-102. Cf. also individual opinion of Judge M. Forster. Idem p. 103 and Annex no. 7.
^ ICJ, Western Sahara Pleadings, Arguments, Documents, Volume 111, Written Statements and Documents, pp. 205 to 497.
^ * Nomination Dahirs, dating back to the reign of Moulay Abdelaziz Bel Hassan, (Two Dahirs in 1886 and two in 1899), of Abdelhafid Bel Hassan (1907 and 1909), and Dahirs of El Hassan Ben Mohammed (1877 and 1886) of Abdelaziz Ben El H~Hassan (1901)
^ The treaties are the following:
Trading Treaty between Morocco and Spain in Madrid on 20 November 1861
Treaty of Friendship with the USA on 23 to 28 June 1786.
Treaty of peace and friendship between the USA and Morocco, signed in Meknes on 16 September 1856
Anglo-Moroccan Accords, 9 December 1856.
^ "Historical Foundations of the Moroccanity of the Sahara". Mincom.gov.ma. Ministry of Communication, Morocco. Archived from the original on 10 February 2007. Retrieved 21 April 2015.
^ Trilateral Agreement concluded exclusively between the Spanish, Moroccan and Mauritanian Governments, the text of which has been transmitted to the Secretary General of the UN on 18 November 1975. (Resolution 3458 (XXX) B. 10/12/1975).
^ Canadian Lawyers Association for International Human Rights (1997). "Western Sahara Initiative". arso.org. Support Association to a free and fair referendum in Western Sahara. Retrieved 21 April 2015.
^ "Spain's Sanchez visits Morocco, marking 'new phase' after Western Sahara reversal". France 24. 7 April 2022. Retrieved 11 November 2022.
Retrieved from "https://en.wikipedia.org/w/index.php?title=Green_March&oldid=1133034895"

redpajama_set_name: RedPajamaCommonCrawl


text:
News diary 1-7 April: Parliament debates revoke Article 50 petition and holds second day of Brexit indicative votes
Helen Lewis leaving New Statesman for staff writer role at Atlantic
The Pool pushed into liquidation two months after administration note to staff
By James Walker Twitter
The Pool has been pushed into liquidation two months after the women's lifestyle website told staff and freelances it would go into administration.
Winding-up orders were issued on 13 March in the High Court against owner The Pool (UK) Ltd after a petition by HM Revenue and Customs.
Companies House has today issued an update about the court order, which forces an insolvent company into compulsory liquidation, but the file has not yet been published.
The Pool (UK) Ltd's status is now shown as in "liquidation".
Companies can apply for winding-up orders to be cancelled within five working days of their issue.
The Pool's company director Dominic Hill told staff on 31 January that the publisher would go into administration as it was "insolvent and we have exhausted all rescue ideas/plans".
Press Gazette has contacted the Hill and his solicitor asking for further details, but has yet to receive a response.
Successful wind-up petitions result in company assets being sold, legal disputes being settled and funds being paid to creditors.
Staff and freelances at The Pool are still owed money for work. A crowdfund has been set up to help pay out-of-pocket journalists and is now paying out.
In a statement, NUJ freelance organiser Pamela Morton said: "We are helping NUJ members who have not been paid and as a consequence they face personal and financial ramifications due to the court order to wind up the company.
"It is unfortunate there has not been an alternative solution found that could have kept the online magazine going."
The Pool website went offline earlier this week, leaving former staff and freelance writers only able to access articles through an archived copy of the site.
Its closure led The Pool editor Cate Sevilla to describe the situation as "upsetting" and "confusing" in a tweet.
The Pool website shut down but company yet to file for administration
Staff and freelances owed money by The Pool told how much they will receive from £30,000 crowdfund
No comments to display


text:
import os
import fileinput as fi
import linecache as lc
import numpy     as np
import argparse  as ap

# ----------------------------------------------------------------------- #
# 	IMPORT CREATED MODULES
# ----------------------------------------------------------------------- #
from genAndRunMods import *
from genAijMods    import *
from getParamMod   import *
from printMods     import *

# ----------------------------------------------------------------------- #
# 	PROGRAM EXPLANATION
# ----------------------------------------------------------------------- #
printStart()

# ----------------------------------------------------------------------- #
# 	ARGUMENT EXPLANATION
# ----------------------------------------------------------------------- #
parser = ap.ArgumentParser()
parser.add_argument("run", help="[a] automatic run,            [i] interactive run")
parser.add_argument("sub", help="[y] stops at Aij,             [n] full run of script")
parser.add_argument("aij", help="[y] creates Aij from sub Bia, [n] normal run")
args = parser.parse_args()

# ----------------------------------------------------------------------- #
#		RECONSTRUCT AIJ FROM SUBMATRICES
# ----------------------------------------------------------------------- #
if str( args.aij ) == 'y':
	finalAij()
	printEnd(3)
	exit()

# ----------------------------------------------------------------------- #
#		INFORMATION FOR FULL OR SUB RUNS
# ----------------------------------------------------------------------- #
( intName, nuclideNum, numStates, numIter, numParams, spsName, \
	isotopeNum, mkdirName, outputName, nuclideName, nuclideA, valProNuc,\
	valNeutNuc, jzSysNuc, isotopes, valProIso, valNeutIso, jzSysIso ) = getInfo( args.run )

# ----------------------------------------------------------------------- #
#		GENERATE NORM RUN INFO FILES AND RUN
# ----------------------------------------------------------------------- #
print ('')
print (' RUNNING IN [n] MODE ------------------------------------------------ ')
for i in range( nuclideNum ):
	scaledUSDB( nuclideName[i], nuclideA[i] )
	createNorm( nuclideName[i], nuclideA[i], valProNuc[i], valNeutNuc[i], intName,
							jzSysNuc[i], numStates, numIter, spsName )
	runNorm(    nuclideName[i] )
print (' END OF [n] MODE ---------------------------------------------------- ')
print ('')

# ----------------------------------------------------------------------- #
#		GENERATE EXPT RUN INFO FILES
# ----------------------------------------------------------------------- #
for i in range( isotopeNum ):
	isotope = isotopes[i]
	for j in range( numParams ):
		num = j
		createExpt( num, isotope, i, intName )

# ----------------------------------------------------------------------- #
#		RUN IN EXPECTATION MODE
# ----------------------------------------------------------------------- #
print (' RUN IN [x] MODE ---------------------------------------------------- ')
for i in range( isotopeNum ):
	for j in range( numParams ):
		num = j + 1
		isotope = isotopes[i]
		runExpt( num, isotope )
print (' END OF [x] MODE ---------------------------------------------------- ')
print(')')

# ----------------------------------------------------------------------- #
# 	CLEAN UP BIGSTICK OUTPUT
# ----------------------------------------------------------------------- #
cleanUp()

# ----------------------------------------------------------------------- #
#		FULL RUN
# ----------------------------------------------------------------------- #
if str( args.sub ) == 'n':
	tempmat = constructTempMat( numParams, isotopeNum, numStates, isotopes )
	constructAij( numParams, numStates, outputName, tempMat )
	os.system('rm out_expt*')
	printEnd(1)
	exit()

# ----------------------------------------------------------------------- #
#		SUB RUN
# ----------------------------------------------------------------------- #
else:
	tempMat = constructTempMat( numParams, isotopeNum, numStates, isotopes )
	tempMatName = outputName + "_subMat.dat"
	np.savetxt( tempMatName, tempMat )
	os.system('rm out_expt*')
	printEnd(2)
	exit()

redpajama_set_name: RedPajamaGithub


Избор на: with cheese dip, with salsa dip, with sour cream dip, without any further dip и още.
All pizzas are prepared with tomatoes and mozzarella cheese.
All burgers are prepared with 100% beef, sesame buns, onions, lettuce, pickles and tomato slices, and served with French fries.
Избор на: with cheese dip, with salsa dip, with sour cream dip, without dip, with cheese dip и още.
Избор на: with chicken meat или with minced meat.
Price are all including deposit.


text:
Megaporus fischeri är en skalbaggsart som beskrevs av Mouchamps 1964. Megaporus fischeri ingår i släktet Megaporus och familjen dykare. Inga underarter finns listade i Catalogue of Life.

Källor

Dykare
fischeri

redpajama_set_name: RedPajamaWikipedia


text:
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <math.h>
#include <string.h>
#include <memory.h>
#include <assert.h>

#include "global.h"
#include "strings.h"
#include "snr.h"
#include "mainenc.h"
#include "common_frame.h"
#include "encode_frame.h"
#include "putbits.h"
#include "putvlc.h"
#include "transform.h"
#include "temporal_interp.h"
#include "../common/simd.h"
#include "rc.h"
#include "wt_matrix.h"
#include "write_bits.h"

// Coding order to display order
static const int cd1[1] = {0};
static const int cd2[2] = {1,0};
static const int cd4[4] = {3,1,0,2};
static const int cd8[8] = {7,3,1,5,0,2,4,6};
static const int cd16[16] = {15,7,3,11,1,5,9,13,0,2,4,6,8,10,12,14};
static const int* dyadic_reorder_code_to_display[5] = {cd1,cd2,cd4,cd8,cd16};

// Display order to coding order
static const int dc1[1+1] = {-1,0};
static const int dc2[2+1] = {-2,1,0};
static const int dc4[4+1] = {-4,2,1,3,0};
static const int dc8[8+1] = {-8,4,2,5,1,6,3,7,0};
static const int dc16[16+1] = {-16,8,4,9,2,10,5,11,1,12,6,13,3,14,7,15,0};
static const int* dyadic_reorder_display_to_code[5] = {dc1,dc2,dc4,dc8,dc16};

#undef TEMPLATE
#define TEMPLATE(func) (encoder_info.params->frame_bitdepth == 8 ? func ## _lbd : func ## _hbd)

static int reorder_frame_offset(int idx, int sub_gop, int dyadic)
{
  if (dyadic && sub_gop>1) {
    return dyadic_reorder_code_to_display[log2i(sub_gop)][idx]-sub_gop+1;
  } else {
    if (idx==0) return 0;
    else return idx-sub_gop;
  }
}

int main(int argc, char **argv)
{
  FILE *infile, *strfile, *reconfile;

  long input_file_size;
  yuv_frame_t orig,ref[MAX_REF_FRAMES];
  yuv_frame_t rec[MAX_REORDER_BUFFER+1];  // Last one is for temp use
  int rec_available[MAX_REORDER_BUFFER] = {0};
  int last_frame_output=-1;
  int num_encoded_frames,num_bits,start_bits,end_bits;
  int sub_gop=1;
  int rec_buffer_idx;
  int k,frame_num,frame_num0,r;
  int frame_offset;
  int ysize,csize;
  long frame_size;
  int width,height;
  int min_interp_depth;
  int last_intra_frame_num = 0;
  uint32_t acc_num_bits;
  snrvals psnr;
  snrvals accsnr;
  double bit_rate_in_kbps;
  enc_params *params;
  encoder_info_t encoder_info;

  int y4m_output;
  // Keep track of last P frame for using the right references for the tail of a sequence in re-ordered modes
  int last_PorI_frame;

  init_use_simd();

  /* Read commands from command line and from configuration file(s) */
  if (argc < 3)
  {
    fprintf(stdout,"usage: %s <parameters>\n",argv[0]);
    fatalerror("");
  }
  params = parse_config_params(argc, argv);
  if (params == NULL)
  {
    fatalerror("Error while reading encoder paramaters.");
  }
  check_parameters(params);

  /* Open files */
  if (!(infile = fopen(params->infilestr,"rb")))
  {
    fatalerror("Could not open in-file for reading.");
  }
  if (!(strfile = fopen(params->outfilestr,"wb")))
  {
    fatalerror("Could not open out-file for writing.");
  }
  reconfile = NULL;
  y4m_output = 0;
  if (params->reconfilestr) {
    char *p;
    if (!(reconfile = fopen(params->reconfilestr,"wb")))
    {
      fatalerror("Could not open recon-file for reading.");
    }
    p = strrchr(params->reconfilestr,'.');
    y4m_output = p != NULL && strcmp(p,".y4m") == 0;
  }

  fseek(infile, 0, SEEK_END);
  input_file_size = ftell(infile);
  fseek(infile, 0, SEEK_SET);

  if (y4m_output) {
    fprintf(reconfile,
            "YUV4MPEG2 W%d H%d F%d:1 Ip A%d:%d C",
            params->width, params->height, (int)params->frame_rate, params->aspectnum, params->aspectden);
    if (params->subsample == 400)
      fprintf(reconfile, "mono");
    else
      fprintf(reconfile, "%d", params->subsample);

    if (params->input_bitdepth > 8)
      fprintf(reconfile, "p%d XYSCSS=%dp%d", params->input_bitdepth, params->subsample, params->input_bitdepth);
    fprintf(reconfile, "\x0a");
  }

  accsnr.y = 0;
  accsnr.u = 0;
  accsnr.v = 0;
  acc_num_bits = 0;

  height = params->height;
  width = params->width;
  ysize = height * width;
  csize = ((ysize >> 2*(params->subsample != 444)) << (params->subsample == 422)) * (params->subsample != 400);
  frame_size = (ysize + 2*csize) * (1 + (params->input_bitdepth > 8));
  encoder_info.params = params;

  /* Create frames*/
  TEMPLATE(create_yuv_frame)(&orig,width,height,params->subsample,0,0,params->bitdepth,params->input_bitdepth);
  for (r=0;r<MAX_REORDER_BUFFER+1;r++){
    TEMPLATE(create_yuv_frame)(&rec[r],width,height,params->subsample,0,0,params->bitdepth,params->input_bitdepth);
  }
  for (r=0;r<MAX_REF_FRAMES;r++){ //TODO: Use Long-term frame instead of a large sliding window
    TEMPLATE(create_yuv_frame)(&ref[r],width,height,params->subsample,PADDING_Y,PADDING_Y,params->bitdepth,params->input_bitdepth);
  }
  if (params->interp_ref) {
    for (r=0;r<MAX_SKIP_FRAMES;r++){
      encoder_info.interp_frames[r] = malloc(sizeof(yuv_frame_t));
      TEMPLATE(create_yuv_frame)(encoder_info.interp_frames[r],width,height,params->subsample,PADDING_Y,PADDING_Y,params->bitdepth,params->input_bitdepth);
    }
  }

  /* Initialize main bit stream */
  stream_t stream;
  stream.bitstream = (uint8_t *)malloc(MAX_BUFFER_SIZE * sizeof(uint8_t));
  stream.bitbuf = 0;
  stream.bitrest = 32;
  stream.bytepos = 0;
  stream.bytesize = MAX_BUFFER_SIZE;

  /* Configure encoder */
  encoder_info.orig = &orig;
  for (r=0;r<MAX_REF_FRAMES;r++){
    encoder_info.ref[r] = &ref[r];
  }
  encoder_info.stream = &stream;
  encoder_info.width = width;
  encoder_info.height = height;
  encoder_info.frame_info.max_clpf_strength = encoder_info.params->max_clpf_strength;

  encoder_info.deblock_data = (deblock_data_t *)malloc((height/MIN_PB_SIZE) * (width/MIN_PB_SIZE) * sizeof(deblock_data_t));

#if CDEF
  int nhfb = (height + CDEF_BLOCKSIZE - 1) >> CDEF_BLOCKSIZE_LOG2;
  int nvfb = (width + CDEF_BLOCKSIZE - 1) >> CDEF_BLOCKSIZE_LOG2;
  encoder_info.cdef = malloc(nhfb * nvfb * sizeof(*encoder_info.cdef));
#endif

  alloc_wmatrices(encoder_info.wmatrix, 0);
  alloc_wmatrices(encoder_info.iwmatrix, 1);

  /* Write sequence header */ //TODO: Separate function for sequence header
  start_bits = get_bit_pos(&stream);
  write_sequence_header(&stream, params);

  end_bits = get_bit_pos(&stream);
  num_bits = end_bits-start_bits;
  acc_num_bits += num_bits;
  printf("SH:  %4d bits\n",num_bits);

  /* Start encoding sequence */
  num_encoded_frames = 0;
  sub_gop = max(1,params->num_reorder_pics+1);

  min_interp_depth = log2i(params->num_reorder_pics+1)-3;
  if (params->frame_rate > 30) min_interp_depth--;

  last_PorI_frame = -1;

  rate_control_t rc;
  encoder_info.rc = &rc;
  if (params->bitrate > 0) {
    int target_bits = (int)(params->bitrate / params->frame_rate);
    int sb_size = 1 << params->log2_sb_size;
    int num_sb = ((width + sb_size - 1) / sb_size) * ((height + sb_size - 1) / sb_size);
    init_rate_control_per_sequence(&rc, target_bits, num_sb);
  }

  for (frame_num0 = params->skip; frame_num0 < (params->skip + params->num_frames) && (frame_num0+1)*frame_size <= input_file_size; frame_num0+=sub_gop)
  {
    for (k=0; k<sub_gop; k++) {
      int r,r1,r2,r3;
      /* Initialize frame info */
      frame_offset = reorder_frame_offset(k,sub_gop,params->dyadic_coding);
      frame_num = frame_num0 + frame_offset;
      // If there is an initial I frame and reordering need to jump to the next P frame
      if (frame_num<params->skip) continue;

      encoder_info.frame_info.frame_num = frame_num - params->skip;
      rec_buffer_idx = encoder_info.frame_info.frame_num%MAX_REORDER_BUFFER;
      encoder_info.rec = &rec[rec_buffer_idx];
      encoder_info.tmp = &rec[MAX_REORDER_BUFFER];
      encoder_info.rec->frame_num = encoder_info.frame_info.frame_num;
      if (params->num_reorder_pics==0) {
        if (params->intra_period > 0)
          encoder_info.frame_info.frame_type = ((num_encoded_frames%params->intra_period) == 0 ? I_FRAME : P_FRAME);
        else
          encoder_info.frame_info.frame_type = (num_encoded_frames == 0 ? I_FRAME : P_FRAME);
      } else {
        if (params->intra_period > 0)
          encoder_info.frame_info.frame_type = ((encoder_info.frame_info.frame_num%params->intra_period) == 0 ? I_FRAME :
              ((encoder_info.frame_info.frame_num%sub_gop)==0 ? P_FRAME : B_FRAME));
        else
          encoder_info.frame_info.frame_type = (encoder_info.frame_info.frame_num == 0 ? I_FRAME :
              ((encoder_info.frame_info.frame_num%sub_gop)==0 ? P_FRAME : B_FRAME));
      }

      int coded_phase = (num_encoded_frames + sub_gop - 2) % sub_gop + 1;
      int b_level = log2i(coded_phase);
      encoder_info.frame_info.b_level = b_level;

      encoder_info.frame_info.phase = encoder_info.frame_info.frame_num % (encoder_info.params->num_reorder_pics + 1);

      if (encoder_info.frame_info.frame_type == I_FRAME){
        encoder_info.frame_info.qp = params->qp + params->dqpI;
        last_intra_frame_num = encoder_info.frame_info.frame_num;
      }
      else if (params->num_reorder_pics==0) {
        if (num_encoded_frames % params->HQperiod)
          encoder_info.frame_info.qp = (int)(params->mqpP*(float)params->qp) + params->dqpP;
        else
          encoder_info.frame_info.qp = params->qp;
      } else {
        if (encoder_info.frame_info.frame_num % sub_gop) {
          if (params->dyadic_coding){
            if (b_level == 0)
              encoder_info.frame_info.qp = (int)(params->mqpB0*(float)params->qp) + params->dqpB0;
            else if (b_level == 1)
              encoder_info.frame_info.qp = (int)(params->mqpB1*(float)params->qp) + params->dqpB1;
            else if (b_level == 2)
              encoder_info.frame_info.qp = (int)(params->mqpB2*(float)params->qp) + params->dqpB2;
            else if (b_level == 3)
              encoder_info.frame_info.qp = (int)(params->mqpB3*(float)params->qp) + params->dqpB3;
            else
              encoder_info.frame_info.qp = (int)(params->mqpB*(float)params->qp) + params->dqpB;
          }
          else {
            encoder_info.frame_info.qp = (int)(params->mqpB*(float)params->qp) + params->dqpB;
          }
        }  else {
          if (encoder_info.frame_info.frame_num % params->HQperiod) {
            encoder_info.frame_info.qp = (int)(params->mqpP*(float)params->qp) + params->dqpP;
          } else
            encoder_info.frame_info.qp = params->qp;
        }
      }
      encoder_info.frame_info.qp = clip(encoder_info.frame_info.qp, 0, MAX_QP);

      encoder_info.frame_info.num_ref = encoder_info.frame_info.frame_type == I_FRAME ? 0 : min(num_encoded_frames,params->max_num_ref);
      encoder_info.frame_info.interp_ref = 0;

      if (encoder_info.frame_info.num_ref > 0) {
        if (params->num_reorder_pics > 0) {
          if (params->dyadic_coding) {
            /* if we have a P frame then use the previous P frame as a reference */
            if ((num_encoded_frames-1) % sub_gop == 0) {
              if (num_encoded_frames==1)
                encoder_info.frame_info.ref_array[0] = 0;
              else
                encoder_info.frame_info.ref_array[0] = sub_gop-1;
              if (encoder_info.frame_info.num_ref>1 )
                encoder_info.frame_info.ref_array[1] = min(MAX_REF_FRAMES-1,min(num_encoded_frames-1,2*sub_gop-1));

              for (r=2;r<encoder_info.frame_info.num_ref;r++){
                encoder_info.frame_info.ref_array[r] = r-2;
              }

            } else if (encoder_info.frame_info.num_ref>0){

              int display_phase =  (encoder_info.frame_info.frame_num-1) % sub_gop;
              int ref_offset=sub_gop>>(b_level+1);
              if (b_level >= min_interp_depth && params->interp_ref == 1) {
                // Need to add another reference if we are at the beginning
                if (encoder_info.frame_info.num_ref==2) encoder_info.frame_info.num_ref++;

                encoder_info.frame_info.interp_ref = params->interp_ref;

                encoder_info.frame_info.ref_array[1]=min(num_encoded_frames-1,coded_phase-dyadic_reorder_display_to_code[log2i(sub_gop)][display_phase-ref_offset+1]-1);
                encoder_info.frame_info.ref_array[2]=min(num_encoded_frames-1,coded_phase-dyadic_reorder_display_to_code[log2i(sub_gop)][display_phase+ref_offset+1]-1);

                // Interpolate these two reference frames to make a new frame
                encoder_info.frame_info.ref_array[0]=-1;
                // Add this interpolated frame to the reference buffer and use it as the first reference
                yuv_frame_t* ref1=encoder_info.ref[encoder_info.frame_info.ref_array[1]];
                yuv_frame_t* ref2=encoder_info.ref[encoder_info.frame_info.ref_array[2]];
                TEMPLATE(interpolate_frames)(encoder_info.interp_frames[0], ref1, ref2, 2, 1);
                TEMPLATE(pad_yuv_frame)(encoder_info.interp_frames[0]);
                encoder_info.interp_frames[0]->frame_num = encoder_info.frame_info.frame_num;
                /* use most recent frames for the last ref(s)*/
                for (r=3;r<encoder_info.frame_info.num_ref;r++){
                  encoder_info.frame_info.ref_array[r] = r-3;
                }
              } else {
                encoder_info.frame_info.ref_array[0]=min(num_encoded_frames-1,coded_phase-dyadic_reorder_display_to_code[log2i(sub_gop)][display_phase-ref_offset+1]-1);
                encoder_info.frame_info.ref_array[1]=min(num_encoded_frames-1,coded_phase-dyadic_reorder_display_to_code[log2i(sub_gop)][display_phase+ref_offset+1]-1);

                /* use most recent frames for the last ref(s)*/
                for (r=2;r<encoder_info.frame_info.num_ref;r++){
                  encoder_info.frame_info.ref_array[r] = r-2;
                }

              }
            }
          } else {
            /* if we have a P frame then use the previous P frame as a reference */
            if ((num_encoded_frames-1) % sub_gop == 0) {
              if (num_encoded_frames==1)
                encoder_info.frame_info.ref_array[0] = 0;
              else
                encoder_info.frame_info.ref_array[0] = sub_gop-1;
              if (encoder_info.frame_info.num_ref>1 )
                encoder_info.frame_info.ref_array[1] = min(MAX_REF_FRAMES-1,min(num_encoded_frames-1,2*sub_gop-1));

              for (r=2;r<encoder_info.frame_info.num_ref;r++){
                encoder_info.frame_info.ref_array[r] = r-1;
              }

            } else {
              if (params->interp_ref > 0 && params->interp_ref == 1) {
                // Need to add another reference if we are at the beginning
                if (encoder_info.frame_info.num_ref==2) encoder_info.frame_info.num_ref++;

                encoder_info.frame_info.interp_ref = params->interp_ref;

                // Use the last encoded frame as the first true ref
                if (encoder_info.frame_info.num_ref>0) {
                  encoder_info.frame_info.ref_array[1] = 0;
                }
                /* Use the subsequent P frame as the 2nd ref */
                int phase = (num_encoded_frames + sub_gop - 2) % sub_gop;
                if (encoder_info.frame_info.num_ref>1) {
                  if (phase==0)
                    encoder_info.frame_info.ref_array[2] = min(sub_gop, num_encoded_frames-1);
                  else
                    encoder_info.frame_info.ref_array[2] = min(phase, num_encoded_frames-1);
                }
                // Interpolate these two reference frames to make a new frame
                encoder_info.frame_info.ref_array[0]=-1;
                // Add this interpolated frame to the reference buffer and use it as the first reference
                yuv_frame_t* ref1=encoder_info.ref[encoder_info.frame_info.ref_array[1]];
                yuv_frame_t* ref2=encoder_info.ref[encoder_info.frame_info.ref_array[2]];
                TEMPLATE(interpolate_frames)(encoder_info.interp_frames[0], ref1, ref2, sub_gop-phase,phase!=0 ? 1 : sub_gop-phase-1);
                TEMPLATE(pad_yuv_frame)(encoder_info.interp_frames[0]);
                encoder_info.interp_frames[0]->frame_num = encoder_info.frame_info.frame_num;

                /* Use the prior P frame as the 4th ref */
                if (encoder_info.frame_info.num_ref>2) {
                  encoder_info.frame_info.ref_array[3] = min(phase ? phase + sub_gop : 2*sub_gop, num_encoded_frames-1);
                }
                /* use most recent frames for the last ref(s)*/
                for (r=4;r<encoder_info.frame_info.num_ref;r++){
                  encoder_info.frame_info.ref_array[r] = r-4+1;
                }

              } else {
                // Use the last encoded frame as the first ref
                if (encoder_info.frame_info.num_ref>0) {
                  encoder_info.frame_info.ref_array[0] = 0;
                }
                /* Use the subsequent P frame as the 2nd ref */
                int phase = (num_encoded_frames + sub_gop - 2) % sub_gop;
                if (encoder_info.frame_info.num_ref>1) {
                  if (phase==0)
                    encoder_info.frame_info.ref_array[1] = min(sub_gop, num_encoded_frames-1);
                  else
                    encoder_info.frame_info.ref_array[1] = min(phase, num_encoded_frames-1);
                }
                /* Use the prior P frame as the 3rd ref */
                if (encoder_info.frame_info.num_ref>2) {
                  encoder_info.frame_info.ref_array[2] = min(phase ? phase + sub_gop : 2*sub_gop, num_encoded_frames-1);
                }
                /* use most recent frames for the last ref(s)*/
                for (r=3;r<encoder_info.frame_info.num_ref;r++){
                  encoder_info.frame_info.ref_array[r] = r-3+1;
                }
              }
            }
          }

          if (encoder_info.params->num_reorder_pics == 2 && encoder_info.frame_info.frame_type == B_FRAME && b_level == 0) {
            int off = encoder_info.params->interp_ref == 1 ? 1 : 0;
            int tmp = encoder_info.frame_info.ref_array[0 + off];
            encoder_info.frame_info.ref_array[0 + off] = encoder_info.frame_info.ref_array[1 + off];
            encoder_info.frame_info.ref_array[1 + off] = tmp;
          }

        } else {
          if (encoder_info.frame_info.num_ref>=1){
            /* If num_ref==1 always use most recent frame */
            encoder_info.frame_info.ref_array[0] = last_PorI_frame;
          }

          if (encoder_info.frame_info.num_ref==2){
            /* If num_ref==2 use most recent LQ frame and most recent HQ frame */
            r1 = ((num_encoded_frames + params->HQperiod - 2) % params->HQperiod) + 1;
            encoder_info.frame_info.ref_array[1] = r1;
          }
          else if (encoder_info.frame_info.num_ref==3){
            r1 = ((num_encoded_frames + params->HQperiod - 2) % params->HQperiod) + 1;
            r2 = r1==1 ? 2 : 1;
            encoder_info.frame_info.ref_array[1] = r1;
            encoder_info.frame_info.ref_array[2] = r2;
          }
          else if (encoder_info.frame_info.num_ref==4){
            r1 = ((num_encoded_frames + params->HQperiod - 2) % params->HQperiod) + 1;
            r2 = r1==1 ? 2 : 1;
            r3 = r2+1;
            if (r3==r1) r3 += 1;
            encoder_info.frame_info.ref_array[1] = r1;
            encoder_info.frame_info.ref_array[2] = r2;
            encoder_info.frame_info.ref_array[3] = r3;
          }
          else{
            for (r=1;r<encoder_info.frame_info.num_ref;r++){
              encoder_info.frame_info.ref_array[r] = r;
            }
          }
        }
      }

      // Remove duplicate reference frames
      for (r=encoder_info.frame_info.num_ref-1; r>0; --r){
        for (int k=r-1; k>=0; --k) {
          if (encoder_info.frame_info.ref_array[k] == encoder_info.frame_info.ref_array[r]) {
            // remove rth element
            for (int s=r; s<encoder_info.frame_info.num_ref-1; ++s) {
              encoder_info.frame_info.ref_array[s]=encoder_info.frame_info.ref_array[s+1];
            }
            encoder_info.frame_info.num_ref--;
            break;
          }

        }
      }

      // Remove reference frames which break random access
      if (encoder_info.frame_info.frame_num > last_intra_frame_num) {
        for (r=encoder_info.frame_info.num_ref-1; r>=0; --r){
          if (encoder_info.frame_info.ref_array[r]>=0) {
            int ref_frame_num=encoder_info.ref[encoder_info.frame_info.ref_array[r]]->frame_num;
            if (ref_frame_num < last_intra_frame_num) {
              // remove this reference
              for (int s=r; s<encoder_info.frame_info.num_ref-1; ++s) {
                encoder_info.frame_info.ref_array[s]=encoder_info.frame_info.ref_array[s+1];
              }
              encoder_info.frame_info.num_ref--;
            }
          }
        }
      }

      if (params->intra_rdo == 0 || (encoder_info.frame_info.frame_type != I_FRAME && params->encoder_speed > 0))
        encoder_info.frame_info.num_intra_modes = 4;
      else
        encoder_info.frame_info.num_intra_modes = MAX_NUM_INTRA_MODES;

#if 0
      /* To test sliding window operation */
      int offsetx = 500;
      int offsety = 200;
      int offset_rec = offsety * encoder_info.rec->stride_y +  offsetx;
      int offset_ref = offsety * encoder_info.ref[0]->stride_y +  offsetx;
      if (encoder_info.frame_info.num_ref==2){
        int r0 = encoder_info.frame_info.ref_array[0];
        int r1 = encoder_info.frame_info.ref_array[1];
        printf("ref0=%3d ref1=%3d ",encoder_info.ref[r0]->y[offset_ref],encoder_info.ref[r1]->y[offset_ref]);
      }
      else{
        printf("ref0=XXX ref1=XXX ");
      }
#endif

      /* Read input frame */
      fseek(infile, frame_num*(frame_size+params->frame_headerlen)+params->file_headerlen+params->frame_headerlen, SEEK_SET);
      TEMPLATE(read_yuv_frame)(&orig,infile);
      orig.frame_num = encoder_info.frame_info.frame_num;

      /* Encode frame */
      start_bits = get_bit_pos(&stream);
      TEMPLATE(encode_frame)(&encoder_info);

      rec_available[rec_buffer_idx]=1;
      end_bits =  get_bit_pos(&stream);
      num_bits = end_bits-start_bits;
      num_encoded_frames++;

      /* Compute SNR */
      if (params->snrcalc){
        TEMPLATE(snr_yuv)(&psnr,&orig,&rec[rec_buffer_idx],height,width,encoder_info.params->input_bitdepth);
      }
      else{
        psnr.y =  psnr.u = psnr.v = 0.0;
      }
      accsnr.y += psnr.y;
      accsnr.u += psnr.u;
      accsnr.v += psnr.v;

      acc_num_bits += num_bits;

      if (encoder_info.frame_info.frame_type==I_FRAME)
        fprintf(stdout,"%4d I %4d %10d %10.4f %8.4f %8.4f ",frame_num,encoder_info.frame_info.qp,num_bits,psnr.y,psnr.u,psnr.v);
      else if (encoder_info.frame_info.frame_type==P_FRAME)
        fprintf(stdout,"%4d P %4d %10d %10.4f %8.4f %8.4f ",frame_num,encoder_info.frame_info.qp,num_bits,psnr.y,psnr.u,psnr.v);
      else
        fprintf(stdout,"%4d B %4d %10d %10.4f %8.4f %8.4f ",frame_num,encoder_info.frame_info.qp,num_bits,psnr.y,psnr.u,psnr.v);

      int ref_idx;
      for (ref_idx=0; ref_idx<encoder_info.frame_info.num_ref; ref_idx++){
        encoder_info.frame_info.ref_array[ref_idx]==-1 ? fprintf(stdout,"I(%d,%d) ",encoder_info.frame_info.ref_array[ref_idx+1],encoder_info.frame_info.ref_array[ref_idx+2])
          : fprintf(stdout,"%3d",encoder_info.frame_info.ref_array[ref_idx]);
      }

      for (ref_idx = encoder_info.frame_info.num_ref; ref_idx < encoder_info.params->max_num_ref; ref_idx++) {
        fprintf(stdout, "   ");
      }
      fprintf(stdout, " | ");
      for (ref_idx = 0; ref_idx<encoder_info.frame_info.num_ref; ref_idx++) {
        int r0 = encoder_info.frame_info.ref_array[ref_idx+0];
        int r1 = encoder_info.frame_info.ref_array[ref_idx+1];
        int r2 = encoder_info.frame_info.ref_array[ref_idx+2];
        r0 == -1 ? fprintf(stdout, "I(%d,%d)", encoder_info.ref[r1 + 1]->frame_num, encoder_info.ref[r2 + 1]->frame_num) : fprintf(stdout, "%3d", encoder_info.ref[r0 + 1]->frame_num);
      }
      fprintf(stdout,"\n");
      fflush(stdout);

      /* Write compressed bits for this frame to file */
      flush_all_bits(&stream, strfile);

      if (reconfile){
        /* Write output frame */
        rec_buffer_idx = (last_frame_output+1) % MAX_REORDER_BUFFER;
        if (rec_available[rec_buffer_idx]) {
          last_frame_output++;
          if (y4m_output)
          {
            fprintf(reconfile, "FRAME\x0a");
          }
          TEMPLATE(write_yuv_frame)(&rec[rec_buffer_idx],reconfile);
          rec_available[rec_buffer_idx]=0;
        }
      }

      // Keep track of when the last anchor frame was in the sliding window
      last_PorI_frame = (encoder_info.frame_info.frame_type != B_FRAME ? 0 : last_PorI_frame+1);
    }

    /* Revert to PPP coding if our subgop does not fit in. Keeping track of the last anchor frame
       should mean that the first reference is correct when we do, although subsequent references
       may not be ideal.
     */
    if (((frame_num0+sub_gop+1)*frame_size > input_file_size || frame_num0+sub_gop >= params->skip+params->num_frames )&& sub_gop>=2) {
      params->HQperiod = sub_gop;
      sub_gop = 1;
      params->num_reorder_pics = 0;
    };
  }
  // Write out the tail
  int i;
  if (reconfile) {
    for (i=1; i<=MAX_REORDER_BUFFER; ++i) {
      rec_buffer_idx=(last_frame_output+i) % MAX_REORDER_BUFFER;
      if (rec_available[rec_buffer_idx]) {
        if (y4m_output)
            fprintf(reconfile, "FRAME\x0a");
        TEMPLATE(write_yuv_frame)(&rec[rec_buffer_idx],reconfile);
        rec_available[rec_buffer_idx]=0;
      }
      else
        break;
    }
  }

  bit_rate_in_kbps = 0.001*params->frame_rate*(double)acc_num_bits/num_encoded_frames;

  /* Finised encoding sequence */
  fprintf(stdout,"------------------- Average data for all frames ------------------------------\n");
  fprintf(stdout,"kbps            : %12.3f\n",bit_rate_in_kbps);
  fprintf(stdout,"PSNR Y          : %12.3f\n",accsnr.y/num_encoded_frames);
  fprintf(stdout,"PSNR U          : %12.3f\n",accsnr.u/num_encoded_frames);
  fprintf(stdout,"PSNR V          : %12.3f\n",accsnr.v/num_encoded_frames);
  fprintf(stdout,"------------------------------------------------------------------------------\n");

  /* Append one line of statistics to a file */
  if (params->statfilestr) {
    FILE *cumu_fp;

    int not_exists = !(cumu_fp = fopen(params->statfilestr, "r"));
    if (!not_exists)
      fclose(cumu_fp);
    if ((cumu_fp = fopen(params->statfilestr, "a")) != NULL) {
      if (not_exists)
        fprintf(cumu_fp, " NFR     kbps     PSNRY  PSNRU  PSNRV\n");
      fprintf(cumu_fp, "%4d %12.3f %6.3f %6.3f %6.3f\n",
          params->num_frames,
          bit_rate_in_kbps,
          accsnr.y/(double)num_encoded_frames,
          accsnr.u/(double)num_encoded_frames,
          accsnr.v/(double)num_encoded_frames);
      fclose(cumu_fp);
    }
  }

  TEMPLATE(close_yuv_frame)(&orig);
  for (int i=0; i<MAX_REORDER_BUFFER+1; ++i) {
    TEMPLATE(close_yuv_frame)(&rec[i]);
  }
  for (r=0;r<MAX_REF_FRAMES;r++){
    TEMPLATE(close_yuv_frame)(&ref[r]);
  }
  if (params->interp_ref) {
    for (r=0;r<MAX_SKIP_FRAMES;r++){
      TEMPLATE(close_yuv_frame)(encoder_info.interp_frames[r]);
      free(encoder_info.interp_frames[r]);
    }
  }

  fclose(infile);
  fclose(strfile);
  if (reconfile)
  {
    fclose(reconfile);
  }
  free(stream.bitstream);
  free(encoder_info.deblock_data);
#if CDEF
  free(encoder_info.cdef);
#endif

  if (params->bitrate > 0) {
    delete_rate_control_per_sequence(&rc);
  }

  delete_config_params(params);
  return 0;
}


Last week we were wearing toques and WAY behind getting our nursery moved to the snow covered lower "garden". This week we scrambled in t-shirts pleading with our over 50 bodies to get-er-done. Well, Gord isn't quite 50…his big day comes on Earth day, April 22, he will turn the big 50.
We are very pleased with how the nursery looks and functions in the lower garden.
For starters, it's flat down there. No more pushing trees up hills in wheel barrows.
It's also better for parking and no more single lane long driveway to navigate.
More room to organize plants…All the nuts are together, the fruit trees together, the berry patch, the perennial veggie patch, etc. I love being organized.
And finally, people who show up and think we are crazy, can leave more easily. Ha, and that's usually before we try and sell them a book on compost toilets…which by the way, will be for sale…we'll even sign a copy for you.
So without any more rambling discussion here's the details of the spring opening for the Eco-Sense nursery.
We have bare root chestnuts…the ULTIMATE food security plant. Chestnut flour is to die for. Gord and I recently made a berry clafoutis…100% local (mostly our own ingredients). Chestnut flour, sweet potato, honey, lemons, eggs, milk, and berries.
I have been on your mailing list for a few years and have appreciated reading your posts. You don't mince words and are honest in describing the joys and trials of your chosen life. Nor are you unrealistic about the prospects for averting global catastrophe. Your commitment to doing the right things and living responsibly regardless of the outcome has buoyed my spirit and reminded me that that's supposed to be my ethic …. I keep forgetting.
Thank-you for being a light in the darkness. I hope we can see you in your place some day.


The first Eucerin Skin Institute opens in Hamburg providing an opportunity to get closer to Eucerin's medical skin care expertise. It offers skin analysis, personal consultation and a range of treatments. For this, Eucerin has developed a very own Skin Code Reader which can determine an individual's unique skin code and then use it to develop highly tailored care and treatment plans.
The heart of Eucerin – Hamburg based Eucerin Haut Institut.
Beiersdorf Research Center in Hamburg, Germany.


text:
{{Ficha de sencillo
| nombre            = Magnificent
| tipo              = Sencillo
| artista           = U2
| álbum             = No Line on the Horizon
| lado A            =
| lado B            =
| publicación       =
| formato           = [[Disco de vinilo|Vinilo de 7]], CD.
| grabación         =
| género            = Rock
| duración          = 5:24 (Versión del álbum)  4:21 (Versión editada)
| discográfica      = Universal
| escritor          = Bono, Brian Eno, Daniel Lanois, The Edge
| productor         = Brian Eno, Daniel Lanois
| certificación     =
| listas            =
|cronología         = Cronología de sencillos de U2
| sencillo anterior   = Get on Your Boots
| sencillo actual     = Magnificent
| sencillo posterior  = I'll go crazy if I don't go crazy tonight
| añoA                = 2009
| añoAc               = 2009
| añoP                = 2009
| miscelánea =
}}

«Magnificent» es el segundo sencillo del álbum de la banda irlandesa U2, No Line on the Horizon (2009). La canción se llamaría originalmente "French Disco", pero fue renombrada más tarde en las sesiones de grabación. La canción se tituló originalmente "French Disco", pero se renombró más tarde en las sesiones de grabación. Se toca antes del inicio de todos los partidos en casa de los New York Rangers en el Madison Square Garden.

El sencillo fue lanzado el 4 de mayo de 2009 y alcanzó el puesto 42 en la lista de singles del Reino Unido. Aunque fue bien recibido por la crítica, fue el primer sencillo de U2 lanzado en el país que no llegó al Top 40 del Reino Unido desde "A Celebration" en 1982. embargo, alcanzó el número uno en la lista de singles escoceses, su segundo sencillo de No Line on the Horizont para hacerlo.

 Escritura y grabación
"Magnificent" se originó a partir de las improvisadas sesiones de grabación de la banda con Brian Eno y Daniel Lanois en Fez, Marruecos en junio de 2007. La pista se creó a partir de una serie de cambios de acordes en medio de un atasco. The Edge señaló que "La progresión básica de acordes tenía un poder que inspiraba a todos. Creo que todos sabíamos que era intrínsecamente alegre, lo cual es raro". Un grupo de percusionistas marroquíes tocó junto con la banda, y el resultado rápidamente se convirtió en un favorito de la banda durante las sesiones.

Bono señaló que la letra fue influenciada tanto por Cole Porter como por Bach, y que la canción trata sobre "dos amantes abrazándose y tratando de convertir su vida en adoración". Lanois describió los orígenes de la canción: "Queríamos tener algo eufórico y a Bono se le ocurrió esa pequeña melodía. Y le encantó esa melodía y se mantuvo firme. Casi como una fanfarria. Y luego me involucré en el proceso lírico de eso, porque queríamos hablar sobre el sacrificio que uno hace por su medio o su arte. Pensé que tenía que ver con un escenario en Nueva York en la década de 1950; mirar por la ventana de un dormitorio pequeño. Tal vez una figura tipo Charlie Parker ".

 Remixes
La canción ha sido remezclada en numerosas ocasiones, incluidas versiones de Dave Audé, Pete Tong, Redanka, Fred Falke y Adam K & Soha. Los remixes estuvieron disponibles simultáneamente con el lanzamiento del single de la canción. En el Reino Unido, los Magnificent Remixes fueron los que más escalaron en el Upfront Club Chart en el número 3, y están en el número 4 en el Cool Cuts Chart. will.i.am participó en la creación de un remix aún inédito.

La línea de base sintetizada de 180 Version Remix de Redanka es similar a la exitosa canción de 1977 de Donna Summer "I Feel Love".

La edición de radio y la edición del Reino Unido son versiones ligeramente diferentes de la canción, siendo la diferencia más destacada una alteración en la primera letra.

 Video musical
El videoclip fue filmado en la ciudad de Fez, Marruecos. Fue dirigido por Alex Courtes, quien había trabajado anteriormente con la banda para el video de "Get on Your Boots". Fue estrenado en Internet el 6 de mayo de 2009.

 Recepción
Tras el lanzamiento de No Line on the Horizon, muchos críticos llamaron a "Magnificent" uno de los aspectos más destacados del álbum. Q escribió que "se hace eco de la pista de apertura de The Unforgettable Fire "A Sort of Homecoming"en su barrido atmosférico", y también lo etiqueta como un "himno de construcción lenta con el ambiente de "The Unforgettable Fire" y un reinicio de" Who's Gonna Ride Your Wild Horses."U2 Preview New Album to 'Q'". Q. Retrieved 2009-03-08.

 En directo
«Magnificent» debutó en el "No Line On The Horizon Promo Tour", mini-gira promocional anterior al 360º Tour, siendo tocada en un recital en el techo de la BBC en Londres, en el programa de televisión estadounidense Late Show with David Letterman, y en un mini concierto dado en la Universidad de Fordham, que fuera grabado para el programa Good Morning America''.

Ya dentro de las giras musicales del grupo, la canción formó parte del 360º Tour de 2009-11, y se tocó durante toda la gira salvo en algunos conciertos de la 7ª y última manga. En la siguiente gira, el Innocence + Experience Tour de 2015, la canción solo se tocó en un concierto celebrado en Ámsterdam el 13 de septiembre de 2015. Sería la última vez que la canción se interpretase en directo por el grupo.

Lista de canciones

7": Island / TBC

CD: Island / TBC

CD: Island / TBC

CD: Island / INTR-12571-2

Magnificent Remixes (USA Release through masterbeat.com)

Posicionamiento en listas

Referencias

Enlaces externos
 Lyrics at U2.com
 "Magnificent" en Discogs

Sencillos de 2009
Canciones de U2
Sencillos de U2
Canciones en inglés
Canciones de rock


As future doctors make their way through schooling, they are expected to find their speciality or niche. While many focus their passion on specific parts of the body, there are others who take on wide-ranging fields. One of those umbrella fields includes pathology. Many individuals assume that a pathologist's work, is exclusive to deceased bodies. Although some in the field do perform autopsies, the field of pathology expands much further than post mortems.
In its purest form, pathology is the study of disease, however, many forget that it is actually a medical specialty in its own right. Specialists in this field cover a diverse range of responsibilities. These include; diagnostic testing, treatment advice, prevention of disease, and the use of cutting edge technology. In retrospect, most pathologists play some sort of role in a vast majority of the various medical branches.
For anyone who has ever received medical testing of some sort, a pathologist was likely involved with the analysis and quality assurance of results. Whether it is a blood test, pap smear, or biopsy, a pathologist is called upon to decipher the root of the disease.
Surgical pathology—the speciality dedicated to the diagnosis of disease based on tissues samples taken during surgery.
Chemical pathology – the specialty dedicated to the use of biochemical methodologies to diagnose disease.
Hematopathology—the diagnosis of disease of blood cells and bone marrow to include leukemia, hemophilia and lymphoma.
Medical microbiology – the diagnosis of infectious diseases.
Pathologists are physicians who work with other doctors in the diagnosis and treatment of patients. Often referred to as "the doctor's doctor", Pathologists, although often overlooked by patients are a central part of the medical team.
Look forward to future blog's on what the empowered patient can learn from talking to their pathologist.


text:
Slitherine Software Uk Ltd (anche nota come Slitherine Software, Slitherine Strategies o Slitherine Studios) è una casa editrice britannica con sede a Epsom, sviluppatrice e produttrice di videogiochi (per PC e altre piattaforme) e giochi da tavolo, attiva anche nella pubblicazione e nella distribuzione. È stata creata il 4 giugno del 2000 da Ian McNeil.

Il primo videogioco con marchio "Slitherine" è arrivato sul mercato nel 2002 con il nome di Legion; tra gli altri titoli sono da ricordare giochi sia per la strategia a turni con tattica in tempo reale (Legion Gold, Chariots of War e Spartan), sia per la strategia in tempo reale (The History Channel: Le Grandi Battaglie di Roma/The History Channel: Great Battles of Rome).

Degna di nota è inoltre la serie di giochi di tipo wargame derivata da Field of Glory, con le relative espansioni, che prende in considerazioni varie età: classica, medievale, rinascimentale e napoleonica.

Prodotti sviluppati da Slitherine Software

Videogiochi Slitherine Software

Legion, "Legion Gold" (2002), strategia a turni, PC, iPad
Chariots of War (2003), strategia a turni, PC
Spartan (2004), strategia a turni, PC
''Gates of Troy (Espansione di: Spartan) (2005), strategia a turni, PC
Legion Arena (2005) (PC)
Legion Arena: Cult of Mithras (2006) (PC)
The History Channel: Great Battles of Rome (2007) (PC, PS2, PSP)
History Great Empires: Rome (2008) (NDS)
Commander - Napoleon at War (2008) (PC)
Military History Commander - Europe at War (Gold) (2009) (PC, PSP, NDS)
Conquest! Medieval Realms (2009) (PC)
Horrible Histories: Ruthless Romans (2009) (PC, Wii, NDS)
History: Ice Road Truckers (2009) (iPhone)
Field of Glory - Digital Version (2009) (PC)
History - Great Battles Medieval (2009) (PC, Xbox 360, PS3) La rivista Play Generation lo classificò come il secondo migliore titolo di strategia del 2010.
Brutte Storie - I rivoltanti romani (2009)
BBC Battlefield Academy, PC, iPad
Hannibal: Rome and Carthage (2010)
History - Egypt: Engineering an Empire (2011), iPad, iPhone
Panzer Corps (2011), PC, iPad
Warhammer 40'000: Armageddon
Qvadriga (2014)
Buzz Aldrin's Space Program Manager (2014), PC, iPad, Android

Giochi Slitherine Software
Field of Glory
Immortal Fire
Rise of Rome
Legions Triumphant
Decline and Fall
Swords and Scimitars

Note

Collegamenti esterni


text:
JP Barham resigns after 23 years in position
Two years remain of term
Orange Grove Journal, Alice Echo-News Journal
After 23 years of service to the citizens of Precinct 3, Justice of the Peace Elois Barham has decided to resign her position effective May 31.
"With much thought and reflection I believe that the time has come for me to tender my resignation," Barham said.
She said her resignation had absolutely nothing to do with the Jim Wells County Commissioner's Court or any other outside reason, she said she felt personally, after much reflection, that it was time to retire.
During her 23 years in office, Barham has seen many things and met many people through her court, people whom she has known well throughout the years and those whose experiences have differed greatly from her own. In either case, Barham treated those in her courtroom with the same amount of fairness and respect, she said, and she is proud to say that.
"When anybody would come before my court, I would call them Mr. and Mrs. and I would answer them according to the rules and my knowledge of the law. In other words, I was not going to rule due to the person in front of me. That's what I told them before I took office and that's what I did. I think they will all remember that, because that's what I told them," Barham said.
Barham said she made every decision to the best of her ability, and she never looked back.
"I have had a good precinct these 23 years. I have very few enemies here. I think most people appreciate the truth, if not everyone," Barham said.
On Monday, Jim Wells County Commissioners accepted the resignation.
"We appreciate your service to Jim Wells County and to the State of Texas over the last 23 years," County Judge L. Arnoldo Saenz said.
"We hate to see you go. But it has been a good service to JWC."
"We're going to miss her," Commissioner Oswald Alanis said to the court.
Commissioner Zenaida Sanchez said the county was that much richer for Barham's intelligence, her fairness and the way she operated her court.
Elections Administrator Pearlie Jo Valadez then submitted to the court information concerning the position of JP.
Valadez said the person the court appoints to fill in for Barham will serve until the next regularly scheduled election opportunity, which is in November.
Wally told Barham they would get together to come up with a name for the court to consider as a replacement until the election.
Precinct 3 Constable Sonny Crisp said he was going to miss working with JP Barham.
"I already miss her, and she's not gone yet," Crisp said. "She's always been there. I wanted to thank her for doing this for the people of Precinct 3."


text:
Why I started this website
About the Welcome Hills and Clopton Nature Reserve
1160 Survey, Welcombe gets on the map!
Shakespeare's time 1500
Stratford Upon Avon Town History
The Obelisk / Monument
Margaret's Well
The Welcombe Hotel
Clopton Tower (aka The Little Castle)
Clopton House
The Reservior
CONTRIBUTE / CONTACT
Rowley Fields – PLANNING PERMISSION REJECTED – post update
July 7, 2016 /in Rowley Fields /by Gavin Griffiths
Rowley Fields Plot behind Benson Avenue
*** UPDATE
Last night (6th July) it was announced that planning has been declined on the development on the Benson Road corner of Rowley Fields. Although this is a tucked away part of the fields that most of us don't use many of us were concerned that The Trust would use this as a jumping off point to develop the fields in parcels. I fully expect this to continue and an appeal to be lodged so now is not the time to sit back and think that anything has been won. This land will be under attack for generations to come but what the whole Rowley Fields episode has shown is that when people get together and co-operate then they have power. The cost of this aborted development, a speculative punt using money that should be for the people of Stratford, should be published and I hope to cover this off at a later date. We should also consider the damaging effects to the reputation of one of the UK's oldest charities which seems to have set itself against the very people it purports to act on behalf of. I would urge everyone to join The Trust so that we can hold them to account and hopefully avoid this happening again.
Many of you will know about the derelict house (which continues to get more derelict with each passing week) on Benson Road which the Town Trust purchased speculatively in 2014 with a view to knocking down and accessing a little-known corner of Rowley Fields for the building of a housing estate.
With the turnaround last year, where The Trust realised that they had completely underestimated the town's willingness to be steamrollered, it would be a significant blow to the organisation's management if this part of the development were not to go through. Many of the people who protested against the development last year were asking why the Trust was using vast sums of the charity's reserves to take a punt on buying a house which is the gateway to a development that doesn't have planning permission. Significant sums have already been spent on the aborted main development proposal, consultation events (anyone remember the bouncers?), PR agents, lawyers and the general high costs that come with the business of property speculating. Well, we've reached crunch time, because the planning application has been submitted.
One could argue that it's only five houses and what harm could it do, but any building on this land should be a concern to all of us who love The Welcombe Hills and the countryside and nature that reaches right into this part of the town. I have written before that this corner of Stratford will always be vulnerable to developers and that history tells us that once there is a toehold then it's simply a jumping off point to do it again.
So have the TT just changed tack? Rather than just pile in with a full development, the development happens in a small trickle – a death by a 1000 cuts – right under our noses. Dramatic, possibly, but at the same time the shenanigans we all witnessed preventing new members joining and generally trying to push the development through quickly at all costs, shows us that we have to keep our guard up. The simple truth is that Rowley Fields isn't safe and never will be. It's going to be a continual battle to keep this space, which we own collectively as Stratfordians, safe and open to all.
So I received this morning from our friends over on the other side of Rowley Fields (The Benson Road side), the following message. I would urge everyone who wants to protect this land for their children and future generations to object to the planning permission. Remember, this is more than a handful of houses. It's a continuation of our battle to protect our fields. If this goes through they will be back for another little corner.
You can object to this development by sending your comments – you can do it from the comfort of your own chair, right now, without even having to print anything or buy a stamp! Follow this link to see the planning application and lodge your opposition: Benson Road Application
Rowley Fields Forever / Benson Road Planning
You have previously indicated your support in helping to save Rowley Fields from development. The purpose in emailing you now is to let you know that the Town Trust have submitted a planning application (16/00739/OUT) to develop land to the rear of Avenue Road, part of Rowley Fields, and we would very much like to enlist your support in fighting this planning application. We are sure you might be thinking with all the development going on round Stratford, what makes this piece of land so special? There are a number of very good reasons:
· The land borders a conservation area to the south and green space including the Welcombe Hills to the north. Development of this land will further encroach on a beautiful part of Stratford.
· Contrary to the 5 year housing supply. Stratford District Council must ensure that sufficient additional homes are built each year to meet housing needs. They do this through the 5 year housing supply which compares the number of homes (and sites) which are planned to be completed . The land at the rear of Avenue Road is not included in the 5 year housing supply. Go to www.stratford.gov.uk/5yearssupply
· Contrary to the draft neighbourhood plan. A key plank of the Government's policy is the development of a neighbourhood plan at the local level, in our case by Stratford Town Council. Such a plan is designed to represent the views of the community. The current draft of the plan identifies Rowley Fields (which includes the land included in the planning application) as designated green space ( policy CLW4) and as such protected from development. Go to www.ourstratford.org.uk and read the updated highlights of the plan.
· Puts highway safety at risk. Access to the site will be gained via 7 Benson Road which is close to the very sharp bend on the corner of Benson Road and Welcombe Road. In 2013, a planning application from 18 Avenue Road (opposite 7 Benson Road) for one additional dwelling was turned down on highway safety grounds. There are five dwellings proposed in the current application.
· Outside the town boundary. The town boundary identifies the boundary within which development can take place. This site is outside that boundary.
· Conflicts with current local plan Policy EF2 of the current local plan identifies special landscape areas. The local plan remains in force pending completion of the core strategy. This planning application is contrary to that policy.
And finally, whilst not a planning consideration, we find it unbelievable that the Town Trust repeatedly fail to take into account the views of its beneficiaries, the residents of Stratford. The Town Council have already objected to this application and you can see their response online under reference 16/00739/OUT under the consultations section. Other responses are included under the comments section.
So if like us, you want to object to this planning application, do so by writing to Stratford District Council or by commenting online at https://apps.stratford.gov.uk/eplanning/ reference 16/00739/OUT. The deadline for objections is 15 April 2016.
Rowley Fields Forever
Also, please see below formal objection to the development from the Town Council.
https://www.thewelcombehills.co.uk/wp-content/uploads/2014/08/rowley-fields-benson-avenue.jpg 480 360 Gavin Griffiths http://www.thewelcombehills.co.uk/wp-content/uploads/2016/08/Screen-Shot-2016-08-21-at-09.00.05.png Gavin Griffiths2016-07-07 05:16:392016-07-07 05:51:33Rowley Fields - PLANNING PERMISSION REJECTED - post update
Sign up to The Welcombe Hills news letter and get interesting stuff sent to you once a month!
Rowley Fields Action Group
Shakespeare Blog
Stratford Town Trust
Warwickshire Wildlife Trust
What I saw Up The Hills
Web design by Warwickshire Marketing http://www.warwickshiremarketing.com/
The Bombing of The Obelisk in WW2 The Town Trust AGM


Here are 10 questions to ask before you board your horse in order to pick the Charlottesville horse farm that is the best for you and your horse.
Many of my horseowning clients that are looking for a Charlottesville home to buy have decided that boarding their horse may be the best option for them. However it is not always easy to know what questions to ask in order to pick the best Charlottesville barn, particularly if you have never taken care of your horse yourself. Below is a list of questions that are important to ask of any horse boarding facility so that you can make sure that your horse will be receiving the best of care.
1. What do you feed and are there different feed options depending on the horse's needs?
2. What kind of hay do you feed?
3. How often will my horse's water be changed? The water should be totally changed for clean water at least once a day. Just topping off the buckets is not acceptible.
4. How much turnout will my horse receive and when will he go out? There should be a variety of options depending on what each particular horse needs.
5. How many horses will my horse go out with? Ideally your horse should go out by himself or with one buddy. Large groups increase the chance of your horse being kicked or hurt.
6. How often will my horse's blankets be changed? The temperature should be checked and your horse may need different weight blankets during the day with an additional layer after the temperature drops at night.
7. What people are authorized to be around the barn? Particularly at a barn in a development it is immportant for the horse's safety that there are not unauthorized people wandering without supervision.
8. Will you put on any protective boots, bellboots etc. that my horse needs before turnout?
9. Is there staff available that in experienced with bandaging, giving both im and iv injections and other basic medical care in case of illness or injury?
10. Is professional instruction and training available and what are the qualifications of the trainer? Find out what level the instructor/trainer has ridden or trained at. There may be a big difference between someone who has ridden at the national level vs someone who has only ridden locally.
The answers to these questions should provide a basic outline of what the routine at the barn will be like. As we look at homes for sale I will be able to give you names of good Charlottesville horse farms offering boarding that are located close to your neighborhood of choice.
Copyright © 2009 by Pam Dent, all rights reserved, "10 Questions To Ask Before You Board Your Horse".


Posts over Rs. 6b in gross profits, recording volume growth of over 22pct to 209,000 metric tons, and acquiring over 485,000 new connections.
The national LPG (liquid petroleum gas) company marks 2015 a record year posting gross profits of over Rs.6 billion with significant increases in volumes (22pct) and market growth (acquiring a total 485,548 new connections).
In a joint communiqué the Chairman and Mr. Muditha Peiris, the Managing Director of Litro Gas Lanka Ltd said "With one of the largest price reductions seen in any given year, Litro Gas managed to grow its market by creating over 485,000 new connections. This has led us to a record year in 2015 with gross profits of over Rs.6 billion." Highest ever volumes were also seen during 2015 with the company recording volumes of over 209,000 metric tons. This amounts to another record in terms of volume growth of over 22pct.
"We continue to invest in our people to ensure that safety is maintained throughout our value chain" Mr. Peiris said. "We have upgraded our cylinder refurbishment facilities in order to deliver a better product." Mr. Peiris mentioned referring to the company's new investments in cylinder maintenance and re-painting. "With these improvements Litro Gas will improve its quality and standards".
Litro Gas has a safety record that is second to none. "Safety is our prime concern as our business revolves around liquid petroleum gas (LPG). When handled with due care LPG is a versatile fuel which is easily transportable to both city and village alike." Mr. Peiris said.
2015 saw the company recorded 888,413 of man hours with zero LTIs and zero fatalities. The company's stat-of-the-art terminal, filling facilities and fleet of trucks ensures continued supply is maintained. Innovations and the introduction of new loading equipment have helped the operations team reach this excellent record. Increase of efficiency and effectiveness of systems and processes by using management techniques and employee involvement has made sure that the company remains efficient in an ever changing business world.
Mr. Moonesinghe said "Prime importance has been placed on good governance and controls". He elaborated that the new board was appointed in mid-February 2015 with a clear mandate to ensure that Good governance and procedures were followed, in order to ensure that Litro Gas would be a benefit to the country as a role model corporate. Subsequent to this the Chairman and Managing Director took office on the 10th of February 2015.
In keeping with its social responsibilities, Litro Gas recorded the highest number of CSR activities in its history during last year which benefitted many communities across the country. The costal environmental campaign under the guidance of H.E. The President was a highlight in the company's CSR calendar. Various other programmes have been conducted focusing on the developing rural communities through cleaner use of LPG as a cooking fuel. The company continues to further uplift its CSR this year.
Plans have already commenced on the development of the Litro Gas Terminal in the port of Hambantota to install a filling plant in 2016. This will be the second terminal and filling plant in Sri Lankan both of which and owned and operated by Litro Gas. This plant will mainly cater to the southern and eastern provinces of Sri Lanka. Currently the Litro Gas terminal in Hambantota is the only terminal in the country that is capable of exporting LPG.
Further, the Company has made arraignments to commence the manufacture of cylinders in Sri Lanka. This manufacturing facility will complement the business and will save the cost of importing cylinders from overseas.
In keeping with the company's philosophy of being the "trusted energy partner of first choice", Litro Gas is looking to diversify its brand into other related areas of the petrochemical business. In this context Litro Gas is making plans to enter the retail fuels market in Sri Lanka. Litro Gas plans to build, own and operate fuel stations Island wide under the "Litro Fuels" brand. Both the Chairman and the Managing Director feel that the time is right for Litro Gas to branch in to these new streams of business and are creating the necessary environment for this to take place.
2016 will be an interesting year for Litro Gas as it seeks to continue on its journey. Backed by the Senior Management and a team of dedicated and experienced staff the future remains bright for Litro Gas.


text:
Obuzierul de munte "Bucegi", calibrul 98 mm, model 1995 este un obuzier ușor destinat subunităților de artilerie ale brigăzilor de vânători de munte, de infanterie sau parașutiști care acționează în zonele muntoase.

Proiectare

Dezvoltarea obuzierului a început la mijlocul anilor 1980, prototipul fiind gata în 1988. Piesa de artilerie a fost fabricată la uzinele Reșița, având deja experiența proiectării și fabricării tunului de munte "Jerry" de calibrul 76 mm model 1982. Inițial, calibrul era de 100 mm, însă a fost redus la 98 mm după 1990 pentru a evita limitele impuse de Tratatul cu privire la Forțele Armate Convenționale în Europa. Acest tratat prevedea limitarea pieselor de artilerie pentru România la maxim 1475 de tunuri de calibrul 100 mm sau mai mare. Din cauza problemelor economice de la începutul anilor 1990, obuzierul de munte a intrat în dotare la 31 ianuarie 1995. Obuzierul de munte "Bucegi" urma să înlocuiască obuzierele Skoda de calibru 100 mm, depășite moral și fizic. Aceste obuziere (Skoda de calibrul 100 mm) au fost retrase din uz la începutul anilor 1980 din cauza uzurii, fiind din timpul celui de-al Doilea Război Mondial.

Descriere

Obuzierul Bucegi este proiectat special pentru luptele montane. Sistemul de ochire este amplasat în partea stângă, pentru a facilita tragerile prin ochire directă. Fălcelele sunt rabatabile pentru o mobilitate mai mare. A treia roată este fixată după ridicarea fălcelelor din spate la 180°. Piesa de artilerie poate fi tractată de camionul DAC (4×4 sau 6×6), hipo cu 2 cai sau cu ajutorul a 3 cărucioare (demontată). Viteza maximă de tractare este de 60 km/h pe șosea, 30 km/h pe teren frământat și 5 km/h hipo. În cazul tractării moto și hipo nedemontat, obuzierul este gata în 1-2 minute, iar în cazul tractării pe bucăți, demontarea-remontarea durează maxim 10 minute. Obuzierul poate executa trageri cu fălcelele scurte la distanță mică și cu fălcelele lungi la distanțe mai mari. Câmpul de tragere vertical este de -5° și +70°. Câmpul de tragere orizontal este de 40° (23° dreapta, 17° stânga). Închizătorul este de tip pană orizontală semiautomată. Echipajul este de 8 artileriști. Amprenta la sol este de 2500 kgf/cm2.

Obuzierul de munte este încă în oferta de export a producătorului și poate fi livrat cu calibrul standard de 100 mm sau cel atipic de 98 mm. Pentru varianta de 98 mm sunt disponibile doar lovituri explozive, iar pentru varianta de 100 mm sunt disponibile în plus și proiectile perforante trasoare, proiectile cumulative, fumigene și de iluminare.

Utilizare

 Forțele Terestre Române - obuzierele de munte "Bucegi" au fost retrase din uz la începutul anilor 2000. În anul 2008, 164 de exemplare erau în depozitele armatei.

Vezi și

 Tun de munte calibru 76 mm model 1982

Note

Bibliografie

 Stroea, Adrian, col. conf. univ. dr., Băjenaru, Gheorghe, lt. col, Artileria română în date și imagini, Editura Centrului Tehnic-Editorial al Armatei, București, 2010, ISBN 978-606-524-080-3

Legături externe

 Descrierea în engleză a tunului (denumit eronat Model 1993) și linkuri spre alte situri cu descrieri
 Situl producătorului

Artilerie
Obuziere


The CNN media critic used the first 15 minutes of his Reliable Sources show Sunday to apologize for a rash of recent reporting errors. Even lower ratings than usual.
How many people do you think tuned in to watch Howard Kurtz's public shaming on Reliable Sources Sunday? Go on, take a guess. Two million? One million? Five hundred thousand?
Not even close. The actual number, according to Nielsen ratings data supplied to Buzzfeed by Brad Adgate of Horizon Media, was a paltry 359,000 total live plus same day viewers (which are viewers who watched the show on DVR playback later Sunday). The figure ranks as the show's lowest-rated broadcast since January 13, according to Nielsen data, and is well below the 752,000 and 518,000 total viewers it recorded the two weeks prior.
You'd be forgiven, however, for thinking the ratings were higher, particularly if you were on Twitter last Thursday when Kurtz got fired from The Daily Beast for, among other reasons, claiming the recently out basketball player Jason Collins hid the fact that he was once engaged to a woman . Collins had, in fact, disclosed that fact.
Media reporters like Politico's Dylan Byers (who was one of two reporters selected to interview Kurtz on Reliable Sources Sunday, along with NPR's David Folkenflik) and Huffington Post's Michael Calderone, academics such as NYU's Jay Rosen, and others in the industry lit up the social network with comments and reporting when the news broke.
But the low ratings lend credence to the claim that few people outside of the media world care about media reporting. That seems to be especially true among young people — a deeper dive into the ratings shows that the age of the average viewer for Sunday's show was 64.2 and that it scored a infinitesimal 0.6 ratings among viewers 18-49 years old — which equates to roughly 70,000 viewers.


This is a Pain Free Hair Remover that uses advanced Sensa-Light technology! It's ideal for woman of all ages. Get those soft smooth legs you always wanted. Get rid of facial hair without painful plucking, making laser treatment appointments or waxing.
Safe and gentle on the most sensitive skin.
No more painful or smelly hair removal methods.
No more nicks, cuts, bumps or burns.
The remover will activate and remove hair as long as the head is against your skin.
Come with a Microfoil head for short hair, hair stubble or touch-ups.
Use anywhere there's unwanted hair - safe on all skin types and colors.
Move power switch to "ON" position.
Power LED flashes when "ON" to let you know product is ready.
When the Sensa-Light head comes in contact with your skin, the unit will activate and remove hair as long as the head is against your skin.
The unit will go to "sleep" automatically deactivate, 6 seconds after you remove the Sensa-Light head from your skin.
The unit will reactivate when reapplied to skin.
Upon completing the hair removal, simply move the power switch to "OFF" to shut down the unit.


Steady progress is being made on the Vivarail project to convert retired D-Stock London Underground trains into D-train Diesel Electric Multiple Units (DEMUs), with 20 vehicles already on-site at Long Marston by the end of February.
The two driving motor cars that will form part of the prototype train have been stripped and checked thoroughly for corrosion or unseen defects.
"They are fine. All the old electrical equipment has been removed from under the floor so we are almost ready to start building them back up," Vivarail Chairman Adrian Shooter told RAIL.
For more on this story, read RAIL 770, published March 18.
For a feature looking at the D-train project, read RAIL 771, published April 1.
I live in Greater Manchester, we do not want London's 40 year old cast offs in the north of England, they will be the new pacers & just as bad. They are London's trains, let Londoner's have them. London spends in a day on infrastructure, what Manchester region gets in a year. This is grossly unfair. London is getting new trains everywhere, underground, overground, Crossrail, Thames link. Rules are produced to "prove" that the north can not have new trains. These rules are made in London, by Londoners, for the benefit of Londoners & the Southeast. The sooner the Northern Powerhouse has control of it's own transport the better.
If the D-Train project succeeds in marrying compact automotive engines to generators (under the floor) and solid-state traction equipment on older EMUs – and even better, straightforwardly providing inter-carriage gangways – it would set an encouraging precedent for resolving the self-powered train shortage whilst electrification projects are unfinished. However my preference is for the majority of new upcoming EMUs to be built as IPEMUs and for selective discontinuous electrification of open sections of line not under low bridges or tunnels. The D78 stock could be used almost immediately to respond to the Southeastern Dartford lines capacity crisis caused by the (necessary) remodelling of the London Bridge area. If 'fromthemurkydepths' Wordpress blog is correct, the routes that serve Woolwich already have 12-car platforms throughout (except for Woolwich Dockyard). The Class 376s used, are 5-car sets. If Woolwich Dockyard station were closed (and provided with a free bus to Charlton station) until 4-car EMUs with selective door opening are acquired, all trains could run in 12-car formations. The 6-car D78s could be adapted to run on third-rail (as with Island Line's 1938 stock) and coupled in pairs to form 12-car trains. The Class 376s could then be cascaded to Southern (via Balham) routes (10-car capable) to replace the remaining Class 455s, which can only run as maximum of 8 cars. The Class 455s could then go to South West Trains, with their own 43x '455/7s' having their Class 508 trailers removed to allow more trains to be formed with 10 cars.


Looking for professional web designers can sometimes be a piece of cake. But how can you be sure that you have the right people for the job? There will be times when a website can be physically appealing but poor in functionality. In fact, some companies who thrive in the industry don't even have a functional webpage!
Creating a lasting impact is one of the best results of having your own dynamic and functional webpage. This is also the same reason why companies hire the best website creators and end up yielding more results and clients than the traditional marketing tactics.
You can be sure that you can browse your site easily on different devices and platforms, both in mobile devices and desktops.
Stop sticking with boring plain text and go with the illustrations and images as well as web presentations. You can even ask them to put videos in the background too.
And as dynamics come into play, so as the consistency of your chosen theme, which is unique only for your company.
And because you're going to be working and worrying less about the website, you can have more time for other more important activities too.
Of course, you can be sure that if you have a reliable web development agency, you can expect your company webpage to load faster.
And with just a few bucks, you can have your own website with all these rewards waiting for you.
Seeking for the right web designers for your company will be easier from here as you consider all these perks. Not only that, but you can get to see your company improve its image, too. When it comes to web design and development, you can trust Black Sheep Creative with their professional and unique way of website creation.
Visit their site today for more information.