text:
package main

import (
	"context"
	"io/ioutil"
	"math"
	"os"
	"sort"
	"testing"
	"time"

	"github.com/stretchr/testify/require"

	"github.com/prometheus/prometheus/model/labels"
	"github.com/prometheus/prometheus/storage"
	"github.com/prometheus/prometheus/tsdb"
)

type backfillSample struct {
	Timestamp int64
	Value     float64
	Labels    labels.Labels
}

func sortSamples(samples []backfillSample) {
	sort.Slice(samples, func(x, y int) bool {
		sx, sy := samples[x], samples[y]
		if sx.Timestamp != sy.Timestamp {
			return sx.Timestamp < sy.Timestamp
		}
		return sx.Value < sy.Value
	})
}

func queryAllSeries(t testing.TB, q storage.Querier, expectedMinTime, expectedMaxTime int64) []backfillSample {
	ss := q.Select(false, nil, labels.MustNewMatcher(labels.MatchRegexp, "", ".*"))
	samples := []backfillSample{}
	for ss.Next() {
		series := ss.At()
		it := series.Iterator()
		require.NoError(t, it.Err())
		for it.Next() {
			ts, v := it.At()
			samples = append(samples, backfillSample{Timestamp: ts, Value: v, Labels: series.Labels()})
		}
	}
	return samples
}

func testBlocks(t *testing.T, db *tsdb.DB, expectedMinTime, expectedMaxTime, expectedBlockDuration int64, expectedSamples []backfillSample, expectedNumBlocks int) {
	blocks := db.Blocks()
	require.Equal(t, expectedNumBlocks, len(blocks), "did not create correct number of blocks")

	for i, block := range blocks {
		require.Equal(t, block.MinTime()/expectedBlockDuration, (block.MaxTime()-1)/expectedBlockDuration, "block %d contains data outside of one aligned block duration", i)
	}

	q, err := db.Querier(context.Background(), math.MinInt64, math.MaxInt64)
	require.NoError(t, err)
	defer func() {
		require.NoError(t, q.Close())
	}()

	allSamples := queryAllSeries(t, q, expectedMinTime, expectedMaxTime)
	sortSamples(allSamples)
	sortSamples(expectedSamples)
	require.Equal(t, expectedSamples, allSamples, "did not create correct samples")

	if len(allSamples) > 0 {
		require.Equal(t, expectedMinTime, allSamples[0].Timestamp, "timestamp of first sample is not the expected minimum time")
		require.Equal(t, expectedMaxTime, allSamples[len(allSamples)-1].Timestamp, "timestamp of last sample is not the expected maximum time")
	}
}

func TestBackfill(t *testing.T) {
	tests := []struct {
		ToParse              string
		IsOk                 bool
		Description          string
		MaxSamplesInAppender int
		MaxBlockDuration     time.Duration
		Expected             struct {
			MinTime       int64
			MaxTime       int64
			NumBlocks     int
			BlockDuration int64
			Samples       []backfillSample
		}
	}{
		{
			ToParse:              `# EOF`,
			IsOk:                 true,
			Description:          "Empty file.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       math.MaxInt64,
				MaxTime:       math.MinInt64,
				NumBlocks:     0,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples:       []backfillSample{},
			},
		},
		{
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1021 1565133713.989
http_requests_total{code="400"} 1 1565133713.990
# EOF
`,
			IsOk:                 true,
			Description:          "Multiple samples with different timestamp for different series.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1565133713989,
				MaxTime:       1565133713990,
				NumBlocks:     1,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 1565133713989,
						Value:     1021,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565133713990,
						Value:     1,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
				},
			},
		},
		{
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1021 1565133713.989
http_requests_total{code="200"} 1022 1565392913.989
http_requests_total{code="200"} 1023 1565652113.989
# EOF
`,
			IsOk:                 true,
			Description:          "Multiple samples separated by 3 days.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1565133713989,
				MaxTime:       1565652113989,
				NumBlocks:     3,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 1565133713989,
						Value:     1021,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565392913989,
						Value:     1022,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565652113989,
						Value:     1023,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
				},
			},
		},
		{
			ToParse: `# TYPE go info
go_info{version="go1.15.3"} 1 1565392913.989
# TYPE http_requests_total counter
http_requests_total{code="200"} 1021 1565133713.989
# EOF
`,
			IsOk:                 true,
			Description:          "Unordered samples from multiple series, which end in different blocks.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1565133713989,
				MaxTime:       1565392913989,
				NumBlocks:     2,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 1565133713989,
						Value:     1021,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565392913989,
						Value:     1,
						Labels:    labels.FromStrings("__name__", "go_info", "version", "go1.15.3"),
					},
				},
			},
		},
		{
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1021 1565133713.989
http_requests_total{code="200"} 1 1565133714.989
http_requests_total{code="400"} 2 1565133715.989
# EOF
`,
			IsOk:                 true,
			Description:          "Multiple samples with different timestamp for the same series.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1565133713989,
				MaxTime:       1565133715989,
				NumBlocks:     1,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 1565133713989,
						Value:     1021,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565133714989,
						Value:     1,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565133715989,
						Value:     2,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
				},
			},
		},
		{
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1021 1624463088.000
http_requests_total{code="200"} 1 1627055153.000
http_requests_total{code="400"} 2 1627056153.000
# EOF
`,
			IsOk:                 true,
			Description:          "Long maximum block duration puts all data into one block.",
			MaxSamplesInAppender: 5000,
			MaxBlockDuration:     2048 * time.Hour,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1624463088000,
				MaxTime:       1627056153000,
				NumBlocks:     1,
				BlockDuration: int64(1458 * time.Hour / time.Millisecond),
				Samples: []backfillSample{
					{
						Timestamp: 1624463088000,
						Value:     1021,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1627055153000,
						Value:     1,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1627056153000,
						Value:     2,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
				},
			},
		},
		{
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1 1624463088.000
http_requests_total{code="200"} 2 1629503088.000
http_requests_total{code="200"} 3 1629863088.000
# EOF
`,
			IsOk:                 true,
			Description:          "Long maximum block duration puts all data into two blocks.",
			MaxSamplesInAppender: 5000,
			MaxBlockDuration:     2048 * time.Hour,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1624463088000,
				MaxTime:       1629863088000,
				NumBlocks:     2,
				BlockDuration: int64(1458 * time.Hour / time.Millisecond),
				Samples: []backfillSample{
					{
						Timestamp: 1624463088000,
						Value:     1,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1629503088000,
						Value:     2,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1629863088000,
						Value:     3,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
				},
			},
		},
		{
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1 1624463088.000
http_requests_total{code="200"} 2 1765943088.000
http_requests_total{code="200"} 3 1768463088.000
# EOF
`,
			IsOk:                 true,
			Description:          "Maximum block duration longer than longest possible duration, uses largest duration, puts all data into two blocks.",
			MaxSamplesInAppender: 5000,
			MaxBlockDuration:     200000 * time.Hour,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1624463088000,
				MaxTime:       1768463088000,
				NumBlocks:     2,
				BlockDuration: int64(39366 * time.Hour / time.Millisecond),
				Samples: []backfillSample{
					{
						Timestamp: 1624463088000,
						Value:     1,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1765943088000,
						Value:     2,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1768463088000,
						Value:     3,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
				},
			},
		},
		{
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1021 1565133713.989
http_requests_total{code="200"} 1022 1565144513.989
http_requests_total{code="400"} 2 1565155313.989
http_requests_total{code="400"} 1 1565166113.989
# EOF
`,
			IsOk:                 true,
			Description:          "Multiple samples that end up in different blocks.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1565133713989,
				MaxTime:       1565166113989,
				NumBlocks:     4,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 1565133713989,
						Value:     1021,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565144513989,
						Value:     1022,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565155313989,
						Value:     2,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
					{
						Timestamp: 1565166113989,
						Value:     1,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
				},
			},
		},
		{
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1021 1565133713.989
http_requests_total{code="200"} 1022 1565133714
http_requests_total{code="200"} 1023 1565133716
http_requests_total{code="200"} 1022 1565144513.989
http_requests_total{code="400"} 2 1565155313.989
http_requests_total{code="400"} 3 1565155314
http_requests_total{code="400"} 1 1565166113.989
# EOF
`,
			IsOk:                 true,
			Description:          "Number of samples are greater than the sample batch size.",
			MaxSamplesInAppender: 2,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1565133713989,
				MaxTime:       1565166113989,
				NumBlocks:     4,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 1565133713989,
						Value:     1021,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565133714000,
						Value:     1022,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565133716000,
						Value:     1023,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565144513989,
						Value:     1022,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 1565155313989,
						Value:     2,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
					{
						Timestamp: 1565155314000,
						Value:     3,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
					{
						Timestamp: 1565166113989,
						Value:     1,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
				},
			},
		},
		{ // For https://github.com/prometheus/prometheus/issues/8476.
			ToParse: `# HELP http_requests_total The total number of HTTP requests.
# TYPE http_requests_total counter
http_requests_total{code="200"} 1021 0
http_requests_total{code="200"} 1022 7199
http_requests_total{code="400"} 1023 0
http_requests_total{code="400"} 1024 7199
# EOF
`,
			IsOk:                 true,
			Description:          "One series spanning 2h in same block should not cause problems to other series.",
			MaxSamplesInAppender: 1,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       0,
				MaxTime:       7199000,
				NumBlocks:     1,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 0,
						Value:     1021,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 7199000,
						Value:     1022,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "200"),
					},
					{
						Timestamp: 0,
						Value:     1023,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
					{
						Timestamp: 7199000,
						Value:     1024,
						Labels:    labels.FromStrings("__name__", "http_requests_total", "code", "400"),
					},
				},
			},
		},
		{
			ToParse: `no_help_no_type{foo="bar"} 42 6900
# EOF
`,
			IsOk:                 true,
			Description:          "Sample with no #HELP or #TYPE keyword.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       6900000,
				MaxTime:       6900000,
				NumBlocks:     1,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 6900000,
						Value:     42,
						Labels:    labels.FromStrings("__name__", "no_help_no_type", "foo", "bar"),
					},
				},
			},
		},
		{
			ToParse: `no_newline_after_eof 42 6900
# EOF`,
			IsOk:                 true,
			Description:          "Sample without newline after # EOF.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       6900000,
				MaxTime:       6900000,
				NumBlocks:     1,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 6900000,
						Value:     42,
						Labels:    labels.FromStrings("__name__", "no_newline_after_eof"),
					},
				},
			},
		},
		{
			ToParse: `bare_metric 42.24 1001
# EOF
`,
			IsOk:                 true,
			Description:          "Bare sample.",
			MaxSamplesInAppender: 5000,
			Expected: struct {
				MinTime       int64
				MaxTime       int64
				NumBlocks     int
				BlockDuration int64
				Samples       []backfillSample
			}{
				MinTime:       1001000,
				MaxTime:       1001000,
				NumBlocks:     1,
				BlockDuration: tsdb.DefaultBlockDuration,
				Samples: []backfillSample{
					{
						Timestamp: 1001000,
						Value:     42.24,
						Labels:    labels.FromStrings("__name__", "bare_metric"),
					},
				},
			},
		},
		{
			ToParse: `# HELP rpc_duration_seconds A summary of the RPC duration in seconds.
# TYPE rpc_duration_seconds summary
rpc_duration_seconds{quantile="0.01"} 3102
rpc_duration_seconds{quantile="0.05"} 3272
# EOF
`,
			IsOk:        false,
			Description: "Does not have timestamp.",
		},
		{
			ToParse: `# HELP bad_metric This a bad metric
# TYPE bad_metric bad_type
bad_metric{type="has a bad type information"} 0.0 111
# EOF
`,
			IsOk:        false,
			Description: "Has a bad type information.",
		},
		{
			ToParse: `# HELP no_nl This test has no newline so will fail
# TYPE no_nl gauge
no_nl{type="no newline"}
# EOF
`,
			IsOk:        false,
			Description: "No newline.",
		},
		{
			ToParse: `# HELP no_eof This test has no EOF so will fail
# TYPE no_eof gauge
no_eof 1 1
`,
			IsOk:        false,
			Description: "No EOF.",
		},
		{
			ToParse: `# HELP after_eof There is data after EOF.
# TYPE after_eof gauge
after_eof 1 1
# EOF
after_eof 1 2
`,
			IsOk:        false,
			Description: "Data after EOF.",
		},
	}
	for _, test := range tests {
		t.Run(test.Description, func(t *testing.T) {
			t.Logf("Test:%s", test.Description)

			outputDir, err := ioutil.TempDir("", "myDir")
			require.NoError(t, err)
			defer func() {
				require.NoError(t, os.RemoveAll(outputDir))
			}()

			err = backfill(test.MaxSamplesInAppender, []byte(test.ToParse), outputDir, false, false, test.MaxBlockDuration)

			if !test.IsOk {
				require.Error(t, err, test.Description)
				return
			}

			require.NoError(t, err)
			options := tsdb.DefaultOptions()
			options.RetentionDuration = int64(10 * 365 * 24 * time.Hour / time.Millisecond) // maximum duration tests require a long retention
			db, err := tsdb.Open(outputDir, nil, nil, options, nil)
			require.NoError(t, err)
			defer func() {
				require.NoError(t, db.Close())
			}()

			testBlocks(t, db, test.Expected.MinTime, test.Expected.MaxTime, test.Expected.BlockDuration, test.Expected.Samples, test.Expected.NumBlocks)
		})
	}
}

redpajama_set_name: RedPajamaGithub


text:
In 1516, Sir Thomas Moore coined the term, Utopia, for the title of his best-known work. It was the blueprint for an ideal society that eliminated war, crime, and poverty among its inhabitants. Utopia was a fictional island republic that fostered peace and tranquility with the political reforms that are much needed today.
A Dystopian society is the antonym of Utopia and appears in many works generally set in the future. Some of the most famous examples are George Orwell 's Nineteen Eighty-Four, Aldous Huxley 's Brave New World, Ray Bradbury's Fahrenheit 451, Isaac Asimov's I Robot, and Margaret Atwood's The Handmaid's Tale. Each of these authors has attempted to describe actual events.
George Orwell was describing Stalin's reign of terror during the age of Communism.
Aldous Huxley was describing behavioral conditioning and genetic modification aimed at establishing a class-based society that eliminates free-thinking. Although this novel was published in 1931, it could very well have described Hitler's Germany, where propaganda was broadcast over a new device called the radio to foster hero worship of the leader as a way of conditioning the people of Germany. The Aryan race sought purification by eliminating Jews, Gypsies. and other races regarded as inferior.
Ray Bradbury was showing how a society could gain control by simply banning books. A society that doesn't read or remember its history is much easier to control. We recall the burning of 'undesirable' books throughout history.
Issac Asimov was concerned with the technological progress of Artificial Intelligence (AI), where computers could one day surpass the human mind in making decisions concerning human fallibility, with the result that robots would some day replace their masters. He therefore inserted into every robot brain the three laws of robotics:
First Law: A robot may not injure a human being or, through inaction, allow a human being to come to harm.
Second Law: A robot must obey the orders given it by human beings except where such orders would conflict with the First Law.
Third Law: A robot must protect its own existence as long as such protection does not conflict with the First or Second Laws.
Margaret Atwood was showing how a patriarchal society could gain total control over women. A clique of Christian fundamentalists has overthrown the United States government and replaced it with the patriarchal Republic of Gilead. One can go back to the Old Testament and Genesis to see how men have regarded the role of women. Isn't God a man? Today we see how religious fundamentalists attempt to control a woman's personal choice over reproduction by opposing birth control. Alabama recently passed a law punishing doctors performing abortions with up to 99 years in jail. Many societies dictate that the woman's role is in the home raising children and being subservient to her husband. A woman doesn't even have the right to choose her partner in countries with arranged marriages.
Where do we stand today? Let's examine a crucial example of a possible dystopian future with a terrible ending for the human race. Let's use a realistic situation in discussing this possible outcome. I'm referring to the Middle East because it is the most volatile region on the planet. Many leaders wish to stifle freedom of choice for the people who wish to live an ordinary life – Israel, which presently favors expansion and control over the West Bank under Netanyahu, along with his desire to strike Iran's nuclear facilities, Turkey's suppression of free speech and its cooperation with Russia to obtain military aid, the battle of the Saudi Arabian kingdom with American support against the Houthi rebels in Yemen, resulting in many civilian deaths and mass starvation, Iraq's state of near anarchy, the civil war in Syria and its battle with ISIS, the theocratic rule of Iran, and its support of the Houthi rebels in Yemen. Then there is the threat by Iran to develop nuclear weapons if the United States doesn't drop its sanctions against Iran. In the foreground of this Middle Eastern morass is the battle between Shiites and Sunnis for complete religious domination in the region.
All it takes to ignite this tinderbox is a lit match. This week, the match included a number of drones launched against the oil fields in Saudi Arabia, cutting its oil production in half. Our 'Lock and Load' president issued a number of conflicting statements – starting with the statement that the United States had no preexisting conditions for engaging in talks with Iran. Later he denied that immediate talks were possible. Everyone was waiting to find out whether the drones were launched from Iran or if the perpetrator was Yemen. Trump issued another statement that he was waiting to hear from Saudi Arabia with regard to the source of the drones. Why didn't he ask his own intelligence services, who most assuredly know the answer?
How Saudi Arabia or even the United States is going to react is still in question. The Middle East has always been a hotbed, and the Doomsday Clock is only 2 minutes before midnight. The minute hand must now take into account the introduction of drones - unmanned guided missiles that can be directed from launch control platforms halfway around the world. The twenty-first century comes with advanced technology consisting of computers that control weapons with artificial intelligence. (see Isaac Asimov's I Robot). In other words, today's modern weapons are so sophisticated that a single misstep can cause an escalation leading to all-out nuclear war. Assuming that we avoid this dystopian future, there are always the consequences of global warming, where the increasing population of the world combined with mass starvation, more powerful storms, rising sea levels, and the extinction of a million plant and animal species could still trigger a cataclysmic ending.
We humans have the ability to control the ecological outcome of the world, including our own existence. Those who lead nations and make critical decisions should possess both the intelligence and compassion needed to prevent these dystopian futures. How do we guarantee that a democratic process will elect such a person? If Donald Trump is an example of selecting the right leader, we are already doomed. Only if we establish a process that elects the right leader can we turn away from confrontation and negotiate a lasting peace. This can be achieved through the reduction of nuclear weapons and by placing our trust in the United Nations in settling international disputes. We need to stop pursuing global dominance and reduce arms sales to other countries. Global warming can be reversed if we replace fossil fuels and fracking with green technologies and plant new forest growth. These new policies would be an important start in trying to reach Utopia.
Last modified on Thursday, 19 September 2019 06:58
Failed Society
Middle East Conflict
More in this category: « Killers of the Flower Moon	Science Fiction or Fact »
You are here: Home Articles A Dystopian Future?

redpajama_set_name: RedPajamaCommonCrawl


text:
Mopar® Vehicles Shine at the Muscle Car and Corvette Nationals!
By David Hakim 12/1/2021 6:00 PM Events Gallery 7 min read
The annual Muscle Car and Corvette Nationals (MCACN) again assembled a rare collection of high-powered machines that once roamed the avenues and boulevards of suburbs and cities across America. It took us over three days of roaming the massive Donald E. Stephens Convention Center located just outside Chicago in Rosemont, Illinois, to feast our eyes on hundreds of candy-colored, high-horsepower muscle cars. This annual event was put on hold in 2020 due to COVID-19 restrictions, but came back full throttle this year in celebration of pure American horsepower. This year, the show focused on the iconic muscle cars from the 1970 and 1971 model years when Detroit was going full throttle for the youth market. The automakers went all-in by offering high-performance machines to suit everyone's taste and wallets. Today, many agree these years were the pinnacle of American Muscle with some cars selling for over a million dollars at auctions today!
Among the Motor City's "Big Four" automakers at the time, no one offered more variety in muscle and performance than Chrysler's Dodge and Plymouth brands. With the "Dodge Scat Pack" and "Plymouth Rapid Transit System" advertising and marketing campaigns taking the youth market by storm, they left an indelible mark on consumers that still resonates 50 years later among enthusiasts of all ages. The MCACN show featured numerous displays paying tribute to many unique "option packages" Dodge and Plymouth offered in 1970, such as the Challenger T/A and AAR 'Cuda. Chrysler created these cars for discriminating buyers who wanted to stand out among their peers cruising main street while leaving them in the dust off the stoplight. Other notable 1970-71 Mopar® vehicles at the MCACN included Road Runners, GTXs, Chargers, Challengers, Super Bees and other vehicles that had gearheads flocking to Dodge and Chrysler/Plymouth dealer showrooms back in the day.
Assembling these rare cars is a monumental task and it takes the vision and hard work of many individuals. Bringing together the biggest collection of muscle cars in one location is a yearlong task that requires traveling to car shows across the country seeking out iconic muscle machines with a unique pedigree. That role falls to Bob Ashton, whose love of cars gave him the inspiration years ago to create the MCACN.
"We've seen tremendous growth over the past few years. The fact we had to cancel the 2020 event due to COVID-19 was tough, but muscle car fans returned to this year's event in droves," said Bob Ashton. "The hardworking staff of volunteers makes sure the event goes off without a hitch and everyone has a good time. We also focus on various themes each year, celebrating various nameplates and the contribution they made in the battle of horsepower supremacy."
The MCACN event also hosts many seminars featuring restoration/industry experts and motorsports icons. This year's event had Mopar drag racing legend Butch Leal, who ran under the Mopar banner from the mid 1960s to the late 1970s. If you don't recognize his face, you should. Butch Leal was sponsored by Direct Connection and was on the 1975 catalog cover. Fans were able to get his autograph while listening to tales of his numerous racing exploits of grabbing gears in the many HEMI® engine-powered Plymouths he campaigned during his tenure.
The 2021 MCACN show is a great way to end a great season of high-octane fun and get ready to head into the holiday season. Our massive photo gallery from this year's event is sure to fill your need for vintage muscle.
12/2/21 2:57am
I could comment on alot of these machines but im going to distract myself and just this. That olive colored challenger t/a is one lucky car. Smokin.


This liner increases the warmth of your sleeping bag by up to 15 degrees. It's made of Thermolite, a hollow core fiber that is lighter and more packable than fleece, and is super stretchy. The design is slightly tapered and the liner can be used in your sleeping bag or on its own. There is a draw cord in the hood to cinch it up around your head on cold nights. Packs into its own sil nylon stuff sack.
Care: Machine wash and air dry, avoid fabric softener/dryer sheets.


text:
Adamson, Lawrence Arthur (1860–1932)
by M. A. Clements
Lawrence Arthur Adamson (1860-1932), headmaster, was born on 20 April 1860 at Douglas, Isle of Man, second son of Lawrence William Adamson, LL.D., grand seneschal of the island and later deputy lieutenant of the County of Northumberland, and his first wife Annie Jane, née Flint. At 10 Adamson was sent to a London preparatory school and in 1874 he entered Rugby School, where he did well in classics and enjoyed all forms of sport. He matriculated in 1879 at Oriel College, Oxford (B.A., Charsley Hall, 1884), and was called to the Bar of the Inner Temple in 1885. After a bout of severe pleurisy he decided to practise law in the warmer climate of New South Wales. Finding the Sydney climate too moist, he moved early in 1886 to Melbourne where he applied to join the Bar and was in due course admitted. Meanwhile he did some private coaching, and also accepted a temporary teaching post at Melbourne Church of England Grammar School; he was awarded his B.A. (ad eund.) in May and M.A. in December by the University of Melbourne. In 1887 he became senior resident master at Wesley College and held the post until 1892, teaching English and history and fomenting a new interest in sport.
In 1893 Adamson became resident tutor at Trinity College, University of Melbourne, and for four years lectured there in the evenings and taught at Wesley by day. Late in 1897 the Wesley College Committee informed all members of staff that as a result of its decision to appoint Thomas Palmer as headmaster they were to be dismissed. Adamson, thoroughly disillusioned, moved to University High School, where for four years he was joint headmaster and proprietor with his close friend Otto Krome.
In January 1902 the Wesley College Committee set about appointing a new headmaster. In early discussion the name of L. A. Adamson was not mentioned, but when he intimated that he would be willing to accept full financial responsibility for the satisfactory growth of the college, it was decided to appoint him. Adamson took up his position at Wesley in February, and over the next thirty years came to be regarded by many as Australia's most famous headmaster.
Inheritances had left Adamson a wealthy man; while headmaster he made many substantial donations to the college. He was often able to return 'home' to England and to indulge in such exciting innovations as motor cars and aeroplanes. In November 1909 he was the first to import an aeroplane into Australia, a Wilbur Wright biplane, although he did not fly it himself. His other interests included dogs, antique furniture, china, bronze, silver, statuary, and green-herb cheese. A devout Anglican, he was a warden at Christ Church, St Kilda, and a deacon of St Paul's Cathedral. He never married.
Adamson always placed great emphasis in the regular school assemblies on good manners, community service, music, sporting achievement, and especially on the maintenance and development of a corporate school spirit. These themes were echoed in the college Song Book, which was considerably enlarged during his headmastership; he himself composed many of its words and tunes, including the well-known melody for Newbolt's 'Best School of All'. 'Dicky' Adamson had an unusual gift for talking effectively to individual boys. Two future prime ministers, (Sir) Robert Menzies and Harold Holt, attended the college in his time.
As much as, or more than, his contemporaries, Adamson extolled the effects on character of training and preparation for military service; he was proud of his own family's distinguished military record. He encouraged the college cadet corps, paid frequent tribute to old Wesley collegians who enlisted for active service, insisted on writing the chapter on 'Wesley at War' for the jubilee history of the college (1921), and treasured several volumes of war letters sent to him and other staff members by old boys serving in World War I.
Adamson heavily accentuated the importance of excellence in sport. Sir James Darling in 1969 attributed to Adamson's influence the over-emphasis on competitive sport which he had found in Victorian public schools in 1930. Teams were paraded at school assemblies, and sporting heroes and triumphs were commemorated in school songs; at the same time worthwhile contributions made in other areas could go unrecognized. The first half of Adamson's headmastership was marked by many outstanding team successes, especially in rowing, football and athletics, but at the same time bitter controversies between Wesley and other public schools were highlighted by the press, and Wesley teams and supporters were sometimes accused of poor sportsmanship. Adamson usually defended his boys, emphasizing the dictum that any school must teach its students 'to win decently and lose decently'. He firmly believed that consistently good sporting results helped to increase enrolments: certainly, the numbers did increase from 204 in 1902 to 594 in 1920 and fluctuated in the next decade when successes were less frequent.
The strong influence of Adamson's educational ideas and policies on secondary education in Victoria, and the part he played in raising its status, may have been his most lasting achievement. In 1891 he was foundation secretary of the Victorian Institute of Schoolmasters and helped to draft the teachers' registration bill which that body tried to persuade parliament to pass in 1892. In 1898, while at University High School, he initiated and organized a series of teacher-training classes, at that time the only such courses in Victoria. For many years he served on the faculty of arts, council, and schools board of the university. In 1904 Adamson and Krome established the (Incorporated) Association of Secondary Teachers of Victoria and through it Adamson exerted some influence on parliament, which passed the Registration of Teachers and Schools Act in 1905; Frank Tate believed that no one did more to bring about that legislation. By the Act a registration board was established, and Adamson was selected to represent the independent schools. He was keen to initiate a separate system of teacher-training for prospective independent-schoolteachers, and in 1908 the board permitted Wesley College to establish a teacher-training institution which was formally equal in status with the government Training College. From 1911 he was an influential and active member of the recently established Council of Public Education. He was well ahead of his time in his belief that a 'leaving certificate' issued to a student by an approved school should be a sufficient qualification for university entrance. As a member of the university's Board of Public Examinations in 1905-11 and as a leading member of the powerful Schools Board from 1912, he influenced others towards a more liberal view of the role of external examinations in secondary education. In 1903-32 he was secretary and chairman of the Headmasters of the Associated Public Schools.
As president of the Metropolitan Football Association for thirty-seven years, Adamson loudly proclaimed the virtues of amateur sport. For many years he was a delegate to the Victorian Cricket Association, at various times served as its honorary treasurer and president, and in 1906 he became first president of the Australian Board of Control for international cricket; he was president in 1901-05 of the Victorian Amateur Athletic Association. He also served as chairman of the Victorian branch of the Royal Life Saving Society and was president of the Lost Dogs' Home. In 1926 he was appointed C.M.G.
After several years of declining health from diabetes and liver disease, Adamson died of a gastric haemorrhage at Wesley on 14 December 1932, two days before his retirement was to have been announced, and was cremated. His estate, valued for probate at £7073, included bequests to the college and mementos to the staff; H. J. Stewart, his stalwart supporter for thirty years and his personal choice as successor, was executor. A portrait by W. B. McInnes hangs in Adamson Hall at Wesley College.
E. Nye (ed), The History of Wesley College 1865-1919 (Melb, 1921)
F. Meyer, Adamson of Wesley (Melb, 1932)
The History of Wesley College 1920-1940, N. H. MacNeil ed (Melb, 1941)
G. Blainey et al, Wesley College. The First Hundred Years (Melb, 1967)
J. R. Darling, 'Educational recollections of the thirties', Melbourne Studies in Education, 1968-1969, R. J. W. Selleck ed (Melb, 1969)
Australasian Schoolmaster, July 1900
Sketch, 30 June 1911
Argus (Melbourne), 14 Dec 1904
Age (Melbourne), 18 Dec 1904, 12 Nov 1912, 31 Oct, 14 Dec 1932
Punch (Melbourne), 8 July 1909, 29 Mar 1917
Herald (Melbourne), 7 July 1910, 26 Apr, 4, 17 May 1911
Table Talk, 16 Dec 1926
B. K. Rule, The Origins of State Secondary Education in Victoria (M.A. thesis, University of Melbourne, 1961)
Council minutes (Inc. Assn of Secondary Teachers of Victoria, Melbourne)
Council, Senate, Arts faculty, and Schools Board minutes (University of Melbourne Archives)
Committee and Council minutes, 1887-1933, and Adamson scrap-books, 1890-1920 (Wesley College Archives)
Education Dept, special case 1174 (Public Record Office Victoria).
M. A. Clements, 'Adamson, Lawrence Arthur (1860–1932)', Australian Dictionary of Biography, National Centre of Biography, Australian National University, https://adb.anu.edu.au/biography/adamson-lawrence-arthur-4971/text8251, published first in hardcopy 1979, accessed online 18 January 2021.
Adamson, Dicky
Isle of Man, England
athletics administrator
Australian Rules administrator
cricket administrator


Julie Dien-Fong is an optometrist at The Vision Gallery in North Edmonton.
The solar eclipse is coming up this Monday August 21st and I want to help keep everyone's eyes safe!
Did you know it is never safe to stare at the sun without proper protection? Permanent vision loss can happen from as little as 100 seconds of looking directly at the sun. Usually, the full brightness of the sun causes us tear up, close our eyes and look away after just a few seconds. That's how we don't accidentally damage our vision on sunny days!
Why is the solar eclipse more risky?
The reason why a solar eclipse is more dangerous than normal is that it is an event that invites curious onlookers to look directly at the sun for a longer than normal period. Not only that, the partial blockage of sun means that the overall brightness is less and our natural reflex to look away is not as readily triggered. Although the brightness is less, there are still harmful energy rays that can damage the eye. What is scary is that while the injury is occurring, there will be no pain or immediate vision loss. The vision loss typically shows up several hours after the event.
The solar eclipse will occur in Edmonton between 10:20AM to 12:45PM.
If you're determined to experience the eclipse outside, you can use solar eclipse glasses or welding filters 12-14 and wear these anytime you're checking out the sun. Please make sure that your eclipse glasses meet the requirements of ISO 12312-3 and were from a reputable source. There were reports of fake ones being sold and those will not protect you. Also please make sure that the lenses are not scratched or damaged.
To answer a common question, regular sunglasses are not protective enough for looking directly at the sun. Furthermore, the sun's energy can be even more damaging through a camera lens or telescope without proper protective filters.
Online streaming: the safest way to view the eclipse.
It is definitely an exciting natural event and because it occurs so rarely, everyone would love to witness it. However, because of the real risk of vision loss – I would strongly suggest watching the live stream of the eclipse online instead of outside. NASA will be streaming the eclipse from a position in the path of totality – so we can witness a FULL solar eclipse.
I typically encourage my patients and my family to enjoy the outdoors rather than spend time on a screen. But I'll tell you now that my kids and I will definitely be indoors and watching the eclipse online. The full eclipse will be more unique than a partial eclipse and most importantly – the screen images will be eye safe.


text:
Franklin, Medway police warn residents of scams
By Lauren Young
Daily News Staff
Since January, more than $800,000 has been stolen from Franklin corporations and residents due to fraud, according to police Sgt. Brian Johnson.
"Once that money is gone, there's no hope of recovering it," he said.
Local police departments, including Franklin and Medway, are urging residents to educate themselves on scams and how to spot them.
"It happens a lot," said Johnson, adding that police receive reports of scams a couple times a month. Of the $800,003 stolen this year, Johnson said about $700,000 of that was taken from a local corporation through wire fraud.
He said scammers typically steal about $2,000 to $3,000 from each victim, through schemes ranging from bailing out grandchildren with gift cards to the IRS calling to report that your identity has been comprised, and that immediate payment is required to avoid arrest.
Not all victims are senior citizens, Johnson said.
"There's no one clear-cut socioeconomic group that they target," he said. "These scammers have rehearsed their scripts and follow them to perfection - they can be very convincing."
According to Medway police, "your best defense against scammers is recognizing a scam and ignoring it."
That's what the department said in a Facebook post earlier this week when it revealed that residents have lost a reported $79,107 to scammers since Jan. 1.
But these incidents can reduced through education, said police.
Police said common scams targeting residents include those related to Social Security, the IRS, Eversource, a grandchild in jail, hitman, online pop-ups, and phishing scams – just to name a few.
"Anyone you don't know who asks to make payments via unconventional means is a scammer until proven otherwise," said Medway police in the post. "They ask for payment this way so that the funds become untraceable and there is no means of retrieval."
Some residents say they've also received calls soliciting donations for the "Medway Police Relief Fund," though the department said it's not soliciting such donations.
Earlier this month, a member of the Holliston Fire Department received a similar phone call from someone claiming to be raising money for local volunteer fire departments, according to a Facebook post. When questioned, they said only 10% of funds raised would be going toward firefighting organizations.
"The Holliston Fire Department does not use paid telemarketers that use questionable techniques to convince people to donate, whose companies keep most of the money with only a fraction of it going back to charitable purposes," the department said in the post.
Johnson offered the following tips in spotting scams:
Learn more about the different scams and tactics used by scammers (keeping you on the phone line for a long time, using fear to drive a sense of urgency)
Never send money to anyone you don't know
If you're unsure about a call, hang up and talk to someone about it. "Once you start talking to someone else about it, you might realize how ridiculous it sounds," Johnson said.
The IRS will never cold-call or threaten to arrest you, and it never accepts payment through gift cards
To report a scam, call your local police department
"If it sounds too good to be true, it probably is."
To learn more about what scams and frauds can look like, visit Usa.gov/common-scams-frauds.
Lauren Young writes about politics and social issues. Reach her at 315-766-6912 or lyoung@wickedlocal.com. Follow her on twitter at laurenatmilford.


We took a few of our favorite ocean animals and built an ocean scene for them yesterday. Our favorite part was that we can feel the parts of the ocean because we used puffy paint to add some texture.
Materials Needed: can, crackers, plastic bag (ziploc), large sheet of blue foam, green and blue puffy paint, glue, and ocean animal stickers.
1. If you have sand, you can totally use it... we didn't, so we crushed up some Ritz crackers using a can. You could also use rice or any number of other things for the sand. We liked the crushed crackers because the texture was very similar to that of sand.
2. Add some glue to the bottom of the foam sheet.
3. Sprinkle on the crackers.
4. Add some puffy paint water texture.
5. Draw a kelp forest with green puffy paint.
6. Let everything dry. We had to let if dry overnight because some of my son's blobs were kind of big.
7. Add your ocean animal stickers. Talk about where each ocean animal would live. (For example, the sea star might stick to the rocks or corral at the bottom of the ocean).
Words we talked about during this activity included: puffy, crunchy, squish, crush, bumpy, blog, thin, fat, kelp, bottom, top, middle, side.


Ashcroft Communities in Bloom has selected the Safety Mart as this year's recipient of their BBB award.
Dec. 12, 2013 8:00 p.m.
Several Communities in Bloom committee members were on hand to present Ed Lee and Victor Paulos of Safety Mart Foods with the Best Bloomin Business award for 2013.
The Communities in Bloom committee selects and presents this award to a deserving Ashcroft business each year. The criteria used to select the recipient include street appeal, cleanliness, use of colour and improvements to the business. New landscaping, completed at the end of last year, improved the look of this highly visible corner of our community. Xeriscape-type plants and materials were combined to provide an easy care, climate correct choice that looks great in all seasons.


text:
BROWN BAGGIN' THRU HISTORY
Date(s) - 2/7/20
Campus Martius Museum
Cost: FREE Program
Guest Speaker: Randall " Randy" Modesitt
"The Henderson Women" Five generations lived on this estate. We hear so much about the Henderson men. What about the women who played important roles in the early settlement of Wood County and West Virginia? Randy will share with us his passion and knowledge about the lives of these early women in a home that saw the years of our early country's growth and development.
Bio: Randy was born in Parkersburg and has lived his whole life there. He graduated from Parkersburg High School and from Glenville State College in 1974. He received a master's degree from Marshall University in 1978. He taught elementary grades from 37 years and coached basketball and jump rope. He taught the jump rope team for 28 years and traveled extensively all over the world. His team won two world championships: First Place in Belgium and another First Place in Australia. He started at Henderson Hall in 2013 cutting grass and became its Director in 2015. He is married to Charlotte Modesitt.
This program is free thanks to the generous support of the Washington County Public Library.


text:
Le Lazaret est un établissement de vacances, fondé en 1865 par l'église réformée de Sète, dans l'Hérault. Cette œuvre protestante, créée à l'origine pour permettre l'accès aux bains de mer, dans une perspective médicale, sociale et spirituelle, évolue ensuite vers un accueil pour des vacances en bord de mer.

Contexte historique
À cette époque, Sète est la troisième commune de l'Hérault. Elle s'est agrandie, grâce à ses activités portuaires, qui concernent le commerce maritime, l'exportation de vin, la tonnellerie et la pêche, et créent de nouveaux emplois, liés au commerce et à l'artisanat. Sa localisation en bord de mer a favorisé la présence de personnes venues pour les bains de mer. Des établissements sont créés par des particuliers, pour accueillir les curistes.

Plusieurs établissements de bains existent avant le Lazaret. Le premier connu, créé par un pharmacien de Sète, existe dès 1837. Un établissement protestant est créé en 1847 par Coraly Hinsch, fondatrice par ailleurs d'une église évangélique à Sète. Des incidents se produisent en 1858, car l'établissement essaie de convertir à ses croyances les catholiques qui fréquentent cet établissement, le préfet intervient, ordonnant que l'établissement ne reçoive que des patients protestants.

La communauté catholique des sœurs de saint Vincent-de-Paul ouvre à son tour à Sète, vers 1880. Dans le département voisin du Gard, l'Église réformée de Nîmes fonde un établissement similaire en 1851, dans le château construit pour l'industriel Henri Leenhardt, au Grau-du-Roi

En ouvrant un établissement de bains de mer, l'Église réformée de Sète poursuit trois objectifs :

 un objectif médical : offrir une possibilité de soins aux personnes dont l'état de santé le nécessite. Les affections concernées sont notamment les affections scrofuleuses, la tuberculose, le rachitisme, ou encore l'anémie ;
 un but social : favoriser l'accès aux bains de mer aux coreligionnaires protestants les plus défavorisés ;
 un perspective religieuse : proposer une hospitalité ouverte sur le plan théologique, et ainsi s'opposer à l'entreprise d'évangélisation missionnaire pratiquée par l'église hinschiste à Sète auprès des hôtes qui y séjournent.

Une cure médicale
Les bains de mer sont pratiqués avec prescription et sous surveillance médicale : la « balnéation maritime » est un « remède puissant », mais de ce fait nécessite d'« être surveillé de très près ». En 1925, le médecin de l'établissement relève l'augmentation du poids et de la taille des enfants durant leur séjour.

Les prescriptions médicales sont très précises : la durée du bain, et le nombre de bains hebdomadaires sont réglementés, adaptés à chaque patient. Les bains prolongés, supérieurs à une demi-heure, sont déconseillés, les bains courts de cinq à dix minutes sont privilégiés, quand le malade les supporte, certains patients se voient prescrire exclusivement des promenades en bord de mer, tandis que d'autres reçoivent des douches à l'eau de mer dans des cabines. Le maire de Sète nomme un inspecteur des bains de mer, en 1834, le  Viel, puis le  Barthès se succèdent à cette fonction.

Accueil d'une population défavorisée
L'investissement social et philanthropique est très présent : l'établissement est destiné à permettre l'accès aux soins d'une population protestante originaires des grandes villes, particulièrement exposée aux atteintes de scrofule, affection due notamment au manque d'hygiène et à l'insalubrité au milieu du .

Un cadre protestant tolérant

L'Église réformée souhaite permettre aux protestants d'accéder aux bains de mer. Après avoir envisagé un temps de s'associer à l'établissement tenu par l'église « hinschiste », sans parvenir à un accord, la paroisse protestante et son pasteur nouvellement nommé, Lucien Benoit, créent une commission et fondent le Lazaret. Les administrateurs sont des négociants sétois, parmi les notables protestants de la ville. L'achat d'un terrain et la construction des bâtiments doivent être financés par une tournée de collectes de Lucien Benoit.

Enfin, la volonté de l'Église de Sète de soustraire les curistes protestants aux menées évangélisatrices de l'église hinschiste est abordée explicitement et fait partie des motivations de création d'un établissement réformé, dirigé par le pasteur de la ville. Dans sa correspondance avec le pasteur de Castres, le pasteur réformé Lucien Benoit évoque côte à côte le besoin de faire bénéficier ses coreligionnaires de services prodigués jusque-là par l'établissement hinschien, et le but beaucoup plus excellent selon lui, de  envoyés par les paroisses protestantes du sud-ouest. D'autres lettres adressées à Lucien Benoit témoignent des préoccupations des pasteurs dont les paroissiens sont accueillis par l'établissement hinschiste. Le prosélytisme hinschiste et la volonté de « convertir » les curistes, pour en faire de « véritables chrétiens », y sont évoqués.

Les débuts de l'établissement
La recherche d'un emplacement proche du rivage commence, la solution adoptée est la location du lazaret militaire, initialement destiné à l'accueil des soldats blessés et malades de la guerre de Crimée, désaffecté depuis lors. L'Église réformée de Sète obtient un bail de location du ministère de la Guerre, pour la saison des bains de mer. Deux saisons sont prévues, l'une en juillet, la seconde en août.

Le lazaret est alors composé de plusieurs baraques de bois, situées près d'une plage en contrebas, abritée du vent par une avancée rocheuse. Deux cabines sont édifiées sur la plage, l'une pour les hommes, l'autre pour les femmes. Un souscription a lieu à Sète, et des collectes dans les paroisses réformées du sud-ouest. Ces paroisses sont averties de l'ouverture par une lettre, le , indiquant les tarifs à la journée,  pour les hommes,  pour les femmes, et  pour les enfants.

La période de la Guerre franco-allemande de 1870 représente une menace pour l'œuvre protestante. L'armée française et une ambulance occupent les lieux. Puis les religieuses de Saint-Vincent-de-Paul, soutenues par le conseil municipal de Sète et l'hôpital Saint-Charles de Montpellier, et par une campagne de presse relayée par Le Messager du Midi et L'Éclair, essaient d'annexer les baraques militaires, exigeant que les protestants évacuent les lieux. Les attaques font état du danger sanitaire que crée la présence de « scrofuleux » au Lazaret, mais surtout de l'« esprit étranger » qu véhiculeraient la minorité protestante sétoise (moins de 5 % de la population de Sète) et le manque de patriotisme protestant, avec en arrière-plan, des griefs directement en lien avec la défaite de 1870. Finalement, les protestants conservent leurs locaux, les religieuses conservent les locaux qu'elles ont investis durant la guerre, mais l'alerte a été chaude pour les protestants, qui cherchent dès lors à trouver un autre site, dont ils seront propriétaires.

Le nouveau Lazaret
La société acquiert un terrain, proche du Lazaret, en 1881. Les fonds nécessaires à l'aménagement des locaux, dortoirs, réfectoire et cuisine, sont obtenus par la vente d'obligations. Une société anonyme civile, d'une durée de cinquante ans, est formée le . Deux assemblées générales annuelles sont prévues, l'une avant la saison, l'autre après la saison. La structure de la société s'explique par le souhait d'en écarter l'État, alors que l'Église est encore en régime concordataire. La société évite toute mention religieuse ou confessionnelle dans son intitulé qui reprend le nom de « Lazaret ». L'œuvre s'autofinance, et aucun dividende n'est distribué, le cas échéant, les bénéfices sont réinvestis dans la société. En 1920, les propriétaires d'actions ou leurs héritiers sont invités à céder leurs actions à l'Association de bienfaisance parmi les protestants de Cette, afin d'éviter la dispersion des parts.

Le nouveau Lazaret est construit en 1889. Trois pavillons centraux sont d'abord édifiés, auxquels s'ajoutent un quatrième bâtiment en 1895 et un cinquième en 1902. Une extension est achevée après la Première Guerre mondiale. Le centre décide après la guerre, d'ouvrir à l'année. Par testament, en 1921, une Sétoise catholique laisse en héritage au Lazaret plusieurs immeubles en ville, qui, une fois vendus, permettent de nouveaux agrandissements : le Lazaret achète plusieurs villas, qui formeront les pavillons le Goéland et le Martinet, les trois pavillons qui forment le corps central sont quant à eux, élevés d'un étage. L'acquisition d'un terrain en 1929 donne un accès direct à la plage, par un passage souterrain, et le Lazaret obtient l'exclusivité de l'utilisation de la plage. Deux cabines de bains sont édifiées. Les heures de baignade sont à 9h00 le matin et 16h00 l'après-midi, le concierge du Lazaret navigue sur une barque, prêt à intervenir en cas de noyade.

L'évolution vers un lieu de vacances est nette, après la Seconde Guerre mondiale. Un projet de préventorium est abandonné en 1947. Alors que le centre était dirigé, depuis sa fondation, par le pasteur réformé de Sète, la décision est prise, en 1927, de nommer un directeur attitré.

Les pensionnaires des années 1900 sont souvent des femmes et leurs enfants (respectivement 35 % et 45 %). Entre les deux guerres, les enfants représentent 50 % des hôtes et les femmes 35 %. Puis, progressivement, la clientèle évolue et le Lazaret est également choisi comme lieu de vacances pour des familles qui choisissent l'ensoleillement et les loisirs, et demandent des chambres collectives plutôt que l'hébergement pratiqué en dortoir d'une vingtaine de lits. Un camping limitrophe est créé en 1954. Le Lazaret devient partenaire de la Fédération des maisons familiales de vacances, et devient un centre agréé en 1959. Le Lazaret évolue également sur le plan administratif : une association loi 1901, l'Œuvre des enfants à la mer et à la montagne, devient locataire du Lazaret. Les colonies rassemblent des enfants des églises réformées des départements languedociens, puis au-delà du sud de la France et de Suisse romande. Des patronages laïques d'école de la région y font leur colonie, puis des éclaireurs unionistes y font leurs camps d'été. Des pensionnaires du troisième âge séjournent nombreux à partir des années 1980. Le centre accueille en même temps colonies de vacances, familles et retraités en séjour et propose des activités sportives, culturelles, touristiques. La sieste est obligatoire jusqu'à 15h00 et une méditation non confessionnelle est proposée chaque soir. Deux tarifs sont proposés en 1920, un menu amélioré et un hébergement en chambres est proposé moyennant un supplément pour ceux qui le peuvent, permettant au centre de pratiques des prix modérés pour les hôtes moins favorisés. Les préparations culinaires sont progressivement plus soignées, le petit-déjeuner est constitué de café au lait pour tout le monde, mais lait, chocolat et confiture sont davantage proposés.

Les directeurs de l'établissement
Lucien Benoît est directeur jusqu'en 1908. Le pasteur Gauteron lui succède, jusqu'en 1911, assisté de Mathilde Ménard, fille de Lucien Benoît. Jules Brun, pasteur de Sète, dirige le Lazaret de 1911 à 1921, remplacé par Camille Leenhardt, d'abord pasteur à Saint-Pargoire et Perpignan, puis pasteur de Sète jusqu'en 1928 et directeur du Lazaret jusqu'en 1948. Le pasteur Demeret est ensuite directeur jusqu'en 1967.
En 2014, le directeur est Jean-Régis Souvignet.

Références

Voir aussi

Bibliographie
.
 .
 Jean-Claude Gaussent :
 .
 .
 .
 .
 .

Articles connexes
 Lucien Benoit
 Sète

Liens externes

 .

Sète

redpajama_set_name: RedPajamaWikipedia


text:
Home Internet Sebi bans former Diageo official for 7 yrs in insider trading case
New Delhi, Jan 14 () Regulator Sebi has barred Nishat Shailesh Gupte, a former official of Diageo Plc, from the capital markets for seven years for indulging in insider trading activity in United Spirits. Besides, Sebi has directed three persons related to Gupte — Poonam Haresh Jashnani, Haresh Parmanand Jashnani and Varun Haresh Jashnani — to disgorge unlawful gains totalling over Rs 1 crore made by them, along with interest, in the insider trading case.
Sebi said Gupte, who was the Global Business Development Manager (M&A) of Diageo, was in possession of unpublished price sensitive information (UPSI) relating to the open offer for acquisition of shares of United Spirits Ltd (USL) by Relay BV together with Diageo Plc as the person acting in concert (PAC).
Gupte was part of the core team which represented Diageo/PAC in the transaction to consolidate shareholding of the acquirer in USL and was guiding the team since the beginning of the transaction lifecycle.
Further, the regulator said Poonam, Haresh and Varun also indulged in insider trading activity in USL based on the information passed by Gupte.
Gupte is the son-in-law of Poonam and Haresh, and brother-in-law of Varun.
"Considering the close family relationship amongst Nishat, Haresh, Varun and Poonam, it can reasonably be concluded that it was Nishat who had communicated the UPSI to them," Sebi said in an order dated January 10.
Based on trading while in possession of UPSI, Poonam, Varun and Haresh have made ill-gotten gains, it added.
By indulging in such activities, these persons violated Sebi's PIT (Prohibition of Insider Trading) regulations.
Accordingly, the Securities an Exchange Board of India (Sebi) barred Gupte from the capital markets for a period of seven years. Besides, he has been restrained from associating himself with any listed public company.
Further, Poonam, Haresh and Varun have been asked to disgorge wrongful gains of about Rs 45.44 lakh, Rs 29.24 lakh and Rs 26.18 lakh respectively along with 12 per cent interest per annum. They need to pay the amount within 45 days.
In case they fail to pay the wrongful gains along with interest as directed, Sebi will initiate recovery proceedings. SP RVK
Previous articleJio vs Airtel: Best plans with 84 days validity
Next articleDealerSocket sets up centre of excellence in Bengaluru, to hire 200 people by year-end
Mobile's many shipwrecks help tell the area's long history – PBS NewsHour
Samsung Galaxy Watch Active 2 leak shows it in all colors – GSMArena.com news –...
Fishman, Donovan, Brinkley Apollo 11 Books Highlight The Mission To The Moon's Legacy – NPR
Leak reveals new macOS 10.15 feature that lets you run Mac apps on the iPad...
Millennials stand out for their technology use, but older generations also embrace digital life –...


removal of a gentle man from his ministry in October 1662.
notice for a preacher at Kirk o Shotts which he reluctantly did.
clear call and free entry.
of the Bishops and was again suspended then excommunicated.
board the Mayflower. in that epic voyage in 1620.
excess of 500 people from Co Down.
many meetings that rendered wider the Church`s divisions.
Book and leading a dissolute life.
he had pleasure in the task.
banishment from Edinburgh for a while.
place where Livingston was at his best was in the pulpit.
not walk far and had shaking hands that made writing difficult.
truths, so long as the sun and moon endure ".


text:
Baja California Plant Field Guide
Jon Paul Rebman, Norman C. Roberts, Exequiel Ezcurra
San Diego Natural History Museum, 2012 - Nature - 451 pages
The Baja California Plant Field Guide is a manual to native and naturalized plants of the Baja California peninsula, Mexico. It is a useful guide for the entire Sonoran Desert and for Southern California, as over 50% of the species covered also occur in these regions. Over 715 different plants in 111 plant families are identified (most in both English and Spanish), with both scientific and common names and detailed descriptions. Many species are illustrated with color photographs. Descriptions entail plant habit and height; stem, leaf, flower, and fruit morphology; range; elevation; pollination biology; ethnobotanical uses; and discriminating comparisons with close relatives. This book is intended for everyone from the interested novice to the professional botanist.
Norman C. Roberts
Jon P. Rebman holds the Mary and Dallas Clark endowed Chair and had been the Curator of Botany at the San Diego Natural History Museum since 1996. For more than22 years he has been conduction extensive floristic research in Baja California, Mexico and in San Diego and Imperial counties of California. Dr. Rebman obtained his doctoral degree in Botany from Arizona State University; his dissertation research elucidated the systematics of the genus Cylindropuntia (cholla) in the Cactus family of Baja California. Dr. Rebman is the director of the San Diego County Plant Atlas Project (sdplantatlas.org) and identifies/verifies all of the incoming specimens of the southern California /Baja California region including name and and describing many new species in Baja California. As a hobby, Dr. Rebman is a plant photographer and almost all of his photos are available and searchable online at the museum's botanical websites: bajaflora.org and sdplantatlas.org.
Title Baja California Plant Field Guide
Authors Jon Paul Rebman, Norman C. Roberts, Exequiel Ezcurra
Contributor Exequiel Ezcurra
Edition 3, revised
Publisher San Diego Natural History Museum, 2012
Nature / Environmental Conservation & Protection
Nature / Plants / Cacti & Succulents
Nature / Regional
Science / Life Sciences / Botany


We believe that Self-Reliance is a journey, not a destination. Whether you are starting out, or have decades of experience – SOS Self Defense Tools is here to support you. If you believe like we do and want to be prepared to defend your family, survive a natural disaster, or simply spend a night in the wilderness – then you've come to the right place.


What is another word for Strikes?
criticizes, crackdown, register, countering, suppress, fighting, fight, fights, tackling, injures, hammers, combatting, sets, shoots, Combating, extends, combat, tackle, assails, cancel, cancels, scores, recorded, Records, jolts, rips, annuls, posts, Floods, brush, rocks, sign, signs, drops, curb, tuesday, Wounds, raps.
operations, Strokes, represents, mistakes, struggles, transgressions, brushstrokes, cyber-attacks, repercussions, targeting, Aggressions, condemnations, impactors, Advertisements, sorties, times, explosions, Strains, effects, revolutions, misdemeanours, contraventions, disputes, infringements, Seizures, rockets, experiments, incursions, tactics, crackdowns, Exercises, Tests, assaults, Outbreaks, jobs, Irregularities, shellings, workers, Penalties, tricks, incidents, targets, airraids, alerts, fires, behaviours, onslaughts, exploits, PROSPECTS, sept, indictments, worlds, deviations, distortions, intrusions, disclaimers, encroachments, invasions, attackers, collisions, occurs, shutdowns, accidents, bombers, convictions, setbacks, bursts, admonitions, Opportunities, reporters, Robberies, fucks, acts, aerial, notifications, misdeeds, sentences, throws, troops, unionists, warnings, infractions, marks, Shots, Behaviors, violations, moves, advisories, reminders, Fatalities, failures, innings, wrongdoings, rattles, slaps, outrages, warplanes, gunships, offenses, attempts, battles, homers, fits, Deficiencies, announcements, bits, burns, tries, items, flicks, Atrocities, Torts, events, Keys, crashes, Crimes, varnishes, processes, episodes, raiders, punches, errors, Injuries, points, shores, coups, BRICKS, touches, bullets, shocks, iraq, breaches, iraqi, deals, faults, force, airlines, cautions, INROADS, busts, sins, abuses, gunshots, swings, Missions, launches, Buttons, fouls, chimes, notices, salvoes, offences, failings, Ones, bells, wrongs, needless, forays, odds, chances, caveats, PAROS, birds, is, demands, Beaches, sounds, advices, counts, ADS, rounds, amounts, calls, cuts, Combating, scores, jolts, rocks, Wounds.
proposes, disposes, offers, exists, stops, provokes, administers, ascertains, invokes, skirts, articulates, disrupts, stipulates, suggests, illustrates, shakes, implements, transpires, considers, undertakes, discovers, generates, writes, demonstrates, investigates, understands, Guarantees, presents, retains, stays, resides, pinpoints, devastates, constitutes, translates, directs, expresses, reflects, recognises, represents, rises, inspires, reacts, creates, threatens, enters, identifies, seeks, insures, sustains, realises, imposes, evaluates, introduces, responds, maintains, accomplishes, Kicks, operates, eliminates, delivers, preserves, arises, stabs, Addresses, encounters, afflicts, describes, seems, prescribes, enacts, depicts, enshrines, regulates, penalises, presupposes, interferes, pertains, determines, infects, prepares, respect, respects, intends, influences, calculates, wears, confronts, appears, prohibits, contends, keeps, suffers, arrives, prevails, concerns, coverage, protects, encompasses, removes, entrenches, raises, secures, compromises, acknowledges, experiences, feels, receives, assesses, finds, attained, attains, governs, Affects, Institutes, explains, relates, configures, derives, Leaves, produces, indicates, remains, combats, coincides, envisages, assigns, invades, confers, Violates, Permits, achieves, sweep, sweeps, realizes, crosses, displays, observes, preys, tackles, encroaches, obtains, compiles, highlights, declares, ensures, contains, impairs, recognizes, discusses, formulates, submits, earns, specifies, serves, elaborates, opens, holds, emerges, Bears, infringes, monitors, diminishes, seals, pursues, hurts, stands, arouses, completes, takes, succeeds, refers, enjoys, jeopardizes, contributes, informs, satisfies, poses, drafts, undermines, collides, performs, thinks, title, impinges, pummels, inquires, touch, yields, reveals, believes, facilitates, concludes, proves, conducts, manages, argues, passes, continues, defines, incursions, adheres, affirms, Met, meets, brings, Comes, assumes, affords, assures, tends, aims, lies, charts, spends, lays, conveys, amazes, erodes, covers, outlines, contrary, embodies, fulfils, fails, offends, turns, fulfills, declines, states, builds, involves, damages, cares, engages, causes, Plays, adopts, sees, harms, fires, sends, signals, entails, handles, enforces, looks, fixes, reads, draws, asks, upholds, happens, follows, hampers, implies, leads, sums, applies, adds, clarifies, forges, Carries, falls, occurs, blames, heading, Chops, attaches, enables, Worries, says, Lends, Focuses, focusses, becomes, wins, Faces, Gives, marks, moves, runs, goes, rattles, gets, tries, lets, puts, places, processes, Gains, POPS, makes, N, touches, helps, means, breaches, deals, allows, swings, is, Does, sounds, amounts, calls, criticizes, injures, hammers, sets, shoots, extends, assails, jolts, rips, posts, drops, Wounds.
bombardments, sit-ins, offensives, stoppages, shootings, beatings, blows, IMPACTS.
The sun strikes me down.
It strikes me solemn to think of it.
storage, streak, schistorrhachis, soak through, secateurs, strix, sitotroga, storax, styrax, squeak through, sidetrack, store cheese, satirize, sagittarius, styracaceae, staircase, satiric, scatter rug, starchy, satyric, starch, strachey, see-through, storehouse, Skeeter Hawk, struck, stark, studhorse, Starkey, strake, stroke, stork, strauss, stairs, siderosis, stearic, steerage, satyriasis, sistrurus, see through, sheetrock, stargaze, Scut Work, satureja, side horse, stirk, steerageway, stress, streaky, satirise, Saiga Tatarica.


text:
Q: Find path of a PID process I want to get the path of a PID. For example the PID is 8036, I want to get the path of it. Like this:
Get-Path -pid 8036

Output:
C:\Windows\svchost.exe

How can I do that? Or can I?

A: Try:
Get-Process -Id 8036 -FileVersionInfo | Select FileName

redpajama_set_name: RedPajamaStackExchange


text:
title: Mattias
subtitle: Recenserar öl
layout: default
modal-id: 33
date: 2016-07-11
img: mattias.jpg
thumbnail: mattias-thumbnail.jpg
alt: Inte bara en stor stark
project-date: Juli 2016
client: Privat
category: Reportagefoto
description: Mattias gillar öl, ja så mycket att han har en ölkällare, eget bryggeri och en Instagramblogg där han recenserar öl. Bloggen får mer och mer kärlek. Med omsorg häller han upp ölen och arrangerar olika stilleben, fotograferar, dricker, betygsätter och klär sedan smaken med ord. Från början hade bilderna karaktären av snapshots men de har på senare tid blivit allt mer genomtänkta, ibland till sambons förtret som tålmodigt måste vänta medan Mattias minutiöst ställer upp glas och flaska framför kameran. Bloggen följs av över 1000 personer. Många av dem som gör sin röst hörd i kommentarsfältet är konnässörer och potentiella dryckesbröder. Instagramkontot "Inte bara en stor stark", har nu fått en egen hemsida med samma namn.
---


text:
Sallent de gallego-refugio respomuso
Hiking TraIl nearby Monte Pacino natural area, in España and Sallent de Gállego population.
The largest locality in the area is Sallent de Gállego, with a population of 1,281 persons, at a distance of 0.164 kilometers from the center of the map.
Min height: 1,283 meters above sea level.
Max height: 2,146 meters above sea level.
Average height: 1,595 meters above sea level.
Average slope uphill: 11.564 %.
Average slope downhill: -12.736 %.
Pista de Pádel, Paseo de Fermín Arrudi, Formigal, Sallent de Gállego, Alto Gállego, Huesca, Aragon, 22640, Spain
Hotel Balaitus, Calle de Francia, Formigal, Sallent de Gállego, Alto Gállego, Huesca, Aragon, 22640, Spain
You can find around this zone pois of interest and places relates with Populated areas, municipalities, cities and towns, what to see / tourism / architecture and monuments, Mountains and hills
Lanuza
Saqués
Tramacastilla de Tena
Iglesia de Nuestra Señora de la Asunción (Sallent de Gállego)
Pico Argualas
Macizo de Balaitús
Lac de Batbielh
Pico Gran Facha
Aramón Panticosa
Valle de Tena
Portalet d'Aneu
Sandiniés
Baños de Panticosa
Sallent de Gállego ( Population: 1,281 persons, At a distance of 0.164 kilometers from the center of the map)
Hoz de Jaca ( Population: 75 persons, At a distance of 10.191 kilometers from the center of the map)
Biescas ( Population: 0 persons, At a distance of 17.425 kilometers from the center of the map)
Canfranc ( Population: 589 persons, At a distance of 18.506 kilometers from the center of the map)
Yésero ( Population: 76 persons, At a distance of 20.011 kilometers from the center of the map)
Villanúa ( Population: 411 persons, At a distance of 21.471 kilometers from the center of the map)
Cauterets ( Population: 1,080 persons, At a distance of 23.577 kilometers from the center of the map)
Castiello de Jaca ( Population: 212 persons, At a distance of 26.025 kilometers from the center of the map)
Sallent de Gállego-El Salto-Pico Pazino (at a distance of 0.000 kilometers)
SALTO SALLENT (at a distance of 0.000 kilometers)
Sallent - La Sarra - El Salto (at a distance of 0.000 kilometers)
Vuelta al embalse de Lanuza y cascada de El Salto de Sallent (at a distance of 0.000 kilometers)
La Sarra - Sallent (at a distance of 0.000 kilometers)
HU | Selva Sallent (1/2Subida a Pacino) con niños (at a distance of 0.000 kilometers)
Subida y vuelta al Pazino (at a distance of 0.000 kilometers)
Circular Sallent de Gállego - Collado Pacino (at a distance of 0.000 kilometers)
Sallent-Collado Pazino-Sallent (at a distance of 0.000 kilometers)
SALLENT PACINO SALLENT CIRULAR (at a distance of 0.000 kilometers)


The book Employee's Guide to Success – Improve with Lean!
You can buy our books very simply through our web shop.
You can buy or rent the business games after you have been trained in how to run them,* so that leaders and other employees can run the games themselves and train their own organization using the concept of Train the Trainer. Of course, if you prefer, Part Development can run the games within your organization.
Based on customer need we are continuously developing new training material to support our striving for effective learning.


This is a custom laser etched Italian charm. It will make a great addition to your bracelet or a perfect personalized gift. It is stamped on the back with the manufacturer information.
Our Italian charms fit all medium size Italian Modular Charm bracelets (Zoppini, ReFlorence, Unodomani, Passavinti, Boxing, Casa D�Oro, Puzzle, Pro Charms, Enigma, Talexia, etc.).
This is a custom laser etched Italian charm. Follow this process to order your custom laser charm.
Choose the font style in the drop down box.
Add a graphic if you want. Put the description (smile, horse, cat, etc) in with the text and put in parentheses.
Choose the quantity in the shopping cart.
The Custom Laser Guide provides step-by-step instructions along with examples to make the ordering process simple.
If you have any questions, please email us at customlaser@clearlycharming.com.
You can also print out the Custom Laser Guide and fax it back to us at (408) 267-3812 with your selections. Please include your shipping and billing information in your fax.
Custom Lasers will usually ship in 1-2 weeks.


Choosing Tile & Grout Services in Marlton Voorhees, NJ.
Your home should be fully cleaned every now and then, and there are services that you can find that will help you get the place cleaned from the top to the bottom. The floors in your home should be treated in a special way, and there are people out there who are going to provide you with the help that you need to give those floors all that they deserve. When you are Choosing Tile & Grout Services in Marlton Voorhees, NJ. there is help out there for you. You simply need to know what to look for as you seek out the help that you need.
When you are trying to find someone who will handle your tile & grout cleaning needs, make sure that you seek out someone who knows what they are doing. Make sure that you find someone who understands tiles and knows how to care for them. Find someone who knows what it takes to get grout looking good again. Make sure that the one that you turn to in order to have your tiles cared for is someone who has knowledge and will use that knowledge in order to help you.
As you are Choosing Tile & Grout Services in Marlton Voorhees, NJ. who will step in and help care for your tiles, pay attention to the costs of the various services that are out there. You are looking for tile & grout help that is going to work with your budget, and you have to find someone who will offer you the care that you need at a cost that is fair. Make sure that you find a company that is going to treat you right and provide you with help at a price that is good. You deserve the best for your home.


text:
Click to learn about our measures in response to COVID-19
Wrongdoing
What is Wrongdoing?
Deciding to Make a Disclosure
Support for Legal Advice
Submit a Disclosure Online
Wrongdoing – More
What is Reprisal?
Deciding to Make a Reprisal Complaint
Filing a Reprisal Complaint
Investigation Process
Submit a Reprisal Complaint Online
Reprisal – More
Details about the Process
Investigations – More
Referrals to the Tribunal
Results – More
Communications Products
Resources – More
Office Coordinates
Our Vision, Mandate and Values
The Public Servants Disclosure Protection Act
About Us – More
Office of the Public Sector Integrity Commissioner
How to resize textAAA
Help: Change text size
To change text size, use the browser commands.
In the toolbar, select View > Zoom > Zoom In, Reset or Zoom Out. On the keyboard, press COMMAND + to zoom in, COMMAND - to zoom out or COMMAND 0 to reset.
In the toolbar, select View > Zoom In, Actual Size or Zoom Out. On the keyboard, press COMMAND + (Mac) or CTRL + (Windows) to zoom in, COMMAND - (Mac) or CTRL - (Windows) to zoom out or COMMAND 0 (Mac) or CTRL 0 (Windows) to view actual size
In the toolbar, select View > Zoom > Zoom In, Reset or Zoom Out. On the keyboard, press COMMAND + (Mac) or CTRL + (Windows) to zoom in, COMMAND - (Mac) or CTRL - (Windows) to zoom out or COMMAND 0 (Mac) or CTRL 0 (Windows) to view actual size
In the toolbar, select Options > Zoom > Zoom In, Custom or Zoom Out. On the keyboard, press CTRL + to zoom in, CTRL - to zoom out or CTRL 0 to reset.
Before deciding whether to file a complaint, we recommend you consult the following frequently asked questions:
How am I protected from reprisal?
Your identity will be protected. Unfortunately reprisal actions can occur. If you made a protected disclosure or participated as a witness in an investigation and reprisal actions have been taken against you, contact our Office as soon as possible. We have sole jurisdiction in handling reprisal complaints.
The Act states that you must contact the Office within 60 days of knowing that you have been reprised against. This time period can be extended by the Commissioner depending on the circumstances of each case, so it is important to file a complaint even if the alleged reprisal occurred more than 60 days ago.
The Commissioner must make a decision whether to investigate within 15 days of your complaint being filed and when we have all necessary information to complete the assessment.
If, after an investigation, the Commissioner has reasonable grounds to believe that reprisals occurred, he must refer the case to the Public Servants Disclosure Protection Tribunal (theTribunal). The Tribunal is composed of judges of the Federal Court or a superior court of a province.
During the course of a reprisal investigation, if deemed appropriate, the Commissioner may suggest a voluntary conciliation between the parties. This means that you and your employer can come to a resolution together. We can help you with this process.
What will the Tribunal do?
The Tribunal will decide if reprisal actions took place, and it has the power to order the appropriate remedy for you. The Tribunal can also order disciplinary sanctions against those who reprised against you, if requested by the Commissioner.
Anyone who takes reprisal action against you is committing an offence and could face a fine of up to $10,000 and/or imprisonment for up to two years.
It is important to note that once you make a reprisal complaint, and we launch an investigation, if your case is referred to the Tribunal, the information generally becomes public and any person can attend the Tribunal's hearings.
Am I protected from reprisal if I disclosed a wrongdoing internally and not directly to the Office?
Yes, whether you disclosed a wrongdoing internally to your organization or to our Office, you are protected from reprisal.
If you believe that a reprisal has been taken against you after you have made a disclosure of wrongdoing, you should contact our Office immediately. You must file a reprisal complaint within 60 days of the day on which you knew or ought to have known that the reprisal was taken. The Commissioner may extend this period if he believes that it is appropriate to do so considering the circumstances.
Am I protected from reprisal if the wrongdoing that I disclosed is determined to be unfounded?
Yes, the protection from reprisal applies to all protected disclosures made in good faith, even if they are determined to be unfounded after a review or investigation.
Am I protected from reprisal if I am not an employee in the federal public sector?
The Act provides protection from reprisal only for public servants or other specific individuals.
It is an offence for any employer or public servant to take reprisals. Public servants cannot reprise against contractors, or recipients of grants or contributions, who disclosed to the Commissioner an alleged wrongdoing in the federal public sector. Public servants cannot terminate a contract, withhold payment or refuse to grant a future contract on that basis.
However, our Office does not have jurisdiction to deal with reprisal complaints outside the federal public sector. Non public servants who believe they have suffered reprisals may have their complaint dealt with through existing labour relations processes that apply to them or through civil or criminal recourses.
Am I protected from reprisals under the Act for having filed an individual harassment complaint?
You are only protected from reprisals for having made a protected disclosure as contemplated under the Act or for having cooperated in an investigation into a disclosure.
The Act is intended to address wrongdoing that could seriously impact the public's confidence in the integrity of the public service. It is not intended to address matters of a personal nature, such as individual harassment complaints. While harassment is a serious matter, it is generally not considered wrongdoing under the Act.
See Policy on Complaints of Reprisal Arising from Harassment or Workplace Grievances
Note: The Treasury Board Secretariat Policy on Harassment Prevention and Resolution, the Directive and other supporting tools provide measures to address retaliatory acts as a result of having made an individual harassment complaint.
What constitutes a protected disclosure?
A protected disclosure is defined in the Act as a disclosure made by a public servant of any information that he or she believes could show that a wrongdoing as defined in the Act was committed or is about to be committed in the federal public sector, or that could show that the public servant has been asked to commit a wrongdoing.
A disclosure is protected if it is made in good faith to the public servant's supervisor, to his/her organization's designated Senior Officer for internal disclosure, or to this Office.
A protected disclosure also includes information of wrongdoing provided in the course of a parliamentary proceeding or a procedure established under any other Act of Parliament, as well as when a public servant is lawfully required to make a disclosure.
The concept of "protected" is an important one, as someone making such a disclosure is protected against reprisal.
Are all reprisal complaints reviewed?
Yes, our Office reviews all complaints of reprisal carefully and as quickly as possible.
The Commissioner may refuse to deal with a reprisal complaint if:
the complaint has been dealt with, or could more appropriately be dealt with, according to another procedure (for example, a grievance process);
the complaint is beyond the jurisdiction of the Commissioner;
the complaint was not made in good faith.
In addition, the Commissioner cannot deal with a reprisal complaint if another person or body under another Act of Parliament or a collective agreement is dealing with it.
The Commissioner will notify the complainant in writing about any further action to be taken regarding the reprisal complaint.
In the event you make a complaint of reprisal and the Commissioner decides to investigate, you are precluded from commencing a grievance or any other procedure under an Act of Parliament, (s. 19.1 (4) of the Act).
What happens after an investigation if the matter has not been settled?
If after the investigation the reprisal complaint has not been settled through conciliation, the Commissioner must either refer the matter to the Public Servants Disclosure Protection Tribunal or dismiss the complaint.
What are the consequences for a public servant who has taken a reprisal?
A public servant who has taken a reprisal may be subject to administrative or disciplinary action including termination of employment.
Allegations of reprisal have been made against me. Do I have the right to be represented by counsel?
Yes. Any person involved in a reprisal complaint may be represented by a person of their choice, including legal counsel.
How does the Commissioner decide to extend the 60 day time period to make a complaint of reprisal?
The Office has put in place the Policy on the Time Limit for Making a Complaint of Reprisal to establish the standard against which the Commissioner's decison to reject a complaint or extend the time for filing would be reviewed.
60 Queen Street, 4th Floor
Ottawa, Ontario K1P 5Y7
info@psic-ispc.gc.ca
Bronwyn Johns-O'Hara
communications@psic-ispc.gc.ca
Terms of Use • Transparency


While planning a safari tour may seem like a relatively simple pastime, you may be surprised to discover how many options are available to travellers.
There's also a diverse and ever-widening range of Africa safari activities available in 2019, from big game viewing and night safari trips to fishing, hiking and deep sea exploration.
In this post, we'll review five of the best safari tours in Africa and ask why they're so popular.
We start with a tour that can take days on average, depending on who you book with, while also enabling you to see five or six of Africa's most alluring safari destinations.
This tour kicks off in Kenya's iconic Masai Mara, which is home to some of the highest concentrations of 'the big five' and the most complex ecosystems in Africa.
This stunning tour also heads south into Tanzania, where you can take in the wonders of a Serengeti safari as well as marvelling in the breath-taking landscapes associated with Lake Manyara and the Ngorongoro Crater. As a result, it offers incredible access to an incredible array of wildlife including elephants, rhinos and buffalo.
Next up is Zambia's underrated South Luangwa National Park, which is widely considered by experts to be the home of walking safaris in Africa.
This is another tour that's ideal for those of you with a passion for wildlife and exploration, particularly if you're active, enjoy hiking and want to experience animals at close range as they interact in their natural environment.
This tour arguably provides one of the most intimate and exciting nature experiences in the world, while it's also less busy and congested than most of Africa's national parks.
Southern Africa is also home to several thrilling safari experiences, including Botswana's iconic Okavango Delta (which is renowned for its grassy plains being a lush habitat for animals). This is located in Northern Botswana, which is also a stones' throw from the natural wonder that is the Victoria Falls waterfall.
There are a plethora of Botstwana safari holidays to choose from as safari specialists compete to offer incredible tour packages so make sure you search around online for the best deal if you're considering visiting the area.
If you want to explore the southern Africa in even further detail, you should also check out Zimbabwe's Hwange National Park.
Famed for its vast grasslands and mopane woods, this park is home to large populations of lions, elephant herds and the endangered African wild dogs.
Its grasslands and mopane woods are home to large elephant herds, lions and African wild dogs.
Ideal for any traveller, a tour of Kenya during the dry season can provide one of the most immersive and authentic safari experiences in the world.
This tour will expose you to the Great Migration as it passes through Tanzania, while it's also renowned for exceptional game-viewing, complex ecosystems and truly breathtaking scenery.
A trip here will also take in the stunning Masai Mara, which remains home to the great Masai people and provides an incredible cultural experience during your safari adventure.
If you're planning your first safari, you could do far worse than book a two-week trip to South Africa and the capital of Cape Town.
This type of trip can pack a huge amount into a relatively short period of time, as you explore Cape Town and its surrounding winelands, visit the world-famous Kruger National Park and take a self-drive trip along the renowned Garden Route.
Not only is this type of tour secure and immersive, but the country is also one of the few on the continent of Africa to be classed as being malaria free.