text:
Q: How to make a dotted arrow in a commutative diagram? I have got the following code for a commutative diagram. I want the arrow from A times X to F times X to be dotted. I would really appreciate any help.
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
  \begin{tikzcd}[sep=huge]
A \times X \arrow{r}{\bar{q}\times 1_x} \arrow[swap]{dr}{q} & F \times X \arrow{d}{\epsilon} \\
 & Y
  \end{tikzcd}
\end{document}

A: As I said in my comments (and as has been copied by another user in the mean time) you can add keys like dotted. For a thicker and truly dotted line you can use this post, the normal "dots" are just small rectangles. You can also keep the arrow heads small when making the line thicker.
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}[sep=huge]
A \times X \arrow[dotted]{r}{\bar{q}\times 1_x} \arrow[swap]{dr}{q} & F \times X \arrow{d}{\epsilon} \\
 & Y
\end{tikzcd}
\qquad
\begin{tikzcd}[sep=huge]
A \times X \arrow[dash pattern=on 0pt off 3.2pt,line cap=round,line width=0.8pt]{r}{\bar{q}\times 1_x} \arrow[swap]{dr}{q} & F \times X \arrow{d}{\epsilon} \\
 & Y
\end{tikzcd}

\bigskip
\tikzset{thick true dots/.style={dash pattern=on 0pt off pi*#1,
line cap=round,line width=#1},
thick true dots/.default=0.8pt,
oricm/.style={-{cm to[width=1.5ex,length=0.8ex,line width=0.4pt]}}}
\begin{tikzcd}[sep=huge]
A \times X \arrow[thick true dots]{r}{\bar{q}\times 1_x} \arrow[swap]{dr}{q} & F \times X \arrow{d}{\epsilon} \\
 & Y
\end{tikzcd}
\qquad
\begin{tikzcd}[sep=huge]
A \times X \arrow[thick true dots=2pt]{r}{\bar{q}\times 1_x} \arrow[swap]{dr}{q} & F \times X \arrow{d}{\epsilon} \\
 & Y
\end{tikzcd}

\bigskip
\begin{tikzcd}[sep=huge]
A \times X \arrow[oricm,thick true dots]{r}{\bar{q}\times 1_x} \arrow[swap]{dr}{q} & F \times X \arrow{d}{\epsilon} \\
 & Y
\end{tikzcd}
\qquad
\begin{tikzcd}[sep=huge]
A \times X \arrow[oricm,thick true dots=2pt]{r}{\bar{q}\times 1_x} \arrow[swap]{dr}{q} & F \times X \arrow{d}{\epsilon} \\
 & Y
\end{tikzcd}
\end{document}

A: Here you are:
\documentclass{article}
\usepackage{tikz-cd}

 \begin{document}

\begin{tikzcd}[sep=huge]
A \times X \arrow[dotted]{r}{\bar{q}\times 1_x} \arrow[swap]{dr}{q} & F \times X \arrow{d}{\epsilon} \\
& Y
\end{tikzcd}

\end{document}

Edit:
To be complete, here is a solution with pstricks which gives an easy control of the size of the dotted arrow. Load pst-node and use the psmatrix environnment:
$ \psset{arrowinset=0.15, arrows=->, linejoin=1, nodesep=3pt, labelsep=1pt}
\begin{psmatrix}[colsep=2cm]
  A\times X & F\times X \\
 & Y %
 \ncline[linewidth=1.2pt, linestyle=dotted, dotsep=2pt]{1,1}{1,2}\naput{\bar{q}\times 1_X}%
\ncline{1,1}{2,2}\nbput{q}
\ncline{1,2}{2,2}\naput{\epsilon}
  \end{psmatrix} $


text:
Brave breast cancer sufferers show their mastectomy scars in powerful images to prove they won't let disease define them
Author: Joshua Taylor / Source: mirror
Debbie Barron, 46, from York, said: "For the first time since treatment, I felt feminine and attractive" (Image: Ami Barwell)
The powerful images show fourteen women who have stood up to cancer.
They bravely showed their mastectomy scars to prove to the world they would not be defined by the disease.
The women of all ages from across the UK took part in the inspiration photoshoot for Stand Up To Cancer, showing their surgical scars in a series of honest portraits.
The project, called 'Mastectomy', has been released as part of the Stand Up To Cancer campaign and marks the beginning of Breast Cancer Awareness Month.
Launched in the UK in 2012, Stand Up To Cancer is a joint fundraising campaign from Cancer Research UK and Channel 4, raising money to support game-changing cancer research that will help save lives.
Anonymous, 47, from the West Midlands, said: "I hope people will see beyond our surgeries, we're still perfectly normal people that have families, jobs and live the best life that we can" (Image: Ami Barwell)
Deborah Williams, 53, from Droitwich Spa, Worcestershire, said: "By sharing my photos publicly I hope that awareness of breast cancer is raised and that no matter what scarring there is, we're still beautiful women" (Image: Ami Barwell)
Shot by Ami Barwell, 39, a York-based photographer, the project was inspired by Ami's mum, Sue, who was first diagnosed with breast cancer in 1993.
She underwent a mastectomy, followed by radiotherapy and chemotherapy, then in 2011 the cancer returned in her lymph nodes.
Sue, 69, was treated again with chemotherapy and has since made a full recovery.
Photographer Ami said: "It was absolutely devastating when my mum was diagnosed with breast cancer.
Anonymous, 53, from North Yorkshire, said: "I want to show everyone that it's OK to live without a boob or two, it wasn't my choice to follow this path but I did choose to make the most of what I have and to get on with life" (Image: Ami Barwell)
Fiona O'Donnell, 44, from Northampton, said: "I feel so proud of the pictures, if I manage to save just one life having taken part, then I've achieved something" (Image: Ami Barwell)
Gillian Trim, 55, from London, said: "I want to show those women who are going through their cancer journey that it is doable, not easy, but with time and acceptance you can get through it and that we are still sexy and beautiful" (Image: Ami Barwell)
"I wanted to shoot this project to raise awareness and show the defiance of women who remain equally as beautiful without breasts."
"Stand Up To Cancer is about bringing people together to rebel and rise up against cancer.
"The photographs show that, despite what they've been through, these women are empowered. They are strong, happy and sexy."

redpajama_set_name: RedPajamaCommonCrawl


text:
package inst

import (
	"fmt"
	"time"

	"vitess.io/vitess/go/vt/log"

	"google.golang.org/protobuf/encoding/prototext"

	topodatapb "vitess.io/vitess/go/vt/proto/topodata"
	"vitess.io/vitess/go/vt/topo"
	"vitess.io/vitess/go/vt/vtctl/reparentutil"
	"vitess.io/vitess/go/vt/vtorc/config"
	"vitess.io/vitess/go/vt/vtorc/db"
	"vitess.io/vitess/go/vt/vtorc/process"
	"vitess.io/vitess/go/vt/vtorc/util"

	"github.com/patrickmn/go-cache"
	"github.com/rcrowley/go-metrics"

	"github.com/openark/golib/sqlutils"
)

var analysisChangeWriteAttemptCounter = metrics.NewCounter()
var analysisChangeWriteCounter = metrics.NewCounter()

var recentInstantAnalysis *cache.Cache

func init() {
	_ = metrics.Register("analysis.change.write.attempt", analysisChangeWriteAttemptCounter)
	_ = metrics.Register("analysis.change.write", analysisChangeWriteCounter)

	go initializeAnalysisDaoPostConfiguration()
}

func initializeAnalysisDaoPostConfiguration() {
	config.WaitForConfigurationToBeLoaded()

	recentInstantAnalysis = cache.New(time.Duration(config.Config.RecoveryPollSeconds*2)*time.Second, time.Second)
}

type clusterAnalysis struct {
	hasClusterwideAction bool
	primaryKey           *InstanceKey
	durability           reparentutil.Durabler
}

// GetReplicationAnalysis will check for replication problems (dead primary; unreachable primary; etc)
func GetReplicationAnalysis(clusterName string, hints *ReplicationAnalysisHints) ([]ReplicationAnalysis, error) {
	result := []ReplicationAnalysis{}

	// TODO(sougou); deprecate ReduceReplicationAnalysisCount
	args := sqlutils.Args(config.Config.ReasonableReplicationLagSeconds, ValidSecondsFromSeenToLastAttemptedCheck(), config.Config.ReasonableReplicationLagSeconds, clusterName)
	query := `
	SELECT
		vitess_tablet.info AS tablet_info,
		vitess_tablet.hostname,
		vitess_tablet.port,
		vitess_tablet.tablet_type,
		vitess_tablet.primary_timestamp,
		vitess_tablet.shard AS shard,
		vitess_keyspace.keyspace AS keyspace,
		vitess_keyspace.keyspace_type AS keyspace_type,
		vitess_keyspace.durability_policy AS durability_policy,
		primary_instance.read_only AS read_only,
		MIN(primary_instance.data_center) AS data_center,
		MIN(primary_instance.region) AS region,
		MIN(primary_instance.physical_environment) AS physical_environment,
		MIN(primary_instance.source_host) AS source_host,
		MIN(primary_instance.source_port) AS source_port,
		MIN(primary_instance.cluster_name) AS cluster_name,
		MIN(primary_instance.binary_log_file) AS binary_log_file,
		MIN(primary_instance.binary_log_pos) AS binary_log_pos,
		MIN(primary_tablet.info) AS primary_tablet_info,
		MIN(
			IFNULL(
				primary_instance.binary_log_file = database_instance_stale_binlog_coordinates.binary_log_file
				AND primary_instance.binary_log_pos = database_instance_stale_binlog_coordinates.binary_log_pos
				AND database_instance_stale_binlog_coordinates.first_seen < NOW() - interval ? second,
				0
			)
		) AS is_stale_binlog_coordinates,
		MIN(
			IFNULL(
				cluster_domain_name.domain_name,
				primary_instance.cluster_name
			)
		) AS cluster_domain,
		MIN(
			primary_instance.last_checked <= primary_instance.last_seen
			and primary_instance.last_attempted_check <= primary_instance.last_seen + interval ? second
		) = 1 AS is_last_check_valid,
		/* To be considered a primary, traditional async replication must not be present/valid AND the host should either */
		/* not be a replication group member OR be the primary of the replication group */
		MIN(primary_instance.last_check_partial_success) as last_check_partial_success,
		MIN(
			(
				primary_instance.source_host IN ('', '_')
				OR primary_instance.source_port = 0
				OR substr(primary_instance.source_host, 1, 2) = '//'
			)
			AND (
				primary_instance.replication_group_name = ''
				OR primary_instance.replication_group_member_role = 'PRIMARY'
			)
		) AS is_primary,
		MIN(primary_instance.is_co_primary) AS is_co_primary,
		MIN(primary_instance.gtid_mode) AS gtid_mode,
		COUNT(replica_instance.server_id) AS count_replicas,
		IFNULL(
			SUM(
				replica_instance.last_checked <= replica_instance.last_seen
			),
			0
		) AS count_valid_replicas,
		IFNULL(
			SUM(
				replica_instance.last_checked <= replica_instance.last_seen
				AND replica_instance.replica_io_running != 0
				AND replica_instance.replica_sql_running != 0
			),
			0
		) AS count_valid_replicating_replicas,
		IFNULL(
			SUM(
				replica_instance.last_checked <= replica_instance.last_seen
				AND replica_instance.replica_io_running = 0
				AND replica_instance.last_io_error like '%%error %%connecting to master%%'
				AND replica_instance.replica_sql_running = 1
			),
			0
		) AS count_replicas_failing_to_connect_to_primary,
		MIN(primary_instance.replication_depth) AS replication_depth,
		MIN(
			primary_instance.replica_sql_running = 1
			AND primary_instance.replica_io_running = 0
			AND primary_instance.last_io_error like '%%error %%connecting to master%%'
		) AS is_failing_to_connect_to_primary,
		MIN(
			primary_instance.replica_sql_running = 0
			OR primary_instance.replica_io_running = 0
		) AS replication_stopped,
		MIN(
			primary_downtime.downtime_active is not null
			and ifnull(primary_downtime.end_timestamp, now()) > now()
		) AS is_downtimed,
		MIN(
			IFNULL(primary_downtime.end_timestamp, '')
		) AS downtime_end_timestamp,
		MIN(
			IFNULL(
				unix_timestamp() - unix_timestamp(primary_downtime.end_timestamp),
				0
			)
		) AS downtime_remaining_seconds,
		MIN(
			primary_instance.binlog_server
		) AS is_binlog_server,
		MIN(
			primary_instance.supports_oracle_gtid
		) AS supports_oracle_gtid,
		MIN(
			primary_instance.semi_sync_primary_enabled
		) AS semi_sync_primary_enabled,
		MIN(
			primary_instance.semi_sync_primary_wait_for_replica_count
		) AS semi_sync_primary_wait_for_replica_count,
		MIN(
			primary_instance.semi_sync_primary_clients
		) AS semi_sync_primary_clients,
		MIN(
			primary_instance.semi_sync_primary_status
		) AS semi_sync_primary_status,
		MIN(
			primary_instance.semi_sync_replica_enabled
		) AS semi_sync_replica_enabled,
		SUM(replica_instance.is_co_primary) AS count_co_primary_replicas,
		SUM(replica_instance.oracle_gtid) AS count_oracle_gtid_replicas,
		IFNULL(
			SUM(
				replica_instance.last_checked <= replica_instance.last_seen
				AND replica_instance.oracle_gtid != 0
			),
			0
		) AS count_valid_oracle_gtid_replicas,
		SUM(
			replica_instance.binlog_server
		) AS count_binlog_server_replicas,
		IFNULL(
			SUM(
				replica_instance.last_checked <= replica_instance.last_seen
				AND replica_instance.binlog_server != 0
			),
			0
		) AS count_valid_binlog_server_replicas,
		SUM(
			replica_instance.semi_sync_replica_enabled
		) AS count_semi_sync_replicas,
		IFNULL(
			SUM(
				replica_instance.last_checked <= replica_instance.last_seen
				AND replica_instance.semi_sync_replica_enabled != 0
			),
			0
		) AS count_valid_semi_sync_replicas,
		MIN(
			primary_instance.mariadb_gtid
		) AS is_mariadb_gtid,
		SUM(replica_instance.mariadb_gtid) AS count_mariadb_gtid_replicas,
		IFNULL(
			SUM(
				replica_instance.last_checked <= replica_instance.last_seen
				AND replica_instance.mariadb_gtid != 0
			),
			0
		) AS count_valid_mariadb_gtid_replicas,
		IFNULL(
			SUM(
				replica_instance.log_bin
				AND replica_instance.log_replica_updates
			),
			0
		) AS count_logging_replicas,
		IFNULL(
			SUM(
				replica_instance.log_bin
				AND replica_instance.log_replica_updates
				AND replica_instance.binlog_format = 'STATEMENT'
			),
			0
		) AS count_statement_based_logging_replicas,
		IFNULL(
			SUM(
				replica_instance.log_bin
				AND replica_instance.log_replica_updates
				AND replica_instance.binlog_format = 'MIXED'
			),
			0
		) AS count_mixed_based_logging_replicas,
		IFNULL(
			SUM(
				replica_instance.log_bin
				AND replica_instance.log_replica_updates
				AND replica_instance.binlog_format = 'ROW'
			),
			0
		) AS count_row_based_logging_replicas,
		IFNULL(
			SUM(replica_instance.sql_delay > 0),
			0
		) AS count_delayed_replicas,
		IFNULL(
			SUM(replica_instance.replica_lag_seconds > ?),
			0
		) AS count_lagging_replicas,
		IFNULL(MIN(replica_instance.gtid_mode), '') AS min_replica_gtid_mode,
		IFNULL(MAX(replica_instance.gtid_mode), '') AS max_replica_gtid_mode,
		IFNULL(
			MAX(
				case when replica_downtime.downtime_active is not null
				and ifnull(replica_downtime.end_timestamp, now()) > now() then '' else replica_instance.gtid_errant end
			),
			''
		) AS max_replica_gtid_errant,
		IFNULL(
			SUM(
				replica_downtime.downtime_active is not null
				and ifnull(replica_downtime.end_timestamp, now()) > now()
			),
			0
		) AS count_downtimed_replicas,
		COUNT(
			DISTINCT case when replica_instance.log_bin
			AND replica_instance.log_replica_updates then replica_instance.major_version else NULL end
		) AS count_distinct_logging_major_versions
	FROM
		vitess_tablet
		JOIN vitess_keyspace ON (
			vitess_tablet.keyspace = vitess_keyspace.keyspace
		)
		JOIN database_instance primary_instance ON (
			vitess_tablet.hostname = primary_instance.hostname
			AND vitess_tablet.port = primary_instance.port
		)
		LEFT JOIN vitess_tablet primary_tablet ON (
			primary_tablet.hostname = primary_instance.source_host
			AND primary_tablet.port = primary_instance.source_port
		)
		LEFT JOIN hostname_resolve ON (
			primary_instance.hostname = hostname_resolve.hostname
		)
		LEFT JOIN database_instance replica_instance ON (
			COALESCE(
				hostname_resolve.resolved_hostname,
				primary_instance.hostname
			) = replica_instance.source_host
			AND primary_instance.port = replica_instance.source_port
		)
		LEFT JOIN database_instance_maintenance ON (
			primary_instance.hostname = database_instance_maintenance.hostname
			AND primary_instance.port = database_instance_maintenance.port
			AND database_instance_maintenance.maintenance_active = 1
		)
		LEFT JOIN database_instance_stale_binlog_coordinates ON (
			primary_instance.hostname = database_instance_stale_binlog_coordinates.hostname
			AND primary_instance.port = database_instance_stale_binlog_coordinates.port
		)
		LEFT JOIN database_instance_downtime as primary_downtime ON (
			primary_instance.hostname = primary_downtime.hostname
			AND primary_instance.port = primary_downtime.port
			AND primary_downtime.downtime_active = 1
		)
		LEFT JOIN database_instance_downtime as replica_downtime ON (
			replica_instance.hostname = replica_downtime.hostname
			AND replica_instance.port = replica_downtime.port
			AND replica_downtime.downtime_active = 1
		)
		LEFT JOIN cluster_domain_name ON (
			cluster_domain_name.cluster_name = primary_instance.cluster_name
		)
	WHERE
		database_instance_maintenance.database_instance_maintenance_id IS NULL
		AND ? IN ('', primary_instance.cluster_name)
	GROUP BY
		vitess_tablet.hostname,
		vitess_tablet.port
	ORDER BY
		vitess_tablet.tablet_type ASC,
		vitess_tablet.primary_timestamp DESC
	`

	clusters := make(map[string]*clusterAnalysis)
	err := db.Db.QueryVTOrc(query, args, func(m sqlutils.RowMap) error {
		a := ReplicationAnalysis{
			Analysis:               NoProblem,
			ProcessingNodeHostname: process.ThisHostname,
			ProcessingNodeToken:    util.ProcessToken.Hash,
		}

		tablet := &topodatapb.Tablet{}
		if err := prototext.Unmarshal([]byte(m.GetString("tablet_info")), tablet); err != nil {
			log.Errorf("could not read tablet %v: %v", m.GetString("tablet_info"), err)
			return nil
		}

		primaryTablet := &topodatapb.Tablet{}
		if str := m.GetString("primary_tablet_info"); str != "" {
			if err := prototext.Unmarshal([]byte(str), primaryTablet); err != nil {
				log.Errorf("could not read tablet %v: %v", str, err)
				return nil
			}
		}

		a.TabletType = tablet.Type
		a.AnalyzedKeyspace = m.GetString("keyspace")
		a.AnalyzedShard = m.GetString("shard")
		a.PrimaryTimeStamp = m.GetTime("primary_timestamp")

		if keyspaceType := topodatapb.KeyspaceType(m.GetInt("keyspace_type")); keyspaceType == topodatapb.KeyspaceType_SNAPSHOT {
			log.Errorf("keyspace %v is a snapshot keyspace. Skipping.", a.AnalyzedKeyspace)
			return nil
		}

		a.IsPrimary = m.GetBool("is_primary")
		countCoPrimaryReplicas := m.GetUint("count_co_primary_replicas")
		a.IsCoPrimary = m.GetBool("is_co_primary") || (countCoPrimaryReplicas > 0)
		a.AnalyzedInstanceKey = InstanceKey{Hostname: m.GetString("hostname"), Port: m.GetInt("port")}
		a.AnalyzedInstancePrimaryKey = InstanceKey{Hostname: m.GetString("source_host"), Port: m.GetInt("source_port")}
		a.AnalyzedInstanceDataCenter = m.GetString("data_center")
		a.AnalyzedInstanceRegion = m.GetString("region")
		a.AnalyzedInstancePhysicalEnvironment = m.GetString("physical_environment")
		a.AnalyzedInstanceBinlogCoordinates = BinlogCoordinates{
			LogFile: m.GetString("binary_log_file"),
			LogPos:  m.GetInt64("binary_log_pos"),
			Type:    BinaryLog,
		}
		isStaleBinlogCoordinates := m.GetBool("is_stale_binlog_coordinates")
		a.ClusterDetails.ClusterName = m.GetString("cluster_name")
		a.ClusterDetails.ClusterDomain = m.GetString("cluster_domain")
		a.GTIDMode = m.GetString("gtid_mode")
		a.LastCheckValid = m.GetBool("is_last_check_valid")
		a.LastCheckPartialSuccess = m.GetBool("last_check_partial_success")
		a.CountReplicas = m.GetUint("count_replicas")
		a.CountValidReplicas = m.GetUint("count_valid_replicas")
		a.CountValidReplicatingReplicas = m.GetUint("count_valid_replicating_replicas")
		a.CountReplicasFailingToConnectToPrimary = m.GetUint("count_replicas_failing_to_connect_to_primary")
		a.CountDowntimedReplicas = m.GetUint("count_downtimed_replicas")
		a.ReplicationDepth = m.GetUint("replication_depth")
		a.IsFailingToConnectToPrimary = m.GetBool("is_failing_to_connect_to_primary")
		a.ReplicationStopped = m.GetBool("replication_stopped")
		a.IsDowntimed = m.GetBool("is_downtimed")
		a.DowntimeEndTimestamp = m.GetString("downtime_end_timestamp")
		a.DowntimeRemainingSeconds = m.GetInt("downtime_remaining_seconds")
		a.IsBinlogServer = m.GetBool("is_binlog_server")
		a.ClusterDetails.ReadRecoveryInfo()

		countValidOracleGTIDReplicas := m.GetUint("count_valid_oracle_gtid_replicas")
		a.OracleGTIDImmediateTopology = countValidOracleGTIDReplicas == a.CountValidReplicas && a.CountValidReplicas > 0
		countValidMariaDBGTIDReplicas := m.GetUint("count_valid_mariadb_gtid_replicas")
		a.MariaDBGTIDImmediateTopology = countValidMariaDBGTIDReplicas == a.CountValidReplicas && a.CountValidReplicas > 0
		countValidBinlogServerReplicas := m.GetUint("count_valid_binlog_server_replicas")
		a.BinlogServerImmediateTopology = countValidBinlogServerReplicas == a.CountValidReplicas && a.CountValidReplicas > 0
		a.SemiSyncPrimaryEnabled = m.GetBool("semi_sync_primary_enabled")
		a.SemiSyncPrimaryStatus = m.GetBool("semi_sync_primary_status")
		a.SemiSyncReplicaEnabled = m.GetBool("semi_sync_replica_enabled")
		a.CountSemiSyncReplicasEnabled = m.GetUint("count_semi_sync_replicas")
		// countValidSemiSyncReplicasEnabled := m.GetUint("count_valid_semi_sync_replicas")
		a.SemiSyncPrimaryWaitForReplicaCount = m.GetUint("semi_sync_primary_wait_for_replica_count")
		a.SemiSyncPrimaryClients = m.GetUint("semi_sync_primary_clients")

		a.MinReplicaGTIDMode = m.GetString("min_replica_gtid_mode")
		a.MaxReplicaGTIDMode = m.GetString("max_replica_gtid_mode")
		a.MaxReplicaGTIDErrant = m.GetString("max_replica_gtid_errant")

		a.CountLoggingReplicas = m.GetUint("count_logging_replicas")
		a.CountStatementBasedLoggingReplicas = m.GetUint("count_statement_based_logging_replicas")
		a.CountMixedBasedLoggingReplicas = m.GetUint("count_mixed_based_logging_replicas")
		a.CountRowBasedLoggingReplicas = m.GetUint("count_row_based_logging_replicas")
		a.CountDistinctMajorVersionsLoggingReplicas = m.GetUint("count_distinct_logging_major_versions")

		a.CountDelayedReplicas = m.GetUint("count_delayed_replicas")
		a.CountLaggingReplicas = m.GetUint("count_lagging_replicas")

		a.IsReadOnly = m.GetUint("read_only") == 1

		if !a.LastCheckValid {
			analysisMessage := fmt.Sprintf("analysis: ClusterName: %+v, IsPrimary: %+v, LastCheckValid: %+v, LastCheckPartialSuccess: %+v, CountReplicas: %+v, CountValidReplicas: %+v, CountValidReplicatingReplicas: %+v, CountLaggingReplicas: %+v, CountDelayedReplicas: %+v, CountReplicasFailingToConnectToPrimary: %+v",
				a.ClusterDetails.ClusterName, a.IsPrimary, a.LastCheckValid, a.LastCheckPartialSuccess, a.CountReplicas, a.CountValidReplicas, a.CountValidReplicatingReplicas, a.CountLaggingReplicas, a.CountDelayedReplicas, a.CountReplicasFailingToConnectToPrimary,
			)
			if util.ClearToLog("analysis_dao", analysisMessage) {
				log.Infof(analysisMessage)
			}
		}
		if clusters[a.ClusterDetails.ClusterName] == nil {
			clusters[a.ClusterDetails.ClusterName] = &clusterAnalysis{}
			if a.TabletType == topodatapb.TabletType_PRIMARY {
				a.IsClusterPrimary = true
				clusters[a.ClusterDetails.ClusterName].primaryKey = &a.AnalyzedInstanceKey
			}
			durabilityPolicy := m.GetString("durability_policy")
			if durabilityPolicy == "" {
				log.Errorf("ignoring keyspace %v because no durability_policy is set. Please set it using SetKeyspaceDurabilityPolicy", a.AnalyzedKeyspace)
				return nil
			}
			durability, err := reparentutil.GetDurabilityPolicy(durabilityPolicy)
			if err != nil {
				log.Errorf("can't get the durability policy %v - %v. Skipping keyspace - %v.", durabilityPolicy, err, a.AnalyzedKeyspace)
				return nil
			}
			clusters[a.ClusterDetails.ClusterName].durability = durability
		}
		// ca has clusterwide info
		ca := clusters[a.ClusterDetails.ClusterName]
		if ca.hasClusterwideAction {
			// We can only take one cluster level action at a time.
			return nil
		}
		if ca.durability == nil {
			// We failed to load the durability policy, so we shouldn't run any analysis
			return nil
		}
		if a.IsClusterPrimary && !a.LastCheckValid && a.CountReplicas == 0 {
			a.Analysis = DeadPrimaryWithoutReplicas
			a.Description = "Primary cannot be reached by vtorc and has no replica"
			ca.hasClusterwideAction = true
			//
		} else if a.IsClusterPrimary && !a.LastCheckValid && a.CountValidReplicas == a.CountReplicas && a.CountValidReplicatingReplicas == 0 {
			a.Analysis = DeadPrimary
			a.Description = "Primary cannot be reached by vtorc and none of its replicas is replicating"
			ca.hasClusterwideAction = true
			//
		} else if a.IsClusterPrimary && !a.LastCheckValid && a.CountReplicas > 0 && a.CountValidReplicas == 0 && a.CountValidReplicatingReplicas == 0 {
			a.Analysis = DeadPrimaryAndReplicas
			a.Description = "Primary cannot be reached by vtorc and none of its replicas is replicating"
			ca.hasClusterwideAction = true
			//
		} else if a.IsClusterPrimary && !a.LastCheckValid && a.CountValidReplicas < a.CountReplicas && a.CountValidReplicas > 0 && a.CountValidReplicatingReplicas == 0 {
			a.Analysis = DeadPrimaryAndSomeReplicas
			a.Description = "Primary cannot be reached by vtorc; some of its replicas are unreachable and none of its reachable replicas is replicating"
			ca.hasClusterwideAction = true
			//
		} else if a.IsClusterPrimary && !a.IsPrimary {
			a.Analysis = PrimaryHasPrimary
			a.Description = "Primary is replicating from somewhere else"
			ca.hasClusterwideAction = true
			//
		} else if a.IsClusterPrimary && a.IsReadOnly {
			a.Analysis = PrimaryIsReadOnly
			a.Description = "Primary is read-only"
			//
		} else if a.IsClusterPrimary && SemiSyncAckers(ca.durability, tablet) != 0 && !a.SemiSyncPrimaryEnabled {
			a.Analysis = PrimarySemiSyncMustBeSet
			a.Description = "Primary semi-sync must be set"
			//
		} else if a.IsClusterPrimary && SemiSyncAckers(ca.durability, tablet) == 0 && a.SemiSyncPrimaryEnabled {
			a.Analysis = PrimarySemiSyncMustNotBeSet
			a.Description = "Primary semi-sync must not be set"
			//
		} else if topo.IsReplicaType(a.TabletType) && ca.primaryKey == nil {
			a.Analysis = ClusterHasNoPrimary
			a.Description = "Cluster has no primary"
			ca.hasClusterwideAction = true
		} else if topo.IsReplicaType(a.TabletType) && !a.IsReadOnly {
			a.Analysis = ReplicaIsWritable
			a.Description = "Replica is writable"
			//
		} else if topo.IsReplicaType(a.TabletType) && a.IsPrimary {
			a.Analysis = NotConnectedToPrimary
			a.Description = "Not connected to the primary"
			//
		} else if topo.IsReplicaType(a.TabletType) && !a.IsPrimary && ca.primaryKey != nil && a.AnalyzedInstancePrimaryKey != *ca.primaryKey {
			a.Analysis = ConnectedToWrongPrimary
			a.Description = "Connected to wrong primary"
			//
		} else if topo.IsReplicaType(a.TabletType) && !a.IsPrimary && a.ReplicationStopped {
			a.Analysis = ReplicationStopped
			a.Description = "Replication is stopped"
			//
		} else if topo.IsReplicaType(a.TabletType) && !a.IsPrimary && IsReplicaSemiSync(ca.durability, primaryTablet, tablet) && !a.SemiSyncReplicaEnabled {
			a.Analysis = ReplicaSemiSyncMustBeSet
			a.Description = "Replica semi-sync must be set"
			//
		} else if topo.IsReplicaType(a.TabletType) && !a.IsPrimary && !IsReplicaSemiSync(ca.durability, primaryTablet, tablet) && a.SemiSyncReplicaEnabled {
			a.Analysis = ReplicaSemiSyncMustNotBeSet
			a.Description = "Replica semi-sync must not be set"
			//
			// TODO(sougou): Events below here are either ignored or not possible.
		} else if a.IsPrimary && !a.LastCheckValid && a.CountLaggingReplicas == a.CountReplicas && a.CountDelayedReplicas < a.CountReplicas && a.CountValidReplicatingReplicas > 0 {
			a.Analysis = UnreachablePrimaryWithLaggingReplicas
			a.Description = "Primary cannot be reached by vtorc and all of its replicas are lagging"
			//
		} else if a.IsPrimary && !a.LastCheckValid && !a.LastCheckPartialSuccess && a.CountValidReplicas > 0 && a.CountValidReplicatingReplicas > 0 {
			// partial success is here to redice noise
			a.Analysis = UnreachablePrimary
			a.Description = "Primary cannot be reached by vtorc but it has replicating replicas; possibly a network/host issue"
			//
		} else if a.IsPrimary && !a.LastCheckValid && a.LastCheckPartialSuccess && a.CountReplicasFailingToConnectToPrimary > 0 && a.CountValidReplicas > 0 && a.CountValidReplicatingReplicas > 0 {
			// there's partial success, but also at least one replica is failing to connect to primary
			a.Analysis = UnreachablePrimary
			a.Description = "Primary cannot be reached by vtorc but it has replicating replicas; possibly a network/host issue"
			//
		} else if a.IsPrimary && a.SemiSyncPrimaryEnabled && a.SemiSyncPrimaryStatus && a.SemiSyncPrimaryWaitForReplicaCount > 0 && a.SemiSyncPrimaryClients < a.SemiSyncPrimaryWaitForReplicaCount {
			if isStaleBinlogCoordinates {
				a.Analysis = LockedSemiSyncPrimary
				a.Description = "Semi sync primary is locked since it doesn't get enough replica acknowledgements"
			} else {
				a.Analysis = LockedSemiSyncPrimaryHypothesis
				a.Description = "Semi sync primary seems to be locked, more samplings needed to validate"
			}
			//
		} else if a.IsPrimary && a.LastCheckValid && a.CountReplicas == 1 && a.CountValidReplicas == a.CountReplicas && a.CountValidReplicatingReplicas == 0 {
			a.Analysis = PrimarySingleReplicaNotReplicating
			a.Description = "Primary is reachable but its single replica is not replicating"
		} else if a.IsPrimary && a.LastCheckValid && a.CountReplicas == 1 && a.CountValidReplicas == 0 {
			a.Analysis = PrimarySingleReplicaDead
			a.Description = "Primary is reachable but its single replica is dead"
			//
		} else if a.IsPrimary && a.LastCheckValid && a.CountReplicas > 1 && a.CountValidReplicas == a.CountReplicas && a.CountValidReplicatingReplicas == 0 {
			a.Analysis = AllPrimaryReplicasNotReplicating
			a.Description = "Primary is reachable but none of its replicas is replicating"
			//
		} else if a.IsPrimary && a.LastCheckValid && a.CountReplicas > 1 && a.CountValidReplicas < a.CountReplicas && a.CountValidReplicas > 0 && a.CountValidReplicatingReplicas == 0 {
			a.Analysis = AllPrimaryReplicasNotReplicatingOrDead
			a.Description = "Primary is reachable but none of its replicas is replicating"
			//
		} else if a.IsBinlogServer && a.IsFailingToConnectToPrimary {
			a.Analysis = BinlogServerFailingToConnectToPrimary
			a.Description = "Binlog server is unable to connect to its primary"
			//
		}
		//		 else if a.IsPrimary && a.CountReplicas == 0 {
		//			a.Analysis = PrimaryWithoutReplicas
		//			a.Description = "Primary has no replicas"
		//		}

		appendAnalysis := func(analysis *ReplicationAnalysis) {
			if a.Analysis == NoProblem && len(a.StructureAnalysis) == 0 && !hints.IncludeNoProblem {
				return
			}
			if a.IsDowntimed {
				a.SkippableDueToDowntime = true
			}
			if a.CountReplicas == a.CountDowntimedReplicas {
				switch a.Analysis {
				case AllPrimaryReplicasNotReplicating,
					AllPrimaryReplicasNotReplicatingOrDead,
					PrimarySingleReplicaDead:
					a.IsReplicasDowntimed = true
					a.SkippableDueToDowntime = true
				}
			}
			if a.SkippableDueToDowntime && !hints.IncludeDowntimed {
				return
			}
			result = append(result, a)
		}

		{
			// Moving on to structure analysis
			// We also do structural checks. See if there's potential danger in promotions
			if a.IsPrimary && a.CountLoggingReplicas == 0 && a.CountReplicas > 1 {
				a.StructureAnalysis = append(a.StructureAnalysis, NoLoggingReplicasStructureWarning)
			}
			if a.IsPrimary && a.CountReplicas > 1 &&
				!a.OracleGTIDImmediateTopology &&
				!a.MariaDBGTIDImmediateTopology &&
				!a.BinlogServerImmediateTopology {
				a.StructureAnalysis = append(a.StructureAnalysis, NoFailoverSupportStructureWarning)
			}
			if a.IsPrimary && a.CountStatementBasedLoggingReplicas > 0 && a.CountMixedBasedLoggingReplicas > 0 {
				a.StructureAnalysis = append(a.StructureAnalysis, StatementAndMixedLoggingReplicasStructureWarning)
			}
			if a.IsPrimary && a.CountStatementBasedLoggingReplicas > 0 && a.CountRowBasedLoggingReplicas > 0 {
				a.StructureAnalysis = append(a.StructureAnalysis, StatementAndRowLoggingReplicasStructureWarning)
			}
			if a.IsPrimary && a.CountMixedBasedLoggingReplicas > 0 && a.CountRowBasedLoggingReplicas > 0 {
				a.StructureAnalysis = append(a.StructureAnalysis, MixedAndRowLoggingReplicasStructureWarning)
			}
			if a.IsPrimary && a.CountDistinctMajorVersionsLoggingReplicas > 1 {
				a.StructureAnalysis = append(a.StructureAnalysis, MultipleMajorVersionsLoggingReplicasStructureWarning)
			}

			if a.CountReplicas > 0 && (a.GTIDMode != a.MinReplicaGTIDMode || a.GTIDMode != a.MaxReplicaGTIDMode) {
				a.StructureAnalysis = append(a.StructureAnalysis, DifferentGTIDModesStructureWarning)
			}
			if a.MaxReplicaGTIDErrant != "" {
				a.StructureAnalysis = append(a.StructureAnalysis, ErrantGTIDStructureWarning)
			}

			if a.IsPrimary && a.IsReadOnly {
				a.StructureAnalysis = append(a.StructureAnalysis, NoWriteablePrimaryStructureWarning)
			}

			if a.IsPrimary && a.SemiSyncPrimaryEnabled && !a.SemiSyncPrimaryStatus && a.SemiSyncPrimaryWaitForReplicaCount > 0 && a.SemiSyncPrimaryClients < a.SemiSyncPrimaryWaitForReplicaCount {
				a.StructureAnalysis = append(a.StructureAnalysis, NotEnoughValidSemiSyncReplicasStructureWarning)
			}
		}
		appendAnalysis(&a)

		if a.CountReplicas > 0 && hints.AuditAnalysis {
			// Interesting enough for analysis
			go func() {
				_ = auditInstanceAnalysisInChangelog(&a.AnalyzedInstanceKey, a.Analysis)
			}()
		}
		return nil
	})

	if err != nil {
		log.Error(err)
	}
	// TODO: result, err = getConcensusReplicationAnalysis(result)
	return result, err
}

// auditInstanceAnalysisInChangelog will write down an instance's analysis in the database_instance_analysis_changelog table.
// To not repeat recurring analysis code, the database_instance_last_analysis table is used, so that only changes to
// analysis codes are written.
func auditInstanceAnalysisInChangelog(instanceKey *InstanceKey, analysisCode AnalysisCode) error {
	if lastWrittenAnalysis, found := recentInstantAnalysis.Get(instanceKey.DisplayString()); found {
		if lastWrittenAnalysis == analysisCode {
			// Surely nothing new.
			// And let's expand the timeout
			recentInstantAnalysis.Set(instanceKey.DisplayString(), analysisCode, cache.DefaultExpiration)
			return nil
		}
	}
	// Passed the cache; but does database agree that there's a change? Here's a persistent cache; this comes here
	// to verify no two vtorc services are doing this without coordinating (namely, one dies, the other taking its place
	// and has no familiarity of the former's cache)
	analysisChangeWriteAttemptCounter.Inc(1)

	lastAnalysisChanged := false
	{
		sqlResult, err := db.ExecVTOrc(`
			update database_instance_last_analysis set
				analysis = ?,
				analysis_timestamp = now()
			where
				hostname = ?
				and port = ?
				and analysis != ?
			`,
			string(analysisCode), instanceKey.Hostname, instanceKey.Port, string(analysisCode),
		)
		if err != nil {
			log.Error(err)
			return err
		}
		rows, err := sqlResult.RowsAffected()
		if err != nil {
			log.Error(err)
			return err
		}
		lastAnalysisChanged = (rows > 0)
	}
	if !lastAnalysisChanged {
		_, err := db.ExecVTOrc(`
			insert ignore into database_instance_last_analysis (
					hostname, port, analysis_timestamp, analysis
				) values (
					?, ?, now(), ?
				)
			`,
			instanceKey.Hostname, instanceKey.Port, string(analysisCode),
		)
		if err != nil {
			log.Error(err)
			return err
		}
	}
	recentInstantAnalysis.Set(instanceKey.DisplayString(), analysisCode, cache.DefaultExpiration)
	if !lastAnalysisChanged {
		return nil
	}

	_, err := db.ExecVTOrc(`
			insert into database_instance_analysis_changelog (
					hostname, port, analysis_timestamp, analysis
				) values (
					?, ?, now(), ?
				)
			`,
		instanceKey.Hostname, instanceKey.Port, string(analysisCode),
	)
	if err == nil {
		analysisChangeWriteCounter.Inc(1)
	} else {
		log.Error(err)
	}
	return err
}

// ExpireInstanceAnalysisChangelog removes old-enough analysis entries from the changelog
func ExpireInstanceAnalysisChangelog() error {
	_, err := db.ExecVTOrc(`
			delete
				from database_instance_analysis_changelog
			where
				analysis_timestamp < now() - interval ? hour
			`,
		config.UnseenInstanceForgetHours,
	)
	if err != nil {
		log.Error(err)
	}
	return err
}

redpajama_set_name: RedPajamaGithub


Today, I've got a super simple DIY for you! If you saw our apartment Christmas tour (check it out here) than you saw this sign I created for our entry.
I ended up combining two different stains we had to make sure we had enough and to lighten the darker one. I wanted a darker stain for this project but not so dark the grain disappeared underneath.
I arranged the number of stencils I needed for the Christmas carol I wanted to use, which in this case was "O come, let us adore Him!" At this point, I didn't worry about what letters I had where. I just wanted to see how to best fit the words on the board I had and how to space them.
Once I had the arrangement like I liked it, I punched out the inside of the stencil and taped down the first line "O come." I shook the stain to mix it, with the lid on, of course. ;) I made sure to press most of the excess stain out of the foam brush by just pressing it against the ledge of the can and than wiped it across the stencil following the grain of the wood. I wiped the excess stain off of each letter with the paper towels before moving onto the next letter because I didn't want the stain to seep in and be too dark. It's a messy job, so be sure you have somewhere to throw the paper towels besides your table which you didn't bother to put a cover on. I would let the stencils sit until I needed them for another word and than I would just pull them up and tape them down in their new spot.
If you use a wood stain like I did, just know the edges of your letters will not be crisp and smooth as the stain will seep out into the wood around the letters. At first I didn't like it, but decided to call it rustic and just went with it. Over all I was pleased with how it came out for such a quick and last minute project. Here it is in all of it's glory in our entry. I decided not to use the snowflake stencils. I kind of got them as a filler in case my letters were too small and after seeing how the stain spread, didn't think they would work so great. I'd love to hear what Christmas carol you'd choose for your diy sign! You can leave it in the comments below!
I'm joining the Pretty Preppy Link Up Party over at 11 Magnolia Lane if you'd like to join up for the day or see what some other bloggers are up to with their Christmas decor!


text:
\section{Introduction}

The distinctive asymmetric spectral line shape observed due to spectral interference of a discrete and a continuum mode in the coupled resonator system is known as the Fano resonance. It is widely observed in various quantum and classical optical systems \cite{fano1961effects,luk2010fano,limonov2017fano,miroshnichenko2010fano,wu2012fano,chen2021spectrometer,zhang2009manipul-bowtie,ott2014prl}.
While most of the works deal with the asymmetric spectral profiles of a single resonator in the frequency domain, Fano profiles can also be observed if the optical response of a single frequency from a Fano resonator is mapped under gradually tuned excitation polarization \cite{ray2017polarization,valentim2013asymmetry}, varying system temperature \cite{zhang2018thermally,zheng2017compact} or in a series of Fano resonators with gradually varying structural parameters at a single frequency \cite{chen2021spectrometer,see2017design,ouyang2020spatially,ray2019controlling}. In this case, Fano resonance manifests as asymmetric intensity profiles with respect to experimentally accessible parameters. Such Fano-like asymmetric profiles in non-spectral parametric domains, which we called ``parametric Fano'' profiles, are useful for designing Fano resonators for monochromatic applications because they provide direct information about the dependence of optical response at the operational frequency on the critical structural parameters. For example, in nanooptics research, it is very common to design and fabricate a series of similar nanostructures with gradually varying dimensions in order to obtain the best nanodevice that gives the highest signal of interest under a monochromatic excitation \cite{ouyang2020spatially,tittl2018imaging,chen2014modulation}. In addition to the structural parameter space, the tuning of optical response is also seen in the temporal domain for non-linear optical systems \cite{fardad2019parametric}. Therefore, the ability to describe Fano profiles in non-spectral parametric domains allows researchers to understand the impact of specific structural parameters on the optical response and significantly increases the chance of obtaining nanostructures with the desired optical properties. However, to the best of our knowledge, an analytical model to describe such a monochromatic optical response of a Fano resonant nanostructure is still lacking.

In this work, we develop an analytical model to describe the linear optical response of a series of plasmonic nanoresonators as a function of a specific structural parameter. The approach reduces the effort of scanning structures in order to obtain the best structure for a desired optical property. The model is based on the coupled harmonic oscillator (CHO), where the monochromatic optical resonance is evaluated based on the structural parameters of the system rather than the frequency. We obtained parametric Fano resonance formula to model the monochromatic optical response of a chirped waveguided plasmonic crystal (CWPC) in parametric domain and estimate the parameters of the two participating modes. The resonance profile observed in
the parametric domain shows similar asymmetry, steep edges, and dispersive behavior as in the spectral domain. The presented approach allows describing monochromatic optical resonances of nanoresonators, including Fano resonances, in non-spectral parametric domains and may facilitate the design of nanostructures for monochromatic applications, for example, spectrometer-free sensing and nonlinear signal generation using an excitation at a fixed frequency \cite{chen2014modulation}.

\section{Illustration of parametric resonance on geometrical parameter space}

\begin{figure*}[ht]
	\centering
	\includegraphics[width=0.8\linewidth]{1.png}
	\caption{\label{fig1}Spectral and parametric resonances of a series of gold nanorods in water. (a) The simulated SCS (color bar) of gold nanorods on a two-dimensional plane of the excitation frequency (vertical axis) and the nanorod length (horizontal axis). The inset shows an exemplary case of scattering geometry of the nanorod of fixed length. (b) Frequency-dependent SCS (blue, left axis) and phase (red, right axis) of a nanorod with a fixed length of 120 nm (along the red dashed line in a). (c)  Length-dependent SCS (blue, left axis) and phase (red, right axis) of a series of nanorods at the excitation frequency of 300 THz (along the white dotted line in a).}

\end{figure*}

In the following, we illustrate the concept of ``parametric resonance'' dependent on structural parameter by showing the resonant amplitude of nanorods as a function of the rod length. We theoretically study the longitudinal scattering cross-section (SCS, incident light polarized along the long rod axis) of a gold nanorod in water with a fixed cross-sectional radius of 15 nm and different nanorod lengths. SCS is obtained from numerical simulation based on finite-difference time-domain method (FDTD Solutions, Lumerical, see Appendix) and the dielectric constant of gold is obtained from experimental data \cite{johnson1972optical}. The nanorod is meshed with a cubicle meshes of size 1 nm$^3$. Fig.\ref{fig1}a shows the SCS of different nanorod lengths mapped to a two-dimensional space of excitation frequency (vertical axis) and nanorod lengths (horizontal axis). While the vertical line-cut profile (red dashed line) shows the typical scattering spectrum of a nanorod of a fixed length, the horizontal line-cut profile (white dotted line) shows the ``monochromatic'' SCS as a function of the rod length. The latter shows the ``parametric resonance'' of the nanorod, as it is the dependence of monochromatic optical response on a structural parameter (the nanorod length). The spectral resonance of a nanorod with a length of 120 nm (obtained from SCS along the red dashed line in Fig.\ref{fig1}a) is shown in Fig.\ref{fig1}b, where SCS and phase are plotted as a function of the excitation frequency. This is a typical frequency-domain spectrum of a plasmonic nanorod with clear features of a Lorentzian line shape and, a $\pi$ phase shift over the resonance in the electric field evaluated at the center of the particle. If we now look at the monochromatic optical response of a series of nanorods, Lorentzian-like profiles of SCS and phase are observed as the nanorod length is increased. Fig. \ref{fig1}c shows SCS and phase of different nanorods with increasing length, excited with a source fixed at 300 THz (obtained from SCS along the white dotted line in Fig. \ref{fig1} a). A resonant enhancement is obtained at the length of 146 nm. The phase obtained from the electric field shows a phase shift of about $\pi$ relative to the excitation field over the resonant rod length. The phase gain across the resonance is associated with the Lorentzian-like resonance in the SCS, whose  length  is inversely proportional to  the resonance frequency of the nanorods \cite{chen2014modulation,biagioni2012nanoantennas}. This resonance is  considered as a ``parametric resonance'' as it originates from the detuning of the resonance frequency due to varying structural parameters.
\begin{figure*}[ht]
	\includegraphics[width=0.8\linewidth]{2.png}
	\caption{\label{fig2} Spectral and parametric Fano resonance in a CHO system. (a) Normalized simulated amplitude ($|x_c|^2$, color bar) of a system consisting of damped CHO mapped on the two-dimensional plane at the excitation frequency and the DMRF. (b) Simulated spectral Fano profile of the system at a fixed DMRF of 300 THz ( profile along the red dashed line in a). (c) Simulated (dotted blue line) and analytically calculated (dashed magenta line) parametric Fano profiles of the system at a fixed excitation frequency of 320 THz (profile along the white dotted line in a). The dashed magenta profile is obtained with Eq.\ref{eq6}. The parameters used are $\omega_{oc}$=220 THz, $\gamma_c$=144 THz, $\gamma_d$=5 THz, $g$=12000 THz$^2$, $A_1=1$ and $A_2=0$.}
\end{figure*}

The linear frequency response of the nanorod near the resonance frequency is well described by a simple harmonic oscillator as \cite{zuloaga2011energy},
\begin{equation}
	\ddot{{x}}+{\gamma}\dot{{x}}+{\omega}_{o}^{2}{x}={A}{E}_{o}{e}^{-{i\omega t}}
\end{equation}
Here, $E_oe^{-i\omega t}$ is the electric field of the time-harmonic excitation at frequency $\omega$, $x$ is the displacement for electrons from the mean position due to electric field, $\gamma$ accounts the damping of plasmon oscillation with all possible mechanism, $\omega_o$ is the resonance frequency that depends on the dimension of the structure and the material properties, and $A$ is a constant related to the total number of free charges and their effective mass. It is worth mentioning that the above equation can model the plasmon response of a particle in the quasistatic approximation and Drude's regime of the material permittivity. The steady-state solution of the above differential equation is a Lorentzian resonance with amplitude ($\alpha$) and additional phase change ($\phi$), respectively, as,
\begin{equation}
	{\alpha}=\left|{x}\right|=\left|\frac{{A}{E}_{o}}{\left({\omega}_{o}^{2}-{\omega}^{2}-{i\gamma\omega}\right)}\right|
	\label{eq2}
\end{equation}
and
\begin{equation}
	{\phi}={{tan}}^{-{1}}{\frac{{\gamma\omega}}{{\omega}_{o}^{2}-{\omega}^{2}}}
	\label{eq3}
\end{equation}
Eqs. \ref{eq2} and \ref{eq3} show that the amplitude and the phase of a given oscillator depend on the frequency of the driving force $\omega$. In a typical case of spectroscopic analysis, a broadband source is used to excite a nanostructure with a resonance frequency at $\omega_o$ around which the amplitude and phase profiles reveal the optical response of the oscillator in the frequency domain, i.e., the resonance spectrum. However, Eqs 2-3 also imply the possibility to describe the monochromatic optical response (at fixed $\omega$) of a series of resonators whose resonance frequency ($\omega_o$) depend on the variation of the structural dimensions such as length, height, and diameter \cite{chen2014modulation}. For example, the resonance frequency of a plasmonic nanorod depends on the nanorod length/aspect ratio. Therefore, the single-frequency amplitude and phase profiles in the structural parameter space also reveal the characteristics of the optical response of the oscillator. It is important to note that the phase profile in the frequency domain and the parametric resonance profiles shows ``opposite behavior'', i.e. the electric field shows a phase gain (lag) with increasing $\omega$ ($\omega_o$).
\section{Parametric Fano resonance based on coupled driven damped harmonic oscillator}
In the following, we apply the concept of ``parametric resonance'' to describe the Fano resonance of a CHO system consisting of continuum (C) and a discrete (D) modes coupled through a coupling constant ($g$). In general, an electromagnetic field can be used to drive both the modes present in the Fano resonant system which is usually the case when both the modes are contained in the same structure like the oligomers or ring-disk cavity \cite{luk2010fano}. Assuming a linear frequency response of the two modes, the equation of motion of the system is \cite{gallinet2013plasmonic,oliver2013mechanisms},
\begin{equation}
	\begin{aligned}
		{\ddot{{x}}}_{c}+{\gamma}_{c}{\dot{{x}}}_{c}+{\omega}_{{oc}}^{2}{x}_{c}+{g}{x}_{d}={A}_{1}{E}_{o}{e}^{-{i\omega t}}  \\
		{\ddot{x}}_d+\gamma_d{\dot{x}}_d+\omega_{od}^2x_d+gx_c={A}_{2}{E}_{o}{e}^{-{i\omega t}}
	\end{aligned}
\end{equation}
Here, $\gamma_c$ ($\gamma_d$) and $\omega_{oc}$ ($\omega_{od}$) are the damping (with all possible mechanism) and the resonance frequency of the continuum (discrete) mode. The steady-state intensity response for the continuum mode can be written as:
\begin{equation}
	\left|{x}_{c}\right|^{2}=\left|\frac{A_1{E}_{o}\left({\omega}_{{od}}^{2}-{\omega}^{2}-{i}{\gamma}_{d}{\omega}\right)-gA_2{E}_{o}}{\left({\omega}_{{oc}}^{2}-{\omega}^{2}-{i}{\gamma}_{c}{\omega}\right)\left({\omega}_{{od}}^{2}-{\omega}^{2}-{i}{\gamma}_{d}{\omega}\right)-{g}^{2}}\right|^{2}
	\label{eq5}
\end{equation}
$\left|x_c\right|^2$ gives the spectral Fano resonance of the CHO for a fixed value of all other structural parameters. Now, we consider a case where a driving force of fixed frequency applied on the continuum mode, and the discrete mode resonance frequency (DMRF) is tuned by, for example, varying the structural parameters of the coupled oscillators. For the cases where tuning the structural parameters does not significantly vary the damping of the two modes, the resonance frequency of the continuum and the coupling strength, $\omega_{od}$ is the only variable and Eq.\ref{eq5} becomes a function of $\omega_{od}$. Consequently, for a very dark discrete mode ($A_2\ll A_1$) \cite{limonov2017fano,joe2006classical,gallinet2013plasmonic}, $\left|x_c\right|^2$ can be approximated to give a parametric Fano resonance formula for a fixed excitation frequency,
\begin{equation}
	\left|{x}_{c}({\omega}_{{od}})\right|^{2}\cong\left|\frac{{A}{E}_{o}}{\left({\omega}_{{oc}}^{2}-{\omega}^{2}-{i}{\gamma}_{c}{\omega}\right)}\right|^{2}\ \ \frac{\left({q}+{\eta}\right)^{2}+{b}}{\left({1}+{\eta}^{2}\right)}
	\label{eq6}
\end{equation}
Here, $\left|AE_o/\left(\omega_{oc}^2-\omega^2-i\gamma_c\omega\right)\right|$ is a constant for a given excitation frequency and the $\left(\left(q+\eta\right)^2+b\right)/\ \left(1+\eta^2\right)$  term is responsible for the parametric Fano resonance. $q=(\omega^2-\omega_{oc}^2)/(\gamma_c\omega\left(1+\Gamma_i/\Gamma_c\right))$ is the asymmetry parameter of the resonance. $\eta=(\omega^2-\omega_{od}^2-\omega_{od}\Delta)/(\Gamma_i+\Gamma_c)$ is the reduced energy scale with $\Delta=\Gamma_c(\omega^2\ -\omega_{oc}^2)/\omega^2\gamma_c$. $b=\Gamma_i^2/\left(\Gamma_i+\Gamma_c\right)^2$ is responsible for the Lorentzian background due to optical energy dissipation with $\Gamma_i=\gamma_d\omega$ and $\Gamma_c=g^2\gamma_c\omega/\left(\left(\omega^2\ -\omega_{oc}^2\right)^2+{(\gamma}_c\omega)^2\right)$. Eq.\ref{eq6} shows that a Fano CHO system driven by monochromatic excitation can exhibit a Fano profile in its optical response when the resonance frequency of the DMRF ($\omega_{od}$) is gradually tuned by varying a critical experimental or structural parameter. Varying the critical parameter tunes the DMRF, thus changing the amplitude and phase relationships between the two interfering modes. This is similar to scanning the excitation frequency in a typical case of spectral analysis in the frequency domain.

In Fig. \ref{fig2}, we use MATLAB to evaluate the amplitude response of the coupled oscillators using Eq. \ref{eq5} for varying excitation frequency ($\omega$) and DMRF ($\omega_{od}$), and the other oscillator parameters mentioned in the caption. The amplitude response of the continuum mode of a CHO is mapped on a two-dimensional plane with respect to the excitation frequency ($\omega$) and the DMRF ($\omega_{od}$) related to a tuned experimental parameter. The sharp variation between the distribution stems from the Fano interference of the CHO. Fig.\ref{fig2}b shows the typical frequency-domain Fano spectrum of a CHO system with fixed experimental parameter, i.e. a fixed DMRF ($\omega_{od}$= 300 THz), excited by a broadband source. This corresponds to the intensity profile along the red dashed line in Fig.\ref{fig2}a. Similarly, we can fix the excitation frequency at 320 THz (white dotted line in Fig.\ref{fig2}a) and plot the monochromatic response intensity of the CHO system with respect to the tuned DMRF. In this way, we obtain a ``parametric'' Fano resonance profile (Fig.\ref{fig2}c), which is indeed in the parametric domain since the DMRF can be associated with a critical experimental parameter. Such parameter can be a critical non-spectral experimental variable, like temperature, polarization, or structural dimensions, for example, a chirped periodicity of a grating  \cite{chen2021spectrometer,see2017design,ouyang2020spatially}. Eq.\ref{eq6} is not only useful in describing the intensity profile of a parametric Fano resonance, it also provides information about the dependence of the asymmetry on the critical experimental or structural parameters, which is important for the design of Fano nanoresonators for monochromatic applications. It is worth noting that due to the phase behavior of the Lorentzian mode in the parametric space (Eq.\ref{eq6}), the asymmetricity of the Fano profiles in spectral (Fig.\ref{fig2}b) and parametric (Fig.\ref{fig2}c) domains are opposite, i.e., the $\left|x_c\right|^2$ maxima of the two Fano resonance profiles appear on different sides of intensity minima.
\begin{figure}[t]
	\centering
	\includegraphics[width=0.9\linewidth]{3.png}
	\caption{Parametric resonances on the extinction cross-section of the CWPC for input TE and TM polarization.  (a) Schematic of the CWPC that exhibits Fano resonance in the extinction cross-section.  (b) The TE-polarized extinction cross-section (color bar) of CWPC mapped on the two-dimensional plane of the excitation frequency and DMRF. (c) TE polarization extinction cross-section spectrum at a given DMRF (along the red dashed line in Fig. b), the dashed magenta curve shows a fit with Eq.\ref{eq5}. (d) DMRF dependence of the TE polarization extinction cross-section at a fixed excitation frequency (along the white dotted line in Fig. b), the dashed magenta curve indicates a fit with Eq.\ref{eq6}. (e) The two-dimensional distribution of extinction cross-section (color bar) of WPC for TM polarization. (f) TM polarization extinction cross-section spectrum at a given DMRF, (along the red dashed line in Fig. e), the dashed magenta curve shows a fit with Eq.\ref{eq5}. (g) The DMRF dependence of the extinction cross-section of TM polarization (along the white dotted line in Fig. b), the dashed magenta curve indicates a fit with Eq.\ref{eq6}.}
	\label{fig3}
\end{figure}

 Now, we demonstrate the parametric Fano model on a CWPC, which consists of a gold grating with a spatially chirped period ($d_{x}$) that varies along the y-axis. The grating is placed on  a 160-nm thick Indium Tin Oxide (ITO, $n_{ITO}$=1.8) coated quartz substrate ($n_{sub}=1.5$), as shown in Fig.\ref{fig3}a. The height and width of the plasmonic nanowires are set to be 15 nm and 150 nm, respectively. In this system, the spectral Fano resonance in the CWPC originates from the spectral interference of the discrete waveguide mode (bounded mode excited by the grating) in the ITO layer with the broad plasmon mode of the grating for incident light with transverse magnetic (TM) polarization \cite{miroshnichenko2010fano,luk2010fano,christ2004PRB}. Under transverse-electric (TE) illumination, the incident light with a broadband spectrum acts as the continuum mode, interferes with the discrete TE waveguide mode, resulting in Fano resonance \cite{miroshnichenko2010fano,luk2010fano,christ2004PRB}.
\section{The parametric Fano Resonance in CWPC}
In order to obtain the optical response of CWPC, we simulate (FDTD Solutions, Lumerical, see Appendix) extinction spectrum (defined as -log (transmission)) of individual WPCs of a fixed period and merge the spectrum for different periods to obtain the complete optical response of the CWPC. The grating and the waveguide area is meshed with square meshes of size 0.25 nm$^2$. It is noteworthy that the used simulation method for CWPC assumes that the length of CWPC in the y-direction is much larger than its width in the x-direction. Fig.\ref{fig3}b shows the simulated (FDTD Solutions, Lumerical) extinction cross-section, defined as -log (transmission), of the CWPC on the two-dimensional plane for the excitation frequency and resonance frequency of the discrete grating mode, which can be linked to the period varying  along the y-coordinate. The DMRF is obtained from the grating period using the dispersion relation of the waveguide mode \cite{kogelnik1974scaling} (see Appendix). Fig.\ref{fig3}c shows the TE extinction spectrum with a distinct asymmetric spectral Fano line shape in the excitation frequency domain, with a fixed DMRF at 450 THz, from a grating period of 430 nm. The simulated spectrum is fitted by the spectral Fano model shown in Eq.\ref{eq5}. The fitting parameters are given in Appendix table S1. Turning to the parametric domain, Fig.\ref{fig3}d shows the monochromatic extinction cross-section (excitation frequency = 480 THz) as a function of the spatially chirped DMRF. As a function of the DMRF, a clear parametric Fano-like profile is obtained, which depends on the chirped periodicity of the grating. The simulated profile of the parametric domain can be well fitted by the developed parametric Fano model (Eq.\ref{eq6}.), validating our parametric Fano model.  The fitting parameters are given in Appendix table S2.

The response of the CWPC to a TM excitation is also studied. As shown in Fig.\ref{fig3}e, a similar Fano resonance in the extinction spectrum is observed, despite its different origin. The strong Lorentzian resonance peak of the plasmon continuum mode ($\approx$340 THz) interferes with the discrete TM waveguide mode, giving an asymmetric Fano resonance line shape in the spectral domain. Fig.\ref{fig3}f shows the frequency-domain extinction spectrum of the grating with a fixed period of 430 nm, corresponding to a resonance frequency of 460 THz for the discrete mode. The spectral Fano model fit (Eq.\ref{eq5}) is used to check the validity of the model on TM polarized extinction spectrum. The fitting parameters are given in appendix table S1. Fig.\ref{fig3}g shows the parametric Fano resonance profile for a TM polarized excitation with the excitation frequency fixed at 480 THz. The resonance profile can be well fitted using the parametric Fano resonance model in Eq.\ref{eq6}. The fitting parameters are given in appendix table S2. The fit gives a quantitative estimate of the asymmetry of resonance ($q$) and excitation frequency ($\omega$).
\section{Conclusion}
The concept of parametric Fano resonance maps the spectral interference phenomenon of the Fano resonance to different domains of experimentally accessible parameters. It is to be noted that such parametric resonances are not exclusive for the CWPC presented here, but could also be implemented by varying relevant material or other parameters of the system, such as refractive index, orientation, and morphology of the structure. Some of these parameters might even be controlled externally by tuning the system temperature \cite{zhang2018thermally,zheng2017compact} or the polarization of light \cite{ray2017polarization,valentim2013asymmetry}. In addition to the fundamental interest in understanding Fano resonances observed in the parametric domains, the developed model may find applications in monochromatic nanophotonic applications, where Fano-like nanoresonators are to be optimized for a specific operational frequency, for example, plasmonic index sensors and nanostructures for Raman or other nonlinear signal generations.

    \section{Acknowledgments}
    Financial supports from the Deutsche Forschungsgemeinschaft (CRC 1375 NOA, HU2626/3-1, HU2626/5-1) and the Ministry of Science and Technology of Taiwan (MOST-103-2113-M-007-004-MY3) are gratefully acknowledged.

    %

    %

    %

    %

redpajama_set_name: RedPajamaArXiv


Penn Manor High School students must turn in signed agreement use forms to participate in the upcoming Student 1:1 Laptop Program by Friday, January 17, in order to receive a school-issued laptop. Students who do not submit the forms will not get a computer.
More than 1,700 Acer laptops will be issued to students beginning January 24 for seniors and continuing through January 29 for freshmen. Juniors will receive their machines January 27; sophomores will get their laptops on January 28.
Details on the times of distributions will be provided to students by teachers.


text:
What Should Happen to Edward Snowden? A Q&A With His Lawyer
September 26-October 3, 2016, Issue
Ben Wizner speaks on what would happen in an espionage trial and why Obama should issue a pardon.
By Jon WienerTwitter
Edward Snowden, appearing live via video feed, answers questions from students at a high school in Toronto, Canada, February 2, 2015. (Reuters / Mark Blinch)
President Obama will grant his last pardons by January 20, 2017, his final day in office. With that in mind, and with Oliver Stone's Edward Snowden biopic slated for release this fall, I sat down with Ben Wizner in July to ask about the NSA whistle-blower's chances of coming home soon. Wizner is Snowden's attorney; he also directs the ACLU's Speech, Privacy, and Technology Project.
Edward Snowden's Twitter page reads: "I used to work for the government. Now I work for the public." It's been three years since his revelations about NSA spying were first published. Remind us: How many documents did Snowden release to the public?
The number he released to the public is zero. Every document that's been published from what we now call the "Snowden archive" was published after a news organization made a determination that publishing that document, or portions of it, was in the public interest and would not cause harm to national security. Snowden's instructions to the journalists he entrusted with the archive were that they were to use their judgment, not his. And that they were in all instances to consult with government officials, give them an opportunity to raise specific objections, but then make their own determination about what should be published—or not.
There was a lot of talk about the extensive harm to our national security done by Snowden's revelations—"grave and irreparable" harm, we were told by government officials. What do we know about the extent of that harm?
We don't know anything. We don't know anything because no government official has come forward with any remotely specific or credible evidence that there has been harm.
The United States doesn't seem to be trying very hard to bring Snowden back and put him on trial.
There is no extradition treaty with Russia. The United States tried pretty hard in the summer of 2013. My sense is that three years down the line, the US takes a different view. They realize it would do huge damage to our soft power among important allies, and particularly among a youth generation, if we were to put Snowden on trial for espionage after the contributions he's made to privacy and security around the world. Snowden's reputation has improved considerably inside the US, but in most other countries he's viewed as a hero. For us to lock him away as if he were no different than a spy would damage the US's reputation and its authority in the world for no good reason. For example, the European Parliament voted in favor of a resolution calling on member states not to extradite Snowden if he appears in those countries, saying the charges against him under the Espionage Act are political and that he should be entitled to asylum. It's not a binding resolution, but it's a real milestone in the progress he's made—from hunted fugitive to global thinker and leader on these issues.
What would happen at a Snowden trial under the Espionage Act? You would put him on the stand and ask him why he released classified documents to the news media—and then what would happen?
This isn't hypothetical: Daniel Ellsberg tells the story of what happened in his trial. His attorney said, "Mr. Ellsberg, why did you provide the Pentagon Papers to the media?" The government prosecutor said, "Objection!" And the judge said, "Sustained." Ellsberg's motivation was irrelevant—the only thing the government needs to show in an Espionage Act prosecution is that the defendant provided national-defense information to someone who was unauthorized to receive it. The fact that Snowden's disclosures led to historic legal reforms (legislation in Congress that restricted the authority of the NSA); that the president has said the debate "will make us stronger"; that the former attorney general said that Snowden provided a "public service"—this would not just be irrelevant in an Espionage Act trial; it would be inadmissible. So it really wouldn't be a trial at all. It would be a sentencing.
There is precedent for a plea deal and a misdemeanor charge of leaking documents: General Petraeus.
I have no problem with prosecutorial discretion on the basis that somebody has performed valuable service; I just think there are different ways to perform valuable service. If the federal government believes Petraeus's service in the military was a strong enough mitigating factor that he shouldn't be punished for what were serious felonies, that might be an appropriate resolution. But it's not an appropriate resolution if people like Edward Snowden, or Chelsea Manning, serve decades in prison for similar conduct.
There's one other possibility: a presidential pardon.
I think this is the kind of case the pardon power exists for. It would allow President Obama to say, "Maybe I don't agree with the way this person did this—maybe I wish it had gone a different way. But the fact is, we would not have had that debate without Edward Snowden breaking the rules, violating his contract with the intelligence community in order to uphold his oath to the Constitution." The pardon power doesn't exist for people who didn't break the law; it exists for people who did. The pardon power was used for President Nixon. Look around Washington, DC—there are a lot of people in that town who have never been charged for the crimes they committed. We don't call that a pardon; we call that "looking forward instead of backward." If that kind of leniency in the national interest is available to Donald Rumsfeld, Dick Cheney, David Addington, and John Yoo, let's make it available to Edward Snowden.
Jon Wiener is the host and producer of The Nation's weekly podcast Start Making Sense, from which this interview was adapted.
Jon WienerTwitterJon Wiener is a contributing editor of The Nation.


What does it mean to truly be forgiven? Pastor Charles shares, The Double, from Isaiah 40. Understanding that we live from a place of victory, allows us to receive the double of forgiveness from our Savior. Our sin has been PAID IN FULL!


text:
Miejscowości w USA:
 Litchfield – miasto w stanie Connecticut, w hrabstwie Litchfield
 Litchfield – jednostka osadnicza w stanie Kalifornia, w hrabstwie Lassen
 Litchfield – miasto w stanie Illinois, w hrabstwie Montgomery
 Litchfield – miasto w stanie Maine, w hrabstwie Kennebec
 Litchfield – miasto w stanie Michigan, w hrabstwie Hillsdale
 Litchfield – miasto w stanie Minnesota, w hrabstwie Meeker
 Litchfield – wieś w stanie Nebraska, w hrabstwie Sherman
 Litchfield – miasto w stanie New Hampshire, w hrabstwie Hillsborough
 Litchfield – miasto w stanie Nowy Jork, w hrabstwie Herkimer
Gminy w USA:
 Litchfield (ang. Litchfield Town) – gmina w stanie Connecticut, w hrabstwie Litchfield
 Litchfield (ang. Litchfield Town) – gmina w stanie Maine, w hrabstwie Kennebec
 Litchfield (ang. Litchfield Township) – gmina w stanie Michigan, w hrabstwie Hillsdale
 Litchfield (ang. Litchfield Township) – gmina w stanie Minnesota, w hrabstwie Meeker
 Litchfield (ang. Litchfield Town) – gmina w stanie New Hampshire, w hrabstwie Hillsborough
 Litchfield (ang. Litchfield Town) – gmina w stanie Nowy Jork, w hrabstwie Herkimer
 Litchfield (ang. Litchfield Township) – gmina w stanie Ohio, w hrabstwie Medina
 Litchfield (ang. Litchfield Township) – gmina w stanie Pensylwania, w hrabstwie Bradford
Hrabstwa w USA:
 hrabstwo Litchfield (ang. Litchfield County) – w stanie Connecticut
W Wielkiej Brytanii:
 Litchfield – miejscowość w hrabstwie Hampshire (Anglia)

Zobacz też
 Lichfield

redpajama_set_name: RedPajamaWikipedia


The US financial system deserves no respect, because that respect was destroyed by its bad behavior. The world financial system, through Wall Street, offered up so many easy money loans, that the prices of housing actually went up to unsustainable levels.
The private shadow banks were primarily responsible, being the conduit to Wall Street bogus bonds, rated AAA when they were filled with bad mortgages. There was some subprime lending through the CRA and government backed banks. This was not large compared to the other subprime and prime easy money loans.
Liar loans (called Self Certified Loans in the UK) were imported from the UK financial system, the seat of all this financial evil.
The central banks, namely the Fed in the USA, allowed this toxic lending and did nothing to stop it. The Fed and Wall Street need to apologize for this toxic lending that raped main street USA. They all need to apologize to the American people for stealing their wealth as housing prices plummeted to depths that were lower than before the bubble even began.
We see Leon Cooperman coming out for the goodness of wealth and the badness of class warfare that he alleges comes from the bottom on the financial food chain. Perhaps he would change his mind if he would tell us that the wealthy made a grievous error of greed and should apologize. He could tell us that the financial cabal was the first attack and that the response of Occupy Wall Street and others was a response, not an attack!
Hedge funds are the greatest threat to main street prosperity. Of course he (Cooperman) doesn't like the 1 percent/99 percent stuff, because if we had known all this people may not have fallen for the easy money housing bubble. Hedge funds make money off of bubbles. It is a well known fact.
What you need to understand, Cooperman, is that the rich brought this hatred upon themselves by offering easy money loans in housing and ruining the accurate pricing of houses. You think it is noble to be rich? Maybe for a time in the US it was. But that stopped at the housing bubble when unscrupulous rich men destroyed housing values in cities all over this nation and in much of the world.
Nominal GDP guys are wrong when they say that easy money in housing was limited to the bubble towns like Las Vegas. Turned out easy money infiltrated overbuilt towns like Atlanta Georgia as well. As house prices did not appreciate, which was necessary to make the ponzi work, people saw their investments in Atlanta as being no more workable than in Las Vegas.
Here is the deal Cooperman, Santelli said regular people just bet and lost. But they didn't know the housing bubble had been planned for years. They didn't know that hedge funds were funneling massive amounts of money into a housing bubble that was not sustainable.
So, Americans bet and lost, and the rich won. And now it is class warfare to hate everything they stand for, Cooperman?
The rich need to apologize to America for the housing bubble and then we can talk. Otherwise you are just a spokesman for the elite and cannot ever be trusted.
Leon Cooperman says the debate should not be between the rich and the poor, as it is good to come from poor beginnings to live the American dream. And in many cases that is true, but I am sorry, the financial attack came from the wealthy. We know this to be true and Cooperman cannot change this reality by appealing to more favorable pre house bubble views about the wealthy.
In an "open letter" to President Obama that whizzed around the e-mail inboxes of Wall Street and corporate America last week, Leon Cooperman, of Omega Advisors, argued against "the divisive, polarizing tone of your rhetoric."
Here is a partial list of those who should apologize for allowing, facilitating and implementing the Housing Bubble.
Basel 2, which allowed off balance sheet accounting for banks and which set up the securitization regulations.
Financial Crisis in a Nutshell.
UK Big Bang was the deregulation that permitted derivatives, financial betting and liar loans.
The British Empire still rules finance.
What does the Gog and Magog Parade represent?
So, No Laws Were Broken Were They?
It (the housing bubble scam) was set up by the banksters. They never revealed that the easy money loans were by themselves driving up the prices of the houses. They never revealed that they would one day stop making the easy money loans.
Sorry that is RICO fraud.
While they did not break any laws of real estate, they broke RICO laws by failing to disclose.
Add to this that on the back side of the transaction, loans were being bundled and securitized and sent packing with bogus AAA ratings. Those loans were doomed to failure. And even Goldman Sachs replaced some good loans with bad loans in some of the CDO's.
There was no prosecution for massive securities fraud. Yes, Wall Street, you owe apologies!
Financial Crisis 12 month loans, one year loans, 12 month loan, 1 year loans, 1 year loan.
"Bad Credit Acceptable! Friendly Hand for Bad Creditors!
With 12 Month Cash Loans, you can simply obtain services regardless of your credit status of bad credit history and score! We have 12 Month Loans No Credit Check and 12 Month Loans for bad credit for you! All sort of bad credit proceedings are accepted with us included CCJ's, IVA, Arrears, Defaults, Bankruptcy and Missed or late payments among others.
Make selection from 12 Month Payday Loans, Cash Loans Over 12 Months, 12 Month Loans, Instant 12 Month Loans , Small Cash Loans, 12 Month Cash Advance, 12 Month Loans No Credit Check, 12 Month Loans for bad credit, 12 Month Installment Loans and Long Term Cash Loans. You can choose any financial help at really friendly Apr or Interest Rates. You can effortlessly solve your mid month cash crunch with the support of our services! Get 12 month loans with us and easily pay for needs such as pending bill and car repair."
Now Gary, you know and I know that a 12 month payday loan is a terrible loan. No credit check loans are like the liar loans of the US housing bubble. And they are like the "self certified" loans of the UK housing bubble that spawned the US bubble. There was no Glass-Steagall there to stop it.
I realize that the payday loan you are hocking is not a real estate loan. But a 12 month payday loan must have interest that is massive. Perhaps you could tell us what that rate is.
And perhaps you could give us a look into how many people default and what percentage of people are behind on these loans. There is a massive recession in the UK and I look upon you as a predator. That is my personal opinion.
And you can tell us exactly the numbers of your loan. You can tell us here, right now, what the monthly payment is on a certain loan, and if it is an installment loan or a check cashing loan.
I also need to know the percentage of interest for a year. The interest rates on the poor are oppressive, at least in the US. Show us and prove to us what your interest rate for a year is and the payback numbers.
That is the least you can do for posting a link that is spam, for your commercial benefit.
They are chasing yield aren't they? But certainly, getting into bed with hedge funds is something Calpers has rejected and could bite some of these pension funds.


i'm very loyal to Lady Speed Stick and noticed something was off. i was always happy that my fav brand just coincidentally happened to be one of the more affordable ones (lets save those pennies for shoes n junk) but it was $4.49 today.
wasn't it always like $2.99?
i used to be a lady speed stick girl, but then i made the switch to secret. prettier scents!
but secret allows you to sweat!
I totally agree with you...SDM is a huge rip-off establishment. My brand is "Arm & Hammer Advance"...I usually make my purchases at the Superstore (Loblaws) or Wal-Mart. I was in a position where I need to replenish my supply and I was forced to hit up Shoppers Drug Mart. I usually pay $2.79 or less...SDM was selling the exact same brand and size for $3.99...before tax. I nearly lost my mind...eff Shoppers.
when i worked at shoppers, they told us that the reason why they are a little more expensive is because you get customer service there, whereas you won't at walmart.
walmart's prices are almost the same as shoppers' cost price.


Can I view detailed bad bot analysis real-time?
Yes. ShieldSquare admin portal already has the capability to show your real-time bad bot analysis summary. You can read here to learn more. This may have limited analysis details.
Now, you can also see detailed analysis of bad bot data in the portal for the previous hour and current hour as below. You can go to select 'Real-time analysis' under 'Bad bot Analysis' in the side menu to view real-time bad bot detailed analysis report.
With the help of real-time detailed analysis, you can witness the behavior / origin / advanced details of the bad bot hitting your site(s) almost instantly.
This may be a beta feature for few weeks and a stable / updated version will be released after collecting feedback from you.
This feature will be a premium feature and write to support@shieldsquare.com if you want it to be enabled.


Using musculoskeletal medicine, we help to prevent and treat injuries in sport people. Poor flexibility in the joints and muscles will stop the body from performing at its optimum and is often a contributory element to injury. In addition, mobility and joint stability are all-important to the sport person.
By assessing the posture and condition of those structures which make the human body a dynamic machine (the bones, joints, muscles, ligaments and connective tissues), our practitioners are able to promote a rapid recovery from a wide range of sport-related injuries.


text:
Rowland High expands Korean classes
By Richard Irwin | Richard.Irwin@sgvn.com |
PUBLISHED: August 24, 2012 at 12:00 a.m. | UPDATED: August 30, 2017 at 8:53 a.m.
"An nyoung." Rowland High students will be saying "hello" to an expanded Korean program this year. The popular program will see an additional instructor, as well as new classes for the International Baccalaureate track.
"We looked at the large number of students requesting Korean language classes and decided we needed to meet the demand," explained Principal Mitch Brunyer.
Brunyer traveled to Korea this summer, where he learned a lot about the country's customs and cultures. He was joined by three Rowland High students who spent three weeks studying in Korea.
"We were selected by the Foundation for Korean Language and Culture in Los Angeles for its summer program," the local administrator said.
Brunyer joined 19 other administrators from California, New York, Virginia and Texas on the nine-day excursion. The educators toured the Asian country, learning its culture and history.
"Our tour to the DMZ was very interesting. We could see the border guards in North Korea," Brunyer recalled.
He brought back Korean memories to help run the expanded Korean curriculum in Rowland Heights.
"Eunice Lee has done a wonderful job growing the program at Rowland High," he said. "She was already teaching six classes, so we hired Anna Kim to help her teach Korean this year."
A Korean native, Lee said she's enjoyed teaching at Rowland the past six years. The local high school now offers five levels of Korean language instruction, as well the IB course.
"We not only teach the language, we teach the history and culture of Korea," Lee noted.
Her new colleague seemed glad to join the Rowland High faculty. The two will teach the 230 students who have signed up for Korean classes this year.
"I'll be teaching the introductory Korean class," said Kim, who grew up in Los Angeles but went to junior high school in Korea. "Their education system is very different from ours, but I'm glad I got to live in Korea with my family."
A cultural experience not lost on the Rowland principal.
"Everybody recycles there. I was surprised how much `green' technology they had," Brunyer said.
In addition to historical sites, Brunyer visited Buddhist temples and Korean schools.
"I think the hardest thing for me to get used to was the food. I almost broke down and went to MacDonald's one time," Brunyer said with a smile.
Can you say kimchi, Korea's national dish of pickled cabbage?
richard.irwin@sgvn.com
Richard Irwin


text:
As Teams turns two, Microsoft adds compliance and meeting features
More than 500,000 organisations have now deployed the collaboration and communication application. 'Microsoft is killing it with Teams,' says one bullish analyst
Satya Nadella (CEO of Microsoft) announced the public preview of Microsoft Teams in 2016
Credit: Microsoft
Matthew Finnegan (Computerworld (US)) 20 March, 2019 03:50
Microsoft has unveiled a raft of new capabilities for its Teams collaboration tool, including customised backgrounds for video calls, live text captions and integration with its Whiteboard "digital canvas" tool.
Those are just three of the features announced as part of a major update to the application at the Enterprise Connect event in Orlando, Fla. on Tuesday, alongside added security and compliance features.
Half a million organisations deploy Teams
Microsoft also offered an update on user adoption, saying there are now 500,000 organisations using Teams.
That's up from 329,000 last September, and 200,000 a year ago, and highlights growth in a crowded market that includes Slack, Google Hangouts and others.
Unlike some competitors like Slack, which has 10 million daily active users, Microsoft doesn't break out individual user statistics.
There are more large-scale deployments, too, said Lori Wright, general manager of Microsoft 365. That list includes more than 150 companies with at least 10,000 monthly active users, up from 54 companies last fall.
Last month, Facebook said its Workplace also has 150 customers with more than 10,000 users, while Slack has 150 organisations paying for Enterprise Grid, which is aimed at larger deployments.
"It is our two-year anniversary and the macro trends that have been going on for quite some time continue to drive the growth and momentum of Teams," said Wright.
"This includes things like more remote workers than ever before, the move from being tethered to your desktop to having mobile devices, [and] being able to break down corporate hierarchies and create more inclusive cultures where people can find the information they need."
Teams is available as part of subscriptions to Microsoft's Office 365 suite, which has more than 155 million individual users. Microsoft also offers a free version of Teams.
Since its launch, Teams has been positioned as a core communication and collaboration tool within Office 365, effectively replacing Skype for Business.
Among those making the transition are Microsoft's own staffers: the company said today that 180,000 of its employees have switched from Skype for Business, with Teams used for all communications.
"Microsoft is killing it with Teams, a lot quicker than I thought they would be at this point," said Patrick Moorhead, founder and president of Moor Insights & Strategy. "The company has come a long way when you realise how many years it was behind in cloud tools and I'd say it is leading right now – even bringing out features startups have begun to offer."
Angela Ashenden, principal analyst at CCS Insight, agreed that the latest adoption data highlights Microsoft's success in "maintaining incredible growth rates with Teams."
However, she added that the monthly active user figures provided by Microsoft don't necessarily show that Teams is being relied on for team collaboration yet. Daily or weekly active use would be a better indicator, she said.
"We're clearly seeing more experimentation with the platform among a broader proportion of workforces, but it's likely that this adoption is more through use of the Skype For Business meeting capabilities within Teams than use of the core messaging platform," said Ashenden.
New meeting features
Among the new functions aimed at improving the Teams meeting experience are customised backgrounds, which build on the previously blurred background feature, allowing users to choose the backdrop visible to others during a video call.
The aim is to reduce distractions, Microsoft said, and encourage more Teams users to take part in video meetings.
With Intelligent Capture in Microsoft Teams Rooms, Microsoft also wants to make it easier for remote participants to see drawings on analog whiteboards during meetings.
Read more Adobe and Microsoft take on Salesforce's marketing software, with LinkedIn as a weapon
Intelligent Capture processing can resize, focus and enhance whiteboard images and text, overlaying the information onto a video stream in real time.
Moorhead said that the digital whiteboard feature is the most significant feature announced at Enterprise Connect. "It takes a very analog work tool every information worker is familiar with and digitises it," he said. "I was very interested that with the extra camera feature you could literally look through the person drawing and annotating."
"Data shows that the vast majority of meetings have at least one remote attendee," said Wright. "A remote attendee is at a disadvantage anytime someone gets up to write on the whiteboard because they can't really see the content, they are trying to make it out, they are trying to look through a human body and understand what is happening. We have solved this now."
Customised backgrounds and Intelligent Capture features are slated to roll out later this year.
There is also support for Microsoft's digital canvas app, Whiteboard – which lets users collaborate on creative work and share ideas within Microsoft Teams Rooms. That's the multivendor conference room control system rebranded from Skype Room Systems earlier this year.
That allows content to be moved from a physical to a digital whiteboard without having to replicate the information from scratch. The feature is now in public preview.
"With the new content camera and the Microsoft Whiteboard app, we see Teams starting to embrace collaboration that spans both physical and online situations, with the forthcoming Surface Hub 2 also playing an important role," said Ashenden.
Live captions automatically creates a real-time text transcript during a meeting, which is useful for meeting participants who are deaf or hard of hearing, those who struggle with a particular language, or for those connecting from a noisy location.
"The live captions capabilities are also particularly interesting as these could help where it's hard to hear the audio due to background noise or connectivity challenges," said Ashenden, "but it will also be valuable where meeting participants or audiences are not native speakers.
"Over time, you can see this becoming the platform for real-time translation during meetings and events as well."
Read more Microsoft transitions 180,000 internal employees to Teams
Security and compliance upgrades
Microsoft also announced features aimed at Teams admins.
Private channels is "one of the most requested features" in Teams, said Wright, and allows a certain channel within a team to be locked down for private conversations. The functionality will be available later this year, Microsoft said.
The company also touted information barriers designed to help avoid conflicts of interest within an organisation by limiting which individuals can communicate with each other. That should be useful for meeting compliance demands.
"Think about a financial institution where you have buy-side and sell-side investors; you have to be able to create a strong ethical wall or information barriers so that information can't cross between those two groups," said Wright, adding that that feature is "coming soon."
Finally, new data loss prevention (DLP) capabilities detect sensitive information in Teams conversations to prevent such data from being leaked or shared without authorisation. This is generally available now.
Ashenden said the security and governance features will be critical for many highly regulated companies that "see Teams as a way to provide a more secure and compliant alternative" to consumer tools within their organisation.
"Security and trust are key focal points for differentiation for Microsoft, and data loss prevention and information barriers provide more controls and reassurance for IT organisations," she said.
Tags MicrosoftMicrosoft Teams
More about CCSDLPEnterpriseFacebookGoogleInsightMicrosoftSkype


RTsoft Forums > Official Robinson Technologies Forums > RTsoft Tavern > Do you like waffles?
View Full Version : Do you like waffles?
I used to like waffles. But then my waffle glitched. I tried to email Support, but they don't reply.
PURPLE BEAT ME TO IT!
Why does that cat look like Graystripe from Warriors?


Every baby is a little miracle. But some miracles are a bit more miraculous than others.
Recently, a lovely couple brought their 11-day old newborn baby boy into the studio so I could capture some beautiful images for them that they could treasure forever.
Well, their son was a real beauty so my job was very simple – as you can see below.
I meet lots of new parents and there is nearly always a story around the pregnancy or the birth. This couple's story really resonated with me so I wanted to share it with you.
This lady suffers from endometriosis and during a routine scan appointment for this condition, the sonographer asked her, "Are you here due to fertility issues?" To which our lady said that yes she was.
What an amazing and fabulous story. Doesn't it just make you feel all warm and fuzzy?