text:
"""
Master configuration file for Evennia.

NOTE: NO MODIFICATIONS SHOULD BE MADE TO THIS FILE!

All settings changes should be done by copy-pasting the variable and
its value to <gamedir>/conf/settings.py.

Hint: Don't copy&paste over more from this file than you actually want
to change.  Anything you don't copy&paste will thus retain its default
value - which may change as Evennia is developed. This way you can
always be sure of what you have changed and what is default behaviour.

"""

import os
import sys

######################################################################
# Evennia base server config
######################################################################

# This is the name of your game. Make it catchy!
SERVERNAME = "Evennia"
# Activate telnet service
TELNET_ENABLED = True
# A list of ports the Evennia telnet server listens on Can be one or many.
TELNET_PORTS = [4000]
# Interface addresses to listen to. If 0.0.0.0, listen to all. Use :: for IPv6.
TELNET_INTERFACES = ['0.0.0.0']
# OOB (out-of-band) telnet communication allows Evennia to communicate
# special commands and data with enabled Telnet clients. This is used
# to create custom client interfaces over a telnet connection. To make
# full use of OOB, you need to prepare functions to handle the data
# server-side (see OOB_FUNC_MODULE). TELNET_ENABLED is required for this
# to work.
TELNET_OOB_ENABLED = False
# Start the evennia django+twisted webserver so you can
# browse the evennia website and the admin interface
# (Obs - further web configuration can be found below
# in the section  'Config for Django web features')
WEBSERVER_ENABLED = True
# This is a security setting protecting against host poisoning
# attacks.  It defaults to allowing all. In production, make
# sure to change this to your actual host addresses/IPs.
ALLOWED_HOSTS = ["*"]
# The webserver sits behind a Portal proxy. This is a list
# of tuples (proxyport,serverport) used. The proxyports are what
# the Portal proxy presents to the world. The serverports are
# the internal ports the proxy uses to forward data to the Server-side
# webserver (these should not be publicly open)
WEBSERVER_PORTS = [(8000, 5001)]
# Interface addresses to listen to. If 0.0.0.0, listen to all. Use :: for IPv6.
WEBSERVER_INTERFACES = ['0.0.0.0']
# IP addresses that may talk to the server in a reverse proxy configuration,
# like NginX.
UPSTREAM_IPS = ['127.0.0.1']
# The webserver uses threadpool for handling requests. This will scale
# with server load. Set the minimum and maximum number of threads it
# may use as (min, max) (must be > 0)
WEBSERVER_THREADPOOL_LIMITS = (1, 20)
# Start the evennia webclient. This requires the webserver to be running and
# offers the fallback ajax-based webclient backbone for browsers not supporting
# the websocket one.
WEBCLIENT_ENABLED = True
# Activate Websocket support for modern browsers. If this is on, the
# default webclient will use this and only use the ajax version of the browser
# is too old to support websockets. Requires WEBCLIENT_ENABLED.
WEBSOCKET_CLIENT_ENABLED = True
# Server-side websocket port to open for the webclient.
WEBSOCKET_CLIENT_PORT = 8001
# Interface addresses to listen to. If 0.0.0.0, listen to all. Use :: for IPv6.
WEBSOCKET_CLIENT_INTERFACE = '0.0.0.0'
# Actual URL for webclient component to reach the websocket.
# The WEBSOCKET_CLIENT_PORT will be automatically appended to this URL.
WEBSOCKET_CLIENT_URL = "ws://localhost"
# Activate SSH protocol communication (SecureShell)
SSH_ENABLED = False
# Ports to use for SSH
SSH_PORTS = [8022]
# Interface addresses to listen to. If 0.0.0.0, listen to all. Use :: for IPv6.
SSH_INTERFACES = ['0.0.0.0']
# Activate SSL protocol (SecureSocketLibrary)
SSL_ENABLED = False
# Ports to use for SSL
SSL_PORTS = [4001]
# Interface addresses to listen to. If 0.0.0.0, listen to all. Use :: for IPv6.
SSL_INTERFACES = ['0.0.0.0']
# Activate custom websocket support. This is unrelated to the websocket client!
# This is intended to be used by optional third-party connections/applications
# or clients.
WEBSOCKET_ENABLED = False
# Ports to use for Websockets
WEBSOCKET_PORTS = [8021]
# Interface addresses to listen to. If 0.0.0.0, listen to all. Use :: for IPv6.
WEBSOCKET_INTERFACES = ['0.0.0.0']
# This determine's whether Evennia's custom admin page is used, or if the
# standard Django admin is used.
EVENNIA_ADMIN = True
# Path to the lib directory containing the bulk of the codebase's code.
EVENNIA_DIR = os.path.dirname(os.path.abspath(__file__))
# Path to the game directory (containing the database file if using sqlite).
if sys.argv[1] == 'test' if len(sys.argv)>1 else False:
    # unittesting mode
    GAME_DIR = os.getcwd()
else:
    # Fallback location (will be replaced by the actual game dir at runtime)
    GAME_DIR = os.path.join(EVENNIA_DIR, 'game_template')

# Place to put log files
LOG_DIR = os.path.join(GAME_DIR, 'server', 'logs')
SERVER_LOG_FILE = os.path.join(LOG_DIR, 'server.log')
PORTAL_LOG_FILE = os.path.join(LOG_DIR, 'portal.log')
HTTP_LOG_FILE = os.path.join(LOG_DIR, 'http_requests.log')
# Rotate log files when server and/or portal stops. This will keep log
# file sizes down. Turn off to get ever growing log files and never
# loose log info.
CYCLE_LOGFILES = True
# Local time zone for this installation. All choices can be found here:
# http://www.postgresql.org/docs/8.0/interactive/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE
TIME_ZONE = 'UTC'
# Activate time zone in datetimes
USE_TZ = True
# Authentication backends. This is the code used to authenticate a user.
AUTHENTICATION_BACKENDS = (
    'evennia.web.utils.backends.CaseInsensitiveModelBackend',)
# Language code for this installation. All choices can be found here:
# http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes
LANGUAGE_CODE = 'en-us'
# How long time (in seconds) a user may idle before being logged
# out. This can be set as big as desired. A user may avoid being
# thrown off by sending the empty system command 'idle' to the server
# at regular intervals. Set <=0 to deactivate idle timeout completely.
IDLE_TIMEOUT = 3600
# The idle command can be sent to keep your session active without actually
# having to spam normal commands regularly. It gives no feedback, only updates
# the idle timer.
IDLE_COMMAND = "idle"
# The set of encodings tried. A Player object may set an attribute "encoding" on
# itself to match the client used. If not set, or wrong encoding is
# given, this list is tried, in order, aborting on the first match.
# Add sets for languages/regions your players are likely to use.
# (see http://en.wikipedia.org/wiki/Character_encoding)
ENCODINGS = ["utf-8", "latin-1", "ISO-8859-1"]
# Regular expression applied to all output to a given session in order
# to strip away characters (usually various forms of decorations) for the benefit
# of users with screen readers. Note that ANSI/MXP doesn't need to
# be stripped this way, that is handled automatically.
SCREENREADER_REGEX_STRIP = r"\+-+|\+$|\+~|--+|~~+|==+"
# The game server opens an AMP port so that the portal can
# communicate with it. This is an internal functionality of Evennia, usually
# operating between two processes on the same machine. You usually don't need to
# change this unless you cannot use the default AMP port/host for
# whatever reason.
AMP_HOST = 'localhost'
AMP_PORT = 5000
AMP_INTERFACE = '127.0.0.1'
# Database objects are cached in what is known as the idmapper. The idmapper
# caching results in a massive speedup of the server (since it dramatically
# limits the number of database accesses needed) and also allows for
# storing temporary data on objects. It is however also the main memory
# consumer of Evennia. With this setting the cache can be capped and
# flushed when it reaches a certain size. Minimum is 50 MB but it is
# not recommended to set this to less than 100 MB for a distribution
# system.
# Empirically, N_objects_in_cache ~ ((RMEM - 35) / 0.0157):
#  mem(MB)   |  objs in cache   ||   mem(MB)   |   objs in cache
#      50    |       ~1000      ||      800    |     ~49 000
#     100    |       ~4000      ||     1200    |     ~75 000
#     200    |      ~10 000     ||     1600    |    ~100 000
#     500    |      ~30 000     ||     2000    |    ~125 000
# Note that the estimated memory usage is not exact (and the cap is only
# checked every 5 minutes), so err on the side of caution if
# running on a server with limited memory. Also note that Python
# will not necessarily return the memory to the OS when the idmapper
# flashes (the memory will be freed and made available to the Python
# process only). How many objects need to be in memory at any given
# time depends very much on your game so some experimentation may
# be necessary (use @server to see how many objects are in the idmapper
# cache at any time). Setting this to None disables the cache cap.
IDMAPPER_CACHE_MAXSIZE = 200      # (MB)
# This determines how many connections per second the Portal should
# accept, as a DoS countermeasure. If the rate exceeds this number, incoming
# connections will be queued to this rate, so none will be lost.
# Must be set to a value > 0.
MAX_CONNECTION_RATE = 5
# Determine how many commands per second a given Session is allowed
# to send to the Portal via a connected protocol. Too high rate will
# drop the command and echo a warning. Note that this will also cap
# OOB messages so don't set it too low if you expect a lot of events
# from the client! To turn the limiter off, set to <= 0.
MAX_COMMAND_RATE = 80
# The warning to echo back to users if they send commands too fast
COMMAND_RATE_WARNING ="You entered commands too fast. Wait a moment and try again."

######################################################################
# Evennia Database config
######################################################################

# Database config syntax:
# ENGINE - path to the the database backend. Possible choices are:
#            'django.db.backends.sqlite3', (default)
#            'django.db.backends.mysql',
#            'django.db.backends.'postgresql_psycopg2',
#            'django.db.backends.oracle' (untested).
# NAME - database name, or path to the db file for sqlite3
# USER - db admin (unused in sqlite3)
# PASSWORD - db admin password (unused in sqlite3)
# HOST - empty string is localhost (unused in sqlite3)
# PORT - empty string defaults to localhost (unused in sqlite3)
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(GAME_DIR, 'server', 'evennia.db3'),
        'USER': '',
        'PASSWORD': '',
        'HOST': '',
        'PORT': ''
        }}
# How long the django-database connection should be kept open, in seconds.
# If you get errors about the database having gone away after long idle
# periods, shorten this value (e.g. MySQL defaults to a timeout of 8 hrs)
CONN_MAX_AGE = 3600 * 7

######################################################################
# Evennia pluggable modules
######################################################################
# Plugin modules extend Evennia in various ways. In the cases with no
# existing default, there are examples of many of these modules
# in contrib/examples.

# The command parser module to use. See the default module for which
# functions it must implement
COMMAND_PARSER = "evennia.commands.cmdparser.cmdparser"
# The handler that outputs errors when searching
# objects using object.search().
SEARCH_AT_RESULT = "evennia.commands.cmdparser.at_search_result"
# The parser used in order to separate multiple
# object matches (so you can separate between same-named
# objects without using dbrefs).
SEARCH_AT_MULTIMATCH_INPUT = "evennia.commands.cmdparser.at_multimatch_input"
# The parser used in order to separate multiple
# command matches (so you can separate between same-named commands)
SEARCH_AT_MULTIMATCH_CMD = "evennia.commands.cmdparser.at_multimatch_cmd"
# The module holding text strings for the connection screen.
# This module should contain one or more variables
# with strings defining the look of the screen.
CONNECTION_SCREEN_MODULE = "server.conf.connection_screens"
# An optional module that, if existing, must hold a function
# named at_initial_setup(). This hook method can be used to customize
# the server's initial setup sequence (the very first startup of the system).
# The check will fail quietly if module doesn't exist or fails to load.
AT_INITIAL_SETUP_HOOK_MODULE = "server.conf.at_initial_setup"
# Module containing your custom at_server_start(), at_server_reload() and
# at_server_stop() methods. These methods will be called every time
# the server starts, reloads and resets/stops respectively.
AT_SERVER_STARTSTOP_MODULE = "server.conf.at_server_startstop"
# List of one or more module paths to modules containing a function start_
# plugin_services(application). This module will be called with the main
# Evennia Server application when the Server is initiated.
# It will be called last in the startup sequence.
SERVER_SERVICES_PLUGIN_MODULES = ["server.conf.server_services_plugins"]
# List of one or more module paths to modules containing a function
# start_plugin_services(application). This module will be called with the
# main Evennia Portal application when the Portal is initiated.
# It will be called last in the startup sequence.
PORTAL_SERVICES_PLUGIN_MODULES = ["server.conf.portal_services_plugins"]
# Module holding MSSP meta data. This is used by MUD-crawlers to determine
# what type of game you are running, how many players you have etc.
MSSP_META_MODULE = "server.conf.mssp"
# Tuple of modules implementing lock functions. All callable functions
# inside these modules will be available as lock functions.
LOCK_FUNC_MODULES = ("evennia.locks.lockfuncs", "server.conf.lockfuncs",)
# Module holding OOB (Out of Band) hook objects. This allows for customization
# and expansion of which hooks OOB protocols are allowed to call on the server
# protocols for attaching tracker hooks for when various object field change
OOB_PLUGIN_MODULES = ["evennia.server.oob_cmds", "server.conf.oobfuncs"]
# Module holding settings/actions for the dummyrunner program (see the
# dummyrunner for more information)
DUMMYRUNNER_SETTINGS_MODULE = "evennia.server.profiling.dummyrunner_settings"

######################################################################
# Default command sets
######################################################################
# Note that with the exception of the unloggedin set (which is not
# stored anywhere in the database), changing these paths will only affect
# NEW created characters/objects, not those already in play. So if you plan to
# change this, it's recommended you do it before having created a lot of objects
# (or simply reset the database after the change for simplicity).

# Command set used on session before player has logged in
CMDSET_UNLOGGEDIN = "commands.default_cmdsets.UnloggedinCmdSet"
# Command set used on the logged-in session
CMDSET_SESSION = "commands.default_cmdsets.SessionCmdSet"
# Default set for logged in player with characters (fallback)
CMDSET_CHARACTER = "commands.default_cmdsets.CharacterCmdSet"
# Command set for players without a character (ooc)
CMDSET_PLAYER = "commands.default_cmdsets.PlayerCmdSet"
# Location to search for cmdsets if full path not given
CMDSET_PATHS = ["commands", "evennia", "contribs"]

######################################################################
# Typeclasses and other paths
######################################################################

# Server-side session class used.
SERVER_SESSION_CLASS = "evennia.server.serversession.ServerSession"

# These are paths that will be prefixed to the paths given if the
# immediately entered path fail to find a typeclass. It allows for
# shorter input strings. They must either base off the game directory
# or start from the evennia library.
TYPECLASS_PATHS = ["typeclasses", "evennia", "evennia.contrib", "evennia.contrib.tutorial_examples"]

# Typeclass for player objects (linked to a character) (fallback)
BASE_PLAYER_TYPECLASS = "typeclasses.players.Player"
# Typeclass and base for all objects (fallback)
BASE_OBJECT_TYPECLASS = "typeclasses.objects.Object"
# Typeclass for character objects linked to a player (fallback)
BASE_CHARACTER_TYPECLASS = "typeclasses.characters.Character"
# Typeclass for rooms (fallback)
BASE_ROOM_TYPECLASS = "typeclasses.rooms.Room"
# Typeclass for Exit objects (fallback).
BASE_EXIT_TYPECLASS = "typeclasses.exits.Exit"
# Typeclass for Channel (fallback).
BASE_CHANNEL_TYPECLASS = "typeclasses.channels.Channel"
# Typeclass for Scripts (fallback). You usually don't need to change this
# but create custom variations of scripts on a per-case basis instead.
BASE_SCRIPT_TYPECLASS = "typeclasses.scripts.Script"
# The default home location used for all objects. This is used as a
# fallback if an object's normal home location is deleted. Default
# is Limbo (#2).
DEFAULT_HOME = "#2"
# The start position for new characters. Default is Limbo (#2).
#  MULTISESSION_MODE = 0, 1 - used by default unloggedin create command
#  MULTISESSION_MODE = 2,3 - used by default character_create command
START_LOCATION = "#2"
# Lookups of Attributes, Tags, Nicks, Aliases can be aggressively
# cached to avoid repeated database hits. This often gives noticeable
# performance gains since they are called so often. Drawback is that
# if you are accessing the database from multiple processes (such as
# from a website -not- running Evennia's own webserver) data may go
# out of sync between the processes. Keep on unless you face such
# issues.
TYPECLASS_AGGRESSIVE_CACHE = True

######################################################################
# Batch processors
######################################################################

# Python path to a directory to be searched for batch scripts
# for the batch processors (.ev and/or .py files).
BASE_BATCHPROCESS_PATHS = ['world', 'evennia.contrib', 'evennia.contrib.tutorial_examples']

######################################################################
# Game Time setup
######################################################################

# You don't actually have to use this, but it affects the routines in
# evennia.utils.gametime.py and allows for a convenient measure to
# determine the current in-game time. You can of course interpret
# "week", "month" etc as your own in-game time units as desired.

# The time factor dictates if the game world runs faster (timefactor>1)
# or slower (timefactor<1) than the real world.
TIME_FACTOR = 2.0
# These measures might or might not make sense to your game world.
TIME_SEC_PER_MIN = 60
TIME_MIN_PER_HOUR = 60
TIME_HOUR_PER_DAY = 24
TIME_DAY_PER_WEEK = 7
TIME_WEEK_PER_MONTH = 4
TIME_MONTH_PER_YEAR = 12

######################################################################
# Inlinefunc
######################################################################
# Evennia supports inline function preprocessing. This allows
# users to supply {func() ... {/func in text, performing dynamic
# text formatting and manipulation on the fly. If disabled, such
# inline functions will not be parsed.
INLINEFUNC_ENABLED = False
# Only functions defined globally (and not starting with '_') in
# these modules will be considered valid inlinefuncs. The list
# is loaded from left-to-right, same-named functions will overload
INLINEFUNC_MODULES = ["evennia.utils.inlinefunc", "server.conf.inlinefunc"]

######################################################################
# Default Player setup and access
######################################################################

# Different Multisession modes allow a player (=account) to connect to the
# game simultaneously with multiple clients (=sessions). In modes 0,1 there is
# only one character created to the same name as the account at first login.
# In modes 2,3 no default character will be created and the MAX_NR_CHARACTERS
# value (below) defines how many characters the default char_create command
# allow per player.
#  0 - single session, one player, one character, when a new session is
#      connected, the old one is disconnected
#  1 - multiple sessions, one player, one character, each session getting
#      the same data
#  2 - multiple sessions, one player, many characters, one session per
#      character (disconnects multiplets)
#  3 - like mode 2, except multiple sessions can puppet one character, each
#      session getting the same data.
MULTISESSION_MODE = 0
# The maximum number of characters allowed for MULTISESSION_MODE 2,3. This is
# checked by the default ooc char-creation command. Forced to 1 for
# MULTISESSION_MODE 0 and 1.
MAX_NR_CHARACTERS = 1
# The access hierarchy, in climbing order. A higher permission in the
# hierarchy includes access of all levels below it. Used by the perm()/pperm()
# lock functions.
PERMISSION_HIERARCHY = ["Guests", # note-only used if GUEST_ENABLED=True
                        "Players",
                        "PlayerHelpers",
                        "Builders",
                        "Wizards",
                        "Immortals"]
# The default permission given to all new players
PERMISSION_PLAYER_DEFAULT = "Players"
# Default sizes for client window (in number of characters), if client
# is not supplying this on its own
CLIENT_DEFAULT_WIDTH = 78
CLIENT_DEFAULT_HEIGHT = 45 # telnet standard is 24 but does anyone use such
                           # low-res displays anymore?

######################################################################
# Guest accounts
######################################################################

# This enables guest logins, by default via "connect guest"
GUEST_ENABLED = False
# Typeclass for guest player objects (linked to a character)
BASE_GUEST_TYPECLASS = "typeclasses.players.Guest"
# The permission given to guests
PERMISSION_GUEST_DEFAULT = "Guests"
# The default home location used for guests.
GUEST_HOME = DEFAULT_HOME
# The start position used for guest characters.
GUEST_START_LOCATION = START_LOCATION
# The naming convention used for creating new guest
# players/characters. The size of this list also determines how many
# guests may be on the game at once. The default is a maximum of nine
# guests, named Guest1 through Guest9.
GUEST_LIST = ["Guest" + str(s+1) for s in range(9)]

######################################################################
# In-game Channels created from server start
######################################################################

# This is a list of global channels created by the
# initialization script the first time Evennia starts.
# The superuser (user #1) will be automatically subscribed
# to all channels in this list. Each channel is described by
# a dictionary keyed with the same keys valid as arguments
# to the evennia.create.create_channel() function.
# Note: Evennia will treat the first channel in this list as
# the general "public" channel and the second as the
# general "mud info" channel. Other channels beyond that
# are up to the admin to design and call appropriately.
DEFAULT_CHANNELS = [
                  # public channel
                  {"key": "Public",
                  "aliases": ('ooc', 'pub'),
                  "desc": "Public discussion",
                  "locks": "control:perm(Wizards);listen:all();send:all()"},
                  # connection/mud info
                  {"key": "MudInfo",
                   "aliases": "",
                   "desc": "Connection log",
                   "locks": "control:perm(Immortals);listen:perm(Wizards);send:false()"}
                  ]

######################################################################
# External Channel connections
######################################################################

# Note: You do *not* have to make your MUD open to
# the public to use the external connections, they
# operate as long as you have an internet connection,
# just like stand-alone chat clients. IRC and IMC2
# requires that you have twisted.words installed.

# Evennia can connect to external IRC channels and
# echo what is said on the channel to IRC and vice
# versa. Obs - make sure the IRC network allows bots.
# When enabled, command @irc2chan will be available in-game
IRC_ENABLED = False
# RSS allows to connect RSS feeds (from forum updates, blogs etc) to
# an in-game channel. The channel will be updated when the rss feed
# updates. Use @rss2chan in game to connect if this setting is
# active. OBS: RSS support requires the python-feedparser package to
# be installed (through package manager or from the website
# http://code.google.com/p/feedparser/)
RSS_ENABLED=False
RSS_UPDATE_INTERVAL = 60*10 # 10 minutes

# IMC (Inter-MUD communication) allows to connect an Evennia channel
# to an IMC2 server. This lets them talk to people on other MUDs also
# using IMC.  Evennia's IMC2 client was developed against MudByte's
# network. You must register your MUD on the network before you can
# use it, go to http://www.mudbytes.net/imc2-intermud-join-network.
# Choose 'Other unsupported IMC2 version' from the choices and and
# enter your information there. You should enter the same 'short mud
# name' as your SERVERNAME above, then choose imc network server as
# well as client/server passwords same as below. When enabled, the
# command @imc2chan becomes available in-game and allows you to
# connect Evennia channels to IMC channels on the network. The Evennia
# discussion channel 'ievennia' is on server01.mudbytes.net:5000.

# NOTE - IMC2 is currently NOT FUNCTIONAL due to lack of testing means.
IMC2_ENABLED = False
IMC2_NETWORK = "server01.mudbytes.net"
IMC2_PORT = 5000 # this is the imc2 port, not on localhost
IMC2_CLIENT_PWD = ""
IMC2_SERVER_PWD = ""

######################################################################
# Django web features
######################################################################

# While DEBUG is False, show a regular server error page on the web
# stuff, email the traceback to the people in the ADMINS tuple
# below. If True, show a detailed traceback for the web
# browser to display. Note however that this will leak memory when
# active, so make sure to turn it off for a production server!
DEBUG = False
# While true, show "pretty" error messages for template syntax errors.
TEMPLATE_DEBUG = DEBUG
# Emails are sent to these people if the above DEBUG value is False. If you'd
# rather prefer nobody receives emails, leave this commented out or empty.
ADMINS = () #'Your Name', 'your_email@domain.com'),)
# These guys get broken link notifications when SEND_BROKEN_LINK_EMAILS is True.
MANAGERS = ADMINS
# Absolute path to the directory that holds file uploads from web apps.
# Example: "/home/media/media.lawrence.com"
MEDIA_ROOT = os.path.join(GAME_DIR, "web", "media")
# It's safe to dis-regard this, as it's a Django feature we only half use as a
# dependency, not actually what it's primarily meant for.
SITE_ID = 1
# The age for sessions.
# Default: 1209600 (2 weeks, in seconds)
SESSION_COOKIE_AGE = 1209600
# Session cookie domain
# Default: None
SESSION_COOKIE_DOMAIN = None
# The name of the cookie to use for sessions.
# Default: 'sessionid'
SESSION_COOKIE_NAME = 'sessionid'
# Should the session expire when the browser closes?
# Default: False
SESSION_EXPIRE_AT_BROWSER_CLOSE = False
# If you set this to False, Django will make some optimizations so as not
# to load the internationalization machinery.
USE_I18N = False
# Where to find locales (no need to change this, most likely)
LOCALE_PATHS = [os.path.join(EVENNIA_DIR, "locale/")]
# This should be turned off unless you want to do tests with Django's
# development webserver (normally Evennia runs its own server)
SERVE_MEDIA = False
# The master urlconf file that contains all of the sub-branches to the
# applications. Change this to add your own URLs to the website.
ROOT_URLCONF = 'web.urls' #src.web.urls?
# Where users are redirected after logging in via contrib.auth.login.
LOGIN_REDIRECT_URL = '/'
# Where to redirect users when using the @login_required decorator.
LOGIN_URL = '/accounts/login'
# Where to redirect users who wish to logout.
LOGOUT_URL = '/accounts/login'
# URL that handles the media served from MEDIA_ROOT.
# Example: "http://media.lawrence.com"
MEDIA_URL = '/media/'
# URL prefix for admin media -- CSS, JavaScript and images. Make sure
# to use a trailing slash. Django1.4+ will look for admin files under
# STATIC_URL/admin.
STATIC_URL = '/static/'

STATIC_ROOT = os.path.join(GAME_DIR, "web", "static")

# Directories from which static files will be gathered.
STATICFILES_DIRS = (
    os.path.join(GAME_DIR, "web", "static_overrides"),
    os.path.join(EVENNIA_DIR, "web", "static"),)
# Patterns of files in the static directories. Used here to make sure that
# its readme file is preserved but unused.
STATICFILES_IGNORE_PATTERNS = ('README.md',)
# The name of the currently selected web template. This corresponds to the
# directory names shown in the webtemplates directory.
ACTIVE_TEMPLATE = 'prosimii'
# We setup the location of the website template as well as the admin site.
TEMPLATE_DIRS = (
    os.path.join(GAME_DIR, "web", "template_overrides"),
    os.path.join(EVENNIA_DIR, "web", "templates", ACTIVE_TEMPLATE),
    os.path.join(EVENNIA_DIR, "web", "templates"),)
# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
    'django.template.loaders.filesystem.Loader',
    'django.template.loaders.app_directories.Loader',)
# MiddleWare are semi-transparent extensions to Django's functionality.
# see http://www.djangoproject.com/documentation/middleware/ for a more detailed
# explanation.
MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',  # 1.4?
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.admindocs.middleware.XViewMiddleware',
    'django.contrib.flatpages.middleware.FlatpageFallbackMiddleware',)
# Context processors define context variables, generally for the template
# system to use.
TEMPLATE_CONTEXT_PROCESSORS = (
    'django.core.context_processors.i18n',
    'django.core.context_processors.request',
    'django.contrib.auth.context_processors.auth',
    'django.core.context_processors.media',
    'django.core.context_processors.debug',
    'evennia.web.utils.general_context.general_context',)

######################################################################
# Evennia components
######################################################################

# Global and Evennia-specific apps. This ties everything together so we can
# refer to app models and perform DB syncs.
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.sites',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.admin',
    'django.contrib.admindocs',
    'django.contrib.flatpages',
    'django.contrib.staticfiles',
    'evennia.utils.idmapper',
    'evennia.server',
    'evennia.typeclasses',
    'evennia.players',
    'evennia.objects',
    'evennia.comms',
    'evennia.help',
    'evennia.scripts',
    'evennia.web.webclient')
# The user profile extends the User object with more functionality;
# This should usually not be changed.
AUTH_USER_MODEL = "players.PlayerDB"

# Use a custom test runner that just tests Evennia-specific apps.
TEST_RUNNER = 'evennia.server.tests.EvenniaTestSuiteRunner'

######################################################################
# Django extensions
######################################################################

# Django extesions are useful third-party tools that are not
# always included in the default django distro.
try:
    import django_extensions
    INSTALLED_APPS = INSTALLED_APPS + ('django_extensions',)
except ImportError:
    pass

#######################################################################
# SECRET_KEY
#######################################################################
# This is the signing key for the cookies generated by Evennia's
# web interface.
#
# It is a fallback for the SECRET_KEY setting in settings.py, which
# is randomly seeded when settings.py is first created. If copying
# from here, make sure to change it!
SECRET_KEY = 'changeme!(*#&*($&*(#*(&SDFKJJKLS*(@#KJAS'

redpajama_set_name: RedPajamaGithub


The largest revolving cannon made had a calibre of 53 mm (a little over 2 inches); it fired a shell weighing 1.63 Kg (about 4 lbs.), with 455 m/s (1,500 feet/s) velocity. The gun weighed 1,000 Kg, and required a substantial deck mounting to absorb the recoil.
If you know of another, please let me know its location, and if possible send me photos that I can include in the Gallery. See my contact details.


text:
9780674272248 61af4ecda304094c431db0f2 Our Oldest Companions The Story Of The First Dogs https://cdn1.storehippo.com/s/607fe93d7eafcac1f2c73ea4/61af4f9626263408619ad2ee/webp/41p8bpi4nal-_sx329_bo1-204-203-200_.jpg
How did the dog become man's best friend? A celebrated anthropologist unearths the mysterious origins of the unique partnership that rewrote the history of both species. Dogs and humans have been inseparable for more than 40,000 years. The relationship has proved to be a pivotal development in our evolutionary history. The same is also true for our canine friends; our connection with them has had much to do with their essential nature and survival. How and why did humans and dogs find their futures together, and how have these close companions (literally) shaped each other? Award-winning anthropologist Pat Shipman finds answers in prehistory and the present day. In Our Oldest Companions, Shipman untangles the genetic and archaeological evidence of the first dogs. She follows the trail of the wolf-dog, neither prehistoric wolf nor modern dog, whose bones offer tantalizing clues about the earliest stages of domestication. She considers the enigma of the dingo, not quite domesticated yet not entirely wild, who has lived intimately with humans for thousands of years while actively resisting control or training. Shipman tells how scientists are shedding new light on the origins of the unique relationship between our two species, revealing how deep bonds formed between humans and canines as our guardians, playmates, shepherds, and hunters. Along the journey together, dogs have changed physically, behaviorally, and emotionally, as humans too have been transformed. Dogs' labor dramatically expanded the range of human capability, altering our diets and habitats and contributing to our very survival. Shipman proves that we cannot understand our own history as a species without recognizing the central role that dogs have played in it.
Pat Shipman is the author of many books, including The Invaders, The Animal Connection, and The Ape in the Tree (with Alan Walker), which won the W. W. Howells Award from the American Anthropological Association. Shipman is a fellow of the American Association for the Advancement of Science and the Royal Geographical Society of London.
in stockINR 479
Science Technology And Medicine
Our Oldest Companions The Story Of The First Dogs
Author: Pat Shipman
Publisher: Belknap Harvard
Galileo's Error: Foundations for a New Science of Consciousness
Our World In Pictures Trees Leaves Flowers & Seeds A Visual Encyclopedia Of The Plant Kingdom
The Myth Of Race The Troubling Persistence Of An Unscientific Idea
Incognito The Secret Lives Of The Brain
Never Mind The B#ll*cks Heres The Science
The Importance Of Being Interested
Eight Improbable Possibilities The Mystery Of The Moon And Other Implausible Scientific Truths
Animal Vegetable Criminal When Nature Breaks The Law
Immune The New Book From Kurzgesagt A Gorgeously Illustrated Deep Dive Into The Immune System
Viral The Search For The Origin Of Covid-19

redpajama_set_name: RedPajamaCommonCrawl


Covering all types of jobs big or small, rest assured when Brice Contracting are on site.
At Brice Contracting, you will find experienced demolition experts who offer a wide range of commercial, industrial and residential services. Our crew has worked with many different types of structures and properties over the past 35 years. When it comes to fast and safe demolition, there is nobody better than Brice Contracting.
Brice Contracting is proud to offer residential demolition services in Braeside, Moorabbin, Springvale, Clayton, Caulfield, Oakleigh, Boronia, Bentleigh, Richmond, Melbourne and surrounding areas.
Brice Contracting ensures that each project is completed in a safe and timely manner giving you a sound piece of mind when using our wide list of services.


An already booming Chinese Lab Instrument and Apparatus Manufacturing industry may see an even greater boost with the implementation of the Affordable Care Act (ACA), better known as Obamacare, which has gone into effect as of 01 January, 2013.
This industry supplies the sectors of healthcare, food production, and education with specially made instruments.
A recent report released by IBISWorld reveals that the Chinese industry that manufactures lab instruments and other relevant apparatus has been enjoying a large, steady rise. The industry has seen a 15.7 percent annual growth over the last five years ending with 2012. That equates to around $3.5 billion in additional revenue.
As of today, large manufactures in this industry control the market in China with the four biggest making over 39 percent of the revenue. Smaller manufactures can't compete due to the difficulty in raising enough capital so they are forced to produce low quality products.
However, the growing profitability is causing more foreign companies to eye China as fertile ground for establishing branches. The implementation of Obamacare is also likely to thicken the pot, so to speak, by adding more incentive.
One area of Obamacare that went into effect the first of the year is the Medical Device Tax. This addition places an excise tax of 2.3 percent on a variety of medical devices the enactment of which is expected to severely cripple those who design and manufacture such items in the United States.
Various US companies within this industry are voicing their fears of this additional burden. NeuroPace and AdvaMed representatives have both commented on the damaging effects of this policy which is expected to cripple, if not kill, companies involved in the medical device industry.
With the medical device industry anticipating a $20 billion or more hit from the Medical Device Tax, eyes may turn to China sourcing in order to set up shop there. A full 80 percent of companies in the United States that are involved in this industry operate with less than 50 employees so many of those may not be able to continue business under the new tax law. That's a lot of businesses to sink.
On the other side of the coin, those seeking to remain stateside will have to pass on the extra cost to their customers via higher prices on their products, so sectors which require such devices may seek to buy from China instead. The fact is doing business in China is becoming easier and more lucrative with each passing year. China products are also being made with increasingly better quality which is drawing more attention from foreign buyers.
Only time will tell how large and devastating an effect the Medical Device Tax will have on Lab Instrument and Apparatus Manufacturing industry in the US, but those who have a keen eye and a lot of courage and capital may want to get a jump on the possible exodus to China that Obamacare is sure to create.


text:
New Likud MK's War Against a Radical Leftist NGO
Oren Hazan created a cover story and fed radical leftist group falsehoods to prove how it uses uncorroborated lies to attack IDF.
Ido Ben-Porat, Ari Yashar
Apr 1, 2015, 11:48 AM (GMT+3)
IDFBreaking The SilenceSamaria Residents' CouncilOren Hazan
Oren Hazan becomes an MKKnesset spokesperson
Incoming Likud MK Oren Hazan has been waging an effort to fight the radical leftist NGO Breaking the Silence, charging that the group which is infamous for its attempts to delegitimize the IDF relies on false testimony against IDF soldiers.
Channel 10 reported on Tuesday that Hazan approached the leftist NGO under an assumed identity as "Assaf Hazan" after Operation Protective Edge, and made up stories about IDF misconduct to expose how the group passes off uncorroborated falsehoods as fact in their attacks on the IDF.
Hazan explained his contact with Breaking the Silence was part of an effort planned together with the Samaria Residents' Council, meant to "expose the lies" of the organization.
"I'm really not surprised that the radical leftist organization Breaking the Silence ran to the media, which of course was happy to cooperate with them," Hazan wrote on his Facebook page in response to the Channel 10 report. "So friends, it's time to burst another lie from Breaking the Silence, a radical leftist organization that took as its goal to harm IDF soldiers and our state."
The new MK acknowledged he used the name "Assaf Hazan" and gave testimony to activists in the organization, "all as part of an operation planned by me together with the Samaria Residents' Council, to expose the lies of Breaking the Silence and to prove once and for all, with photographed and documented facts, the corrupt methods in which the organization gets false testimony against IDF soldiers."
Hazan noted that the false testimony later leads to arrest orders "against the best IDF officers, heroes of anonymous missions and wars, which more than once end with wounded and dead for the defense of the state of Israel against its cruel enemies who seek to harm it."
He said he will reveal his findings about the organization and its methods in the near future, adding "just like a good investigator I built a cover story for myself with a name, e-mail and cell phone, and I arrived with this story to give testimony to members of the organization."
"I'm just off of a moving evening in which I was sworn in as a member of the Israeli Knesset, but I can promise you that also in the legislative body I will continue to protect and defend IDF soldiers," vowed the MK.
"I will prevent any harming of the best of our sons who pay with their blood and lives so that we can all live here in the land," said Hazan. "I will reveal in public the ways of working, methods, false testimony solicitation and foreign funding to Israel of this radical body, Breaking the Silence."
According to NGO Monitor, Breaking the Silence's donors include the European Union, George Soros's Open Society Institute (US), the New Israel Fund and Norway, among others.
Breaking the Silence was active in promoting "war crimes" charges against Israel after the Gaza fighting in January 2009, says NGO Monitor. These charges were based on anonymous and unverifiable hearsay "testimonies."
Even the leftist Ha'aretz has written that Breaking the Silence "has a clear political agenda, and can no longer be classed as a 'human rights organization.' Any organization whose website includes the claim by members to expose the 'corruption which permeates the military system' is not a neutral observer."


text:
Image: Dragonfly (Source).
Physical and Neurological Processes in the Hunting Dragonfly
April Lin | SQ Online (2021-2022)
If your friend bounced a single tennis ball towards you, you might find it easy to catch it. If they told you to focus and catch only one specific ball among a few, you might still succeed. What happens when there are fifty identical tennis balls bouncing every which way, and you must not only keep your eye on the correct one but also move to reach its unpredictable path before it flies past you? It might be more difficult to succeed. Dragonflies experience a similar case, though instead of chasing after tennis balls, they chase prey that makes abrupt changes in their path of movement. Dragonflies' abilities to focus on the one prey and meet it at its unpredictable path, aided by physiological and neurological components, determine their survival.
Body dynamics and neurological processes contribute to dragonflies' interception steering— their steering to meet their prey in its path— and contribute to their high hunting-success rate. An article published in 2014 used fruit flies as prey to study the way dragonflies' psychological processes, such as their body positioning, may contribute to their success during hunting. However, a 2013 study concluded that, of the specific dragonfly species of its samples, different species of prey and distances between them and the predator may affect the dragonflies' methods of pursuit. It is suspected that dragonflies assess their prey's movements before pursuing the target, during which they predict the position of the prey before pursuit. While hunting, the dragonflies' bodies seem to rotate purposefully. Researchers found that a hunting dragonfly would position its body axis to the direction of the prey's movement at a specific angle. The rotation of the dragonfly's body seemed to have increased the distance between the interception point of the target, or the point at which the dragonfly meets the prey at its path, and itself compared to the distance without rotation. However, the orientation of the dragonfly's body with respect to the movement of its target, may make for faster speed and more accurate motion control as it chases after potentially-unpredictable prey. The dragonfly also consistently maintains the degree of its body axis at approximately 30º which, along with its alignment to the prey's path, is its preferred placement to snatch its prey. This alignment also places it directly below its target and in its target's blind spot. This allows them to capture their prey more easily, as the dragonfly would less likely be spotted by their prey. By positioning themselves in such a way, they would also only need to keep their alignment and close the vertical gap between predator and prey to reach the interception point.
However, body-axis positioning will not suffice on its own. The same 2014 study observed the role of head movements in hunting patterns of sample dragonflies. If the target were to suddenly change its path, the dragonfly may experience inefficiencies and larger movements to change its path too. Hence, any drastic changes in dragonflies' body movement may be negated by the dragonflies' head movements, making large and inefficient turns during flight quicker in response to their prey's flight patterns. Depending on the movement of the prey, such head movements can either be predictive or reactive. When a particular prey follows a straight path at a relatively constant speed, dragonfly head movements are predictive. When chasing a prey that does change direction suddenly, dragonfly head movements are more reactive than predictive due to the sudden change of motion. Such head movements still negates any of the dragonfly's drastic and time-consuming body motion as it follows its target. Their head movements keep the image of the prey clear even during abrupt movements.
Image: Dragonflies' body alignment and head movement contribute to interception steering (Source).
Paired with dragonflies' body dynamics are their neurological processes. The prey they hunt often travel in swarms. In order to avoid confusion and a decrease in hunting efficiency, dragonflies use selective attention and focus on a specific target while ignoring the rest. Their fovea, located in the upper part of their compound eyes, helps with selective focus and allows the dragonfly to adjust its motion to pursue its target. The specific neuron used in selective attention is the Centrifugal Small-Target Motion Detector 1 (CSTMD1), located in the optic nerve and midbrain. CSTMD1 allows the dragonfly to selectively focus on a small, dark target against a bright background (such as fruit flies or mosquitoes in daylight). The neuron's function also demonstrates flexibility, as the dragonfly can still shift its selective focus to a different target, even mid-hunt, if a better opportunity arises. CSTMD1 also demonstrates "predictive gain modulation," or the increased detection of small targets and awareness immediately in front of the target's path of motion while inhibiting other areas of its visual field. The CSTMD1 neuron, in conjugation with other neurons, can predict the immediate future location of the dragonfly's target, even if the target comes into extreme close distance with others in their swarm. For instance, imagine focusing on one tennis ball while it comes into direct or close contact with multiple identical balls. Without accurate fixation on the selected target, such close proximity to other objects would decrease tracking accuracy and capture success. The CSTMD1 neuron's response to target position in dragonflies' visual field could play a role in how the dragonfly aligns itself to its prey's path of motion, preserving the retinal placement that encourages most CSTMD1 function. This strong selective attention may be an evolutionary advantage in dragonflies as they hunt prey that travel in swarms.
The combined physiological and neurological processes of dragonflies make them some of the most formidable and successful hunters in the insect world. The alignment of their body and head, highly acute eyesight and selective focus, and directional control allow it to chase after prey in the most efficient and stealthy way. Such fine-tuned abilities surpass those of many other predators in the animal kingdom, such as African wild dogs, cheetahs, lions, and wolves. With a 95% hunting success rate, they may be one of the most formidable predators in the world.
Image: Dragonflies' fovea helps selective focus on a target (Source).
https://www.nature.com/articles/nature14045
https://pubmed.ncbi.nlm.nih.gov/23784698/#:~:text=Our%20results%20show%20that%20dragonfly,velocity%20generally%20increases%20with%20size
https://www.britannica.com/animal/Odonata/Form-and-function
https://www.jneurosci.org/content/39/43/8497
https://www.sciencedirect.com/science/article/pii/S0960982217302798#bib23
https://www.discoverwildlife.com/animal-facts/mammals/hunting-success-rates-how-predators-compare/
https://journals.biologists.com/jeb/article/222/17/jeb207316/223546/Properties-of-predictive-gain-modulation-in-a
https://journals.biologists.com/jeb/article/210/18/3277/17040/Neural-mechanisms-underlying-target-detection-in-a
https://ieeexplore.ieee.org/document/6146547
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6146547
Into the Mindset of Biology with Dr. Keefe Reuther
Euthanasia Stress: A Harsh Reality of Biomedical Research
Previous The Imagination of Body Augmentation
Next Definitions Towards Inclusivity


d2e trough its affiliate, PCI Group, has provided commercial advisory and contract establishment services to VicRoads on various projects and contracts.
PCI supported VicRoads to establish a road construction project alliance to widen the Tullamarine Freeway to Sydney Road section of the M80 Upgrade Program.
As Alliance Facilitators, PCI supported the strategic planning for the procurement process, including the development of RFP, facilitating interactive selection processes with tenderers and commercial alignment.
More recently, PCI helped VicRoads develop and introduce a process for making D&C contracts more collaborative in order to improve value for money and certainty of outcomes for a project that was positioned at the riskier end of the range of projects suitable for a D&C approach.
PCI's role included helping VicRoads select the options for collaboration to design the overall procurement process for the Dingley Bypass Project, facilitating interactive tenderer sessions, and running a detailed Risk Allocation Guidelines process to help parties explore and agree which party should bear each project-specific risk. We then ran the market facing process and conducted a post-implementation review involving the owner and both successful and unsuccessful tenderers.
This process resulted in reducing bid cost for tenderers by improving clarity of requirements and enabling better targeted tenders and establishing a collaborative culture during the tender phase which would continue through delivery.
We also worked with VicRoads develop and introduce partnering and alliance-likecontracts for roads maintenance in a way that enabled contractors to take responsibility for outcomes and determine maintenance priorities, while preserving budgetary discipline and value-for-money.


text:
Monteverdi: The Other Vespers
Choir and Orchestra of the Age of the Enlightenment, Robert Howarth
Kings Place, 15 January 2016
Music by Monteverdi, Grandi, and Cavalli
The 2016 Kings Place 'Baroque Unwrapped' season will include some 45 concerts in a variety of formats. Opening the season in grand style were the Choir and Orchestra of the Age of the Enlightenment in a spectacular programme of music from the very start of the Baroque era by Monteverdi, Grandi and Cavalli. "This is not the 1610 Vespers" warned conductor Robert Howarth at the start. Although retaining the structure of a Vespers service, the music was drawn from Monteverdi's 1640/41 Selva morale e spirituale and the posthumous Messa e salmi of 1650.
The Vespers opened with the traditional Deus and Response, in the jubilant fanfare-like version written by Alessandro Grandi. Later in the programme we heard his exquisite O quam tu pulchra es – described by Robert Howarth in the late-evening OAE Night Shift as a "piece of pure filth". In one of the more bizarre bits of the Bible a Lebanon beauty is described as having "hair like flocks of goats" and "teeth like roars of oars". It does sound better in Latin. Soprano Zoe Brooksure gave a beautiful performance, accompanied by David Miller's excellent continuo realisations on theorbo.
As is so often the case with biblical texts, it is sometime better to just ignore the words, either because they make no sense, or because there depict primitive concepts. An example of the latter was Nisi Dominus, where the psalmist rejoices in men who sire sons under the premise that "he will not be bested as his sons barter at the city gate". I'm not convinced that having lots of sons is the ideal way to avoid be hassled by barterers at city gates – or that "Sons are a heritage of the Lord", but there we go.
Monteverdi makes all this very much easier by providing extraordinarily detailed musical interpretations of the text, sometimes changing mood for each word in a phrase. This aspect was particularly well observed by Robert Howarth and the eight OAE singers, with very clear phrasing, clean cadences at the end of lines and superb control of volume. This is music of wonderful vigour and momentum, but needs very careful control of the pulse and the relationship between the various (what we now call) time signatures. Robert Howarth is one of the few conductors that understand how this should work; by generally keeping a steady tactus and taking the triple time sections at a slower pace than most conductors do. The eight singers all had solo spots during the evening, but particularly credit, not least on work-rate grounds, must go to the two sopranos Miriam Allan and Zoe Brookshaw and the tenors Jeremy Budd and John Bowen.
The Ave maris stella Vesper hymn was in a version by Francesco Cavalli, a young protégé of Monteverdi and, later, his deputy at St Mark's. The apparently simple verse structure has three soloists for the verses, but concludes with a trio that combines each solo line. Two instrumental pieces by Cavalli were also included to represent the antiphons, the Canozona a 3 being particularly effective, notably for the final section build on a hypnotic four note descending bass line. Alison Bury and Julia Kuhn were the two violinists, and had leading roles in many of the pieces. The main continuo players were Andrew Skidmore playing bass violin, David Miller, theorbo, and Pawel Siwezak and Robert Howarth on organs, the use of two organs, rather than organ and harpsichord working particularly well.
The final Magnificat (the first in Selva morale e spiritual) was a glorious conclusion, with its complex interplay of voices switching rapidly between small scale and chorus sections. The central section features an expanded setting of the verse Fecit potentiam which, after an intoned opening line all one chord, leads into elaborate runs from the two sopranos, balanced by sections for two bass voices. An excellent concert, and an impressive start to the Baroque festival.
The OAE then moved to the adjoining Hall Two of Kings Place for one of their popular Night Shift events, aimed at a younger audience and with a delightfully relaxed atmosphere, with many people sitting on the floor, a bar, and friendly introductions to the music played – a shorter version of the main concert. This included the "pure filth" of Zoe Brookshaw's O quam tu pulchra es, which was very well received. Despite encouragement to wander about and go and get drinks, it is always the case with these events that the capacity audience remain transfixed by the music. The OAE performers responded well to the questions and comments from the friendly compère, which included some nice quips about the organ, who had the biggest theorbo, and the revalation that David Miller just "loves re-entrant tuning". It also gave me the chance to hear the Magnificat again while lying down on the floor with my eyes closed – I can recommend it.
Posted in Concert Reviews	Baroque UnwrappedDavid MillerEnlightenmentKings PlaceMessa e salmiMonteverdiNight ShiftOAERobert HowarthSelva morale e spiritualeZoe Brooksure
< Previous St. Lambrechter Orgelsommer 2015
Next > Vincenzo Galilei: The Well-Tempered Lute (1584)


text:
Marreon Jackson Setric Millner Zach Freemantle KyKy Tandy Paul Scruggs Ryan Rollins Sports Men's basketball Men's sports Basketball College basketball College sports Men's college basketball
Toledo Mid-American Conference Xavier Big East
Scruggs gets hot late, Xavier rallies past Toledo, 76-73
CINCINNATI, Ohio (AP) — Paul Scruggs scored 15 points, 11 in the final seven minutes, KyKy Tandy poured in a career-high 24 and Xavier battled past Toledo 76-73 on Friday to begin the season 3-0.
Scruggs made a driving putback off a Zach Freemantle missed 3-pointer with 2:34 left to play as Xavier wrested the lead for good, 66-65. Scruggs made a pair of free throws with five seconds remaining to ice the game, leaving just enough breathing room to survive Toledo's Marreon Jackson banging in a 3-pointer with one second on the clock.
Nate Johnson added two more free throws with no time showing after a Toledo foul. The Musketeers had trailed by 10 early after Freemantle picked up three quick fouls, including a technical.
Ryan Rollins had 20 points for the Rockets (1-2), Jackson added 19 points on four 3-pointers and had six assists. Setric Millner Jr. scored 17 points.
Elements of this story were generated by Automated Insights, http://www.automatedinsights.com/ap, using data from STATS LLC, https://www.stats.com


Outback Bowl sponsors receive a variety of benefits from their investment such as advertising, event sponsorship exposure, sampling opportunities, vehicles for consumer promotions and client & customer entertainment. Each sponsorship is personally customized to best meet the objectives of the sponsoring company. Take a look at the benefits of a sponsorship with the Outback Bowl.
Below is a listing of the Outback Sponsorship Family. If you would like more information on sponsorship opportunities with the Outback Bowl call Mike Schulze at (813) 874-2695 or click here.


text:
GA Tucker
Tucker is a city located in DeKalb County, Georgia, United States. It was originally settled in the 1820s, and later developed as a railroad community in 1892. According to the 2016 United States Census Bureau annual estimate of resident population, it has a population of 35,322. In a November 2015 referendum, by a 3:1 margin, voters approved incorporating Tucker into a city. In March 2016 Tucker residents elected the city's first mayor and city council.
42 Photos Open Sun 2PM-4PM
4008 Northlake Creek DR, Tucker, GA 30084
Listing Provided By Audrey Bankhead (License ID: 380494) of Keller Williams Buckhead
4357 Angie DR, Tucker, GA 30084
Listing Provided By Stacey Weiss (License ID: 382651) of EXP Realty, LLC.
1566 Brockett RD, Tucker, GA 30084
Listing Provided By Josh Hooper (License ID: 371771) of Keller Wms Re Atl Midtown


A good real estate development starts that isn't right architect. An architect is concerned not only with the concept but also the planning as well as designing within the building or any real estate development. A degree in architecture equips one with the understanding the building and operational codes which might be to be adhered for every architectural design.
An architect is trained such that he/she transforms twin needs and demands into design and ultimately into physical form. This implies that he/she should have complete training that will aid in constructing of safe and healthy construction for those and the people. Architects have to obtain licenses when you architecture as their building designs and planning decisions play a vital role globe safety and security of the police.
Architects specialize numerous fields among architecture i.e., land, land development, buildings, office parks, residential, landscape and the like for example. This specialization is a result of your increasingly fragmented, demanding and concentrated globe. Thus, it is difficult for distinct architect to give thought to the know-how every and every of these fields and to accommodate the distinct demands of different accounts.
An architect plays a very significant role in a task from its conception to its construction. The final physical form of a building or any real estate development is designed by an architect who obviously considers the desires and needs of the defendant. As such, it is important decide upon an architect will be well qualified and also experienced in the specialized field which you decide on. An architect who has been doing business for a minimum 5-10 years own developed a strong foundation of relevant concepts. He/she must possess the skills, knowledge and experience needed for an excellent and fascinating project. This indicates that it is crucial to review an architect's qualifications prior to selection; his/her degree, experience and license – all always be checked before one hands over the project. An important point to note is that he/she should be experienced for five plus years in expertise field of growth project and simply as a general architect.
Having said cost of educational qualifications, it is time to review an architect's affiliations and accreditations. An achieved architect should additionally be affiliated with a professional institution, for instance, the American Institute of Architects (AIA), Royal Architectural Institute of Canada, Royal Institute of British Architects and such. Affiliation with such institutes demonstrates an architect's credibility and popularity on the market. An architect who is affiliated and accredited by similar professional architectural organizations has certainly passed their comprehensive requirements. This is usually a strong recognition as well proof of their achievement. However, mere affiliation is only some of the consideration before choosing an architect. Other relevant factors and elements should even be considered so how the ultimate decision is earned bearing all concerns in mind.
Geographical area of specialty is also an important depth. Some architects are specialized and well-aware of certain area(s), and as such their scope really limited to those areas. Although he/she may excel in architecture and domains in some area(s), this does not ensure that he/she will be rrn a position to deliver equivalent usually means that the area of the project's requirement. Thus, this aspect ought to be kept in mind.
Certain other the weather is also relevant as they ascertain whether a task will be successful and simultaneously whether the relationship between customer and the architect is sound and pleasant. A good architect should possess good communication skills and should be responsive of the client's questions and/or queries. This is surely a important factor, which ensures the finishing of the project period and on good terms. For your relationship with the architect to be successful, the architect you ultimately select should, by all means, follow through to calls and emails and should keep his/her word on different aspects related to the project.
An architect's connections are a reflection of his/her success and achievement and also political and negotiation skills. One can be well connected and has contacts like city planners and those in political processes is most certainly preferred as opposed to his/her counterparts with relatively few connections and contacts. One more factor is an architect's membership of local clubs just as the Kiwanis, Toastmasters, Knights of Columbus, Rotary etc. An associated member is definitely a better client.


text:
Alphabet v Uber—Uber will pay $245 million to settle trade-secret infringement claim.
IP Matters by Senator Ihenyen, Week 5
You are here: HomeInfusion Lawyers ⁄ Blog ⁄ Intellectual Property ⁄ Alphabet v Uber—Uber will pay $245 million to settle trade-secret infringement claim.
Intellectual Property, IP Matters Alphabet, Intellectual Property, IP Matters, Self-driving cars, Trade secrets, Uber, Waymo, Waymo accepts $245 million settlement, Waymo sues Uber
This week's IP Matters is all about trade secrets over self-driving car technology in a very competitive and lucrative industry. It's between Alphabet subsidiary Waymo and Uber.
Alphabet subsidiary Waymo wanted $2.6 billion in damages from Uber for allegedly stealing a single trade secret on self-driving cars.
The $2.6 billion damages is only for one of the nine trade secrets Waymo claimed a former executive of the stole. According to Alphabet, after a former executive, Anthony Levandowski, had launched his own self-driving startup Otto, he downloaded 14,000 files from Waymo and took them to Uber.
Uber denied the allegation. It maintained that none of the downloaded files got to Uber. It described Alphabet's $2.6 billion damages as not only "inflated" but also "based entirely on speculative future profits and cost savings in a nascent market."
Before the fifth day of the trade-secret infringement trial, Waymo accepted $245 million in Uber shares for settlement of the dispute.
For months, while Waymo struggled to prove its case, details about both companies flew from the trial room to the media and the public. Details of both companies' settlement negotiations were also flying out of the boardroom. Waymo had offered to accept $1 billion settlement from Uber. Uber didn't bite. Waymo slashed the settlement offer by half. Uber still didn't bite. The parties proceeded to trial.
But before the case was going to proceed to trial, Waymo accepted to settle: $245 million in Uber shares. This is a little less than 10% of the damages Waymo had sued for.
Uber's need to save the brand from too many ugly lawsuits may have informed this settlement.
While the trial lasted, Uber had put up a strong defense against Waymo's allegation, showing that none of the Waymo's trade-secret files found their way to Uber. So Uber's eventual decision tosettle came as a surprise to many.
But for a company that has been having the worse of times with lawsuits, Uber's out-of-court settlement may have been understandably informed by the need for the ride-hailing company to ensure that its self-driving software, Lidar, doesn't remain held back by long trials.
Below are some pertinent points from the Waymo-Uber trade-secrets infringement suit:
Avoid lawsuits especially when you need to get to the market before your competitors: Alphabet's Waymo sued Uber early last year. In less than a year, this lawsuit has cost Uber 3 major things. First, it has wasted Uber's time by delaying Uber's kick of the ball in a competitiveand lucrative self-driving car market. Second, Uber had to fire Levandowski, its self-driving team leader. (When you play big in a market like the US, you can't afford not to fire the man who brought termite-infested wood into your home, to borrow one of Chinua Achebe's proverb.) Third, apart from having to let go of some of its shares, Uber's long-term profits must have been affected.
When heavyweights leave your company, ensure they didn't take your trade secrets along with them: Waymo didn't sue Uber until it discovered that its former engineer Anthony Levandowski had been hired by Uber to lead Uber's self-driving car project. With thousands of documents in his possession, Waymo reasonably sniffed a rat. Learn when to sniff a rat in your business. It will save your business a lot of trouble.
A company—especially technology companies—must have an intelligent system for keeping trade secrets 'secret': Waymo suspected Levandowski because it discovered Levandowski had accessed its trademark secrets. It also discovered that Levandowski had downloaded over 14,000 confidential files just before leaving Waymo. If Waymo couldn't trace the downloads on its server, I doubt it would have been able to push its case against Uber this far.
Unlike copyright which—apart from originality—requires that the infringing element must have been expressed in a fixed medium, trade secrets don't always require this. This is one of the reasons why trade secrets are so delicate. However confident Uber is about its claim that it never used any of Waymo's trade secrets, Uber may have decided to still settle the matter because of the circumstances surrounding its inclusion of Levandowski in its self-driving car team. Levandowski's team-leader position in Uber's self-driving run is a vital fact. Even if Levandowski never used any of the over 14,000 secret files he downloaded from Waymo servers, he must have acquired sizeable knowledge about Waymo's self-driving car technology. So whether oral or written, knowledge shared with his new team at Uber may be held adequate to hold Uber by the tail, if not by the neck. So Waymo's self-driving trade secrets in Levandowski's mind alone is adequate to find possible infringements.
Nigeria does not have any trade-secrets protection law: Unlike the regime in the United States where the scenario above took place, there is no legislation on trade secrets in Nigeria. This has legal implications. First, for your trade secrets to be protected in Nigeria, it must be either under contract or a tort.Trade-secret protection becomes contractual when you include relevant clauses in your business contracts, employment contracts, and other contractual documents aimed at protecting your trade secrets or restricting confidential information. When Nigeria decides to have a trade-secrets law, it may create both civil and criminal liabilities, just as the Nigerian Copyright Act has done.
I will now briefly point out what your technology company or business can take away from this week's IP Matters:
Trade secrets give your businesses competitive edge: Trade secrets—though not strictly a type of intellectual property—have become one of the most vital assets of businesses today. How your business protects them will increasingly matter as today's business environmental gets increasingly competitive and disruptive.
Keep third parties out by observing due diligence before acquiring any company or technology: Technology businesses—whether big or small—need to be vigilant when buying up any business, or technology, otherwise they may end up buying themselves reputation-destroying lawsuits. Uber purchased Levandowski's Otto company six months after he had left Waymo as head of its research team for years. Uber bought Otto for $680 million. This was one of Uber's big mistakes—it failed to conduct due diligence before buying Levandowski's Otto.
Before hiring a major employee or executive from any of your competitors, be extra cautious: Not all employees or executives are free of legal risks. This is especially so with industries where the entire infrastructure of a business is built on IP or the business is entirely IP business. From an IP-protection angle, that new partner or employee you are bringing into your team may be a risk to your business. So always do your checks. When Uber paid $250 million of Uber stock to Levandowski to join and lead Uber's self-driving car team, little did Uber know it was going to pay another $245 million in Uber stock to Waymo to clean up Levandowski's mess. Uber hired a lawsuit!
Many businesses are not protecting their trade secrets, consequently creating avoidable risks for their businesses. Even many more are unaware that certain components of their business operations or business methods are indeed their trademark secrets, thus creating needless competitors for themselves.
In IP matters, it's never too early because IP matters to business and development, any day.
IP Matters, Week Five, 2018
Follow hashtag on LinkedIn, #ipmatterswithsenator
Follow Senator Ihenyen


text:
Ferrari Monza SP1/SP2
The Ferrari Monza SP1, together with the Ferrari Monza SP2, are the forerunners in a new concept, known as 'Icona' (Icon), that taps into a leitmotif of the most evocative cars in the company's history to create a new segment of special limited series cars for clients and collectors. The intention is to use a modern aesthetic to reinterpret a timeless style, with technologically advanced components and the highest performance possible through continuous innovation.
Racing has always greatly influenced Ferrari design language and the Ferrari Monza SP1 is linked to the marque's glorious past by an invisible bond. Its design, in fact, embodies the elegance, performance and innovation that are such an intrinsic part of Ferrari's past and present. From the point of view of pure creativity, the seductive images of 1950s Ferrari barchettas, that evoke in so many ways the atmosphere of the races of the day, were an invaluable source of inspiration. The Ferrari Styling Centre's designers gave the barchetta concept an absolutely modern connotation thanks a new and highly personal take on the theme. But there are no nostalgic references, no elements borrowed directly from the past. A car that seems sculpted by the wind. It is the purity of the styling elements that impresses – an aesthetic that is futuristic but, at the same time, a respectful yet un-nostalgic homage to the past.
Amongst these is a 350 bar direct injection system for the very first time on a high-performance petrol engine paired with variable geometry intake tracts conceptually derived from those of naturally-aspirated F1 engines. Particular attention was also paid to calibrating the performance strategies to enhance the engine's potential and the sensation of extreme power delivered by the car while ensuring the driver can easily dose the massive torque available, thanks to smooth, progressive power delivery at all engine speeds. Thanks to the uncompromising open configuration, the V12 sound is even more all-enveloping. The more noticeable intake sound is captivating and absolutely unmistakable. The driver feels completely immersed in an incomparable experience that only a car brimming with Ferrari DNA could deliver. The engine in the Ferrari Monza SP2 is derived directly from that of the 812 Superfast, with optimised fluid-dynamics in the intake ducts to deliver even higher performance.
The Virtual Wind Shield is essentially an aerodynamic passage underneath the driver's side aero screen, where the upper part is shaped as an aerofoil. Part of the air flowing over the bonnet enters the air intake under the aero screen, where it is accelerated and deflected vertically ahead of the instrument panel. This generates what is known as a highly energised upwash that deflects the flow over the driver's head creating a low-speed bubble around the cockpit. The result is that the model is perfectly balanced with no roll whatsoever for almost unimaginably pure, uncompromising sports-car handling. Because there are no windscreen pillars, the driver's view is completely unhindered and this enables them to attack corners with a freedom only experience with a Formula 1 car. The Virtual Wind Shield was patented for this car in response to the need to allow the driver enjoy it at high speeds. Although it remains below the driver's cone of vision, it delivers maximum driving comfort for a barchetta.
lb⋅ft
Type V12 – 65°
F1 Seven Speed Dual-Clutch
Specific Power Output 93 KW/ cu in
Fuel Tank Capacity 24.3 US Gal
Maximum Power 596 kW (810 CV) at 8500 rpm
Maximum torque 719 Nm at 7000 rpm
Length 183,3 in
Width 78,6 in
Dry Weight 3306,9 lb
Wheelbase 107,1 in
Front Track 66,5 in


text:
Opinion: Don't steal our teachers during a pandemic
How can the Philadelphia School District go forward with "leveling" this year?
Philadelphia School District headquarters on North Broad Street
Mark Henninger / Imagic Digital
Sep. 10, 2020, 6:00 a.m.
Imagine you're a nervous first grader, heading back to school with your neatly-ironed uniform and your Hello Kitty lunchbox.
You spend the first month of school getting acclimated, guided by your nice teacher, and make friends with your new classmates. Then October arrives. The school district suddenly comes in and rips your teacher away from you, juggling your classmates around as you're abruptly reassigned to a different group and your teacher is sent to another school.
This is the reality for schoolchildren across Philadelphia each year, through a process called "leveling."
Now imagine there's a pandemic, and all this is happening at the same time your parents and teachers are struggling to make sure you keep learning at home. Yes, leveling will still happen this year despite coronavirus disruptions, Philadelphia School Superintendent Dr. William Hite confirmed.
Here's how it works: district administration waits until school is underway to make its final staffing decisions, which are based on enrollment. It then takes teachers out of already-established classrooms and transfers them to other schools.
As if it's not startling enough to lose your teacher, leveling has a cascading effect throughout the entire school.
Classrooms are combined, straining some at the seams with the maximum number of students. Veteran teachers who aren't cut are often re-assigned within their schools to cover the losses, and can end up teaching grades with which they might not have experience.
Leveling can disproportionately affect Black and brown students, something that could easily become more pronounced during the pandemic. Many parents right now are uncertain about their childcare arrangements, and some affluent families are enrolling in private schools or forming homeschooling "pods." These movements mean that this fall, schools may show declining enrollments that are NOT reflective of full demand. When in-person learning resumes, classrooms could end up short-staffed.
Leveling is also a side effect of de facto school segregation. Once a certain school reaches a tipping point of white students, their enrollment tends to increase as other "Nice White Parents" transfer their children in. Additional teachers get transferred over, at the expense of the schools those children might have otherwise been attending.
It's not only under-enrolled or high-poverty schools that fear leveling. When schools like Meredith and Masterman have to quake in fear of teacher cuts, it's a sign that the system is definitely not working.
The district claims it saves $12 million a year with leveling, but at what cost? If the district can afford to hire an endless stream of consultants, to pay the salaries of numerous charter school CEOs who overcharge us for special education students, and to renovate Dr. Hite's office suite for $604,000 while the district bungles the $50 million Ben Franklin/SLA renovation, we can afford to keep teachers in classrooms.
People criticize teachers' unions for trying to protect jobs, but hold up: who do those critics think will actually do the teaching? Google Classroom or Zoom aren't some Artificial Intelligence who can help our kids learn by themselves. Philly teachers are out there grinding to make an imperfect system work.
Other school districts make their staffing decisions during the "off season," based on projected enrollments, hiring additional staff when they discover shortages. Our district could also switch to using a 3- or 5-year rolling average, to smooth out fluctuations.
Taking teachers out of classrooms that need them to patch up staffing holes at other schools is robbing Peter to pay Paul. The process ignores the academic and emotional needs of the students who traumatically lose their teacher mid-year, while going against the district's stated "goals and guardrails" that promise we're "giving each student what they need to reach their fullest potential."
Like everything else this year, enrollment numbers are sure to be irregular. Leveling is barbaric during the best of times. But right now, when students are struggling to regain some sense of normalcy and learn under duress, snatching teachers out of their classrooms is downright ghoulish.
The School District of Philadelphia needs to leave our teachers right where they are, holding down the fort.
Stephanie King is the president of Kearny Friends, the community group supporting Gen. Philip Kearny School in Northern Liberties. Her short stories have won the Quarterly West Novella Prize and the Lilith Short Fiction Prize, while her education writing has appeared in the Penn Capital-Star and Philadelphia Inquirer. You can find her online at stephanieking.net or @stephstephking on Twitter.
Parenting, School District of Philadelphia, Education
stephanie.king@outlook.com @stephstephking


text:
package io.wcm.config.core.impl;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;

import java.util.HashMap;
import java.util.Map;

import org.junit.Before;
import org.junit.Test;

import io.wcm.config.api.Configuration;
import io.wcm.config.api.Parameter;
import io.wcm.config.api.ParameterBuilder;
import io.wcm.sling.commons.resource.ImmutableValueMap;

public class ConfigurationImplTest {

  private static final String APP_ID = "/apps/app1";
  private static final String CONFIG_ID = "/config1";
  private static final Map<String, Object> SAMPLE_PROPS = new HashMap<>();
  static {
    SAMPLE_PROPS.put("prop1", "value1");
    SAMPLE_PROPS.put("prop2", 55);
  }

  private static final Parameter<String> PARAM1 = ParameterBuilder.create("prop1", String.class, APP_ID).build();
  private static final Parameter<Integer> PARAM2 = ParameterBuilder.create("prop2", Integer.class, APP_ID).build();
  private static final Parameter<String> PARAM3 = ParameterBuilder.create("prop3", String.class, APP_ID).build();

  private Configuration underTest;

  @Before
  public void setUp() {
    underTest = new ConfigurationImpl(CONFIG_ID, SAMPLE_PROPS);
  }

  @Test
  public void testProperties() {
    assertEquals(CONFIG_ID, underTest.getConfigurationId());
    assertEquals(CONFIG_ID, underTest.toString());
    assertEquals("value1", underTest.get("prop1", String.class));
    assertEquals((Integer)55, underTest.get("prop2", Integer.class));
    assertEquals("value1", underTest.get(PARAM1));
    assertEquals((Integer)55, underTest.get(PARAM2));
  }

  @Test
  public void testDefault() {
    assertEquals("def", underTest.get("prop3", "def"));
    assertEquals("def", underTest.get(PARAM3, "def"));
  }

  @Test
  public void testMapAccessMethods() {
    assertEquals(2, underTest.size());
    assertFalse(underTest.isEmpty());
    assertTrue(underTest.containsKey("prop1"));
    assertTrue(underTest.containsValue("value1"));
    assertEquals("value1", underTest.get("prop1"));
    assertTrue(underTest.keySet().contains("prop1"));
    assertTrue(underTest.values().contains("value1"));
    assertEquals(2, underTest.entrySet().size());
  }

  @Test(expected = UnsupportedOperationException.class)
  public void testMapClear() {
    underTest.clear();
  }

  @Test(expected = UnsupportedOperationException.class)
  public void testMapRemove() {
    underTest.remove("prop2");
  }

  @Test(expected = UnsupportedOperationException.class)
  public void testMapPut() {
    underTest.put("prop3", "value3");
  }

  @Test(expected = UnsupportedOperationException.class)
  public void testMapPutAll() {
    underTest.putAll(ImmutableValueMap.builder()
        .put("prop4", 25)
        .put("prop5", 33)
        .build());
  }

}


The Campbell lab is very pleased to welcome our first graduate student, Dawn Ryan, who comes to us from Memorial University in Newfoundland. Dawn will be using fMRI to examine age differences in the neural underpinnings of intentional vs. unintentional (or spontaneous) retrieval. Well, that's the plan, if we can ever get her out of that box.


text:
People using TERN: Jasmine Rickards
A scientist with the Australian Bureau of Agricultural and Resource Economics and Sciences (ABARES) working with TERN to improve land management outcomes.
Jasmine Rickards of ABARES is at the forefront of monitoring soil erosion in Australia. For the past 4 years Jasmine has been working with a network of agencies to develop reliable measures of ground cover change. Jasmine's work is critical for assessing land management practices, such as grazing and broad acre cropping, and for monitoring progress towards environmental targets.
So what exactly does Jasmine do and how does she do it, I hear you ask. Well, it's probably best if Jasmine explains that herself…
'I work with a team that provides regular updates of the 'fractional cover' of live photosynthetically active (green) vegetation, dry or dead vegetation, and bare ground across the Australian continent through the Ground cover monitoring for Australia project. This is a collaborative project funded by the Department of Agriculture with CSIRO, state and territory agencies, TERN and Geoscience Australia', she says.
Fractional cover updates are produced using Moderate Resolution Imaging Spectroradiometer (MODIS) satellite imagery accessed via TERN's AusCover facility, analysed by CSIRO, validated with field site information and made into ground cover maps. The field site information includes field data collected by TERN's AusPlots facility, which will contribute to the national network of over 1500 observations collected by state and territory agencies. This national network of observations is improving the fractional cover products available from the TERN AusCover facility.
ABARES plays a key role in collating and coordinating land use and management information from across Australia through its partnership network. However, the ABARES systems are not designed to work with the large quantities of data that this collation and coordination role sometimes involves. Thanks to TERN's data management infrastructure, ABARES and its partners are now better able to share data, and ultimately help manage Australia's agricultural lands more sustainably and productively.
'It's great to have access to TERN's data portals to publish ground cover data, and being able to use TERN's field data for validation will be a bonus. We can work directly with TERN researchers, share lessons from developing ground cover monitoring for Australia, and learn more about the TERN data. By using TERN's field data, ABARES will be able to provide products that have been tested across a greater proportion of Australia than before', says Jasmine.
The provision of more consistent and accurate maps of ground cover are a national sustainability indicator, and will mean that environmental researchers and managers can more readily assess soil condition and make progress towards important land management targets.
'Our work contributes to regional and national reporting of land use and land management practices, status, change and integrated assessments.'
For example, monitoring ground cover improves estimates of the area at risk of wind and water erosion. This in turn enables governments and land managers to better understand the hazards of dust storms by combining information about potential dust sources with weather forecasts through the DustWatch program.
Jasmine's collaborative work is generating exciting outcomes for land holders too. ABARES produces and distributes summary statistics via its Monitor web tool, allowing the public to view ground cover across Australia and make land management decisions based on that information.
'It's very satisfying to know that our work is having positive outcomes for land managers across Australia', concludes Jasmine.
Jasmine Rickards surveying vegetation cover and soil erosion in a peanut field in the Northern Territory (left) and on agricultural land in New South Wales (right). Jasmine is working with TERN and a network of other agencies to develop reliable measures of ground cover change, critical for assessing land management practices, such as grazing and broad acre cropping, and for monitoring progress towards environmental targets.
Published in TERN newsletter July 2014


text:
Use of monoclonal antibody E48 in diagnosing transitional cell carcinoma of urinary bladder
R. Torenbeek*, C. E.M. Blomjous, J. J. Quak, S. Ybema, C. J.L.M. Meijer
Aims: To investigate the localisation of the E48 epitope and to determine the use of monoclonal antibody E48 for the identification of transitional cell carcinomas (TCC); and to determine if antigenic expression was affected by different standard fixation methods. Methods: Biopsy specimens were labelled with E48 for immunoelectron microscopy. One hundred and nineteen tissue samples from 47 bladder carcinomas were tested for reactivity with E48, using fresh frozen, sublimate formalin, and formalin fixed tissue. Thirteen undifferentiated bladder tumours and 10 undifferentiated prostatic carcinomas were incubated with E48 and prostate specific antigen. Results: Reactivity to E48 was found in all grade 1 and 2 carcinomas and most (83%) grade 3 tumours. At the ultrastructural level, expression was mainly associated with desmosomes and the cytoplasmic membrane. The reactivity of E48 was generally strong in fresh frozen tissue samples and remained preserved in fixed tissue samples. Ten of the 13 bladder carcinomas expressed E48; all prostatic tumours were totally negative. Conclusions: E48 is a sensitive marker for transitional cell carcinoma and suitable for differentiation between urothelial and prostatic undifferentiated carcinoma. It can be used in routinely processed, formalin fixed, biopsy specimens.
Journal of Clinical Pathology
https://doi.org/10.1136/jcp.45.4.303
10.1136/jcp.45.4.303
Torenbeek, R., Blomjous, C. E. M., Quak, J. J., Ybema, S., & Meijer, C. J. L. M. (1992). Use of monoclonal antibody E48 in diagnosing transitional cell carcinoma of urinary bladder. Journal of Clinical Pathology, 45(4), 303-307. https://doi.org/10.1136/jcp.45.4.303
Torenbeek, R. ; Blomjous, C. E.M. ; Quak, J. J. et al. / Use of monoclonal antibody E48 in diagnosing transitional cell carcinoma of urinary bladder. In: Journal of Clinical Pathology. 1992 ; Vol. 45, No. 4. pp. 303-307.
@article{154ca5ef49be4270a2a9202d9c76d866,
title = "Use of monoclonal antibody E48 in diagnosing transitional cell carcinoma of urinary bladder",
abstract = "Aims: To investigate the localisation of the E48 epitope and to determine the use of monoclonal antibody E48 for the identification of transitional cell carcinomas (TCC); and to determine if antigenic expression was affected by different standard fixation methods. Methods: Biopsy specimens were labelled with E48 for immunoelectron microscopy. One hundred and nineteen tissue samples from 47 bladder carcinomas were tested for reactivity with E48, using fresh frozen, sublimate formalin, and formalin fixed tissue. Thirteen undifferentiated bladder tumours and 10 undifferentiated prostatic carcinomas were incubated with E48 and prostate specific antigen. Results: Reactivity to E48 was found in all grade 1 and 2 carcinomas and most (83%) grade 3 tumours. At the ultrastructural level, expression was mainly associated with desmosomes and the cytoplasmic membrane. The reactivity of E48 was generally strong in fresh frozen tissue samples and remained preserved in fixed tissue samples. Ten of the 13 bladder carcinomas expressed E48; all prostatic tumours were totally negative. Conclusions: E48 is a sensitive marker for transitional cell carcinoma and suitable for differentiation between urothelial and prostatic undifferentiated carcinoma. It can be used in routinely processed, formalin fixed, biopsy specimens.",
author = "R. Torenbeek and Blomjous, {C. E.M.} and Quak, {J. J.} and S. Ybema and Meijer, {C. J.L.M.}",
doi = "10.1136/jcp.45.4.303",
journal = "Journal of Clinical Pathology",
publisher = "BMJ Publishing Group",
Torenbeek, R, Blomjous, CEM, Quak, JJ, Ybema, S & Meijer, CJLM 1992, 'Use of monoclonal antibody E48 in diagnosing transitional cell carcinoma of urinary bladder', Journal of Clinical Pathology, vol. 45, no. 4, pp. 303-307. https://doi.org/10.1136/jcp.45.4.303
Use of monoclonal antibody E48 in diagnosing transitional cell carcinoma of urinary bladder. / Torenbeek, R.; Blomjous, C. E.M.; Quak, J. J. et al.
In: Journal of Clinical Pathology, Vol. 45, No. 4, 01.01.1992, p. 303-307.
T1 - Use of monoclonal antibody E48 in diagnosing transitional cell carcinoma of urinary bladder
AU - Torenbeek, R.
AU - Blomjous, C. E.M.
AU - Quak, J. J.
AU - Ybema, S.
AU - Meijer, C. J.L.M.
N2 - Aims: To investigate the localisation of the E48 epitope and to determine the use of monoclonal antibody E48 for the identification of transitional cell carcinomas (TCC); and to determine if antigenic expression was affected by different standard fixation methods. Methods: Biopsy specimens were labelled with E48 for immunoelectron microscopy. One hundred and nineteen tissue samples from 47 bladder carcinomas were tested for reactivity with E48, using fresh frozen, sublimate formalin, and formalin fixed tissue. Thirteen undifferentiated bladder tumours and 10 undifferentiated prostatic carcinomas were incubated with E48 and prostate specific antigen. Results: Reactivity to E48 was found in all grade 1 and 2 carcinomas and most (83%) grade 3 tumours. At the ultrastructural level, expression was mainly associated with desmosomes and the cytoplasmic membrane. The reactivity of E48 was generally strong in fresh frozen tissue samples and remained preserved in fixed tissue samples. Ten of the 13 bladder carcinomas expressed E48; all prostatic tumours were totally negative. Conclusions: E48 is a sensitive marker for transitional cell carcinoma and suitable for differentiation between urothelial and prostatic undifferentiated carcinoma. It can be used in routinely processed, formalin fixed, biopsy specimens.
AB - Aims: To investigate the localisation of the E48 epitope and to determine the use of monoclonal antibody E48 for the identification of transitional cell carcinomas (TCC); and to determine if antigenic expression was affected by different standard fixation methods. Methods: Biopsy specimens were labelled with E48 for immunoelectron microscopy. One hundred and nineteen tissue samples from 47 bladder carcinomas were tested for reactivity with E48, using fresh frozen, sublimate formalin, and formalin fixed tissue. Thirteen undifferentiated bladder tumours and 10 undifferentiated prostatic carcinomas were incubated with E48 and prostate specific antigen. Results: Reactivity to E48 was found in all grade 1 and 2 carcinomas and most (83%) grade 3 tumours. At the ultrastructural level, expression was mainly associated with desmosomes and the cytoplasmic membrane. The reactivity of E48 was generally strong in fresh frozen tissue samples and remained preserved in fixed tissue samples. Ten of the 13 bladder carcinomas expressed E48; all prostatic tumours were totally negative. Conclusions: E48 is a sensitive marker for transitional cell carcinoma and suitable for differentiation between urothelial and prostatic undifferentiated carcinoma. It can be used in routinely processed, formalin fixed, biopsy specimens.
U2 - 10.1136/jcp.45.4.303
DO - 10.1136/jcp.45.4.303
JO - Journal of Clinical Pathology
JF - Journal of Clinical Pathology
Torenbeek R, Blomjous CEM, Quak JJ, Ybema S, Meijer CJLM. Use of monoclonal antibody E48 in diagnosing transitional cell carcinoma of urinary bladder. Journal of Clinical Pathology. 1992 Jan 1;45(4):303-307. doi: 10.1136/jcp.45.4.303


Using tax returns to estimate repayment ability.
Analyzing Business Tax Returns teaches the participant how to understand tax concepts related to various business entities and how to use tax returns to help estimate the customer's ability to service debt. This basic course presents several aspects of analyzing tax returns, including estimating cash flow from tax returns and determining how taxesinfluence cash flow and the customer's operations. The course addresses all types of business entities—C-corp, S-corp, LLP, and LLC—using various scenarios.
This course is designed for commercial loan officers who lend to individuals and small businesses. However, all bankers who need to increase their understanding of income tax returns and cash flow will benefit from attending this course.
Review the tax return most relevant for cash flow estimation.
Know which sections of the tax return can beignored.
Approximate the business's cash flow using a worksheet and develop the ability to use the system on the job.
Develop strategies for predicting future cash flow.
Estimate and analyze cash flow from business tax returns.
Understand how taxes influence cash flow.
Examine how taxes influence the customer's operations.
Participants are expected to have a thorough knowledge of financial accounting.