text:
Public let down by EU's new consumer chief
1.Public let down by EU's new consumer chief
2.EC forces through "bad decision" on GM industrial potato and ignores health risks
EXTRACTS: The potato was given official approval by the European Food Safety Authority but for the first time the judgment of the scientific body wasn't unanimous. Two EFSA scientists stated that the possibility of a transfer of antibiotic resistant genes to bacteria within the gastro-intestinal-tract cannot be predicted.
Two other conventional potato varieties already on the market have the same characteristics as Amflora... The existence of these non-GM alternatives means that there is no reason for farmers to have to cultivate Amflora for the European starch industry and no need to introduce the risk of spreading antibiotic resistance. (item 1)
The pulp remaining after the starch has been extracted will be allowed fed to animals following a parallel decision also announced by the Commission today. Products produced from livestock fed the GM potato pulp will not be required to be labelled under EU traceability and labelling laws. There is already widespread support for labelling [2] and this is another example of how EC is ignoring public opinion and denying choice. (item 2)
1.EUROPEAN COMMISSION GIVES GREEN LIGHT TO GENETICALLY MODIFIED POTATOES
Public let down by EU's new consumer chief, says Friends of the Earth Europe
FRIENDS OF THE EARTH EUROPE MEDIA STATEMENT
For immediate release: Tuesday March 2 2010
Brussels, March 2 - A decision announced today by Europe's new health and consumer commissioner, John Dalli, to give the go ahead for genetically modified potatoes to be grown in Europe, has been condemned by Friends of the Earth Europe.
The 'Amflora' potato, designed to produce starch for industrial purposes by Germany´s chemical giant BASF, carries a controversial antibiotic resistant gene which it cannot be guaranteed will not enter the food chain.
Heike Moldenhauer, GMO spokesperson for Friends of the Earth Europe said: "This is a bad day for European citizens and the environment. The new Commissioner whose job is to protect consumers has in one of his first decisions ignored public opinion and safety concerns to please the world's biggest chemical company. This decision puts profit before people or the environment and will do little to increase public confidence in the Brussels bureaucracy.
"There are clear health concerns surrounding this GM potato. The antibiotics affected by Amflora are vital tools against illness and despite growing resistance to these life saving drugs, industry has added them to potatoes with no guarantees that they will not get into the food chain. This is nothing less then a crass decision that puts the public at risk."
Heike Moldenhauer continued: "With this decision Commissioner Dalli has not only snubbed European citizens, the vast majority of who reject GMOs, he has snubbed member states as well. The new Commission promised to let national governments decide on whether to grow GM crops on their own territory but at the first possible opportunity they have broken this promise. Dalli has introduced himself as a Commissioner who can't be trusted."
Amflora is highly controversial mainly due to its antibiotic resistant gene. The potato was given official approval by the European Food Safety Authority but for the first time the judgment of the scientific body wasn't unanimous. Two EFSA scientists stated that the possibility of a transfer of antibiotic resistant genes to bacteria within the gastro-intestinal-tract cannot be predicted.
Two other conventional potato varieties already on the market have the same characteristics as Amflora one developed by German plant breeder Europlant, the other by Dutch company Avebe. The existence of these non-GM alternatives means that there is no reason for farmers to have to cultivate Amflora for the European starch industry and no need to introduce the risk of spreading antibiotic resistance.
Heike Moldenhauer, Friends of the Earth Germany/BUND, 0049 (0) 30 275 86
456, mobile: 0049 30 275 86 456, This email address is being protected from spambots. You need JavaScript enabled to view it.
Francesca Gater, communications officer for Friends of the Earth Europe,
+32 2893 1010, +32 485 930515, This email address is being protected from spambots. You need JavaScript enabled to view it.
GM Freeze, 2 March 2010
The announcement by the EC [1] that they have approved BASF's GM starch altered potato for cultivation to produce starch to be used by industry has been described as a "bad and ill informed decision" by GM Freeze.
The pulp remaining after the starch has been extracted will be allowed fed to animals following a parallel decision also announced by the Commission today. Products produced from livestock fed the GM potato pulp will not be required to be labelled under EU traceability and labelling laws. There is already widespread support for labelling [2] and this is another example of how EC is ignoring public opinion and denying choice.
Several non-GM starch altered potatoes are already on the market demonstrating that there is no need for GM varieties. The most recent being the Emsland Group's announcement in September 2009 that it planned to start processing high amylopectin potatoes (starch altered) developed using classical breeding in their production plants in Kyritz and Cloppenburg last autumn [3].
The EC decision in controversial because it is based on advice from The European Food Safety Agency (EFSA) regarding the use of antibiotic resistant marker (ARM) genes [4] which has been challenged by the European Medicines Agency (EMA). GM Freeze is also concerned about the overall testing of feed safety for instance the lack of attention to the presence of novel chemicals arising from genetic engineering events.
The EU policy is to avoid using ARMs for antibiotics which are used in human or veterinary medicine.
The ARM gene in these potatoes confers resistance to kanamycin. Although this is from a group of antibiotic resistant genes approved by the European Food Safety Authority (EFSA) for use as markers in GM crops, the EMA has challenged EFSA's opinion based on the potential importance of this group of antibiotics in medicine [5]. The concern is that the ARMs genes could horizontally transfer to pathogenic bacterium in the guts of humans or animals this worsening the problem of antibiotic resistance in treating a range of infections.
Previously the application to grow the starch altered GM potatoes failed to reach the required qualified majority vote in the EU's Council of Ministers because of the concerns about the ARMs. This led the EC to seek further advice from EFSA and the EMA. EMA told the EC [5]:
"Not withstanding the EFSA opinion, aminoglycosides is a class of antibiotics that has become increasingly important in the prevention and treatment of serious invasive bacterial infections in humans. This is because gram-negative bacteria (and tuberculosis bacteria) are becoming resistant to other classes of antibiotics."
"That situation may change as new chemical entities similar to kanamycin and neomycin could be developed. New chemical entities similar to kanamycin and neomycin could have other properties in relation to, for example, absorption from the gastrointestinal tract and with regard to side-effects. They thus have the potential to become extremely important to treat otherwise multi-resistant gram-negative infections and Tuberculosis."
Potatoes for the production of industrial starch are grown on a quota system in the EU and the UK does not have any quota at the present time.
Controversially, the EC also forced through three consents to import GM maize for use in food and feed which had also failed to reach a qualified majority in the Council of Ministers. These GM maize varieties involved stacked genes (combining genes from two different GMOs in the same plant) and there is disagreement on how the safety of these should be assessed [6].
Commenting Pete Riley of GM freeze said:
"The approval of the GM potatoes is a bad and ill informed decision by the EC and shows that their interpretation of the precautionary principle is very far from what it should be. It flies in the face of sound advice on the risks of the particular anti-biotic resistant marker genes used by BASF. This gene could have been removed long ago but BASF decided not to do so. As a consequence, the gene will be entering the animal feed chain in Europe. If the gene transfers to harmful bacteria take place we will know who to blame. Gaps in the GM labelling regulations mean that EU consumers will not be able to tell if their meat or milk comes from stock fed on GM potato pulp when they make their purchases."
Calls to Pete Riley 0845 217 8992 or 07903 341065
1. See http://europa.eu/rapid/pressReleasesAction.do?reference=IP/10/222&format=HTML&aged=0〈uage=EN&guiLanguage=en
2. A Gkf/NOP poll in 1986 for GM Freeze and Friends of the Earth found 86% of people in the Uk wanted animal products from GM feed animals labelled
3. See Emsland Group Press Release http://web47.freisign.your-host.de/content.php?item=635&action=details&id=28&page=1&&NXTSTPID2=cc541efcd66f3a856496f512ba0a05e3&NXTSTPID2=1ec42f8e250fa4d87af028dcaac64aea
4. ARMs are not required in the commercial crop and are used by genetic engineers to make it easy to identify which plants have been successfully genetically modified during the very early development stages of the GM potatoes.
5. See www.emea.europa.eu/pdfs/human/opiniongen/5693707en.pdf
6. Bundesminiterium Fur Gesundheit Familie und Jugend, 2007. Risk Assessment of "stacked events". See http://www.bmgfj.gv.at/cms/site/attachments/7/7/0/CH0810/CMS1180523433481/cms1200659635294_internetversion_2_07stacked_events.pdf


And as a modern, progressive hamburger company, McOpCo will raise their minimum wage to $16/hr. in 2018. San Francisco is certainly not a "sanctuary city" for owner/operators.
Operators in large cities run by liberal progressives will take a double hit from the policies of a liberal progressive management team in Oak Brook.
As we raise prices Oak Brook also makes out in the deal because their rent and service fees rise.
This goes on. F. O. R. E. V. E. R,!!!!!!!!!!
For McOpCo that was a one time event (at least for now) paying $1 over the current min wage starting this July 1st. If your state raises the min wage say Jan 1st 2016 or next July etc. McOpCo will start at that current min wage not $1 higher that is their current plan.
California Assembly Labor and Employment Committee just voted 5-2 to raise the State minimum wage to $13/hr by Jan 2017. Modern and progressive.
With more than one million people in attendance and watching on TV, the McDonald's of the Greater Bay Area Co-op was proud to be an official sponsor of the 45th Annual San Francisco Pride Parade and Festival on June 27-28. McDonald's had a booth in the festival area and a marching contingent (along with a Duck Boat) in the parade.
There was a great turnout of over 80 McDonald's participants – from owner/operators to staff and restaurant crew, along with their families and friends – all wearing limited edition T-shirts and handing out giveaways to excited parade watchers and festival goers.
Over the course of this two-day celebration, which saw record attendance and is the largest event of its kind, more than 1,000 McDonald's T-shirts were distributed to attendees along with 2,000 branded sunglasses and 4,500 bags of apple slices. Many attendees remarked how proud they were of McDonald's sponsorship and support of the LGBT community and how surprised they were that McDonald's was sampling a healthy snack.
"California Assembly Labor and Employment Committee just voted 5-2 to raise the State minimum wage to $13/hr by Jan 2017. Modern and progressive."
Well, I'm glad someone was happy with the sponsorship because the Corporation and the California legislature are doing to the San Francisco owner/operators what the participants in the Pride Parade do to each other. Modern and progressive.
WHY would a child and family focused restaurant support a Gay Pride Event ?????


text:
local Time = Time

local fl_tUpdate = {name="fl_tUpdate"}
function fl_tUpdate:Update()
	-- print(self.name, Time.deltaTime, Time.unscaledDeltaTime)
end

--主入口函数。从这里开始lua逻辑
function Main()
	print("主入口函数。从这里开始lua逻辑")

	-- UpdateBeat:Add(function()
	-- 	print(Time.deltaTime, Time.unscaledDeltaTime)
	-- end)
	UpdateBeat:Add(fl_tUpdate.Update, fl_tUpdate)

	Test()
end

--场景切换通知
function OnLevelWasLoaded(level)
	Time.timeSinceLevelLoad = 0
end

function Test( ... )
	local Color = UnityEngine.Color
    local GameObject = UnityEngine.GameObject
    local ParticleSystem = UnityEngine.ParticleSystem

    function OnComplete()
        print('OnComplete CallBack')
    end

    print(typeof)
    print(typeof(ParticleSystem))

    local go = GameObject('go')
    go:AddComponent(typeof(ParticleSystem))
    local node = go.transform
    node.position = Vector3.one
    print('gameObject is: '..tostring(go))
    --go.transform:DOPath({Vector3.zero, Vector3.one * 10}, 1, DG.Tweening.PathType.Linear, DG.Tweening.PathMode.Full3D, 10, nil)
    --go.transform:DORotate(Vector3(0,0,360), 2, DG.Tweening.RotateMode.FastBeyond360):OnComplete(OnComplete)
    --GameObject.Destroy(go, 20)
    print('delay destroy gameobject is: '..go.name)
end

redpajama_set_name: RedPajamaGithub


At Rio, we believe in jewelers. We remain committed to supporting anyone who has ever picked up a piece of metal and made something wearable. We exist to support the bench jeweler, the jewelry designer, the retail jeweler and the jewelry manufacturer. We stand for makers who create with their hands and their hearts and who are courageous enough to make jewelry their livelihood.
Jeff started his business in 1984 seeded by a pure love for silver. Since then, he has garnered an international reputation for quality craftsmanship in silversmithing. Jeff has repaired, reconstructed, and hand polished everything from historically important tankards, tureens, and tea services to precious heirloom flatware. Jeff is a master at his craft and has graciously shared his story and knowledge.
Every jeweler, metalsmith, maker and artist has a story to tell.
Rio is honored to share them.
It Starts with the Spark of an Idea.
Hard work is easy when your work is your play.


text:
Cllr Geoff Bagnall
Geoff Bagnall is an Uttlesford District and Takeley Parish councillor. Geoff is committed to creating greater local community involvement in shaping the future of Uttlesford. At UDC he chairs the strategic Local Plan working group.
"I believe we need local representation at Uttlesford rather than the mainstream political parties if we are to secure the proper future for our communities. There is great support for local decisions on the doorstep." Geoff Bagnall
Uttlesford District Takeley Ward (Councillor)
Takeley Parish (Councillor)
Councillor at Takeley Parish Council, Councillor at Uttlesford District Council, Governance, Audit and Performance Committee (UDC), Investment Board (UDC), Local Plan Working Group (UDC), Planning Committee (UDC)
Takeley Parish Council
Geoff Bagnall moved to Takeley in 2009 and has been a long-serving parish councillor and latterly an Uttlesford District councillor.
He says "I am absolutely convinced that we need strong representation at a local level to ensure we are able to build the community in the right way. I believe we need it to be LOCAL representation at Uttlesford District Council rather than the mainstream political parties if we are to secure the proper future for our communities."
Geoff has spent his career in the banking and finance sector. During that time he has held various roles, most of which have required him to look at making improvements to processes and implement organisational change. He says "To help me achieve success in these roles, one of the key capabilities has been the ability to communicate and drive consensus across teams, as that's the way you get things done. To do that I have built up a large network of relationships, which you need to work through complex problems with a number of stakeholders."
These core skills of communication and network building will stand Geoff in good stead to help resolve the many issues at Uttlesford District Council and Essex County Council.
Locally he is particularly keen to ensure that planning decisions are taken for the benefit of the district as a whole, and that they include all infrastructure provisioning at the same time, for example, schools, medical centres, roads and utilities. He said he remembers once asking a now former Conservative District Councillor about the lack of school places when planning decisions were made at Uttlesford District Council. Geoff said "The Councillor replied that schools are the responsibility of Essex not Uttlesford District Council". Geoff says he disagrees and believes that responsibly cannot be shirked. He believes that things like school places should be "very much part of planning decision making and that deciding in isolation is to the detriment of existing communities."

redpajama_set_name: RedPajamaCommonCrawl


text:
package main

import (
	"context"
	"fmt"
	"os"
	"strconv"
	"time"

	"github.com/rs/zerolog/log"
	"github.com/wzhliang/xing"
	"github.com/wzhliang/xing/examples/hello"
)

func _assert(err error) {
	if err != nil {
		log.Error().Err(err).Msg("Client")
	}
}

func _assertReturn(req, resp string) {
	if req != resp {
		log.Error().Str("req", req).Str("resp", resp).Msg("Client")
	}
}

func main() {
	url := "amqp://guest:guest@localhost:5672/"
	mq := os.Getenv("RABBITMQ")
	if mq == "" {
		mq = url
	}
	producer, err := xing.NewClient("game.controller", mq,
		xing.SetIdentifier(&xing.RandomIdentifier{}),
		xing.SetSerializer(&xing.JSONSerializer{}),
	)
	if err != nil {
		log.Error().Msg("failed to create new client")
	}
	target := fmt.Sprintf("game.agent.%s", "xyz")
	cli := hello.NewGreeterClient(target, producer)

	n, err := strconv.Atoi(os.Args[1])
	if err != nil {
		log.Error().Str("#", os.Args[2]).Msg("Wrong argument")
	}

	for i := 0; i < n; i++ {
		ctx, cancel := context.WithTimeout(context.Background(), 5000*time.Millisecond)
		ret, err := cli.Hello(ctx, &hello.HelloRequest{
			Name: "鸠摩智",
		})
		_assert(err)
		cancel()
		if err == nil {
			_assertReturn("yo", ret.Greeting)
		}
		ctx, cancel = context.WithTimeout(context.Background(), 5000*time.Millisecond)
		_, err = cli.Nihao(ctx, &hello.HelloRequest{
			Name: "王语嫣",
		})
		_assert(err)
		cancel()

		time.Sleep(1 * time.Second)
	}
	producer.Close()
}


text:
Q: Entity Framework Migrations not Detecting Model Change I'm trying to start using EF Migrations with an existing database.
The startup project is an MVC 3 project and the domain objects are in a separate project of the same solution.
Here are the steps I took:

Add-Migration InitialMigration -IgnoreChanges -Verbose

Created Configuration.cs and ###_InitialMigration.cs.  Had to edit Configuration.cs to add the name of my context object as it is in a separate project.

Update-Database

Added dbo.__MigrationHistory to my database

Added a new property to an existing class

private ulong? myProp;
[DataMember]
public ulong? MyProp
{
    get { return myProp; }
    set
    {
        if (myProp != value)
        {
            myProp = value;
            RaisePropertyChanged(() => this.MyProp);
        }
    }
}

Successfully compiled the solution.

Add-Migration MyNewMigration

Created ###_MyNewMigration.cs, with no migrations in it:
public partial class MyNewMigration : DbMigration
{
    public override void Up()
    {
    }

    public override void Down()
    {
    }
}

Not looking good... where are the migrations?

Update-Database -Verbose -Script

No mention of the new property in the upgrade script

INSERT INTO [__MigrationHistory] ([MigrationId], [CreatedOn], [Model], [ProductVersion])
  VALUES ('201206122137444_MyNewMigration', '2012-06-12T22:07:49.170Z', 0x1F8B080YadaYada, '4.3.1')

How can I get EF Migrations to pick up the model change?

A: It turns out that EF Migrations does not like the ulong? data type I used.  That property was ignored without any warning.
Changing the type to long? allowed the migration to succeed.

redpajama_set_name: RedPajamaStackExchange


Princeton, NJ-based ALK Technologies Inc. has announced a partnership with Beachwood, OH-based TMW Systems in which its ALK/FleetSuite Tolls module has been fully interfaced with TMW's TMWSuite and TL2000 enterprise-management software for truck fleets.
ALK noted that the ALK/FleetSuite Tolls module is maintained on a real-time basis and customers receive frequent updates. The software incorporates data from nearly 1,000 toll plazas in over 31 states, 112 toll authorities and 232 toll roads, bridges and tunnels. The toll-cost calculation tool is seamlessly connected to ALK's PC*Miler routing, mileage and mapping software.
For more information on ALK/FleetSuite Tolls, go to www.alk.com/tolls.


text:
Back Publications
Top of the page Publications A Dysfunctional Plant Variety Protection System
A Dysfunctional Plant Variety Protection System
Ten Years of UPOV Implementation in Francophone Africa
Report in English
Rapport en français
Report Public Eye, 2019
More than 10 years ago the new plant variety protections system – modelled on UPOV 1991 – entered into force in West Africa. This Working Paper studies how the system has been operationalized, the impact and relevance of UPOV 1991 for the region and, in particular, whether the promises of UPOV 1991 were ever realized for the 17 countries in the OAPI region.
The results of the investigation are staggering. It points to a dysfunctional PVP system that does not fit the socio-economic and agricultural conditions prevailing in the region. While benefits have hardly been realized, states are burdened with the costs of implementation. This shows, once again, that the top-down approach of exporting legal frameworks intended for developed countries to developing countries which have different circumstances, is a flawed colonial strategy, with significant costs and missed opportunities for people in West Africa.
Owning Seeds, Accessing Food: A human rights impact assessment of UPOV 1991


Welcome to the Gardner restaurant dining guide! Here you'll find the best Gardner restaurants, as well as the newest and most recently reviewed Gardner-area restaurants.
Dine out using the Gardner restaurant reservations list or order in from Gardner food delivery restaurants.
A Chinese food lover from Manchester, NH tried Yen Yen Chinese Restaurant, liked it, and rated it . They liked the food, liked the service, and liked the ambiance.
A Cafe food lover from Quincy, MA tried Cafe Edesia.
A diner from Simsbury, CT tried Blue Moon Diner.
A Cafe food lover from US tried Cafe Edesia, liked it, and rated it . They liked the food, liked the service, and liked the ambiance.
A Pizza chowhound from Rutland, MA tried Papa Gino's.
A dining patron from Dedham, MA tried Blue Moon Diner.
A Chinese food lover from Chelmsford, MA tried Yen Yen Chinese Restaurant, liked it, and rated it . They liked the food, liked the service, and liked the ambiance.
A Diner food lover from Worcester, MA tried Blue Moon Diner.
A Cafe food lover from Hingham, MA tried Cafe Edesia, liked it, and rated it . They liked the food, liked the service, and liked the ambiance.
A dining patron from US tried D'Angelo Sandwich Shops.
A diner from Worcester, MA tried Kenny's House.
A diner from West Roxbury, MA tried Yen Yen Chinese Restaurant.
A diner from Andover, MA tried Cafe Edesia, liked it, and rated it . They liked the food, liked the service, and liked the ambiance.
The service and food was great I definitely recommend it .
A Chinese food lover from Hanover, MA tried Kenny's House.
A Cafe food lover from US tried Cafe Edesia.
A diner from Chelmsford, MA tried Domino's Pizza.
A Chinese chowhound from New Britain, CT tried Kenny's House.
A Chinese chowhound from Fitchburg, MA tried Kenny's House.
A Cafe food lover from Leominster, MA tried Cafe Edesia, liked it, and rated it . They liked the food, didn't like the service, and liked the ambiance.
Do you blog about dining in Gardner? Share your experiences with Menuism users!
People found this by searching for: Gardner Ma Restaurants, Restaurants Near Gardner Ma, Kenny's Chinese Gardner, Wasabi Buffet Gardner Ma, Sawa Gardner Ma, Restaurant In Gardner Ma, and Restaurants In Gardner Ma.


text:
package qj.tool.sql;

import java.lang.reflect.Type;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Types;
import java.util.Arrays;
import java.util.Collection;
import java.util.LinkedList;
import java.util.List;
import java.util.concurrent.atomic.AtomicReference;
import java.util.regex.Matcher;

import qj.tool.sql.test.Aa;
import qj.util.Cols;
import qj.util.IOUtil;
import qj.util.ReflectUtil;
import qj.util.RegexUtil;
import qj.util.funct.F1;
import qj.util.funct.F2;
import qj.util.funct.Fs;
import qj.util.funct.P1;
import qj.util.funct.P3;

@SuppressWarnings("UnusedDeclaration")
public class Template<M> {
	Class<M> clazz;
	List<Field1<M>> idFields;
	List<Field1<M>> dataFields;
	String tableName;
	boolean autoIncrement = true;

	Template(Class<M> clazz) {
		this.clazz = clazz;
	}

	static abstract class Field1<M> {
		F2<ResultSet,Integer,Object> rsGet = null;
		P3<PreparedStatement, Integer, Object> psSetter = null;
		String sqlName = null;
		Type type;
		abstract void setValue(Object val, M m);
		abstract Object getValue(M m);
	}

	public static <M> Builder<M> builder(Class<M> clazz) {
		return new Builder<>(clazz);
	}

	public M insert(M m, Connection conn) {

		boolean hasId = getId(m) != null;
		List<Field1<M>> fields = hasId ? allFields() : dataFields;

		PreparedStatement ps = null;
		ResultSet rs = null;
		try {
			String sql = "INSERT INTO `" + tableName + "`(" + fieldNames(fields) + ") VALUES(" + fieldsPH(fields) + ")";
//			System.out.println(sql);
			ps = conn.prepareStatement(sql, Cols.isEmpty(idFields) ? Statement.NO_GENERATED_KEYS : Statement.RETURN_GENERATED_KEYS); // new String[] {"id"}
			psSet1(fields, m, ps);
			int result = ps.executeUpdate();
			if (result != 1) {
				throw new RuntimeException("Failed to insert record into " + tableName + " table");
			}

			if (!hasId && Cols.isNotEmpty(idFields)) {
				rs = ps.getGeneratedKeys();
				if (rs.next()){
					setId(m, rs.getLong(1));
				}
			}

			return m;

		} catch (SQLException e) {
			throw new RuntimeException(e);
		} finally {
			IOUtil.close(rs);
			IOUtil.close(ps);
		}
	}

	public void insert(Collection<M> col, Connection conn) {
		if (Cols.isEmpty(col)) {
			return;
		}

		List<Field1<M>> fields = allFields();

		PreparedStatement ps = null;
		try {
			String sql = "INSERT INTO `" + tableName + "`(" + fieldNames(fields) + ") VALUES(" + fieldsPH(fields) + ")";
//			System.out.println(sql);
			ps = conn.prepareStatement(sql, Cols.isEmpty(idFields) ? Statement.NO_GENERATED_KEYS : Statement.RETURN_GENERATED_KEYS); // new String[] {"id"}

			for (M m : col) {
				psSet1(fields, m, ps);
				ps.addBatch();
			}
			ps.executeBatch();
		} catch (SQLException e) {
			throw new RuntimeException(e);
		} finally {
			IOUtil.close(ps);
		}
//		PreparedStatement ps = conn.prepareStatement("");
//		ps.execute

	}

	private void setId(M m, long id) {
		Cols.getSingle(idFields).setValue(id, m);
	}
	public Object getId(M m) {
		Field1<M> idField = Cols.getSingle(idFields);
		return idField != null ? idField.getValue(m) : null;
	}

	private void psSet1(List<Field1<M>> fields, M m, PreparedStatement ps) throws SQLException {
		int index = 1;
		for (Field1 field : fields) {
			Object val = field.getValue(m);

			if (val == null) {
				ps.setNull(index++, Types.INTEGER);
			} else {
				P3<PreparedStatement, Integer, Object> setter = field.psSetter;
				setter.e(ps, index++, val);
			}
		}
	}

	private String fieldsPH(List<Field1<M>> fields) {
		return Cols.join(Cols.createList(fields.size(), () -> "?"), ",");
	}

	private String fieldNames(List<Field1<M>> fields) {
		return Cols.join(Cols.yield(fields, (f) -> "`" + f.sqlName + "`"), ",");
	}

	public int delete(Connection conn, String cond, Object... params) {
		PreparedStatement ps = null;
		try {
			ps = conn.prepareStatement("DELETE FROM `" + tableName + "` " + (cond != null ? cond : ""));
			SQLUtil.psSet1(params, ps);

			return ps.executeUpdate();

		} catch (SQLException e) {
			throw new RuntimeException(e);
		} finally {
			IOUtil.close(ps);
		}
	}

	/**
	 * SET state=? WHERE id=?
	 */
	public int update(Connection conn, String query, Object... params) {
		PreparedStatement ps = null;
		try {
			ps = conn.prepareStatement("UPDATE `" + tableName + "` " + query);
			SQLUtil.psSet1(params, ps);

			return ps.executeUpdate();

		} catch (SQLException e) {
			throw new RuntimeException(e);
		} finally {
			IOUtil.close(ps);
		}
	}

	public int update(M m, Connection conn, String cond, Object... params) {
		return update(m, allFields(), conn, cond, params);
	}

	public int update(M m, List<Field1<M>> fields, Connection conn, String cond, Object... params) {
		PreparedStatement ps = null;
		try {
			ps = conn.prepareStatement("UPDATE `" + tableName + "` SET " + psSetUpdate(fields) + " " + cond);
			psSet1(fields, m, ps);
			SQLUtil.psSet(params, ps, fields.size() + 1);

			return ps.executeUpdate();

		} catch (SQLException e) {
			throw new RuntimeException(e);
		} finally {
			IOUtil.close(ps);
		}
	}

	private String psSetUpdate(List<Field1<M>> fields) {
		return Cols.join(Cols.yield(fields, (f) -> "`" + f.sqlName + "`=?"), ",");
	}

	public M selectById(Object id, Connection conn) {
		if (id == null) {
			return null;
		}
		return select(conn, "WHERE `" + Cols.getSingle(idFields).sqlName + "`=?", id);
	}

	public M select(Connection conn, String query, Object... params) {
		Query<M> parseQuery = parseSelectQuery(query);

		AtomicReference<M> ret = new AtomicReference<>();

		F1<M, Boolean> f1 = Fs.f1(Fs.setter(ret), true);

		String cond = (parseQuery.cond != null ? parseQuery.cond : "") + " LIMIT 1";

		each(f1, conn, parseQuery.fields, cond, params);
		return ret.get();
	}

	public List<M> selectAll(Connection conn) {
		List<Field1<M>> fields = allFields();
		String cond = "";
		return selectList(conn, fields, cond, null);
	}

	private List<M> selectList(Connection conn, List<Field1<M>> fields,
	                           String cond, Object[] params) {
		LinkedList<M> list = new LinkedList<>();

		each(Fs.store(list), conn, fields, cond, params);

		return list;
	}

	private void each(P1<M> p1, Connection conn, List<Field1<M>> fields,
			String cond, Object[] params) {
		each(Fs.f1(p1, false), conn, fields, cond, params);
	}

	private void each(F1<M,Boolean> f1, Connection conn, List<Field1<M>> fields,
			String cond, Object[] params) {
		PreparedStatement ps = null;
		ResultSet rs = null;
		String sql = "SELECT " + fieldNames(fields) + " FROM `" + tableName + "`" + (cond == null ? "" : " " + cond);
		try {
			ps = conn.prepareStatement(sql);
			SQLUtil.psSet1(params, ps);
			rs = ps.executeQuery();

			while (rs.next()) {
				M m = ReflectUtil.newInstance(clazz);
				rsSet(fields, m, rs);
				if (f1.e(m)) {
					break;
				}
			}

		} catch (SQLException e) {
			throw new RuntimeException(e + ", sql=" + sql, e);
		} finally {
			IOUtil.close(rs);
			IOUtil.close(ps);
		}
	}

	private void rsSet(List<Field1<M>> fields, M m, ResultSet rs) {
		int index = 1;
		for (Field1 field : fields) {
			field.setValue(field.rsGet.e(rs, index++), m);
		}
	}

	private List<Field1<M>> allFields() {
		LinkedList<Field1<M>> ret = new LinkedList<>();
		ret.addAll(idFields);
		ret.addAll(dataFields);
		return ret;
	}

	public List<M> selectList(Connection conn, String query, Object... params) {
		Query<M> parseQuery = parseSelectQuery(query);

		return selectList(conn, parseQuery.fields, parseQuery.cond, params);
	}

	private Query<M> parseSelectQuery(String query) {
		if (query == null) {
			return new Query<>(allFields(), null);
		}
		Matcher matcher = RegexUtil.matcher("^(?i)(?:SELECT (.+?) *)?(?:FROM .+? *)?((?:WHERE .+)?(?:ORDER BY .+)?)$", query);
		if (!matcher.matches()) {
			throw new RuntimeException("Can not parse this query: " + query);
		}

		return new Query<>(parseFields(matcher.group(1)), matcher.group(2));
	}

	public static void main(String[] args) {
		new Template<>(Aa.class).parseSelectQuery("SELECT receiver_name, receiver_address, receiver_phone WHERE order_by=? AND deliver_time > ? ORDER BY deliver_time DESC");
	}

	private List<Field1<M>> parseFields(String fields) {
		if (fields == null) {
			return allFields();
		}
		LinkedList<Field1<M>> ret = new LinkedList<>();
		for (String sqlName : fields.split("\\s*,\\s*")) {
			ret.add(getField(sqlName));
		}
		return ret;
	}

	private Field1<M> getField(String sqlName) {
		for (Field1<M> field1 : idFields) {
			if (field1.sqlName.equals(sqlName)) {
				return field1;
			}
		}
		for (Field1<M> field1 : dataFields) {
			if (field1.sqlName.equals(sqlName)) {
				return field1;
			}
		}
		throw new RuntimeException("Can not find this field: " + sqlName);
	}

	static class Query<M> {
		List<Field1<M>> fields;
		String cond;

		public Query(List<Field1<M>> fields, String cond) {
			this.fields = fields;
			this.cond = cond;
		}

	}

	public boolean exists(Connection conn, String cond, Object... params) {
		PreparedStatement ps = null;
		ResultSet rs = null;
		try {
			ps = conn.prepareStatement("SELECT 1 FROM `" + tableName + "` " + cond + " LIMIT 1");
			SQLUtil.psSet1(params, ps);
			rs = ps.executeQuery();

			return rs.next();

		} catch (SQLException e) {
			throw new RuntimeException(e);
		} finally {
			IOUtil.close(rs);
			IOUtil.close(ps);
		}
	}

	public void save(M m, Connection conn) {
		Object id = getId(m);
		if (id != null) {
			int result = update(m, allFields(), conn, "WHERE " + Cols.getSingle(idFields).sqlName + "=?", id);
			if (result != 1) {
				throw new RuntimeException("Failed to update record into " + tableName + " table");
			}

		} else {
			insert(m, conn);
		}
	}

	public void each(P1<M> p1, Connection conn) {
		each(p1, conn, null);
	}

	public void each(P1<M> p1, Connection conn,
			String query, Object... params) {
		Query<M> parseQuery = parseSelectQuery(query);

		each(p1, conn, parseQuery.fields, parseQuery.cond, params);
	}

	public <IDT> F1<IDT, M> selectByIdF(Connection conn) {
		return id -> selectById(id, conn);
	}

	public void update(M m, Connection conn) {
		int result = update(m, allFields(), conn, "WHERE " + Cols.getSingle(idFields).sqlName + "=?", getId(m));
		if (result != 1) {
			throw new RuntimeException("Failed to update record into " + tableName + " table");
		}
	}

	/**
	 *
	 * @param fields SET name, age
	 */
	public void update(M m, String fields, Connection conn) {
		List<Field1<M>> fields1 = Cols.yield(Arrays.asList(fields.replaceFirst("(?i)^SET ","").split(",\\s*")), this::getField);
		int result = update(m, fields1, conn, "WHERE " + Cols.getSingle(idFields).sqlName + "=?", getId(m));
		if (result != 1) {
			throw new RuntimeException("Failed to update record into " + tableName + " table");
		}
	}

	public void delete(M m, Connection conn) {
		delete(conn, "WHERE " + Cols.getSingle(idFields).sqlName + "=?", getId(m));
	}

	public void deleteById(Object id, Connection conn) {
		delete(conn, "WHERE " + Cols.getSingle(idFields).sqlName + "=?", id);
	}

	public void deleteAll(Connection conn) {
		delete(conn, null);
	}

	public String tableName() {
		return tableName;
	}
}


Cricket has always been a beautiful game as its unpredictable till the last ball is bowled. A single ball may change the overall course of the game. However, there are certain things that's predictable and it's more often right. Ben Hilfenhaus, the Australian cricketer was replaced by JP Duminy in the Delhi Daredevils Squad in 2017 as he was injured. The fast bowler from Australia has represented its country in 27 Tests and 25 ODIs. Besides, he took part in 7 T20 Internationals as well. Hilfenhaus plans to get into coaching now that he has taken retirement from cricket. This 32 year old is keen to help the next generation to become best swing bowlers.
Hilfenhaus feels that cricket has given him abundantly and he has gained vast knowledge through the years. Now it's payback time and hence the fast bowler likes to share knowledge and pass it on to the next set of younger players who are enthusiastic to learn and play the game. As per Hilfenhaus, it is the best time to divert his focus in coaching and make an attempt to develop good form of cricket. He is doing his best to prepare himself in the coaching role. He also has intentions to continue to take part in Twenty20 cricket and play for Tasmania next season in the One Day Domestic game.
Quite a few of the Kangaroo batsmen were seen batting with no pads on the front foot in their recent practice session just before the start of the Bangladesh series and they did so deliberately keeping Bangladesh's bowling in mind.
The thing is that Bangladesh's attack consists of two leftie spinners who are actually not quite the spinners, but the slow bowlers as most of their deliveries don't take spin. However, their strongest point is that they are very good with their direction and it's very rare that they give the batsmen any free space.
Ninety per cent of their deliveries land in the area of the three stumps and finish within the three stumps as well and with such type of bowling, there is always a danger of leg before wicket if you allow the ball to hit your pad before your bat.
Delhi Daredevils have signed Australia and Tasmania star Ben Hilfenhaus, according to reports.
DD signed the fast bowler as a replacement for JP Duminyafter the player withdrew from the 2017 edition of Indian Premier League for personal reasons.
Hilfenhaus was crucial to Melbourne Stars' semi finalfinish in the Big Bash League of 2016/17. He retired from first class cricket last year but the 34-year old would be helping DD in the current IPL season.
Hilfenhaus made a career best last year when he had 5 for 23 in the Super smash in December whilst in action for Canterbury. In the Big Bash League, he was the second highest wicket taker with 12 scalps from nine games. Only Scott Boland bettered his figures.
Meanwhile, Royal Challengers Bangalore (RCB) have signed Vishnu Vinod as replacement for KL Rahul who is not expected to return due to shoulder injury. RCB will clash with DD at Chinnaswamy over the weekend.
Steve Smith was quite critical of the Indian board as well as the Indian players for not keeping the on-field talks private during the recently completed test series.
As per Smith, neither of the two sides was silent. There were words exchanged from both sides and that too in all matches. Then what's the point for one side to go out and allege the other side of being rude?
In the last match of the series, the Aussies were taunting the Indian all-rounder Ravindra Jadeja for the fact that he doesn't remain one of the first choice players of his team in overseas conditions and gets to play only at home.
The viewers, however, couldn't know what was being said by the Aussies as the broadcasters had switched off the stump microphone when the banter was going on.
But, the Indian Cricket board decided that they would take the banter to the public. They found that particular audio from somewhere and posted it on one of their official pages on social media.
David Warner's dismissal in the last Sri Lanka-Australia test was one of the weirdest dismissals one can ever imagine to see in the game.
It happened when Dilruwan Perera, the right arm finger spinner, was bowling to the Southpaw.
Perera was bowling over the wicket and Warner was pretty sure that his delivery had fallen outside the leg stick and even if it was going to hit him on the pads after turning, there was no danger of an LBW. So, he anticipated the turn and tried to pad it away.
But, it was actually a skidder from Perera which had landed on the leather part of the ball and so, rather than turning and going towards the middle and off which it would have done if it had landed on the seam, it held the angle it was bowled from and hit the leg stick.
Warner was batting in his sixties at that time and it was the first occasion on the tour that he had gone past the half century mark. In fact, it was the first 50-plus score he had put in front of his name in the last 9 test innings he had played.


text:
Aaron Schatz
Founder of Football Outsiders
Creator of DVOA and DYAR
Follow Email Archive
49ers, Bills Easily Pace Weighted DVOA Ratings
January 16, 6:00 am ET
49ers TE George Kittle
NFL Wild Card - After wild-card weekend, the San Francisco 49ers maintain their No. 1 spot in our weighted DVOA ratings (the hottest team right now) while the Buffalo Bills maintain their No. 1 spot in our total DVOA ratings (for the full season). Both teams went up after the wild-card games, and both San Francisco and Buffalo now have weighted DVOA over 40%. That's probably not a surprise when it comes to San Francisco, but it's more of a surprise when it comes to Buffalo.
The 49ers have won 11 games in a row and have positive DVOA in each one of those wins. In eight of those 11 wins, San Francisco had DVOA over 45%, including this week in the wild-card win over Seattle. Despite starting a seventh-round rookie quarterback, the 49ers are now No. 2 in weighted offense behind Kansas City. Surprisingly, they have dropped to fifth in weighted defense—it was not a great defensive performance against Seattle, as the Seahawks had a 48% success rate—but the 49ers are less than three percentage points behind No. 1 New England. The 49ers are even in the top 10 for weighted special teams. Because they are No. 1 in weighted DVOA with a sizeable gap between them and the rest of the NFC, the 49ers are now our Super Bowl favorites.
The Bills spent a lot of Sunday afternoon tripping over their own feet but that game with Miami featured a lot of non-predictive randomness. Despite a close victory, the Bills had a single-game DVOA of 59.4% and a Post-Game Win Expectancy of 98%. The Bills outgained the Dolphins 5.9 yards per play to 3.3 yards per play and ran more plays. Each quarterback threw two interceptions, but note that the two Miami interception returns gained 78 yards while the two Buffalo interception returns gained 10 yards. There is a lot of randomness to interception returns, and they aren't really a great indicator of how good an offense is going to play in the future. The Bills also fumbled four times and did recover three of those fumbles themselves, which is a little bit of luck, but the one fumble they lost was a touchdown for the Dolphins, which is definitely not good luck. A lot of the NFL commentariat came away from Sunday's game with the belief that the Bills are in real trouble, when DVOA thinks that the underlying play-by-play details show a team that outplayed the Dolphins in the way we expected when we found out Miami would be starting a third-string quarterback. The Cincinnati Bengals are a very good team, now fourth in weighted DVOA. They have a real chance to win next week but our numbers say that Buffalo is still the best team in the AFC.
If weighted DVOA is to believed, our Big Six from most of this season is now more of a Big Five. There's a good gap between Philadelphia at No. 5 and Dallas, the next playoff team, at No. 7. The other three playoff teams are much lower in weighted DVOA. The Jaguars drop to No. 14 while the Giants move up a spot to No. 17. Tampa Bay is all the way down at No. 26—much lower than their No. 18 rank for the entire season—but of course they can change that a bit with a nice healthy win over the Cowboys tonight.
As always, the following rules apply for postseason DVOA ratings:
All 32 teams are ranked, whether they made the playoffs or not.
Teams are ranked in order of weighted DVOA, not total season DVOA. Since weighted DVOA is meant to lower the strength of older games, these ratings do not include Weeks 1-4, and Weeks 5-12 are somewhat discounted.
The ratings listed do not include the adjustments used in the ratings for our playoff odds report. Right now, Philadelphia is adjusted to account for the two Gardner Minshew games and Tampa Bay is slightly adjusted because it sat starters for part of Week 18.
Only weighted DVOA is listed for offense, defense, and special teams. Total DVOA is also listed, but one game doesn't change much in an 18-game sample so these ratings will be similar to those from the end of the season.
Teams which did not play in the wild-card round are treated as if they had a bye week. (That includes both the 18 non-playoff teams and the two teams with byes.)
To save people some time, we remind everyone to put their angry troll hatred into the official zlionsfan angry troll hatred Mad Libs form:
<team> is clearly ranked <too high/too low> because <reason unrelated to DVOA>. <subjective ranking system> is way better than this. <unrelated team-supporting or -denigrating comment, preferably with poor spelling and/or chat-acceptable spelling>
If you are new to our website, you can read the explanation of how DVOA is figured here. As always, positive numbers represent more points so DEFENSE is better when it is NEGATIVE.
We will also adjust these ratings with an article after Monday Night Football between Dallas and Tampa Bay.
Teams in yellow are still alive in the playoffs. Teams in gray lost this past weekend.
WEI.
DVOA
WEI OFF
WEI DEF
WEI S.T.
1 SF 41.4% 1 14-4 25.4% 2 -11.7% 5 4.3% 7 29.2% 2
2 BUF 40.5% 2 14-3 19.8% 4 -12.8% 4 7.9% 1 36.5% 1
3 KC 29.7% 3 14-3 27.5% 1 -2.9% 14 -0.7% 24 23.0% 4
4 CIN 25.3% 4 13-4 20.0% 3 -5.4% 11 -0.1% 22 18.4% 5
5 PHI 21.9% 5 14-3 11.6% 7 -5.9% 10 4.5% 6 25.3% 3
6 DET 19.8% 6 9-8 17.1% 5 2.0% 20 4.7% 4 7.7% 8
7 DAL 13.4% 7 12-5 3.4% 11 -8.5% 7 1.4% 19 18.0% 6
8 BAL 10.6% 8 10-8 -3.7% 19 -10.4% 6 3.9% 11 17.5% 7
9 GB 9.8% 9 8-9 5.6% 9 -0.9% 17 3.3% 13 3.6% 12
10 CLE 9.2% 10 7-10 2.7% 13 -2.5% 16 4.1% 9 5.2% 10
11 NO 8.2% 11 7-10 -6.9% 23 -13.2% 2 1.9% 17 -1.7% 19
12 PIT 7.0% 14 9-8 2.9% 12 -7.4% 9 -3.3% 29 0.9% 14
13 MIA 5.4% 12 9-9 -1.9% 17 -4.9% 12 2.4% 16 7.1% 9
14 JAX 5.4% 13 10-8 7.1% 8 6.3% 26 4.5% 5 2.2% 13
15 LAC 3.9% 16 10-8 -2.6% 18 -2.5% 15 4.0% 10 -0.6% 17
16 SEA 3.0% 15 9-9 -0.9% 14 3.8% 23 7.8% 2 4.4% 11
17 NYG 2.6% 18 10-7-1 13.1% 6 10.2% 29 -0.3% 23 -3.0% 21
18 WAS 1.4% 17 8-8-1 -10.0% 26 -8.5% 8 2.9% 14 -4.9% 22
19 ATL -3.0% 21 7-10 3.6% 10 10.5% 30 3.8% 12 -2.8% 20
20 NYJ -6.6% 19 7-10 -16.3% 29 -12.9% 3 -3.3% 28 -0.5% 16
21 LAR -6.7% 22 5-12 -4.7% 21 3.6% 22 1.6% 18 -11.0% 24
22 CAR -7.4% 23 7-10 -4.2% 20 7.3% 27 4.1% 8 -13.9% 28
23 NE -8.3% 20 8-9 -10.6% 27 -14.4% 1 -12.1% 32 -0.3% 15
24 LV -10.2% 24 6-11 -1.4% 15 11.3% 31 2.6% 15 -11.5% 26
25 DEN -13.8% 26 5-12 -12.2% 28 -0.4% 18 -2.0% 25 -11.3% 25
26 TB -14.8% 25 8-9 -1.7% 16 5.5% 25 -7.6% 31 -0.7% 18
27 TEN -15.8% 27 7-10 -9.2% 25 3.5% 21 -3.1% 27 -9.4% 23
28 HOU -19.5% 30 3-13-1 -30.2% 31 -3.9% 13 6.8% 3 -26.7% 31
29 MIN -19.6% 28 13-5 -5.0% 22 9.0% 28 -5.7% 30 -13.8% 27
30 ARI -21.8% 29 4-13 -17.8% 30 4.8% 24 0.8% 20 -22.4% 29
31 CHI -31.9% 31 3-14 -8.0% 24 24.0% 32 0.1% 21 -26.6% 30
32 IND -37.3% 32 4-12-1 -34.4% 32 0.4% 19 -2.5% 26 -32.8% 32
Click here for a look at full-season DVOA with offensive and defensive splits.
Next, let's look at all the single-game ratings from wild-card weekend. Other than Buffalo-Miami, the results are probably close to what you are expecting. The Giants had a small but healthy advantage over the Vikings. The Jaguars-Chargers and Bengals-Ravens games were close. What's interesting with these games is how Post-Game Win Expectancy disagrees with DVOA. Post-Game Win Expectancy, for those aren't familiar, is a formula that asks: based on the play-by-play results of this game, how often would we expect each team to win? It accounts for VOA (without opponent adjustments), the total number of plays for each team, and penalties (including declined and offsetting).
As you might imagine, the 98-yard fumble return touchdown for Cincinnati makes the DVOA between the Bengals and Ravens very close. DVOA does not count the fumble return, because fumble recovery is random. It doesn't know the specifics of the fumble, the way that Tyler Huntley tried to go over the pile and had the ball slapped out of his hand, but remember there's a chance that the ball goes the other way into the end zone and either Baltimore recovers for a touchdown or Cincinnati recovers for a touchback and has to start its offense on the 20. That Sam Hubbard touchdown isn't necessarily predictive of how the Baltimore offense is going to play in the future (if it had a future). Despite this touchdown not getting credit in DVOA, Cincinnati came out of Sunday's game with a slightly higher DVOA than Baltimore. However, they only had PGWE of 33% because the Ravens ran more plays (66 to 53) while the Bengals had more penalties (7 to 5).
On the other hand, the Jaguars had a higher PGWE but lower DVOA in Saturday night's big comeback. Jacksonville ends up with 66% PGWE but a negative DVOA (and VOA before opponent adjustments). The main reason for this is again penalties, as the Chargers had nine penalties and the Jaguars only four. This overcame the fact that the Chargers had the better passing DVOA and the Jaguars the better rushing DVOA. Stronger passing usually indicates a win more than stronger rushing.
DVOA (with opponent adjustments)
SEA -21% 8% 34% 6%
SF 58% 52% 1% 8%
LAC -1% -11% -17% -8%
JAX -14% -11% 9% 6%
MIA -4% -45% -18% 23%
BUF 59% 3% -60% -4%
NYG 17% 35% 20% 2%
MIN -13% 13% 28% 2%
BAL 14% -8% -14% 8%
CIN 21% 8% -18% -6%
VOA (no opponent adjustments)
SEA -48% -8% 46% 6%
LAC 0% -2% -10% -8%
JAX -8% -8% 6% 6%
MIA -34% -57% 0% 23%
BAL -1% -11% -2% 8%
CIN 9% 2% -13% -6%
31 comments, Last at 17 Jan 2023, 1:04pm
#1 by Tutenkharnage // Jan 16, 2023 - 2:02pm
I told people yesterday that the Bills would have a 90% win expectancy and that DVOA would love what they did yesterday, but a few people didn't want to listen. Bills-Dolphins was a massacre disguised as a competitive game. Miami got destroyed everywhere except the scoreboard, and before anyone points out that the scoreboard is ultimately what counts, I'll point out that contrary to all the gushing by Nantz and Romo yesterday, the Bills were up two scores in the fourth quarter and won the game.
P.S. I don't like the way the Bills attacked the Dolphins on offense, just to be clear! I don't like their carelessness with the ball. I don't like their tendency to try to "punch a hole in the sun," as Tanier often says. I don't expect them to win the title if they keep playing like this. But they outplayed Miami by a wide margin yesterday, and anyone who thinks otherwise is just blinded by the scoreboard.
#6 by IlluminatusUIUC // Jan 16, 2023 - 2:40pm
In reply to Told you. by Tutenkharnage
Yeah, its a solid take filter to see who tries to blame Buffalo's defense for the final score. Miami's drives:
3 and out
Interception on the 2nd play
6 plays, 10 yards
Buffalo kicks out of bounds - 10 plays, 38 yards, FG
Buffalo throws INT, gives up 50 yard return - 8 plays, 18 yards, FG
Buffalo punts, returned 50 yards, 4 plays, 8 yards, FG
Buffalo throws INT, Miami starts on Buffalo's 18 - 4 plays, 18 yards, TD+2
Hail Mary, Halftime
3 and out (Buffalo then gives up a fumble 6)
Interception on the 3rd play
11 plays, 75 yards, TD
7 plays, turnover on downs
231 net yards and literally three drives that crossed midfield (the others scores started in Buffalo territory)
The blame (in as much as anyone requires blame in a winning effort) should land on Allen. The Dolphins defense consistently dialed up pressure and left our wideouts on islands up the field. Allen "took what the defense gave him" which was 50/50 balls, but they failed at a high enough rate that Buffalo couldn't boat race Miami.
#17 by Displaced Bill… // Jan 16, 2023 - 5:21pm
In reply to Yeah, its a solid take… by IlluminatusUIUC
Really wish I knew what was going on on the inside, I'm curious if the constant deep throws is an Allen thing or a Dorsey thing? That whole game I was thinking, "can I see a drive that takes 7 or 8 plays that consistently net 6+ yards instead of chucking a bombs all day?" I like that they CAN do that but would also like to know that they CAN grind out drives that chew up clock and give their D a rest...
#26 by Mike B. In Va // Jan 17, 2023 - 7:55am
In reply to Really wish I knew what was… by Displaced Bill…
I honestly think that was Miami's defensive game plan - we're going to take away the intermediate part of the field, and hope our pass rush can get there before the long routes develop.
#27 by big10freak // Jan 17, 2023 - 8:57am
In reply to I honestly think that was… by Mike B. In Va
And Miami did sack Allen six times. And might have had several more if Allen were not so tough to bring down.
#29 by JacqueShellacque // Jan 17, 2023 - 12:33pm
I'm torn here: I'm with you in almost all of these points, and yet this might also come across as dissembling with statistical information that can give analytical approaches a bad name. Miami had the ball near midfield, with lots of time, down 3, giving them plenty of opportunity to tie or win. At that specific point, no matter how one might try to quantify such a thing, I don't think the Bills had a 90% chance of winning. There's a big risk of hindsight bias here. It should not have been 'obvious' on that last 4th down play that Miami would almost certainly lose, that defies common sense and seems to be missing the conditional aspect of that moment in the game. The point of analytics should be to remove fallacious thinking, not substitute one set of flaws for another. I don't have a problem with DVOA loving what the Bills did, but I do think there may be an issue with using DVOA and win expectancies to characterize the game as one-sided. There's a risk in being smart, but not wise, and that sort of criticism of analytical methods by coaches and players to me is well founded.
I think this game deserves thorough analysis, because it could very well be the template for what outmatched opponents try to do in the future: court disaster all the time in the hope of creating randomness and conditional probabilities (not expectancies) that are more favorable. For example when Allen lobbed those 2 bombs back to back to Davis late in the game on 2nd then 3rd and 10, what were the probabilities of completing one of those passes? Probably lower, and maybe even much lower, than win probability or expectancy would've given the Bills at that point in the game. So essentially the script was flipped: it was the heavy favorite who were baited or forced into a low-percentage situation.
#2 by AFCNFCBowl // Jan 16, 2023 - 2:05pm
MIN below HOU in Weighted DVOA, lmao.
#5 by Kaepernicus // Jan 16, 2023 - 2:19pm
In reply to MIN below HOU in Weighted… by AFCNFCBowl
What would the line be on that game if they played next Sunday? I honestly think I wouldn't bet on the Vikings beyond MIN -3.
#7 by jmaron // Jan 16, 2023 - 3:03pm
I wish they awarded draft picks based on weighted DVOA ratings.
#10 by Aaron Brooks G… // Jan 16, 2023 - 3:36pm
In reply to I wish they awarded draft… by jmaron
https://en.wikipedia.org/wiki/Observer_effect_(physics)
The problem with desiring that teams were judged based on a different set of outcomes is that teams would play differently if they knew the judging criteria were going to be different.
#3 by Aaron Brooks G… // Jan 16, 2023 - 2:09pm
On the other hand, the Jaguars had a higher PGWE but lower DVOA in Saturday night's big comeback. Jacksonville ends up with 66% PGWE but a negative DVOA (and VOA before opponent adjustments).
That's not really a surprise. DVOA doesn't really penalize you much if your failures occur on 3-and-outs, but you have some successful drives. Because it's per-play, it sees all those failed drives as relatively harmless so long as you score a TD on a 10-play drive to offset those quick failures.
Whereas it hates TOs, and Jacksonville had a ton of those.
Incidentally -- all year the refrain has been 'what's wrong with the PGWE?'. It seems like it's not been working well. Granted, a post-game win expectation system that completely ignores game state is already something of an oddity.
#8 by Aaron Schatz // Jan 16, 2023 - 3:10pm
In reply to On the other hand, the… by Aaron Brooks G…
I disagree. I think it's been working pretty well. For 2020-2021, the correlation of wins to PGWE was .816. For 2022 regular season, the correlation of wins to PGWE was .783. Pretty close. For the most part, games with around 20% PGWE will be won by that team about 20% of the time, and so on.
In reply to I disagree. I think it's… by Aaron Schatz
What's the purpose of it, though? It's a retrodictive metric that appears to be able to predict the past at about 80% accuracy. What are you learning from that?
#16 by Aaron Schatz // Jan 16, 2023 - 4:00pm
In reply to What's the purpose of it,… by Aaron Brooks G…
It helps suggest when the "wrong team won," in other words, can we learn from this game going forward that the losing team actually played better than the score indicated and might be the better team going forward.
#24 by Eggolas // Jan 16, 2023 - 9:01pm
In reply to It helps suggest when the … by Aaron Schatz
Interesting. By "going forward" do you mean during a season or from one season to the immediate next one? I ask for two reasons:
1. Your recent Tweet on Pythagorean results from one season to the next where there were results you found surprising; and
2. The level of player personnel changes between one NFL season and another, except for franchise quarterbacks (which, if a team has a legitimate one, changes everything).
The Baltimore-Cincinatti game was played on a neutral field in Lake Woebegone.
#9 by big10freak // Jan 16, 2023 - 3:28pm
One of my grandsons received odds from one of those sites of 19-1 on the Niners to win the SB after Jimmy went down. I played a small part in that in that we exchanged text messages about Purdy where I gave him my assessment similar to what I did here. Now I did not expect Purdy to go all Fran Tarkenton but expected in a Shanahan scheme plus surrounded by so much talent he could look like a pretty capable player.
He's feeling pretty good. Wonder if I will get a cut if it pays off. Ha, ah
#11 by BlueStarDude // Jan 16, 2023 - 3:37pm
Feel like this article is a day early
#13 by BigRichie // Jan 16, 2023 - 3:43pm
In reply to Feel like this article is a… by BlueStarDude
I assume Aaron's subbing for Mike today (for whatever reason). Otherwise, yeah, it's a day early. And if so, really wish FO were less rigid with how they schedule these things.
In reply to I assume Aaron's subbing for… by BigRichie
We always run DVOA on Mondays during the postseason! Have for years.
In reply to We always run DVOA on… by Aaron Schatz
Which is my exact point. When you have a Monday postseason game you should run it on Tuesdays. Hell with what you've done for years.
I was looking forward to Mike's little notes about each team. (understanding maybe he tossed those into his main article this time, what with the fewer games to cover)
#21 by Rufus R. Jones // Jan 16, 2023 - 7:50pm
In reply to Which is my exact point… by BigRichie
Maybe you could start your own website.
#25 by BlueStarDude // Jan 17, 2023 - 7:50am
But this year's wasn't like any previous year what with the Monday Night Playoff game. You don't run DVOA for the week during the season on Monday, you run in it on Tuesday because that is when all of the week's games have finished and you have all the week's data. Should have done the same here.
#14 by Cheesehead_Canuck // Jan 16, 2023 - 3:51pm
5/5 games have had the team with higher DVOA winning. Interesting, that.
#19 by rh1no // Jan 16, 2023 - 6:03pm
I'm pretty surprised at how much DVOA appreciated Cincinnati's performance, because I did not.
A lot of people have commented that the Bengals were lucky to get away with a win yesterday, and I disagree with that assessment. The Ravens did a great job at limiting Cincinnati's possessions amd taking advantage of Cincinnati's defensive miscues. Tyler Huntley had the game of his life, throwing a couple of ridiculous passes to beat perfect coverage, but the Bengals defense ultimately outmatched the back-up.
The Ravens executed their game plan about as well as they could have hoped but still came up short. The Bengals didn't play well, but still played well enough to win. An 8% offensive DVOA seems too high for the Cincinnati performance, but maybe it's that high because the Bengals had only 7 meaningful possessions in the game and three of them were scoring drives of 10+ plays ...
#20 by big10freak // Jan 16, 2023 - 6:45pm
In reply to I'm pretty surprised at how… by rh1no
Just glad Baltimore is out of the playoffs. Normally a run first offense and rugged D is my sweet spot. But the Ravens are always jawing, poking and prodding trying to elicit a retaliation, and basically being jerks that detracts from the appeal. Then add in a coach who has a constant aura of being aggrieved and I am checked out.
I always credit Baltimore for playing hard. That team leaves it all on the field. If they would just PLAY. But then maybe it's the other that makes them do what they do. Just wish it wasn't so
In reply to Just glad Baltimore is out… by big10freak
Can't blame you for feeling that way. Baltimore was twisting ankles and throwing punches from the first drive ... and getting away with it, as usual. At least they got whistled for taunting.
But I still root for the Ravens when they're not playing the Bengals. The Ravens are usually good enough to take a game or two from the Stealers, who are the dirtiest team in the league. "The enemy of my enemy," and all that.
#28 by BlueStarDude // Jan 17, 2023 - 11:21am
Aaron, just saw that you're putting up a second DVOA commentary today with MNF included. Perfect. I thought you were going to do something like that, but then your reply above made me think you weren't going to.
#30 by DGL // Jan 17, 2023 - 12:38pm
Tampa Bay is all the way down at No. 26—much lower than their No. 18 rank for the entire season—but of course they can change that a bit with a nice healthy win over the Cowboys tonight.
And once we successfully moor at Lakehurst, it's only a short train ride into Manhattan.
#31 by Oncorhynchus // Jan 17, 2023 - 1:04pm
I find it a little unbelievable that the 49ers have such higher odds of reaching the Superbowl than Philadelphia. I'd think they'd be more evenly matched (each around 38%).
Vegas is still the best at predicting games. There is no model more predictive than the moneyline. If there were, then the person with the model could make a lot of money selling it to Vegas. Right now, the line for the Cowboys @ 49ers is -3.5 (or -4) and for the Giants @ Eagles is -7.5. That translates to a win probability of around 64% for the 49ers and around 74% for the Eagles. FO playoff odds for reaching the divisional round are 73.5% for the 49ers and 72% for the Eagles. That's shifting the line towards the 49ers by 3 points over Vegas's expectations and down about a half a point for the Eagles.
Same thing for the Bills too - though I think the model is little better calibrated here. 68% is in line with the -5 point spread. Their inflated SB odds probably has more to do with the JAX @ KC odds being a little too low for KC.
In both cases the #2 seed appear to have the harder path to the SB. The 49ers have to beat the 7th ranked in WEI DVOA at home and then (most likely) the 5th ranked team away (or less likely the 17th ranked team at home). The Bills have to beat the 4th ranked team at home and then (most likely) the 3rd ranked team at a neutral site (with some chance having to beat the 14th ranked team at home).
& Support Aaron Support Football Outsiders' independent media and Aaron Schatz. Use promo code SCHATZ to save 10% on any FO+ membership and give half the cost of your membership to tip Aaron.


text:
#include "camerawin.h"
#include "edcommon/transformtools.h"
#include "ui/uimanager.h"
#include "apparesed.h"

#include <wx/xrc/xmlres.h>

//---------------------------------------------------------------------------

BEGIN_EVENT_TABLE(CameraWindow::Panel, wxPanel)
  EVT_BUTTON (XRCID("northButton"), CameraWindow::Panel::OnNorthButton)
  EVT_BUTTON (XRCID("southButton"), CameraWindow::Panel::OnSouthButton)
  EVT_BUTTON (XRCID("westButton"), CameraWindow::Panel::OnWestButton)
  EVT_BUTTON (XRCID("eastButton"), CameraWindow::Panel::OnEastButton)

  EVT_BUTTON (XRCID("store1Button"), CameraWindow::Panel::OnS1Button)
  EVT_BUTTON (XRCID("recall1Button"), CameraWindow::Panel::OnR1Button)
  EVT_BUTTON (XRCID("store2Button"), CameraWindow::Panel::OnS2Button)
  EVT_BUTTON (XRCID("recall2Button"), CameraWindow::Panel::OnR2Button)
  EVT_BUTTON (XRCID("store3Button"), CameraWindow::Panel::OnS3Button)
  EVT_BUTTON (XRCID("recall3Button"), CameraWindow::Panel::OnR3Button)

  EVT_BUTTON (XRCID("topDownButton"), CameraWindow::Panel::OnTopDownButton)

  EVT_CHECKBOX (XRCID("gravityCheckBox"), CameraWindow::Panel::OnGravitySelected)
END_EVENT_TABLE()

//---------------------------------------------------------------------------

void CameraWindow::OnNorthButton ()
{
  aresed3d->GetCamera ()->CamLookAt (csVector3 (0, 0, 0));
}

void CameraWindow::OnSouthButton ()
{
  aresed3d->GetCamera ()->CamLookAt (csVector3 (0, PI, 0));
}

void CameraWindow::OnWestButton ()
{
  aresed3d->GetCamera ()->CamLookAt (csVector3 (0, -PI/2, 0));
}

void CameraWindow::OnEastButton ()
{
  aresed3d->GetCamera ()->CamLookAt (csVector3 (0, PI/2, 0));
}

void CameraWindow::OnTopDownButton ()
{
  aresed3d->GetCamera ()->CamMoveAndLookAt (csVector3 (0, 200, 0), csVector3 (-PI/2, 0, 0));
}

void CameraWindow::StoreTrans (int idx)
{
  wxButton* recallButton;
  switch (idx)
  {
    case 0: recallButton = XRCCTRL (*panel, "recall1Button", wxButton); break;
    case 1: recallButton = XRCCTRL (*panel, "recall2Button", wxButton); break;
    case 2: recallButton = XRCCTRL (*panel, "recall3Button", wxButton); break;
  }
  recallButton->Enable ();
  locationStored[idx] = true;
  CamLocation loc = aresed3d->GetCamera ()->GetCameraLocation ();
  trans[idx] = loc;
}

void CameraWindow::RecallTrans (int idx)
{
  aresed3d->GetCamera ()->SetCameraLocation (trans[idx]);
}

void CameraWindow::OnS1Button ()
{
  StoreTrans (0);
}

void CameraWindow::OnS2Button ()
{
  StoreTrans (1);
}

void CameraWindow::OnS3Button ()
{
  StoreTrans (2);
}

void CameraWindow::OnR1Button ()
{
  RecallTrans (0);
}

void CameraWindow::OnR2Button ()
{
  RecallTrans (1);
}

void CameraWindow::OnR3Button ()
{
  RecallTrans (2);
}

void CameraWindow::OnTopDownSelButton ()
{
  csBox3 box = TransformTools::GetBoxSelected (aresed3d->GetSelection ());
  float xdim = box.MaxX ()-box.MinX ();
  float zdim = box.MaxZ ()-box.MinZ ();
  csVector3 origin = box.GetCenter () + csVector3 (0, csMax(xdim,zdim), 0);
  aresed3d->GetCamera ()->CamMoveAndLookAt (origin, csVector3 (-PI/2, 0, 0));
}

void CameraWindow::OnLookAtButton ()
{
  if (aresed3d->GetSelection ()->HasSelection ())
  {
    csVector3 center = TransformTools::GetCenterSelected (aresed3d->GetSelection ());
    aresed3d->GetCamera ()->CamLookAtPosition (center);
    aresed3d->GetApp ()->SetFocus3D ();
  }
}

void CameraWindow::MoveToSelection ()
{
  if (aresed3d->GetSelection ()->HasSelection ())
  {
    Camera* cam = aresed3d->GetCamera ();
    csSphere sphere = TransformTools::GetSphereSelected (aresed3d->GetSelection ());
    CamLocation loc = cam->GetCameraLocation ();

    const csVector3& src = loc.pos;
    const csVector3& dst = sphere.GetCenter ();

    cam->CamLookAtPosition (dst);
    cam->CamMove (dst - (dst-src).Unit () * sphere.GetRadius () * 2);
    aresed3d->GetApp ()->SetFocus3D ();
  }
}

void CameraWindow::TogglePan (bool checked)
{
  if (checked)
  {
    if (aresed3d->GetSelection ()->HasSelection ())
    {
      csVector3 center = TransformTools::GetCenterSelected (aresed3d->GetSelection ());
      aresed3d->GetCamera ()->EnablePanning (center);
    }
  }
  else
  {
    aresed3d->GetCamera ()->DisablePanning ();
  }
}

void CameraWindow::OnGravitySelected ()
{
  wxCheckBox* gravityCheck = XRCCTRL (*panel, "gravityCheckBox", wxCheckBox);
  if (gravityCheck->IsChecked ())
    aresed3d->GetCamera ()->EnableGravity ();
  else
    aresed3d->GetCamera ()->DisableGravity ();
}

CameraWindow::CameraWindow (wxWindow* parent, AresEdit3DView* aresed3d)
  : scfImplementationType (this), aresed3d (aresed3d)
{
  panel = new Panel (this);
  parentSizer = parent->GetSizer ();
  parentSizer->Add (panel, 0, wxALL | wxEXPAND);
  wxXmlResource::Get()->LoadPanel (panel, parent, wxT ("CameraPanel"));

  wxButton* recallButton;
  recallButton  = XRCCTRL (*panel, "recall1Button", wxButton);
  recallButton->Disable ();
  recallButton  = XRCCTRL (*panel, "recall2Button", wxButton);
  recallButton->Disable ();
  recallButton  = XRCCTRL (*panel, "recall3Button", wxButton);
  recallButton->Disable ();

  locationStored[0] = false;
  locationStored[1] = false;
  locationStored[2] = false;
  trans[0].pos.Set (0, 0, 0);
  trans[1].pos.Set (0, 0, 0);
  trans[2].pos.Set (0, 0, 0);
}

CameraWindow::~CameraWindow ()
{
}

void CameraWindow::AllocContextHandlers (wxFrame* frame)
{
  UIManager* ui = aresed3d->GetApp ()->GetUIManager ();

  idLookAt = ui->AllocContextMenuID ();
  frame->Connect (idLookAt, wxEVT_COMMAND_MENU_SELECTED,
	wxCommandEventHandler (CameraWindow::Panel::OnLookAtButton), 0, panel);
  idTopDownSel = ui->AllocContextMenuID ();
  frame->Connect (idTopDownSel, wxEVT_COMMAND_MENU_SELECTED,
	wxCommandEventHandler (CameraWindow::Panel::OnTopDownSelButton), 0, panel);
  idMoveTo = ui->AllocContextMenuID ();
  frame->Connect (idMoveTo, wxEVT_COMMAND_MENU_SELECTED,
	wxCommandEventHandler (CameraWindow::Panel::OnMoveToButton), 0, panel);
  idTopDown = ui->AllocContextMenuID ();
  frame->Connect (idTopDown, wxEVT_COMMAND_MENU_SELECTED,
	wxCommandEventHandler (CameraWindow::Panel::OnTopDownButton), 0, panel);
}

void CameraWindow::AddContextMenu (wxMenu* contextMenu, int mouseX, int mouseY)
{
  contextMenu->AppendSeparator ();

  if (aresed3d->GetSelection ()->HasSelection ())
  {
    contextMenu->Append (idLookAt, wxT ("Look at selection"));
    contextMenu->Append (idTopDownSel, wxT ("Top of selection"));
    contextMenu->Append (idMoveTo, wxT ("Move to selection"));
  }
  contextMenu->Append (idTopDown, wxT ("Top of the world"));
}


text:
Gul krumkapsel (Homalothecium lutescens) er et ret almindeligt mos på tør og kalkholdig jordbund. Det videnskabelige navn lutescens betyder 'gullig' og hentyder ligesom det danske navn til mossets farve. Gul krumkapsel er tidligere blevet henført til slægten Camptothecium.

Gul krumkapsel har lyst gule, oprette eller opstigende, uregelmæssigt fjergrenede stængler. Bladene er kraftigt længdefoldede, smalt trekantede og 3-4 mm lange. Bladene har ribbe og er temmelig stive. De minder om bladene hos krybende silkemos. De krumme sporehuse ses sjældent. Derimod formerer mosset sig vegetativt, ligesom mange andre mosser, vha. især ubegrænset længdevækst, hvor de ældre dele af planten dør, og der dannes selvstændige, genetisk ens individer.

Gul krumkapsel er udbredt i Europas tempererede områder mod nord til de sydlige dele af Norge, Sverige og Finland. Desuden er arten rapporteret fra Færøerne, Island, Marokko, Tyrkiet, Iran og Kaukasus.

Noter

Kilder
 Andersen, A.G. et al. Den danske mosflora. I. Bladmosser, 1976, Gyldendal, .
 Christiansen, M. Skytte. Flora i farver 2. Sporeplanter, 1978, Politikens Forlag, .
 Smith, A. J. E. The Moss Flora of Britain and Ireland, 2004, Cambridge University Press, .

Eksterne henvisninger

 www.biopix.dk Billeder

Planter i Danmark
Brachytheciaceae

redpajama_set_name: RedPajamaWikipedia


I love this time of year, don't you? Everything is coming back to life after the cold dormancy of winter. It's like someone turned on the lights with all the vibrant color returning to the earth. One of the places that color returns to is our plates! We once again have all sorts of beautiful and delicious in season produce to choose from again. The tastiest and freshest produce comes from our own backyard, both figuratively and literally.
To read the rest, head on over to Ergobaby's Blog where you can read eight ways for finding produce in your neck of the woods.
2 Responses to "Eight Ways to Find Local Produce"


text:
Employers and Plan Administrators
Hospital Insurance
Stop Loss Insurance
End-to-End Digital Benefits
HRIS Integration
Leave & Absence Management
Leave Planning
Benefits Education & Enrollment
Evidence of Insurability
Support for Spanish Speakers
Plan Administration Guides
Broker Compensation
How to be a difference maker in 2023
Key employee trends and ways HR can respond
"Human-centered." That's the most important word for HR in 2023, according to Kathi Enderes, Senior Vice President of Research for The Josh Bersin Company.
"Your organization needs to be human-centered. Leadership needs to be human-centered," Enderes told us at the recent HR Tech Conference. Several other pioneering thought leaders at the conference also chose "human" as their watchword when we conversed in the Unum podcast booth.
The reason for this emphasis? Today as never before, employees need their employers to focus on them as people, not just workers. A recent LIMRA study showed that employees who feel cared for at work are 7.4 times more likely to stay with their employers.1
We are living through an era of rapidly accelerating change and experiencing a new paradigm in the employee-employer contract. In this new world of work, employers who don't understand this evolution face peril when it comes to attracting and retaining talent — and succeeding competitively.
At the HR Tech conference, thought leaders also called out resilience, flexibility and well-being, as well as a need for better measurement and data intelligence in the HR function. Today, HR has an enormous opportunity to lean into their role and make a profound difference to employees' lives.
A shaky recovery, an escalating need for support
The pandemic tore huge holes in the safety net for employees in the U.S., and many are still trying to mend their finances. According to a new survey conducted by Unum, more employees are financially fragile than employers may realize.
For example, 46% of U.S. workers have less than $1,000 in their checking/savings account at any given time. Almost half (48%) would be able to maintain their finances for only two months if they had to miss work due to an injury, accident or serious medical condition. This is up 8% since 2020 and is most prominent for Millennials and Gen Z workers.
46% of U.S. workers have less than $1,000 in their checking/savings account at any given time — up 6% since 20202
48% of U.S. workers could last 2 months or less if they couldn't work — up 8% since 20203
In a time of high inflation, this fragility means many employees are struggling to keep themselves and their families secure. And they expect their employers to help.
66% of employees say it is the employer's responsibility to make sure they are financially secure and well4
The benefits that make a difference
One major way to help make employees more financially secure is, of course, employer-provided benefits. But the benefits that make a difference change over time. While health insurance may always be primary, one benefit has recently been gaining ground: time off.
According to Unum's recent survey, benefits involving time off and flexibility top the list of nontraditional benefits that are most important to today's employees. This makes perfect sense in the context of financial fragility.
Time away from the workplace — especially paid time off — provides a backstop against catastrophe for families with little savings. If the breadwinners become seriously ill or injured, or if the same happens to a child or aging parent who needs care, paid leave can help keep the family afloat.
The top three nontraditional benefits employees want today
1. Generous paid time-off program — 39%
2. Flexible/remote work options — 32%
3. Paid family leave — 30%
Source: Unum, Survey of 1,000 Full-time U.S. Workers, November 2022. Survey question: Beyond traditional insurance offerings, which of these other benefits are most important you (select up to 3)?
The same is true for benefits that supplement health insurance — like accident and hospitalization insurance — which help pay out-of-pocket expenses like co-pays and deductibles that can derail a family's savings plan.
And some employers are experimenting with benefits like emergency-savings programs and student-debt relief, to help make sure employees have more of a cushion against the unexpected. But fewer than a quarter of surveyed employees said they currently had access to these benefits. And nearly 4 in 10 employees said their benefits package at work was not strong enough.5
Emerging financial protection benefits
Does your employer offer an
emergency-savings option?
Does your employer offer
student-debt relief?
Source: Unum, Survey of 1,000 Full-time U.S. Workers, November 2022.
How HR can lean in
HR can make a difference for all employees — especially those struggling — by taking steps to help them feel cared for and secure. To be a difference maker in 2023, HR can:
Listen to employees. A well-crafted listening program can provide the information companies need to build a workplace that helps keep employees satisfied and productive.
Pay attention to the leave experience. Ensure your leave policies and procedures create an experience that supports employees during stressful times and lets them know they are valued.
Foster a culture of belonging. When employees can bring their authentic selves to work, the result is easier talent attraction, higher rates of retention and greater company success.
Provide benefits that appeal to your whole organization. Don't focus on family leave alone. Provide as many benefits as you can that offer something to every generation and family configuration in your workforce.
Watch the video above to see what HR thought leaders have to say and hear the full interviews here. How will you make a difference this year?
1 LIMRA, Benefits and Employee Attitude Tracker (BEAT) Study, 2022.
2 Unum, Survey of 1,000 Full-time U.S. Workers, November 2022. Survey question: Not including retirement savings (401(K), IRA, etc.), approximately how much money do you maintain in your checking/savings accounts at any given time?
3 Unum, Survey of 1,000 Full-time U.S. Workers, November 2022. Survey question: If you were to have an accident, injury, or experience a serious medical condition which required you to miss work and affect your ability to earn income, approximately how long would you be able to maintain your finances (rent, mortgage, bills, etc.) without additional financial support or assistance?
4 Employee Benefit Research Institute and Greenwald Research, 2022 Workplace Wellness Survey, 2022.
5 Unum, Survey of 1,000 Full-time U.S. Workers, November 2022. Survey question: Do you feel your employer offers a robust benefits package?
Stay up to date with the latest HR trends.
HR Trends on the road: HR Tech 2022
HR Trends interviewed national experts at the HR Technology Conference to hear their insights on the future of work.
How benefits help employers win the future
Experts discuss five mega trends expected to change the industry — and enrollment tips for employers to implement now.
Inflation and supporting employee well-being
Thought leaders share their insights about what's driving inflation and the practical steps organizations can take to support the people that power their business.
© 2023 Unum Group. All rights reserved. NS-200 NS-1391600 (1-23) FOR EMPLOYERS


Scene: Mya Nichole visits the Adult Superstore for some new toys but she's not your regular shopper. She's trying to steal everything in sight but the clerk, Jordan, is hot on her trail. When she eventually gets busted she'll do anything to stop him from calling the cops on her, and i mean ANYTHING!


text:
The Sodens of Coventry and the move to Bath, England
With their continued prosperity and increased social standing a number of the Sodens moved residence to Bath, in Somerset, England where they were engaged in the professions of law, the church and medicine.
Thomas Spooner Soden, Barrister and Legal Author of Bath, England (1837 - 1921)
Briefly stated, Thomas Soden, b. 1734/d.1809 was a weaver, trained later as a surgeon, became a FRCS member. He worked w th army, the 79th Highlanders in Egypt, returned to practice in Coventry, married Elizabeth Burney and moved to Bath where after Elizabeths death, he remarried. The son of this union was Thomas Spooner Soden [Bath plaque] , a noted barrister.
River Soden at Cardigan Bay, Wales
John Smith Sodens son from his second marriage, John James Soden, married Henrietta Williams of Berth-ddu, Lllaniman, Mongomeryshire, Wales. His second son, Athelaston, was bequeathed the estate on condition he change his name to Corbet Soden. And so it was that the River Soden was named to commemorate Athelaston and his father.
The River Soden enters Cardigan Bay between Newport and Aberporth and is marked on the map at Cwm Soden.
Athelaston had two brothers, Arthur who never married and Alfred who had a son named Alexander. When Alfred died his wife took young Alexander and his brother, John, to Vienna.
Alexander and Baron Maximilian von Soden
Young Alexander was sent by his mother to a Jesuit College in Vienna and afterwards began to study horticulture and forestry in Munich, Bavaria when WW1 broke out. He and any other British nationals were interned in the town of Ruhleben, Bavaria. His name came to the attention of the Minister of the Interior, Baron Max on Soden. Ronald relates that the Baron visited the camp and spoke privately with Alexander for more than an hour. They discussed the possibility of family connections but could establish none but remained friends and in close contact after the war with Baron von Soden offering him many kindnesses. Alexnader was entertained many times at the Counts Schloss. Alexander related that after the Counts visit to the camp and conversation with him, as soon as the Count departed, the other prisoners believed him to be a spy and they dutifully beat the living daylights out of him.
[Source: The Sodens of Coventry: A Warwickshire Family over Six Centuries by Ronald Soden, 1992]
Photographs of Plaque in Bath Cathedral and Map of the River Soden at Cwm Soden, National Geographic Magazine]


text:
How Does Huck Finn Conflict With Society
Twain does his best to deal with the conflict between society and the individual. Huck does not want to abide by society's laws and does not want to conform in Mark Twain's, The Adventures of Huckleberry Finn. Huck is forced to be civilized in the beginning, so he leaves society for freedom and lives by his own rules but even that does not make Huck's life easy. Huck has trouble obeying society's rules from the start of the book. The Widow Douglas takes Huck in to try to sivilize him says Huck in the quote, "The Widow Douglas she took me for her son, and allowed she would sivilize me"(Twain 2). At many points early in the book, Miss Watson tries to make Huck more proper. Miss Watson would say, "Don't put your feet up there Huckleberry"(Twain 3). Huck gets sick of hearing Miss Watson and Widow Douglas nag at him so he sets out for freedom from society. But before Huck gets the freedom he has longed for, Pap interferes and makes things difficult for some time. Although Pap takes…show more content…
Huck and Jim's adventures down the Mississippi make the theme of conflict between society and individual more apparent. During their journey Huck mentions, "Nothing could be better"(Twain 115). Huck is very content with Jim and Huck's new life on the river, at least at the start. Being a runaway slave like Jim and Huck helping him, Huck questions at many points in the book whether he should continue to help Jim or turn him in and follow society's rules about slaves. This could possibly be Huck's most important individual conflict throughout the book, considering he questions his choice many times. But Huck also feels like he can not turn Jim in because deep down he knows that Jim's life will be better not being a slave. This shows that Huck battles between himself whether to follow society's rules or his own morlas. When Huck chooses to not turn Jim in as a runaway slave, that makes it evident that he matures or so it
How Does Huck Finn Go Against Society
Along with meeting so-called "civilized" society, Huck's experience with the King and the Duke causes Huck to go against society's narrow-minded beliefs. In an effort for the King and the Duke to get some cash, they sold Nigger Jim to Silas Phelps' farm. After Jim was sold for forty dollars, Huck determines what happened to him. Nonetheless, while saving Jim, Huckleberry begins to meet conflicts about society, freedom, and religion. He starts to contemplate his motives and figure out whether saving Jim is the correct thing to do.
Miss Watson Abolitionism
Mark Twain's true intentions were similar to other abolitionists' books printed during his era like Harriet Beecher Stowe's Uncle Tom's Cabin. These types of books exposed the horrors of slavery, which propelled the Northern United States and European society toward abolitionism. Twain's position was uncommon for his era as he stood against slavery. In Twain's novel, Huck, a child with a difficult upbringing that proved to be unstable because of his abusive father. So, when his father abandoned Huck, an older unmarried woman, Miss Watson, tried to provide a stable home for Huck.
How Does Huck Finn Violates Society
Although the society's standards and his father are repressing, Huck has his own inner voice and would listen to them. That's why when he meets Jim, a running away slave, Huck helps to save Jim and runs away with him. By the society's standard, running away slave is intolerable and has to be caught and punished. However, Huck acts against the society's standard even though he knows it's wrong to help Jim run away. There exists so much racism in the society.
Huckleberry Finn Relationship
In the post-Civil War era, the South attempts to regain power by controlling and oppressing black men and woman. At the time, Mark Twain, a prominent writer, changes his views on slavery once he marries his wife, Olivia. Soon enough, Twain decides to become an abolitionist and begins to write The Adventures of Huckleberry Finn. However, Twain stops writing the novel since he found inspiration to write other novels, and he knew that the context of the novel will not fit in well with society. Due to financial issues and the death of his son and wife, Mark Twain struggles in completing The Adventures of Huckleberry Finn.
Essay About Racism In Huckleberry Finn
Huckleberry Finn Essay "I refuse to accept the view that mankind is so tragically bound to the starless midnight of racism and war that the bright daybreak of peace and brotherhood can never become a reality… I believe that unarmed truth and unconditional love will have the final word." (Martin Luther King, Jr., https://www.brainyquote.com/topics/racism). One of the main focuses in The Adventures of Huckleberry Finn, written by Mark Twain, is racism. The plot of the book is Huck and Jim travelling and going on adventures together as they both are on the run from their own homes and problems.
Freedoms In Mark Twain's Huckleberry Finn
Huck Finn Essay Throughout Mark Twain's novel, Huckleberry Finn, Twain shows several different kinds of freedoms that the two main characters, Jim and Huck, wish to achieve. Huck, a young adolescent, wishes for freedom from many different things. He struggles with conforming to society 's standards, escaping bad parenting, and the freedom to be his own person. His companion, Jim, is a runaway slave who yearns more than anything to be free from the institution of slavery.
Huckleberry Finn Jim Analysis
Throughout Mark Twain's Adventures of Huckleberry Finn, the runaway slave, Jim, serves as a reliable companion to Huckleberry along their entire journey from St. Petersburg to the 'Deep South'. Along the way, there are many incidents where Jim performs necessary tasks for Huckleberry that ensures their survival. Jim plays an important role in serving as a father figure to Huckleberry Finn, and protects him down their journey on the Mississippi river. Jim shields Huckleberry Finn from the death of his father and the elements of nature.
Foreshadowing In Huck Finn
This is the climax of the novel, in which many of the underlying themes are made clear. Huck's morals overcome his fear for punishment, and he is determined to help Jim even if he has to go to hell for it. Furthermore, Jim is a runaway slave, and in the context of the story, helping a runaway slave, albeit one that was sold and has a new owner, would be almost traitorous to Huck's community. Another revelation is that Huck has transcended the racial constructs of the time, recognizing Jim's humanity and considering him someone worth rescuing at great personal risk. In this scene, Huck finally breaks the restraints of society, and indeed, his environment, by ignoring all societal and theological constructs and instead choosing what is right by his conscience.
Character Analysis: Jim's Minstrel Mask
Jim's Minstrel Mask Slaves in the 1800s were seen as dim, ignorant people, underestimated by the white culture. In Huck's story, the reader can see a different side of slaves. A side that has not been shown in history textbooks, or taught frequently by teachers of the sort. Jim in the novel demonstrates the cleverness, the quick-wittedness, and the overall intelligence of an individual in the face of extreme adversity.
More about How Does Huck Finn Conflict With Society


There is help for you and your baby.
How can I take care of myself and my growing baby while I am pregnant?
There is help for you right here in Santa Fe, at La Familia Medical Center. And it is not too late to get it.
Prenatal care and treatment for your dependence are important for both you and your baby while you are pregnant. With special care and support, you will be healthy and your baby will be, too.
Substance-using pregnant women, like all pregnant women, need information and resources to make good decisions about their bodies and lives. With attention and treatment, you can take care of yourself and your growing baby.
La Familia Medical Center offers personalized care, treatment and counseling to pregnant women who have a dependence on heroin or prescription painkillers such as OxyContin. We offer non–judgmental support for you and your growing family. A Care Coordinator will meet with you to address your specific concerns and challenges and help you overcome them. Family Physicians and Nurse Midwives provide comprehensive prenatal, delivery and postnatal care as well as pediatric care for your newborn. Together with your counselor, you will create a plan to help you deal with the physical, emotional and social challenges you are facing. Group sessions with other pregnant moms dealing with the same challenges also offer support. All of these services are offered within La Familia clinics and are completely confidential.
La Familia Medical Center has been successfully working with pregnant women struggling with addiction to make sure both mom and baby are healthy and ready to thrive.
What is Suboxone? And should I use it during my pregnancy?
Suboxone is a drug available from a doctor's office for use in the treatment of opioid dependence.
Taking suboxone under the supervision of a doctor treats the physical symptoms of narcotic and heroin addiction so you can concentrate on working with your counselor on your recovery.
Suboxone has been used for over 10 years in the US and Europe to treat addiction in pregnancy and it has been shown to be safe and effective. Using Suboxone consistently during pregnancy is far safer for your baby than exposure to heroin or narcotics. Treating pregnant women who are struggling with addiction with suboxone can be one very effective tool to help both mothers and babies in a safe and effective way. Whether you should use suboxone during pregnancy is a question for you and your doctor to discuss.
What other services are available at La Familia?
La Familia providers care for you and your whole family. In addition to prenatal, delivery, post-partum and pediatric care, we also offer medical care for adults and children, immunizations, urgent care, preventive services, family planning, a confidential teen clinic and geriatric care. We also provide dental, behavioral health and wellness and health education services.
Who can get care at La Familia?
Anyone can get medical, dental and behavioral health care at La Familia regardless of their ability to pay or insurance status or citizenship status. At La Familia Medical Center we will work with you to find programs and insurance to cover your medical costs. We will never deny care based on your ability to pay. La Familia also has many Spanish-speaking providers and translation service for other languages.


text:
Rainbow Warrior () — судно організації Ґрінпіс затоплене 10 липня 1985 р. в Окленді в Новій Зеландії французькими спеціальними силами. У бомбовому замаху загинув працівник Ґрінпісу фотограф Фернандо Перейра. Таким чином французький уряд «розв'язав» справу незручних екологів, які протестували проти французьких атомних випробувань в Тихому океані.

Безпосередньо перед зануренням корабель брав участь в евакуації населення з острова Ронгелап, на який після вибуху в 1956 р. американської бомби випали радіоактивні опади, радіоактивне випромінювання від яких викликало постійне опромінення мешканців.

Після евакуації острів'ян на острів Мейато, корабель зупинився в порту Вайтемата в найбільшому місті Нової Зеландії — Окленді з метою поповнення запасів. Наступним пунктом подорожі мало бути проникнення команди до французької зони атомних випробувань на атолі Муруроа в південному Тихому океані. Екіпаж Ґрінпісу повинен був зробити все, що в їхніх силах, щоб перешкодити продовженню французької атомної програми.

Новозеландська поліція заарештувала декількох французьких спеціальних агентів: 35-літнього майора Алана Мафарта і 36-річного капітана Домінікуе Прієура. Четвірці інших агентів вдалося втекти на яхті «Овеа», яку було затоплено одразу після їхньої пересадки на французький підводний човен.

Франція спочатку заперечувала, що в акції потоплення судна брали участь її спецслужби. Проте під натиском громадської думки, 22 вересня 1985 р. прем'єр Лоран Фабіус визнав, що саме французькі спецслужби виконали атаку на «Rainbow Warrior», тобто підрив судна виявився актом державного тероризму.

Ґрінпіс ініцюювала в Парижі судовий процес проти уряду Франції, після чого уряд повинен був сплатити цій організації вісім мільйонів доларів. За ці гроші Ґрінпіс купила новий, більший і краще оснащений «Rainbow Warrior», який багато разів плавав на Муруроа.

Див. також
 Затоплення судна «Rainbow Warrior»

Посилання
 Офіційна сторінка Ґрінпіс про «Rainbow Warrior»

 «Rainbow Warrior»

Ґрінпіс
Кораблі та судна
Французький державний тероризм


text:
Q: Which one is good for listening? In order to improve my English listening/understanding ability, I listen several different documentaries at least 5 minutes per day. These documentaries are generally produced by BBC. They are in British English accent as you know. Is this a good selection? I mean that should I listen which one, American or British English accent? Which person (having English or American accent) can easier understand other accent (American or English accent).
By the way, I open any other suggestion about listening because I saw that it is very useful for my language improvement in all dimensions.

A: You could argue about which is the easier variety to learn and which is the more useful, but ultimately that depends on you. Are you more likely to interact with people from Commonwealth countries or the USA?
Documentaries are great, and they'll certainly help to widen your vocabulary. Because they also involve "experts" from around the globe if appropriate, not just British people, I think BBC documentaries are probably good for you to listen to. But documentaries do tend to use a slightly more formal tone than what you'd find in every-day speech, so I would also recommend listening to a few radio stations where you'll find more down-to-earth chat. There are plenty of those to choose from on both sides of the Atlantic.