text:
package yast

/* AUTOMATICALLY GENERATED FROM errors.yaml - DO NOT EDIT */

import (
	"fmt"
	"github.com/infobloxopen/themis/pdp"
	"strconv"
	"strings"
)

const (
	externalErrorID                       = 0
	rootKeysErrorID                       = 1
	stringErrorID                         = 2
	missingStringErrorID                  = 3
	integerErrorID                        = 4
	floatErrorID                          = 5
	integerUint64OverflowErrorID          = 6
	integerFloat64OverflowErrorID         = 7
	mapErrorID                            = 8
	missingMapErrorID                     = 9
	listErrorID                           = 10
	missingListErrorID                    = 11
	policyAmbiguityErrorID                = 12
	policyMissingKeyErrorID               = 13
	unknownRCAErrorID                     = 14
	missingRCAErrorID                     = 15
	invalidRCAErrorID                     = 16
	missingMapRCAParamErrorID             = 17
	missingDefaultRuleRCAErrorID          = 18
	missingErrorRuleRCAErrorID            = 19
	unknownMapperPCAOrderID               = 20
	unknownMapperRCAOrderID               = 21
	notImplementedRCAErrorID              = 22
	unknownPCAErrorID                     = 23
	missingPCAErrorID                     = 24
	invalidPCAErrorID                     = 25
	missingMapPCAParamErrorID             = 26
	missingDefaultPolicyPCAErrorID        = 27
	missingErrorPolicyPCAErrorID          = 28
	notImplementedPCAErrorID              = 29
	mapperArgumentTypeErrorID             = 30
	conditionTypeErrorID                  = 31
	unknownEffectErrorID                  = 32
	noSMPItemsErrorID                     = 33
	tooManySMPItemsErrorID                = 34
	unknownMatchFunctionErrorID           = 35
	matchFunctionCastErrorID              = 36
	matchFunctionArgsNumberErrorID        = 37
	invalidMatchFunctionArgErrorID        = 38
	matchFunctionBothValuesErrorID        = 39
	matchFunctionBothAttrsErrorID         = 40
	unknownFunctionErrorID                = 41
	functionCastErrorID                   = 42
	unknownAttributeErrorID               = 43
	unknownMetaTypeErrorID                = 44
	unknownTypeErrorID                    = 45
	invalidTypeErrorID                    = 46
	missingContentErrorID                 = 47
	notImplementedValueTypeErrorID        = 48
	invalidAddressErrorID                 = 49
	invalidNetworkErrorID                 = 50
	invalidDomainErrorID                  = 51
	selectorURIErrorID                    = 52
	entityAmbiguityErrorID                = 53
	entityMissingKeyErrorID               = 54
	unknownPolicyUpdateOperationErrorID   = 55
	invalidPolicyUpdatePathElementErrorID = 56
	unknownFlagNameErrorID                = 57
	unknownAggregationTypeErrorID         = 58
	invalidAggregationTypeErrorID         = 59
)

type externalError struct {
	errorLink
	err error
}

func newExternalError(err error) *externalError {
	return &externalError{
		errorLink: errorLink{id: externalErrorID},
		err:       err}
}

func (e *externalError) Error() string {
	return e.errorf("%s", e.err)
}

type rootKeysError struct {
	errorLink
	keys map[interface{}]interface{}
}

func newRootKeysError(keys map[interface{}]interface{}) *rootKeysError {
	return &rootKeysError{
		errorLink: errorLink{id: rootKeysErrorID},
		keys:      keys}
}

func (e *rootKeysError) Error() string {
	keys := make([]string, len(e.keys))
	i := 0
	for key := range e.keys {
		if s, ok := key.(string); ok {
			keys[i] = fmt.Sprintf("%q", s)
		} else {
			keys[i] = fmt.Sprintf("%v", key)
		}
		i++
	}
	s := strings.Join(keys, ", ")

	return e.errorf("Expected type, attribute definitions and policies but got: %s", s)
}

type stringError struct {
	errorLink
	v    interface{}
	desc string
}

func newStringError(v interface{}, desc string) *stringError {
	return &stringError{
		errorLink: errorLink{id: stringErrorID},
		v:         v,
		desc:      desc}
}

func (e *stringError) Error() string {
	return e.errorf("Expected %s but got %T", e.desc, e.v)
}

type missingStringError struct {
	errorLink
	desc string
}

func newMissingStringError(desc string) *missingStringError {
	return &missingStringError{
		errorLink: errorLink{id: missingStringErrorID},
		desc:      desc}
}

func (e *missingStringError) Error() string {
	return e.errorf("Missing %s", e.desc)
}

type integerError struct {
	errorLink
	v    interface{}
	desc string
}

func newIntegerError(v interface{}, desc string) *integerError {
	return &integerError{
		errorLink: errorLink{id: integerErrorID},
		v:         v,
		desc:      desc}
}

func (e *integerError) Error() string {
	return e.errorf("Expected %s but got %T", e.desc, e.v)
}

type floatError struct {
	errorLink
	v    interface{}
	desc string
}

func newFloatError(v interface{}, desc string) *floatError {
	return &floatError{
		errorLink: errorLink{id: floatErrorID},
		v:         v,
		desc:      desc}
}

func (e *floatError) Error() string {
	return e.errorf("Expected %s but got %T", e.desc, e.v)
}

type integerUint64OverflowError struct {
	errorLink
	v    uint64
	desc string
}

func newIntegerUint64OverflowError(v uint64, desc string) *integerUint64OverflowError {
	return &integerUint64OverflowError{
		errorLink: errorLink{id: integerUint64OverflowErrorID},
		v:         v,
		desc:      desc}
}

func (e *integerUint64OverflowError) Error() string {
	return e.errorf("%d overflows %s", e.v, e.desc)
}

type integerFloat64OverflowError struct {
	errorLink
	v    float64
	desc string
}

func newIntegerFloat64OverflowError(v float64, desc string) *integerFloat64OverflowError {
	return &integerFloat64OverflowError{
		errorLink: errorLink{id: integerFloat64OverflowErrorID},
		v:         v,
		desc:      desc}
}

func (e *integerFloat64OverflowError) Error() string {
	return e.errorf("%f overflows %s", e.v, e.desc)
}

type mapError struct {
	errorLink
	v    interface{}
	desc string
}

func newMapError(v interface{}, desc string) *mapError {
	return &mapError{
		errorLink: errorLink{id: mapErrorID},
		v:         v,
		desc:      desc}
}

func (e *mapError) Error() string {
	return e.errorf("Expected %s but got %T", e.desc, e.v)
}

type missingMapError struct {
	errorLink
	desc string
}

func newMissingMapError(desc string) *missingMapError {
	return &missingMapError{
		errorLink: errorLink{id: missingMapErrorID},
		desc:      desc}
}

func (e *missingMapError) Error() string {
	return e.errorf("Missing %s", e.desc)
}

type listError struct {
	errorLink
	v    interface{}
	desc string
}

func newListError(v interface{}, desc string) *listError {
	return &listError{
		errorLink: errorLink{id: listErrorID},
		v:         v,
		desc:      desc}
}

func (e *listError) Error() string {
	return e.errorf("Expected %s but got %T", e.desc, e.v)
}

type missingListError struct {
	errorLink
	desc string
}

func newMissingListError(desc string) *missingListError {
	return &missingListError{
		errorLink: errorLink{id: missingListErrorID},
		desc:      desc}
}

func (e *missingListError) Error() string {
	return e.errorf("Missing %s", e.desc)
}

type policyAmbiguityError struct {
	errorLink
}

func newPolicyAmbiguityError() *policyAmbiguityError {
	return &policyAmbiguityError{
		errorLink: errorLink{id: policyAmbiguityErrorID}}
}

func (e *policyAmbiguityError) Error() string {
	return e.errorf("Expected rules (for policy) or policies (for policy set) but got both")
}

type policyMissingKeyError struct {
	errorLink
}

func newPolicyMissingKeyError() *policyMissingKeyError {
	return &policyMissingKeyError{
		errorLink: errorLink{id: policyMissingKeyErrorID}}
}

func (e *policyMissingKeyError) Error() string {
	return e.errorf("Expected rules (for policy) or policies (for policy set) but got nothing")
}

type unknownRCAError struct {
	errorLink
	alg string
}

func newUnknownRCAError(alg string) *unknownRCAError {
	return &unknownRCAError{
		errorLink: errorLink{id: unknownRCAErrorID},
		alg:       alg}
}

func (e *unknownRCAError) Error() string {
	return e.errorf("Unknown rule combinig algorithm \"%s\"", e.alg)
}

type missingRCAError struct {
	errorLink
}

func newMissingRCAError() *missingRCAError {
	return &missingRCAError{
		errorLink: errorLink{id: missingRCAErrorID}}
}

func (e *missingRCAError) Error() string {
	return e.errorf("Missing policy combinig algorithm")
}

type invalidRCAError struct {
	errorLink
	v interface{}
}

func newInvalidRCAError(v interface{}) *invalidRCAError {
	return &invalidRCAError{
		errorLink: errorLink{id: invalidRCAErrorID},
		v:         v}
}

func (e *invalidRCAError) Error() string {
	return e.errorf("Expected string or map as policy combinig algorithm but got %T", e.v)
}

type missingMapRCAParamError struct {
	errorLink
}

func newMissingMapRCAParamError() *missingMapRCAParamError {
	return &missingMapRCAParamError{
		errorLink: errorLink{id: missingMapRCAParamErrorID}}
}

func (e *missingMapRCAParamError) Error() string {
	return e.errorf("Missing map parameter")
}

type missingDefaultRuleRCAError struct {
	errorLink
	ID string
}

func newMissingDefaultRuleRCAError(ID string) *missingDefaultRuleRCAError {
	return &missingDefaultRuleRCAError{
		errorLink: errorLink{id: missingDefaultRuleRCAErrorID},
		ID:        ID}
}

func (e *missingDefaultRuleRCAError) Error() string {
	return e.errorf("No rule with ID %q to use as default rule", e.ID)
}

type missingErrorRuleRCAError struct {
	errorLink
	ID string
}

func newMissingErrorRuleRCAError(ID string) *missingErrorRuleRCAError {
	return &missingErrorRuleRCAError{
		errorLink: errorLink{id: missingErrorRuleRCAErrorID},
		ID:        ID}
}

func (e *missingErrorRuleRCAError) Error() string {
	return e.errorf("No rule with ID %q to use as on error rule", e.ID)
}

type unknownMapperPCAOrder struct {
	errorLink
	ord string
}

func newUnknownMapperPCAOrder(ord string) *unknownMapperPCAOrder {
	return &unknownMapperPCAOrder{
		errorLink: errorLink{id: unknownMapperPCAOrderID},
		ord:       ord}
}

func (e *unknownMapperPCAOrder) Error() string {
	return e.errorf("Unknown policy ordering for mapper \"%s\"", e.ord)
}

type unknownMapperRCAOrder struct {
	errorLink
	ord string
}

func newUnknownMapperRCAOrder(ord string) *unknownMapperRCAOrder {
	return &unknownMapperRCAOrder{
		errorLink: errorLink{id: unknownMapperRCAOrderID},
		ord:       ord}
}

func (e *unknownMapperRCAOrder) Error() string {
	return e.errorf("Unknown rule ordering for mapper \"%s\"", e.ord)
}

type notImplementedRCAError struct {
	errorLink
	ID string
}

func newNotImplementedRCAError(ID string) *notImplementedRCAError {
	return &notImplementedRCAError{
		errorLink: errorLink{id: notImplementedRCAErrorID},
		ID:        ID}
}

func (e *notImplementedRCAError) Error() string {
	return e.errorf("Parsing for %q rule combinig algorithm hasn't been implemented yet", e.ID)
}

type unknownPCAError struct {
	errorLink
	alg string
}

func newUnknownPCAError(alg string) *unknownPCAError {
	return &unknownPCAError{
		errorLink: errorLink{id: unknownPCAErrorID},
		alg:       alg}
}

func (e *unknownPCAError) Error() string {
	return e.errorf("Unknown policy combinig algorithm \"%s\"", e.alg)
}

type missingPCAError struct {
	errorLink
}

func newMissingPCAError() *missingPCAError {
	return &missingPCAError{
		errorLink: errorLink{id: missingPCAErrorID}}
}

func (e *missingPCAError) Error() string {
	return e.errorf("Missing policy combinig algorithm")
}

type invalidPCAError struct {
	errorLink
	v interface{}
}

func newInvalidPCAError(v interface{}) *invalidPCAError {
	return &invalidPCAError{
		errorLink: errorLink{id: invalidPCAErrorID},
		v:         v}
}

func (e *invalidPCAError) Error() string {
	return e.errorf("Expected string or map as policy combinig algorithm but got %T", e.v)
}

type missingMapPCAParamError struct {
	errorLink
}

func newMissingMapPCAParamError() *missingMapPCAParamError {
	return &missingMapPCAParamError{
		errorLink: errorLink{id: missingMapPCAParamErrorID}}
}

func (e *missingMapPCAParamError) Error() string {
	return e.errorf("Missing map parameter")
}

type missingDefaultPolicyPCAError struct {
	errorLink
	ID string
}

func newMissingDefaultPolicyPCAError(ID string) *missingDefaultPolicyPCAError {
	return &missingDefaultPolicyPCAError{
		errorLink: errorLink{id: missingDefaultPolicyPCAErrorID},
		ID:        ID}
}

func (e *missingDefaultPolicyPCAError) Error() string {
	return e.errorf("No policy with ID %q to use as default policy", e.ID)
}

type missingErrorPolicyPCAError struct {
	errorLink
	ID string
}

func newMissingErrorPolicyPCAError(ID string) *missingErrorPolicyPCAError {
	return &missingErrorPolicyPCAError{
		errorLink: errorLink{id: missingErrorPolicyPCAErrorID},
		ID:        ID}
}

func (e *missingErrorPolicyPCAError) Error() string {
	return e.errorf("No policy with ID %q to use as on error policy", e.ID)
}

type notImplementedPCAError struct {
	errorLink
	ID string
}

func newNotImplementedPCAError(ID string) *notImplementedPCAError {
	return &notImplementedPCAError{
		errorLink: errorLink{id: notImplementedPCAErrorID},
		ID:        ID}
}

func (e *notImplementedPCAError) Error() string {
	return e.errorf("Parsing for %q policy combinig algorithm hasn't been implemented yet", e.ID)
}

type mapperArgumentTypeError struct {
	errorLink
	actual pdp.Type
}

func newMapperArgumentTypeError(actual pdp.Type) *mapperArgumentTypeError {
	return &mapperArgumentTypeError{
		errorLink: errorLink{id: mapperArgumentTypeErrorID},
		actual:    actual}
}

func (e *mapperArgumentTypeError) Error() string {
	return e.errorf("Expected %s, %s, %s or flags as argument but got %s", pdp.TypeString, pdp.TypeSetOfStrings, pdp.TypeListOfStrings, e.actual)
}

type conditionTypeError struct {
	errorLink
	t pdp.Type
}

func newConditionTypeError(t pdp.Type) *conditionTypeError {
	return &conditionTypeError{
		errorLink: errorLink{id: conditionTypeErrorID},
		t:         t}
}

func (e *conditionTypeError) Error() string {
	return e.errorf("Expected %q as condition expression result but got %q", pdp.TypeBoolean, e.t)
}

type unknownEffectError struct {
	errorLink
	e string
}

func newUnknownEffectError(e string) *unknownEffectError {
	return &unknownEffectError{
		errorLink: errorLink{id: unknownEffectErrorID},
		e:         e}
}

func (e *unknownEffectError) Error() string {
	return e.errorf("Unknown rule effect %q", e.e)
}

type noSMPItemsError struct {
	errorLink
	desc string
	n    int
}

func newNoSMPItemsError(desc string, n int) *noSMPItemsError {
	return &noSMPItemsError{
		errorLink: errorLink{id: noSMPItemsErrorID},
		desc:      desc,
		n:         n}
}

func (e *noSMPItemsError) Error() string {
	return e.errorf("Expected at least one entry in %s got %d", e.desc, e.n)
}

type tooManySMPItemsError struct {
	errorLink
	desc string
	n    int
}

func newTooManySMPItemsError(desc string, n int) *tooManySMPItemsError {
	return &tooManySMPItemsError{
		errorLink: errorLink{id: tooManySMPItemsErrorID},
		desc:      desc,
		n:         n}
}

func (e *tooManySMPItemsError) Error() string {
	return e.errorf("Expected only one entry in %s got %d", e.desc, e.n)
}

type unknownMatchFunctionError struct {
	errorLink
	ID string
}

func newUnknownMatchFunctionError(ID string) *unknownMatchFunctionError {
	return &unknownMatchFunctionError{
		errorLink: errorLink{id: unknownMatchFunctionErrorID},
		ID:        ID}
}

func (e *unknownMatchFunctionError) Error() string {
	return e.errorf("Unknown match function %q", e.ID)
}

type matchFunctionCastError struct {
	errorLink
	ID     string
	first  pdp.Type
	second pdp.Type
}

func newMatchFunctionCastError(ID string, first, second pdp.Type) *matchFunctionCastError {
	return &matchFunctionCastError{
		errorLink: errorLink{id: matchFunctionCastErrorID},
		ID:        ID,
		first:     first,
		second:    second}
}

func (e *matchFunctionCastError) Error() string {
	return e.errorf("No function %s for arguments %s and %s", e.ID, e.first, e.second)
}

type matchFunctionArgsNumberError struct {
	errorLink
	n int
}

func newMatchFunctionArgsNumberError(n int) *matchFunctionArgsNumberError {
	return &matchFunctionArgsNumberError{
		errorLink: errorLink{id: matchFunctionArgsNumberErrorID},
		n:         n}
}

func (e *matchFunctionArgsNumberError) Error() string {
	return e.errorf("Expected two arguments got %d", e.n)
}

type invalidMatchFunctionArgError struct {
	errorLink
	expr pdp.Expression
}

func newInvalidMatchFunctionArgError(expr pdp.Expression) *invalidMatchFunctionArgError {
	return &invalidMatchFunctionArgError{
		errorLink: errorLink{id: invalidMatchFunctionArgErrorID},
		expr:      expr}
}

func (e *invalidMatchFunctionArgError) Error() string {
	return e.errorf("Expected one immediate value and one attribute got %T", e.expr)
}

type matchFunctionBothValuesError struct {
	errorLink
}

func newMatchFunctionBothValuesError() *matchFunctionBothValuesError {
	return &matchFunctionBothValuesError{
		errorLink: errorLink{id: matchFunctionBothValuesErrorID}}
}

func (e *matchFunctionBothValuesError) Error() string {
	return e.errorf("Expected one immediate value and one attribute got both immediate values")
}

type matchFunctionBothAttrsError struct {
	errorLink
}

func newMatchFunctionBothAttrsError() *matchFunctionBothAttrsError {
	return &matchFunctionBothAttrsError{
		errorLink: errorLink{id: matchFunctionBothAttrsErrorID}}
}

func (e *matchFunctionBothAttrsError) Error() string {
	return e.errorf("Expected one immediate value and one attribute got both immediate values")
}

type unknownFunctionError struct {
	errorLink
	ID string
}

func newUnknownFunctionError(ID string) *unknownFunctionError {
	return &unknownFunctionError{
		errorLink: errorLink{id: unknownFunctionErrorID},
		ID:        ID}
}

func (e *unknownFunctionError) Error() string {
	return e.errorf("Unknown function %q", e.ID)
}

type functionCastError struct {
	errorLink
	ID    string
	exprs []pdp.Expression
}

func newFunctionCastError(ID string, exprs []pdp.Expression) *functionCastError {
	return &functionCastError{
		errorLink: errorLink{id: functionCastErrorID},
		ID:        ID,
		exprs:     exprs}
}

func (e *functionCastError) Error() string {
	args := ""
	if len(e.exprs) > 1 {
		t := make([]string, len(e.exprs))
		for i, e := range e.exprs {
			t[i] = strconv.Quote(e.GetResultType().String())
		}
		args = fmt.Sprintf("%d arguments of following types %s", len(e.exprs), strings.Join(t, ", "))
	} else if len(e.exprs) > 0 {
		args = fmt.Sprintf("argument of type %q", e.exprs[0].GetResultType())
	} else {
		args = "no arguments"
	}

	return e.errorf("Can't find function %s which takes %s", e.ID, args)
}

type unknownAttributeError struct {
	errorLink
	ID string
}

func newUnknownAttributeError(ID string) *unknownAttributeError {
	return &unknownAttributeError{
		errorLink: errorLink{id: unknownAttributeErrorID},
		ID:        ID}
}

func (e *unknownAttributeError) Error() string {
	return e.errorf("Unknown attribute %q", e.ID)
}

type unknownMetaTypeError struct {
	errorLink
	meta string
}

func newUnknownMetaTypeError(meta string) *unknownMetaTypeError {
	return &unknownMetaTypeError{
		errorLink: errorLink{id: unknownMetaTypeErrorID},
		meta:      meta}
}

func (e *unknownMetaTypeError) Error() string {
	return e.errorf("Unknown meta type %q", e.meta)
}

type unknownTypeError struct {
	errorLink
	t string
}

func newUnknownTypeError(t string) *unknownTypeError {
	return &unknownTypeError{
		errorLink: errorLink{id: unknownTypeErrorID},
		t:         t}
}

func (e *unknownTypeError) Error() string {
	return e.errorf("Unknown type %q", e.t)
}

type invalidTypeError struct {
	errorLink
	t pdp.Type
}

func newInvalidTypeError(t pdp.Type) *invalidTypeError {
	return &invalidTypeError{
		errorLink: errorLink{id: invalidTypeErrorID},
		t:         t}
}

func (e *invalidTypeError) Error() string {
	return e.errorf("Can't make value of %q type", e.t)
}

type missingContentError struct {
	errorLink
}

func newMissingContentError() *missingContentError {
	return &missingContentError{
		errorLink: errorLink{id: missingContentErrorID}}
}

func (e *missingContentError) Error() string {
	return e.errorf("Missing value content")
}

type notImplementedValueTypeError struct {
	errorLink
	t pdp.Type
}

func newNotImplementedValueTypeError(t pdp.Type) *notImplementedValueTypeError {
	return &notImplementedValueTypeError{
		errorLink: errorLink{id: notImplementedValueTypeErrorID},
		t:         t}
}

func (e *notImplementedValueTypeError) Error() string {
	return e.errorf("Parsing for type %q hasn't been implemented yet", e.t)
}

type invalidAddressError struct {
	errorLink
	s string
}

func newInvalidAddressError(s string) *invalidAddressError {
	return &invalidAddressError{
		errorLink: errorLink{id: invalidAddressErrorID},
		s:         s}
}

func (e *invalidAddressError) Error() string {
	return e.errorf("Expected value of address type but got %q", e.s)
}

type invalidNetworkError struct {
	errorLink
	s   string
	err error
}

func newInvalidNetworkError(s string, err error) *invalidNetworkError {
	return &invalidNetworkError{
		errorLink: errorLink{id: invalidNetworkErrorID},
		s:         s,
		err:       err}
}

func (e *invalidNetworkError) Error() string {
	return e.errorf("Expected value of network type but got %q (%v)", e.s, e.err)
}

type invalidDomainError struct {
	errorLink
	s   string
	err error
}

func newInvalidDomainError(s string, err error) *invalidDomainError {
	return &invalidDomainError{
		errorLink: errorLink{id: invalidDomainErrorID},
		s:         s,
		err:       err}
}

func (e *invalidDomainError) Error() string {
	return e.errorf("Expected value of domain type but got %q (%v)", e.s, e.err)
}

type selectorURIError struct {
	errorLink
	uri string
	err error
}

func newSelectorURIError(uri string, err error) *selectorURIError {
	return &selectorURIError{
		errorLink: errorLink{id: selectorURIErrorID},
		uri:       uri,
		err:       err}
}

func (e *selectorURIError) Error() string {
	return e.errorf("Expected seletor URI but got %q (%s)", e.uri, e.err)
}

type entityAmbiguityError struct {
	errorLink
	fields []string
}

func newEntityAmbiguityError(fields []string) *entityAmbiguityError {
	return &entityAmbiguityError{
		errorLink: errorLink{id: entityAmbiguityErrorID},
		fields:    fields}
}

func (e *entityAmbiguityError) Error() string {
	return e.errorf("Expected rules (for policy), policies (for policy set) or effect (for rule) but got %s", strings.Join(e.fields, ", "))
}

type entityMissingKeyError struct {
	errorLink
}

func newEntityMissingKeyError() *entityMissingKeyError {
	return &entityMissingKeyError{
		errorLink: errorLink{id: entityMissingKeyErrorID}}
}

func (e *entityMissingKeyError) Error() string {
	return e.errorf("Expected rules (for policy), policies (for policy set) or effect (for rule) but got nothing")
}

type unknownPolicyUpdateOperationError struct {
	errorLink
	op string
}

func newUnknownPolicyUpdateOperationError(op string) *unknownPolicyUpdateOperationError {
	return &unknownPolicyUpdateOperationError{
		errorLink: errorLink{id: unknownPolicyUpdateOperationErrorID},
		op:        op}
}

func (e *unknownPolicyUpdateOperationError) Error() string {
	return e.errorf("Unknown policy update operation %q", e.op)
}

type invalidPolicyUpdatePathElementError struct {
	errorLink
	v   interface{}
	idx int
}

func newInvalidPolicyUpdatePathElementError(v interface{}, idx int) *invalidPolicyUpdatePathElementError {
	return &invalidPolicyUpdatePathElementError{
		errorLink: errorLink{id: invalidPolicyUpdatePathElementErrorID},
		v:         v,
		idx:       idx}
}

func (e *invalidPolicyUpdatePathElementError) Error() string {
	return e.errorf("Expected string as %d path element but got %T", e.idx, e.v)
}

type unknownFlagNameError struct {
	errorLink
	name string
	t    *pdp.FlagsType
}

func newUnknownFlagNameError(name string, t *pdp.FlagsType) *unknownFlagNameError {
	return &unknownFlagNameError{
		errorLink: errorLink{id: unknownFlagNameErrorID},
		name:      name,
		t:         t}
}

func (e *unknownFlagNameError) Error() string {
	return e.errorf("Type %q doesn't have flag %q", e.t, e.name)
}

type unknownAggregationTypeError struct {
	errorLink
	a string
}

func newUnknownAggregationTypeError(a string) *unknownAggregationTypeError {
	return &unknownAggregationTypeError{
		errorLink: errorLink{id: unknownAggregationTypeErrorID},
		a:         a}
}

func (e *unknownAggregationTypeError) Error() string {
	return e.errorf("Unknown aggregation type %q", e.a)
}

type invalidAggregationTypeError struct {
	errorLink
	a string
	t pdp.Type
}

func newInvalidAggregationTypeError(a string, t pdp.Type) *invalidAggregationTypeError {
	return &invalidAggregationTypeError{
		errorLink: errorLink{id: invalidAggregationTypeErrorID},
		a:         a,
		t:         t}
}

func (e *invalidAggregationTypeError) Error() string {
	return e.errorf("Inappropriate aggregation type %q for selector type %q", e.a, e.t)
}

redpajama_set_name: RedPajamaGithub


text:
England's 5-0 ODI series victory over Australia begins our Christmas countdown
Last Updated: 20/12/18 9:55am
England celebrate their 5-0 ODI series whitewash win over Australia
With five days to go until Christmas, we look back on how England handed out a 5-0 drubbing of Australia in this summer's ODI series.
Eoin Morgan's men responded to defeat by Scotland in the best possible way, posting their highest ODI score against Australia before blasting a new world-record total. Jos Buttler capped things off in style with a stunning century.
Here's how the series unfolded...
First ODI, The Oval
Australia 214 all out lost to England 218-7 by three wickets
SCORECARD | REPORT | AS IT HAPPENED
Catch up with all the action from the first ODI between England and Australia from The Oval.
The batting woes that would plague Australia throughout - particularly their struggles against spin, with leading wicket-takers Moeen Ali (3-43) and Adil Rashid (2-36) taking their first of 12 strikes for the series - were first evident at The Oval. The tourists were bundled out by England for 214 in 47 overs, only lasting that long due to a handy sixth-wicket stand of 84 between Glenn Maxwell (62) and Ashton Agar (40).
Two mini-batting collapses either side of a 115-run fourth-wicket partnership between Joe Root (50) and Eoin Morgan (69) threatened to derail England's run-chase - 6 ft 7 fast bowler Billy Stanlake (2-44) showing the first flashes of his undoubted talent - but David Willey cracked a crucial unbeaten 35 to see the hosts to a narrow three-wicket win.
Second ODI, Cardiff
England 342-8 beat Australia 304 all out by 38 runs
The pick of the action from the 2nd ODI between England and Australia at Sophia Gardens.
England's highest-ever ODI score against Australia (that record would emphatically be bettered later in the series) of 342-8 was good enough to earn them a 2-0 advantage as Jason Roy (120 off 108 balls) cracked a composed hundred at the top of the order, and Jos Buttler belted 91 not out off 70 balls later on.
A late Australian surge, this time with the bat, again had the result in doubt, with Shaun Marsh - Australia's leading run-scorer for the series with 288 at an average of 57.60 - outdoing Roy's earlier century with a fine 131 that helped bring the runs required down to a manageable 53 from the final five overs. But Liam Plunkett (4-53) took the key wicket of Marsh, and captain Paine (15), within the next four balls and England then quickly blasted out the tail.
Third ODI, Trent Bridge
England 481-6 beat Australia 239 all out by 242 runs
Catch up with all the action from what has been a sensational record-breaking day for England at Trent Bridge.
Four hundred and eighty-one! 481! And it should really have been 500! England didn't just break the record ODI score of 444 - set by themselves only two years ago against Pakistan at Trent Bridge - they utterly obliterated it. Alex Hales (147 off 92 balls) top-scored, Jonny Bairstow (139 off 92) cracked his fourth ton in six ODIs, while captain Morgan (67 off 30) overtook Ian Bell as England's highest ODI run-scorer in recording the nation's fastest fifty, off just 21 deliveries.
Australia had no answer to England's brutal batting, which included a staggering 41 boundaries and 21 sixes - the second-highest ever in an ODI innings. Andrew Tye received the most stick, his nine wicketless overs bringing up a very unwanted century, while the Aussie batsmen could only muster 239 in reply, bowled out in the 37th over as they suffered their heaviest ODI defeat and England clinched their biggest ever victory.
Fourth ODI, Durham
Australia 310-8 lost to England 314-4 by six wickets
Catch up with all the action from the fourth ODI between England and Australia at the Emirates Riverside.
Another ODI, another England win, another record achieved. This time England mounted their highest successful run-chase against Australia, and second-highest ever in chasing down 311, winning with a massive 32 balls to spare as Roy (101 off 83) again finished on the winning side after trading hundreds with Marsh (101 off 92).
Marsh was one of two centurions for Australia, who finally found some form with the bat courtesy of moving Aaron Finch (100 off 106) back up to open. But, having been 225-1 at the start of the 40th over courtesy of those two tons, finishing 310-8 represented a fairly poor return from the final overs. And so it proved, with Roy, Bairstow (79 off 66) and Buttler (54no off 29) again among the runs.
Fifth ODI, Old Trafford
Australia 205 all out lost to England 208-9 by one wicket
Catch up with all the action from the fifth and final ODI between England and Australia at Old Trafford.
Even still needing 92 runs, with only two wickets remaining, there was an air of inevitability surrounding England's eventual win in Manchester, given both the way the series had gone and the sensational form of Buttler. At that stage, the Lancashire batsman was 47 not out but, ably assisted by Rashid (20 off 47) in an 81-run stand, Buttler (110no off 122) was able to blast his way to arguably his finest hundred, if indeed his slowest, for England in a thrilling one-wicket win.
Again, as at The Oval, it was a smaller target that gave the home side the most trouble after they bowled out Australia for 205 in a frenetic 34.4-over innings - Buttler beginning his brilliant all-round day with a sharp stumping of Marsh and a superb run-out of Paine. In reply, also as at The Oval, Stanlake (3-35) was the one giving the England batsmen headaches with three wickets in a stirring opening spell, reducing the hosts to 27-4. In came Buttler......
Live cricket on Sky
What's on Sky Sports Cricket?
Watch live action on Sky Sports Cricket this Christmas as New Zealand and Sri Lanka continue to go head to head, before South Africa take on Pakistan.
Comment below to get involved in the debate, but please adhere to our House Rules. If you wish to report any comment, simply click on the down arrow next to the offending comment and click 'Report'.
England's six appeal: Stats of 2018
England's 2019 resolution to dominate
Rob Key's 2018 cricket awards
Surrey, Worcestershire delight in 2018
Cricket quotes of 2018

redpajama_set_name: RedPajamaCommonCrawl


text:
Winnie the Pooh (2011)
Watch Winnie the Pooh (2011) Online
During an ordinary day in Hundred Acre Wood, Winnie the Pooh sets out to find some honey. Misinterpreting a note from Christopher Robin, Pooh convinces Tigger, Rabbit, Piglet, Owl, Kanga, Roo, and Eeyore that their young friend has been captured by a creature named "Backson" and they set out to save him.
Director: Don Hall, Stephen J. Anderson
Actors: Bud Luckey, Craig Ferguson, Jack Boulter, Jim Cummings, John Cleese, Kristen Anderson-Lopez, Travis Oates
Prehysteria! (1993)
A young boy and his family embark on a series of adventures when the boy finds some mysterious eggs which hatch to reveal a brood of baby dinosaurs.
Genre: Adventure, Comedy, Family, Fantasy, Science Fiction
Antz (1998)
A neurotic worker ant in love with a rebellious princess rises to unlikely stardom when he switches places with a soldier. Signing up to march in a parade, he ends…
Frog Dreaming (1986)
American boy Cody lives in Australia with his guardian, Gaza. Cody is very imaginative, inventive, and inquisitive. He comes accross some strange events happening in Devil's Knob national park associated…
Genre: Action, Adventure, Drama, Family, Fantasy, Mystery
Bleeding Steel (2017)
Jackie Chan stars as a hardened special forces agent who fights to protect a young woman from a sinister criminal gang. At the same time, he feels a special connection…
Genre: Action, Adventure, Science Fiction, Thriller
A full length animated film for all the family to enjoy. Pooh gets confused when Christopher Robin leaves him a note to say that he has gone back to school…
Genre: Adventure, Animation, Comedy, Family, Musical
Ashfall (2019)
Stagnant since 1903, at an elevation of 9000′, a volcano erupts on the mythical and majestic Baekdu Mountain.
Sharpe's Enemy
Portugal 1813. A band of deserters, including Sharpe's old enemy, Obadiah Hakeswill, have captured two women, one the wife of a high-ranking English officer, and are holding them hostage for…
Genre: Action, Adventure, History, War
Outlander (2008)
During the reign of the Vikings, a man from another world crash-lands on Earth, bringing with him an alien predator. The man must fuse his advanced technology with the weaponry…
Genre: Action, Adventure, Fantasy, Horror, Science Fiction, War
Battle Beyond the Stars (1980)
A young farmer assembles a band of diverse mercenaries to defend his peaceful planet from an evil tyrant.
European mercenaries searching for black powder become embroiled in the defense of the Great Wall of China against a horde of monstrous creatures.
Country: Australia, Canada, China, Hong Kong, USA
Genre: Action, Adventure, Fantasy, Thriller
Goosebumps 2: Haunted Halloween (2018)
An experimental submarine, the "Siren II", with a very experienced crew is sent to find out what happened to the "Siren I" after it mysteriously dissapeared in a submarine rift….
Genre: Action, Adventure, Horror, Mystery, Science Fiction, Thriller
Trailer: Winnie the Pooh (2011)


05.03 – Reportable Accounts | FATCA & CRS Training. Advice. Consultancy.
Where the Financial Institution has identified US indicia, (See Section 5.5) and those indicia have not been cured or repaired. The relevant Pre-existing Accounts will be reportable unless they are exempt from being Financial Accounts (see 3.11).
Where a Pre-existing Lower Value or High Value Account closes before the Financial Institution carrying out its due diligence procedures, the account still needs to be reviewed. Where, following the due diligence procedures the account is found to be reportable, the Financial Institution must report the information for the closed account as required under Section 9.
This will not however apply to accounts that are closed before 30 June 2014.
Where an account is closed on or after 1 July 2014 the and the Financial Institution has no continuing contractual relationship with the account holder and therefore is unable to undertake action in relation to any indicia or is unlikely to receive a response to any query made to the Account Holder, the account should be treated as reportable in that reporting year.
The reporting requirement for a Depository Account can alter annually even where the account holder remains a US Person. Whether a Depository Account is a Reportable Account is dependent on whether the annual balance or value is above the reporting threshold of $50,000 and an election has been made to apply the thresholds.
A Depository Account belonging to a US Person with a balance of $65,000 at 31 December will need to be reported. The following year there is a large withdrawal from the account bringing the balance down to $20,000 at 31 December. As the balance is now below the $50,000 threshold, the account does not need to be reported.


Obsidian is one of the new residential smart locks shown by Kwikset at ISC West, and will be available later in the year. Said to be among the first on the market with the Z-Wave 500 Series chipset, Obsidian offers a number of enhancements including extended wireless range and security features reducing the vulnerability of the network.
A number of vehicles were allegedly stolen by a locksmith at a Wisconsin airport. Forty-six-year-old Anthony Larson of Milwaukee has reportedly admitted stealing nine cars and vans parked at Milwaukee's Mitchell International, and park and ride lots around the area.
SECO-LARM USA, Inc. has started shipping the new Split Series Keypad with Proximity Reader. The SK-4131-SPSQ adds an extra layer of security - the keypad and controller are separate; preventing access via keypad tampering.
Leading brand Securitron, well known for its portfolio of electromagnetic locking solutions, is now available from ASSA ABLOY Security Solutions, a UK division of ASSA ABLOY, the global leader in door opening solutions, with an unparalleled lifetime guarantee.
The announcement signals ASSA ABLOY Security Solutions' commitment to offering a 'one-stop shop' for customers, ensuring they can deliver the right solution, whatever the specification. The move also gives ASSA ABLOY Security Solutions' customer base access to a wide range of Securitron products.
Private security companies must respect minimum requirements on accountability, the screening of staff and reporting on misconduct, while staying away from tasks usually reserved for the military said committee MEPs on Tuesday.
Foreign Affairs Committee and Defence Sub-Committee MEPs advocate EU-wide rules on private security companies (PSCs). The use of private contractors must be limited to logistical support and the protection of installations and only EU-based PSCs should be contracted for protection tasks abroad, say MEPs.
Paris aficionados will get the chance to buy into the world's most romantic city when the French capital sells off the "love locks" that have adorned its bridges before officials clamped down on the amorous practice.
Interiors, customer services and facilities may well steal the limelight to guest satisfaction in hospitality. However, it is the finer, more 'hidden' details that can make or break a guest's stay. Trevor Ball, area sales manager for Allegion UK in hospitality, explores what RFID technology is doing for the hotel industry.


I was thrilled to read the article in last week's Rappahannock News about Connor Culbertson receiving a nomination to West Point Military Academy. Way to go Connor! I have known Connor and his family for several years now — our initial connection was through honey bees and beekeeping. In addition to all his other volunteer and academic achievements, Connor is a beekeeper.
In fact, while the recent article about Connor's West Point Nomination mentioned his trip to Brazil where he volunteered with a group doing humanitarian and spiritual outreach, during that trip Connor also worked with a family that had a beekeeping business. He helped them move some of their African honey bee (AHB) hives from one location to another. This is not as easy as it sounds, and is not the same as moving European honey bees, which are the vast majority of bees we have as beekeepers in the United States.
Connor is a member of the Northern Piedmont Beekeepers Association (NPBA), the local bee club for this area. He was our featured speaker at our NPBA meeting this past October where he gave a presentation about his experiences working in Brazil with the African honey bee. It was fascinating as he described, complete with photos and maps, all the twists and turns of relocating the bee hives, which included a number of unexpected situations (like a broken trailer loaded with African honey bees that had to be left at the side of the road and then retrieved) that kept the NPBA members on the edge of their seats.
Congratulations to Connor on his nomination to West Point — maybe he can get an apiary set up there, too!


Posted March 20th, 2015 by pamela & filed under My Blogs.
I've been interested in Ken's work since the early days of Frontline SMS. Usually he's been on the platform and I've been in the audience, but we do get talking now and again. Our paths cross mainly at London events relating to Africa in general, or ICT4D (Information and Communication Technology for Development).
You'll remember how we were hoping that new UK-Dadamac collaborations might result if I went to the ICTD 2010 conference at Royal Holloway College, London University. We were hopeful because Professor Tim Unwin was running it with a strong emphasis on academic-practitioner connections. Ken was one of the practitioners out the front with Tim for the welcoming session and keynotes.
www.amazon.co.uk › … › Human Geography › Developmental Studies Buy The Rise of the Reluctant Innovator by Ken Banks, Archbishop Desmond Tutu … Classes in social innovation, social entrepreneurship and design thinking have become … How much social change is planned, and how much accidental?
www.reluctantinnovation.com/ Classes in social innovation, social entrepreneurship and design thinking have become increasingly popular in recent years. On the … How much social change is planned, and how much accidental? … From the introduction by Ken Banks.
24 Dec 2011 – Secrets Of The Accidental Entrepreneur … But the accidental entrepreneurs mentioned above had it. ….. Ken Banks · Founder at Kiwanja.net.
www.amazon.com/The-Rise-Reluctant-Innovator-Banks/…/1907994181 The Rise of the Reluctant Innovator [Ken Banks, Archbishop Desmond Tutu] on Amazon.com. … Classes in social innovation, social entrepreneurship and design thinking … How much social change is planned, and how much accidental?
womanontheedgeofreality.com/…/meet-ken–banks-author-of-the-rise-of-… 12 Feb 2015 – I was fortunate enough to meet Ken when we both presented at a conference on social entrepreneurship in London about four years ago.
uk.ashoka.org/sites/uk.ashoka.org/…/Ken_Banks_Story_of_Change_0.p… To find out more about Ken Banks and kiwanja.net click here or follow him on … entrepreneur and an inventor? … field was purely accidental on a number of.
HubW, Holacracy, Culturevists and Dadamac.


text:
LP ACCESS
Senior Executive Advisors
28 Sep John Kneen
Prior to founding Beecken Petty O'Keefe & Company in 1996, John gained wide operating experience in the healthcare services industry. In 1989, he founded a senior housing management company that was sold to Evergreen Healthcare, Inc. in 1990. He then joined Evergreen, where from 1991...
Beecken Petty O'Keefe & Company
131 South Dearborn Street, Suite 2800
Email: partners@bpoc.com
Health-E Commerce Receives Majority Equity Investment from Beecken Petty O'Keefe & Company ("BPOC")
Medicus Healthcare Solutions And Beecken Petty O'Keefe & Company Announce New Partnership
Maxor Appoints New CFO at Pivotal Point in the Company's Transformation
Regulatory Disclaimer
© Copyright Beecken Petty O'Keefe & Company. All Rights Reserved
VISITORS TO THE BEECKEN PETTY O'KEEFE & COMPANY, LLC WEBSITE ARE REQUESTED TO READ THE FOLLOWING:
Beecken Petty O'Keefe & Company, LLC ("BPOC") is an investment adviser registered with the United States Securities and Exchange Commission ("SEC").
All information contained on this website is for informational purposes only. Nothing on this website is to be construed as a solicitation to offer investment advice or services. Information about investing in BPOC funds is only available in the form of private placement memoranda and other offering documents. These documents contain information to help investors evaluate BPOC funds' investment objectives, risks, fees and expenses, among other factors, before considering an investment. Further information about BPOC is also available in Form ADV Part 2, filed with the SEC.
Past performance is no guarantee of future results and no representation is made that BPOC's funds will achieve their investment objectives or that the strategies will be successful.
Certain links, including links to portfolio company websites, are provided on this website. These links are provided as a convenience and do not imply BPOC's sponsorship or approval of any of these websites or their content. BPOC has no control over or responsibility for other websites that may be accessible from this website, the contents thereof, their security or privacy policies, or any products/services that may be offered by them. If you access any third-party website through this website or because it is referred to in this website, you do so at your own risk. Links to or from this website do not constitute an endorsement by BPOC of the parties or businesses which are so linked, nor do they necessarily indicate any affiliation between us and such parties or businesses.
The title "Senior Executive Advisor" is not intended to indicate that a team member with this title is a partner, principal or employee of BPOC or any BPOC fund or other affiliate. Senior Executive Advisors provide expertise to BPOC and its portfolio companies. They may be independent contractors or employees of current or former portfolio companies and may have business or investment activities unrelated to BPOC.
Details on selected active and former investments have been included for illustrative purposes only and have been selected in order to provide examples of the types of investments previously made by BPOC and do not purport to be a complete list of investments. Further, investments bound by non-disclosure agreements are not included in the list of portfolio companies. For more information, please contact BPOC at partners@bpoc.com.


« Chronic heart failure is normally common swecialis com.
Following the surgery, a splint or cast may be placed on, alongside brief arm cast for 6 to eight weeks to stop your thumb from shifting. Stillness can be significant for the therapeutic procedure. While many people overlook thumb sprain injuries and believe it'll cure on its own, in several cases if remaining untreated the thumb might become collapsed, and the person may never accomplish appropriate function & mobility. Though it isn't possible totally ignore all the probable factors behind finger and thumb splints, but it's helpful to identify what're possible causes. By understanding what can resource this ache, you may be with the capacity of ignoring such an agonizing condition in the future.. Causes & Symptoms of Thumb Sprained Injuries! The thumb is obviously one of those elements of your body that is exercised regularly in lifestyle.Lynora Saxinger, Chair of the AMMI Canada Antimicrobial Stewardship and Level of resistance Committee. 'Patients want to get better and their doctors wish to accomplish the right issue, but antibiotics are generally seen as the safest choice for 'colds and flu' when actually they won't help these viral attacks, and could cause side effects along with bacterial resistance. We want to help put equipment in the hands of doctors and sufferers to greatly help in the decisions.' Related StoriesNew study uncovers antibiotic prescription styles across EnglandPeople puzzled about antibiotic resistance, displays WHO surveyNew broad-spectrum antibiotic can destroy bacterias by punching holes within their membranesAntibiotic Awareness Day resources include a 'prescription pad' for doctors to provide right to patients seeking antibiotics.


Join us for 3 days of action packed fun including games, great crafts, drama, Bible stories and much, much more!
A chance to find out what we have been up to during Holiday Club and see your child perform. 3pm on Thursday 18th, with tea and cake.
At the 10.15am service on Easter Sunday 21st April, including Easter Egg Hunt!
• Cost £4 per day or £10 for all 3 days.


PEC believes that if we are honest and respect our clients; in return they will be honest and respect us. PEC seeks to build our internal and external professional relationships on Trust. We instill trust by listening and effectively communicating with our customers and associates and taking responsibility for the results.


Yesterday I did some more photography using my Galaxy 4 Note (phone camera), which is waaaay better than my actual Canon camera! I have had the phone for a few month now and can get great action photos of my son who is never still. I wanted an image of the 4 colour types of Ginger Pegg blankets we stock- all together in one image. I have some white Ikea kids storage bench/drawler's that I use as bench seats and I have nearly white wall, so this is the back drop for the images. The day was cloudy but the sun was peeking through every few minute so I got to experiment with what kind of light works. With none of the 'right' tools, this is what I have to work with.
So what I learnt is- too much sun is NOT good as it makes the colour come out all wrong, very different to the actual product colour. However a bright day and the sun shaded, results in a great picture- well as perfect as I'm going to get with these conditions in my dinning room!
Pure, Fine Merino Wool, Breathable, Comfortable, Gorgeous!


text:
The Antitrust Review of the Americas 2010
Brazil: Compliance
Mário Roberto Villanova Nogueira, Ricardo Inglez de Souza and Bruno De Luca Drago
Demarest Advogados
Antitrust Compliance Programmes in Brazil
Harsh penalties for antitrust infringements
Within the current scenario of globalisation and economic crisis, companies have sought to maximise their economic efficiencies aiming either their survival or the conquest of new markets and opportunities. Such companies shall be conscious, however, of the line separating competition on merits from competition infringements.
In this regard, some companies tend to abuse their market power, by either excluding their competitors or by extending their leverage into neighboring markets. Others tend to employ their efforts in colluding with their competitors in order to avoid fierce competition in the market.
Such behaviour harmed consumers around the globe, but the response has been vigorous from Brazilian antitrust authorities (Antitrust Authorities), and with huge administrative fines and criminal jail sentences being imposed not only to domestic, but also foreign companies and individuals, and burdensome damage claims being filed.
Prevention becomes of greater importance to avoid deep penalties being imposed as a result of competition wrongdoing. But how to prevent such wrongdoings? The answer is as simple as it could be: education, training, supervision and remedy. Antitrust compliance programmes are certainly able to cover such concerns.
Although antitrust compliance programmes are very popular in other countries, in Brazil such preventive tools have only recently been adopted by some companies. Most of the initiatives come from multinational companies with global antitrust policies and compliance culture. Nevertheless, Brazilian companies have started to realise the importance of adopting preventive measures to avoid unlawful practices.
The initiative is not only encouraged by international tendencies, but also by the development of competition enforcement in the country. In line with global trends, prosecution of anti-competitive conducts in Brazil has become more rigorous in the past years. In 2008 and 2009, the Brazilian Antitrust Authorities, especially the Secretariat of Economic Law (SDE), the body in charge of antitrust investigations of the Brazilian System of Competition Defence (SBDC),1 have implemented several campaigns to enforce cartel prosecution. Among these actions were the implementation of the National Day for Cartel Prosecution, dated 8 October, and the publishing of practical guidelines on: cartel prosecution and leniency programmes; bid-rigging; and fighting cartels in trade associations.
SDE has also turned its efforts to increase investigations involving cartels. In 2008, the administrative proceedings involving cartel accusations reached 13.5 per cent of the total administrative proceedings analysed by SDE.2
Since 2000, SDE has been able to count with efficient legal tools to detect and prosecute anti-competitive practices. For example, with the assistance of the federal police, SDE is now constantly conducting secret investigations and organising, upon judicial authorisations, dawn raids (know in Brazil as seek-and-seizure procedures) to collect direct evidence of infringements such as objects, papers of any nature, commercial books, computers and files from the company or individual.3
Not only have SDE initiatives raised the attention to cartel prosecution, but also the increasing penalties imposed by the Administrative Council of Economic Law (CADE). While SDE has the responsibility to start investigations and prosecute antirust wrongdoings, the final decision shall be taken by CADE.
Law No. 8,884 of 11 June 2004 (Competition Act) provides for pecuniary fines of 1 to 30 per cent of the gross revenue of the condemned company in the year prior to the opening of the investigation.4 The company's executives directly or indirectly involved in the conduct may be fined from 10 to 50 per cent of the fine applicable to the company.5 CADE used to keep the fines more close to the minimum (1 per cent), however, this reality changed in the past years.
The crushed stone cartel case was judged by CADE on 7 July 2005.6 In this case, the fines reached 20 per cent of the gross revenues of some of the involved companies. The trade associations were condemned in more severe fines that reached, approximately, 300,000 reais.
Another important cartel decision dated 19 September 2007 that is worth mentioning is the private security companies cartel,7 by which CADE condemned the involved companies to a total amount of fines equivalent to, approximately, 38 million reais. The trade associations and unions involved in the case were each fined 160,000 reais. The individuals involved in the conduct were fined amounts that totalled approximately 4.5 million reais.
The most recent and remarkable case, decided in 2009, condemned several companies involved in a cartel for bid-rigging in the sand extraction industry to fines of 22.5 per cent of their gross revenue.8
Not only are the penalties applied to companies and trade associations getting more severe, but also the penalties applied to the involved executives. Besides being administratively fined by CADE, a cartel is also a criminal felony in Brazil punished with two to five years of imprisonment, or pecuniary fine.9?SDE is working together with public prosecutors to get the involved individuals also prosecuted in the criminal field. According to estimates from SDE, more than 100 individuals are facing criminal prosecution in the country and more than 20 have already been sentenced.10
In this context, a very important and recent change of the Brazilian policy with respect to cartel fighting is the fact that the Antitrust Authorities are prosecuting not only foreign companies, but also foreign individuals involved in international arrangements. For such purposes, the authorities are likely to make use of the Interpol Red Notice system for notification of the defendants. Until recently, the Brazilian authorities limited criminal enforcement to local individuals, in order to facilitate formal aspects of the criminal proceedings. But this change of policy aims at increasing deterrence and incentives for a leniency programme in Brazil, whenever a given conduct may produce anti-competitive effects in the country.
Therefore, local executives who might get involved in antitrust investigations shall not only be concerned with local commercial practices, but also with their headquarters' practices that might affect the Brazilian market. For instance, a local subsidiary of an international company that does not produce all of the group's portfolio locally, but does import certain products from its headquarters abroad to sell locally, may be punished by the authorities in case such sales include an overprice agreed abroad. In this context, it shall be recalled that local companies are jointly liable for their headquarters' practices, according to the Brazilian Competition Act.
Besides those penalties, there is also civil responsibility of the companies involved in antirust infringements, which could be subject to damage actions for their illicit conduct. According to the Brazilian legislation, any injured parties may defend their interests in court aiming the awarding of losses and damages suffered in connection with antitrust infringements.11 Although judicial damage claims resulting from anti-competitive infringements in Brazil are still rare, there are considerable discussions going on which could stimulate follow-on litigation in the near future.
Reasons and steps in adopting an Antitrust Compliance Programme
In view of the international trends in cartel enforcement and increasing capabilities of the Brazilian Antitrust Authorities to prosecute cartels, companies have also increased their efforts to avoid unlawful practices and antitrust penalties. In this regard, companies are increasing their interest in adopting an Antitrust Compliance Programme, which aims at educating and training employees from the lowest to the highest levels on competition rules, as well as identifying any possible antitrust infringements. Remedies shall result from this initial diagnosis, effectively and proportionally to the problems detected.
Antitrust Compliance Programmes in Brazil may be implemented independently by the company or through a certification process before SDE.12 In this regard, SDE has enacted a ruling with specific guidance on how to develop an Antitrust Compliance Programme. Once all the requirements provided by the law are met, the company or trade association may receive an official certification for its programme. The severe requirements, however, have not encouraged many companies to follow this last route. Currently, only one entity has had its Compliance Programme approved by SDE, the Brazilian Association of Importers of Popular Products (ABIPP).13
Several reasons advocate in favour of an Antitrust Compliance Programme. First, these programmes not only spot, but also prevent antitrust infringements that can have serious consequences. Secondly, businesses' public image benefit from a compliance reputation – it could be hard to keep your customers when you have just been fined for illegal conduct that resulted in higher prices for them. Moreover, besides helping the company to avoid anti-competitive conducts, the education provided as part of a compliance programme facilitates identification, by the company's executives and employees, of unlawful conducts carried on by its competitors, clients or suppliers, which may harm the company's businesses.
In this regard, companies may adopt simpler or more complete types of Compliance Programmes. Simpler programmes may involve only short training, that will teach basic notions of competition law and explore 'do's and don'ts' in a very pragmatic way.
In turn, a more complete programme will allow the company not only to deeply educate its employees, but also to identify past and ongoing potential unlawful practices. A complete programme has basically four stages. First, the areas of potential concern must be identified. Secondly, a legal audit should be conducted in these areas. Thirdly, in view of the information gathered, interviews should be held. Finally, a training programme and a tailor-made guidance manual should be provided to the relevant executives and employees.
The first step in the programme is to identify the main areas of concern. For cost-efficiency reasons, compliance programmes do not need to cover the whole company. Risky areas can be quickly identified either by interviewing executives or based on the recent history and practices of the company. To better identify such areas, the lawyer should get a comprehensive picture of the decision-making process.
Areas of concern may differ for each company, but departments involved in pricing, sales or contacts with competitors, or all of the above, are always relevant due to their exposure to customers and competitors. Another example of areas of potential concern is those involved in trade associations, in particular if they are attended by personnel from the sales department. Competitors meet and exchange information in these reunions that may have antitrust implications.
The next step is to conduct internal audits of the executives' and employees' records: routine files, as well as unofficial files, memos, diaries, but most importantly their e-mails. Using special software, certain documents or e-mails will be selected for review. The audit will review those documents and identify those that suggest any potential anti-competitive practice such as price fixing or abuse of dominance. The audit will not only identify any possible violation, but also indicate documents that could be misinterpreted.
Audits should be carried out by antitrust lawyers with deep understanding of the potential antitrust issues and the areas of concern. These lawyers, for reasons of independence and confidentiality, should preferably be external lawyers.
Once the audit has been completed, interviews should be carried out with key executives and employees, whenever possible taking into account the files examined during the internal audit. These interviews usually provide a good idea of the level of antitrust compliance within the company. The interviews are not inquisitorial since the employee should feel comfortable in volunteering information.
After the phases above are concluded, it will be possible to identify the potential antitrust issues that the company's businesses must pose and, consequently, the remedies that could be adopted to avoid or mitigate possible anti-competitive violations. It is then time for a report to the management of the company or the board of directors, or both, identifying such factors.
With a diagnosis of the company's problems, an educating and training programme shall be prepared, tailor-made to the specific concerns of each area. This educating and training will introduce employees to the basic antitrust rules, raise their awareness of the conducts that can be considered illegal, and provide guidelines on how to act on a daily basis and how to react in certain situations. A General Guideline or Code of Conduct shall also be prepared and delivered to all executives and employees of the company.
Elements of a successful Antitrust Compliance Programme
There are several elements reputed essential for a successful Antitrust Compliance Programme. Firstly, top management must show an unequivocal commitment to comply with the programme and, therefore, with antitrust rules. Acquiescence in abusive conduct for the sake of maintaining market leadership or turning a blind eye to certain information exchanges pave the way for an antitrust infringement. Therefore, a zero tolerance culture should be established. In some companies compliance is one of the elements of the employees' evaluation. Appointing a compliance officer is usually a good mechanism to ensure commitment to the programme. A senior corporate officer with relative independence and authority within the company, regular access to top management and a deep knowledge of the company's internal division should be appointed for such position.
Secondly, a successful Antitrust Compliance Programme should be simple and comprehensible. All relevant employees must understand the basic 'do's and don'ts'. At the same time, however, not all employees will be required to have the same level of knowledge. Those with greater responsibilities and exposure will need to get deeper education on free competition rules.
Thirdly, a programme should not undermine or limit the capacity of a company to compete in the market. The risk with compliance programmes in general is that it may set rules based on a conservative approach that will ultimately undermine the competitiveness of the business. For example, certain types of discounts applied by dominant companies may constitute an abuse of dominance if they have a loyalty enhancing effect. However, a compliance programme should not always prohibit applying discounts, since the prohibition only applies to certain types of discounts. The training programme should prohibit only what is strictly necessary and identify those situations in which employees should ask for guidance.
Fourthly, internal reporting mechanisms should be created to allow employees to seek guidance and report 'suspect' activities to the compliance officer. In these circumstances, confidentiality is of the utmost importance. The compliance officer mentioned above should be perceived as an independent person who will ensure confidential treatment.
Fifthly, a document-retention policy should be implemented establishing a time frame for the destruction of documents. In particular, in the event of an imminent or already initiated investigation, no documents should be destroyed. Not only may this undermine the company's capacity to defend itself but also it may give rise to criminal liability in certain jurisdictions.
Finally, a review of the programme should be carried out periodically. Refreshing and updating the programme ensures that the employees are aware of new antitrust developments and takes into account changing market conditions.
Remedying possible antitrust infringements
If and when a company identifies an antitrust violation being committed by any of its executives or employees, it could make use of certain instruments in order to avoid or mitigate penalties that could be imposed. This may be reached through the celebration of leniency agreements14 or through the negotiation of an Agreement to Cease Practice (TCC).15
In short, a leniency agreement may be proposed by any company in case the Brazilian Antitrust Authorities have neither knowledge nor sufficient evidence to punish that certain illegal conduct. It shall be added that the submitting company may not be the ring leader of the violation. By this agreement the company shall provide detailed information and evidences on the infringement, its participation and the participation of other agents. Moreover, the applicant needs to confess the wrongdoing committed and agree to fully cooperate with the authorities during the investigation.
In exchange for its cooperation, the company may receive full or partial immunity. It will receive full immunity in case the authorities had no knowledge of the infringements before the application and it will receive partial in case the authorities have certain knowledge but no sufficient evidences for punishment.
Such immunity shall cover the administrative and criminal penalties. However, in order for an individual to be covered by the programme and receive immunity, he should step forward, confess its role in the infringement, agree to cooperate and execute the leniency agreement.
In case the leniency agreement is not available anymore, a Commitment to Cease Practice is also an alternative. Through this instrument, the company and its employees may negotiate a settlement with CADE, receiving a penalty reduction for their admission and cooperation with the investigation. It is the Brazilian equivalent to the US Plea Bargain Institute.
In summary, creating, implementing and updating an effective Antitrust Compliance Programme can promote several benefits to the company, such as the avoidance of harsh administrative fines for companies and individuals, as well as to preserve the company's public image. In addition, a Compliance Programme may well avoid criminal penalties being imposed to the company's executives and employees.
Such Programmes are designated to educate and train the company's personnel on basic competition rules. Moreover, besides preventing antitrust infringements, the implementation of an effective programme will inevitably spot possible antitrust infringements being consciously or unconsciously committed by the company at an early stage, when several remedies are still available for the company.
Undoubtedly, in view of the global scenario mentioned above and local enforcement policy carried on recently by the Brazilian Competition Authorities, the benefits for implementing an Antitrust Compliance Programme by far supersede the costs incurred in its implementation.
1 See article 32 and following of Law No. 8,884/94.
2 See SDE's 2008 Annual Report.
3 See article 35-A, of Law No. 8,884/94.
4 See article 23, item I, of Law No. 8,884/94.
5 See article 23, item II, of Law No. 8,884/94.
6 See Administrative Proceeding No. 08012.002127/2002-14 (Defendants: Sindicato da Indústria de Mineração de Pedra Britada do Estado de São Paulo and others).
7 See Administrative Proceeding No. 08012.001826/2003-10 (Defendants: Associação das Empresas de Vigilância do Rio Grande do Sul (ASSEVIRGS) and others).
8 See Administrative Proceeding No. 08012.000283/2006-66 (Defendants: Sociedade dos Mineradores do Rio Jacuí (SMARJA) and others).
9 See Law No. 8,137, of 27 December 1990.
10 See SDE's 2008 Annual Report.
11 Article 29 of Law 8,884/94.
12 See SDE's Ordinance No. 14, of
13 See SDE's Ruling No. 134, of 5 March 2009.
14 See article 35-B, of Law No. 8,884/94.
15 See article 53, of Law No. 8,884/94.
Mário Roberto Villanova Nogueira
Ricardo Inglez de Souza
Bruno De Luca Drago
Ilene Knable Gotts
Chair of American Bar Association - Section of Antitrust
International Competition Network
Maria Coppola
US Federal Trade Commission
International Leniency Agreements
Michael Antalics, Nathan Bush, Riccardo Celli, Hiroshi Naito, Philippe Noguès, Bilal Sayyed and Christine Wilson
EU/US Comparison Pricing
Kimberly N Shaw and Todd Miller
Baker & Miller PLLC
US Substantive Areas
Anti-Cartel Enforcement
Ray V Hartwell III and Djordje Petkoski
Hunton & Williams LLP
Economics Overview
Eric F Forister and Samid Hussain
Cornerstone Research
Kenneth P Ewing
Steptoe & Johnson LLP
Monopolisation
The Antitrust Practice Group
Sullivan & Cromwell LLP
US Special Enforcement
Government Enforcement
Andrea D Gardner and Ethan Litwin
Howrey LLP
Private Enforcement
Thomas J Dillickrath, J Maren Schmidt and C. Scott Hataway
US Procedural Issues
Private Recovery Actions
Benjamin D Brown, Christopher J Cormier and Kathleen M Konopka
Cohen Milstein Sellers & Toll PLLC
US Industry Sectors
Jaimi Gaffe
Paul S Bailin and John D Harkrider
Axinn, Veltrop & Harkrider
Argentina: Overview
Miguel Angel De Dios and Federico A Volujewicz
De Dios & Goyena
Brazil: Cartels and Leniency
Bruno Peixoto
Lanna Peixoto Advogados
Brazil: Merger Control
Mauro Grinberg and Camilla Paoletti
Barcellos Tucunduva Advogados
Canada: Cartels
Susan Paul and Barry Zalmanowitz
Fraser Milner Casgrain LLP
Canada: Merger Notifications
Yves Bériault and Oliver Borgers
McCarthy Tétrault
Canada: Merger Review
Imran Ahmad, Adam Kalbfleisch, John F Rook and Dany H Assaf
Bennett Jones
Canada: Monopolisation
Kevin Ackhurst, Denis Gascon and Sarah K McLean
Ogilvy Renault LLP
Canada: Overview
Canada: Private Antitrust Litigation
Jonathan Hood, David Kent and D Martin Low KC
McMillan LLP
Colombia: Overview
Baker McKenzie Colombia S.A.S
Mexico: Intellectual Property
Carlos Orci and Amílcar Peredo
Basham, Ringe y Correa SC
Venezuela: Overview
José Gregorio Torrealba R.
Hoet Peláez Castillo & Duque Caracas


text:
Miles of smiles
By tfk on June 7, 2012.
In case you've been wondering, "Where've you been for the last month, Josh?," the photo above gives a pretty good hint.
Miles Nikola was born on May 4th, a healthy and beautiful 8 pounds 12 ounces. For the last month, he and his mama and I have been at home getting used to each other. It's truly uncanny how different he is from day to day. His cheeks seem to grow exponentially, for instance.
Also, he just figured out that he can bend anyone to his will through sustained eye contact and cuteness, a dangerous precedent indeed. Once he fully masters the smile, I think we're doomed.
I don't recall whether I introduced you all to Roo, the dog we adopted last fall, but Miles and Roo have been getting along nicely, as you can see. Neither has quite figured out how to interact with the other, but there's no noticeable jealousy, and I'm expecting adorable antics from the pair as soon as Miles gets a bit more mobile.
And yes, following Chad's example, I'm taking periodic photos next to a stuffed animal, for scale. And he inherited is papa's love of zoology and books:
I expect it'll be a while before anyone else gets much sleep, but he, thankfully, has no problem catching a nap.
There are many adventures yet to come.
HUGE congratulations, Josh! He's adorable! Looks like you've already figured out that sleep is for wimps, there's no such thing as 'reading too much,' and everything else can wait while he grows. (((Hugs!)))
By Cheryl Shepher… (not verified) on 07 Jun 2012 #permalink
Congratulations Josh!
By TB (not verified) on 08 Jun 2012 #permalink
Congratulations. Now all that work you do for science, knowledge, good education and good public policies start to become more urgent to your family.
We're in Wisconsin for the graduation of our youngest from Lawrence U. Enjoy it now, because it's a really quick ride.
Keep up the good work on all fronts.
By Ed Darrell (not verified) on 09 Jun 2012 #permalink
Twenty years ago my love and I had a little fellow ourselves. Now that's a bio experiment!
The photo of you and your boy with the book brought tears to my eyes. I've got a photo of me and my son both laying on the floor 'reading' (Though truth be told his book was upside down.
Blessing of a bountiful universe to you and yours. Congrats!
By David Stoeckl (not verified) on 09 Jun 2012 #permalink
But while you were off, evolution issues are coming up again in Kansas.
And the KCFS site shut down their discussion board, because someone provoked Jack Krebs into coming out as an atheist which hurts their political effectiveness with the masses...sadly but truly.
Do something Josh!
By Aaron (not verified) on 12 Jun 2012 #permalink
Congratulations, Josh! My wife and I are expecting our second, a girl in August.
I have "Look at the Animals" book on our wishlist... :)
By Michael Barton (not verified) on 15 Jun 2012 #permalink
And enjoy your first and very special Father's Day with Milles Debbie and Roo.
By Hedda Ribolow (not verified) on 17 Jun 2012 #permalink
ID and the age of the earth
Disco. 'tute "research" director Casey Luskin is sad. Congressional Quarterly wrote about creationism and didn't say nice things about "intelligent design" creationism. Casey insists that ID shouldn't be lumped in with young earth creationism or geocentrism, asserting: the vast majority of leaders…
Polls and the line between truth and conspiracy theory
In the poll on conspiracy theories I mentioned a few days ago, I mostly focused on the item about vaccines, mentioning in passing the fact that Democrats (and liberals) bought into far fewer conspiracy theories than Republicans (or conservatives). I didn't point out that, of the "conspiracy…
Vaccines and the Republican War on Science
Ever since Chris Mooney's Republican War on Science was published in 2005, folks have been looking for a way to argue that Democrats are just as bad. The standard example for this counternarrative, one which Mooney even offered in his book, was vaccine denial – the claim that vaccines cause autism…
An evolution the GOP likes
"The president says that the jury's out on evolution. Here in New Jersey, we're counting on it." –Bruce Springsteen, May 21, 2005 "Folks in Dover [PA] aren't sure about evolution. Here in New Jersey, we're counting on it." –Bruce Springsteen, August, 2005 "This issue [marriage equality] is in a…
Social movements and science denial
The University of Notre Dame's Center for the Study of Social Movements is hosting a dialogue on science and politics, and I'm rather pleased with my contribution: "Will Climate Change Denial Inherit the Wind?" Do check out the other essays in the dialogue, especially Jeffrey Guhin's discussion of…


After a small gap, Glu has now released another one of their driving games named Mutant Roadkill, but the setting and objective are something we see in few games. The game is set in a post-apocalyptic world and you have to drive over zombies-like mutants to escape.
The game and its objective is simple. You have to escape from a barren wasteland, filled with mutants and other hazardous creatures. Luckily you have your favorite car with you that is conveniently fitted with an armor and weapons of your choice.
– Intuitive tilt and swipe controls make driving and shooting easy!
– Blast your way through hordes of unique mutant types!
– Use nitro boosts and electro shocks to increase your odds of survival!
– Earn coins to buy better cars and power-ups!
Like most of Glu's previous titles, Mutant Roadkill too is a free-to-play game with the optional in-game purchases available that help you along the way. The game has some nice elements to it but one thing that somewhat annoys me and will annoy most gamers as well is the amount of in-games ads placed by Glu.
Mutant Roadkill can be downloaded from the Google Play market for free. You can get it from here.


text:
NZME to discontinue partnership with Pacific Magazines, job cuts likely to follow
By StopPress Team July 13, 2015 No Comments
NZME confirmed through a release sent out today that it will not be renewing its licence with Pacific Magazines to produce New Idea, Girlfriend and That's Life.
The existing deal runs until 30 September 2015, and NZME chief operating officer Phil Eustace says that NZME will cease publishing the three magazine titles from that date.
"The rights to publish will revert back to Pacific Magazines from 30 September 2015," Eustace was quoted saying in the release. "Pacific Magazines have indicated that the magazines will continue to be published in New Zealand."
Each of these three publications have in recent surveys suffered significant year-on-year losses in terms of readership and circulation. Nielsen's data released in June showed New Idea slipping from 384,000 readers to 326,000, That's Life from 230,000 to 205,000 and Girlfriend from 130,000 to 108,000.
The downward trend was also evident in ABC's data, which showed New Idea drop from 33,000 to 32,000, That's Life from 26,000 to 25,000 and Girlfriend from 8,156 to 6,616 magazines in circulation.
NZME currently employs 25 people across sales, marketing and editorial through its magazine department, but at this stage it's still unclear how many job cuts the change will involve given the conslutation process is still ongoing. StopPress contacted NZME in regard to the likely number of staff cuts, but Eustace explained that it still to early to say*.
"At this point all that has happened is that the 25 people have just been told the license won't be renewed. NZME is looking at [staff]redeployment opportunities both within NZME and at Pacific Magazines."
Eustace confirmed that reader subscriptions and advertising bookings would be honoured by Pacific Magazines.
*This section has been updated to include a response from NZME.
Previous ArticleMedia Munchies: Hilary Barry
Next Article Moving on: RBA ends its long-term relationship with TNS–UPDATED
StopPress Team
Goodbye, old StopPress.
By Courtney Devereux October 25, 2019


People shouldn't be penalised for having a low income. The Fair By Design Fund is a new £20m social impact fund, backed by Big Society Capital and the Joseph Rowntree Foundation, to help eliminate the Poverty Premium across the UK by 2027. Run by Ascension Ventures, the FBD Fund will help seed and later stage companies looking to fix the poverty premium by funding them and supporting their development, including support from Wayra, one of the UK's leading tech accelerators. Everything you need to know about the new Fair By Design Fund is on their website, so please visit fairbydesignfund.com.