text:
Kelp - A web framework light, yet rich in nutrients.
First ...
# lib/MyApp.pm
package MyApp;
use parent 'Kelp';
sub build {
my $self = shift;
my $r = $self->routes;
$r->add( "/hello", sub { "Hello, world!" } );
$r->add( '/hello/:name', 'greet' );
sub greet {
my ( $self, $name ) = @_;
"Hello, $name!";
Then ...
# app.psgi
use MyApp;
my $app = MyApp->new;
Finally ...
> plackup app.psgi
Or, for quick prototyping use Kelp::Less:
# app.psgi
use Kelp::Less;
get '/hello/?name' => sub {
my ( $self, $name ) = @_;
"Hello " . $name // 'world';
If you're going to be deploying a Perl based web application, chances are that you will be using Plack. Plack has almost all necessary tools to create and maintain a healthy web app. Tons of middleware is written for it, and there are several very well tested high performance preforking servers, such as Starman.
Plack, however, is not a web framework, hence its creators have intentionally omitted adding certain components. This is where Kelp gets to shine. It provides a layer on top of Plack and puts everything together into a complete web framework.
Kelp provides:
- Advanced Routing. Create intricate, yet simple ways to capture HTTP requests and route them to their designated code. Use explicit and optional named placeholders, wildcards, or just regular expressions.
- Flexible Configuration. Use different configuration file for each environment, e.g. development, deployment, etc. Merge a temporary configuration into your current one for testing and debugging purposes.
- Enhanced Logging. Log messages at different levels of emergency. Log to a file, screen, or anything supported by Log::Dispatcher.
- Powerful Rendering. Use the built-in auto-rendering logic, or the template module of your choice to return rich text, html and JSON responses.
- JSON encoder/decoder. Kelp comes with JSON, but you can easily plug in JSON::XS or any decoder of your choice.
- Extendable Core. Kelp uses pluggable modules for everything. This allows anyone to add a module for a custom interface. Writing Kelp modules is easy.
- Sleek Testing. Kelp takes Plack::Test and wraps it in an object oriented class of convenience methods. Testing is done via sending requests to your routes, then analyzing the response.
What makes Kelp different from the other Perl micro web frameworks? There are a
number of fine web frameworks on CPAN, and most of them provide a complete
platform for web app building. Most of them, however, bring their deployment code,
and aim to write their own processing mechanisms. Kelp, on the other hand, is heavily
Plack-centric. It uses Plack as its foundation layer, and it builds the web
framework on top of it.
Kelp::Request is an extension of
Kelp::Response is an extension of
This approach of extending current CPAN code puts familiar and well tested tools in the hands of the application developer, while keeping familiar syntax and work flow.
Kelp is a team player and it uses several popular, trusted CPAN modules for its internals. At the same time it doesn't include modules that it doesn't need, just because they are considered trendy. It does its best to keep a lean profile and a small footprint, and it's completely object manager agnostic.
Using the
Kelp script
The easiest way to create the directory structure and a general application
skeleton is by using the
Kelp script, which comes with this package.
> Kelp MyApp
This will create
app.psgi and some other files (explained
To create a Kelp::Less app, use:
> Kelp --less MyApp
Get help by typing:
> Kelp --help
Directory structure
Before you begin writing the internals of your app, you need to create the
directory structure either by hand, or by using the above described
utility script.
| |--MyApp.pm
| |--/MyApp
| |--config.pl
| |--test.pl
| |--development.pl
| |--deployment.pl
libfolder contains your application modules and any local modules that you want your app to use.
conffolder is where Kelp will look for configuration files. You need one main file, named
config.pl. You can also add other files that define different running environments, if you name them environment
.pl. Replace environment with the actual name of the environment. To change the running environment, you can specify the app
mode, or you can set the
PLACK_ENVenvironment variable.
my $app = MyApp->new( mode => 'development' );
> PLACK_ENV=development plackup app.psgi
This is where the
Templatemodule will look for template files.
This is where the
Loggermodule will create
debug.logand any other log files that were defined in the configuration.
tfolder is traditionally used to hold test files. It is up to you to use it or not, although we strongly recommend that you write some automated test units for your web app.
This is the PSGI file, of the app, which you will deploy. In it's most basic form it should look like this:
use lib './lib'; use MyApp; my $app = MyApp->new; $app->run;
The application classes
Your application's classes should be put in the
lib/ folder. The main class,
in our example
MyApp.pm, initializes any modules and variables that your
app will use. Here is an example that uses
Moose to create lazy attributes
and initialize a database connection:
package MyApp;
use parent Kelp;
use Moose;
has dbh => (
is => 'ro',
isa => 'DBI',
lazy => 1,
default => sub {
my $self = shift;
my @config = @{ $self->config('dbi') };
return DBI->connect(@config);
sub build {
my $self = shift;
$self->routes->add("/read/:id", "read");
sub read {
my ( $self, $id ) = @_;
SELECT * FROM problems
WHERE id = ?
], $id);
What is happening here?
- First, we create a lazy attribute and instruct it to connect to DBI. Notice that
we have access to the current app and all of its internals via the
$selfvariable. Notice also that the reason we define
dbhas a lazy attribute is that
configwill not yet be initialized. All modules are initialized upon the creation of the object instance, e.g. when we call
- Then, we override Kelp's "build" subroutine to create a single route
/read/:id, which is assigned to the subroutine
readin the current class.
- The
readsubroutine, takes
$id(the named placeholder from the path), and uses
$self->dbhto retrieve data.
A note about object managers: The above example uses Moose. It is entirely up to you to use Moose, another object manager, or no object manager at all. The above example will be just as successful if you used our own little Kelp::Base:
package MyApp;
use Kelp::Base 'Kelp';
attr dbi => sub {
Kelp uses a powerful and very flexible router. Traditionally, it is also light
and consists of less than 300 lines of code (comments included). You are
encouraged to read Kelp::Routes, but here are some key points. All examples
are assumed to be inside the "build" method and
$r is equal to
You can direct HTTP paths to subroutines in your classes or, you can use inline code.
$r->add( "/home", "home" ); # goes to sub home
$r->add( "/legal", "Legal::view" ); # goes to MyApp::Legal::view
$r->add( "/about", sub { "Content for about" }); # inline
Restrict HTTP methods
Make a route only catch a specific HTTP method:
$r->add( [ POST => '/update' ], "update_user" );
Named captures
Using regular expressions is so Perl. Sometimes, however, it gets a little overwhelming. Use named paths if you anticipate that you or someone else will ever want to maintain your code.
$r->add( "/update/:id", "update" );
# Later
sub update {
my ( $self, $id ) = @_;
# Do something with $id
$r->add( "/person/?name", sub {
my ( $self, $name ) = @_;
return "I am " . $name // "nobody";
This will handle
/person/ and
$r->add( '/*article/:id', 'Articles::view' );
This will handle
/bar/foo/baz/500 and send it to
with parameters
$article equal to
bar/foo/baz and
$id equal to 500.
Placeholder restrictions
Paths' named placeholders can be restricted by providing regular expressions.
$r->add( '/user/:id', {
check => { id => '\d+' },
to => "Users::get"
# Matches /user/1000, but not /user/abc
Placeholder defaults
This only applies to optional placeholders, or those prefixed with a question mark. If a default value is provided for any of them, it will be used in case the placeholder value is missing.
$r->add( '/:id/?other', defaults => { other => 'info' } );
# { id => 100, other => 'info' }
# GET /100/delete;
# { id => 100, other => 'delete' }
A bridge is a route that has to return a true value in order for the next route in line to be processed.
$r->add( '/users', { to => 'Users::auth', bridge => 1 } );
$r->add( '/users/:action' => 'Users::dispatch' );
See "BRIDGES" in Kelp::Routes for more information.
URL building
Each path can be given a name and later a URL can be built using that name and the necessary arguments.
$r->add( "/update/:id", { name => 'update', to => 'User::update' } );
# Later
my $url = $self->route->url('update', id => 1000); # /update/1000
Reblessing the app into a controller class
All of the examples here show routes which take an instance of the web application as a first parameter. This is true even if those routes live in another class. To rebless the app instance into the controller class instance, use the custom router class Kelp::Routes::Controller.
Step 1: Specify the custom router class in the config
# config.pl
modules_init => {
Routes => {
router => 'Controller'
Step 2: Create a main controller class
This class must inherit from Kelp.
# lib/MyApp/Controller.pm
package MyApp::Controller;
use Kelp::Base 'MyApp';
# Now $self is an instance of 'MyApp::Controller';
sub service_method {
my $self = shift;
Step 3: Create any number of controller classes
They all must inherit from your main controller class.
# lib/MyApp/Controller/Users.pm
package MyApp::Controller::Users;
use Kelp::Base 'MyApp::Controller';
# Now $self is an instance of 'MyApp::Controller::Users'
sub authenticate {
my $self = shift;
Quick development using Kelp::Less
For writing quick experimental web apps and to reduce the boiler plate, one
could use Kelp::Less. In this case all of the code can be put in
Look up the POD for
Kelp::Less for many examples, but to get you started off,
here is a quick one:
# app.psgi
use Kelp::Less;
get '/api/:user/?action' => sub {
my ( $self, $user, $action ) = @_;
my $json = {
success => \1,
user => $user,
action => $action // 'ask'
return $json;
Adding middleware
Kelp, being Plack-centric, will let you easily add middleware. There are three possible ways to add middleware to your application, and all three ways can be used separately or together.
Using the configuration
Adding middleware in your configuration is probably the easiest and best way for
you. This way you can load different middleware for each running mode, e.g.
Debug in development only.
Add middleware names to the
middleware array in your configuration file and
the corresponding initializing arguments in the
middleware_init hash:
# conf/development.pl
middleware => [qw/Session Debug/],
middleware_init => {
Session => { store => 'File' }
The middleware will be added in the order you specify in the
# app.psgi
use MyApp;
use Plack::Builder;
my $app = MyApp->new();
builder {
enable "Plack::Middleware::ContentLength";
By overriding the "run" subroutine in
Make sure you call
SUPER first, and then wrap new middleware around the
returned app.
# lib/MyApp.pm
sub run {
my $self = shift;
my $app = $self->SUPER::run(@_);
$app = Plack::Middleware::ContentLength->wrap($app);
return $app;
Note that any middleware defined in your config file will be added first.
Deploying a Kelp application is done the same way any other Plack application is deployed:
> plackup -E deployment -s Starman app.psgi
Kelp provides a test class called
Kelp::Test. It is object oriented, and all
methods return the
Kelp::Test object, so they can be chained together.
Testing is done by sending HTTP requests to an already built application and
analyzing the response. Therefore, each test usually begins with the
"request" in Kelp::Test method, which takes a single HTTP::Request parameter.
It sends the request to the web app and saves the response as an
HTTP::Response object.
# file t/test.t
use MyApp;
use Kelp::Test;
use Test::More;
use HTTP::Request::Common;
my $app = MyApp->new( mode => 'test' );
my $t = Kelp::Test->new( app => $app );
$t->request( GET '/path' )
->content_is("It works");
$t->request( POST '/api' )
->json_cmp({auth => 1});
What is happening here?
- First, we create an instance of the web application class, which we have
previously built and placed in the
lib/folder. We set the mode of the app to
test, so that file
conf/test.ploverrides the main configuration. The test configuration can contain anything you see fit. Perhaps you want to disable certain modules, or maybe you want to make DBI connect to a different database.
- Second, we create an instance of the
Kelp::Testclass and tell it that it will perform all tests using our
- At this point we are ready to send requests to the app via the
request method. It takes only one argument, an
HTTP::Request object. It is very convenient to use the HTTP::Request::Common
module here, because you can create common requests using abridged syntax,
POST, etc. The line
$t->request( GET '/path' )first creates a HTTP::Request GET object, and then passes it to the
- After we send the request, we can test the response using any of the
Test::modules, or via the methods provided by Kelp::Test. In the above example, we test if we got a code 200 back from
/pathand if the returned content was
It works.
Run the rest as usual, using
> prove -l t/test.t
Take a look at the Kelp::Test for details and more examples.
Building an HTTP response
Kelp contains an elegant module, called Kelp::Response, which extends
Plack::Response with several useful methods. Most methods return
after they do the required job.
For the sake of the examples below, let's assume that all of the code is located
inside a route definition.
Automatic content type
Your routes don't always have to set the
response object. You could just
return a simple scalar value or a reference to a hash, array or anything that
can be converted to JSON.
# Content-type automatically set to "text/html"
sub text_route {
return "There, there ...";
# Content-type automatically set to "application/json"
sub json_route {
return { error => 1, message => "Fail" };
Rendering text
# Render simple text
$self->res->text->render("It works!");
Rendering HTML
$self->res->html->render("
It works!
");
Custom content type
Return 404 or 500 errors
sub some_route {
my $self = shift;
if ($missing) {
return $self->res->render_404;
if ($broken) {
return $self->res->render_500;
sub hello {
my ( $self, $name ) = @_;
$self->res->template( 'hello.tt', { name => $name } );
The above example will render the contents of
hello.tt, and it will set the
content-type to
text/html. To set a different content-type, use
set_content_type or any of its aliases:
sub hello_txt {
my ( $self, $name ) = @_;
$self->res->text->template( 'hello_txt.tt', { name => $name } );
$self->set_header( "X-Framework", "Kelp" )->render( { success => \1 } );
Serving static files
If you want to serve static pages, you can use the Plack::Middleware::Static
middleware that comes with Plack. Here is an example configuration that serves
files in your
public folder (under the Kelp root folder) from URLs that
begin with
# conf/config.pl
middleware => [qw/Static/],
middleware_init => {
Static => {
path => qr{^/public/},
root => '.',
Uploading files
File uploads are handled by Kelp::Request, which inherits Plack::Request
and has its
uploads|Plack::Request/uploads property. The uploads property returns a
reference to a hash containing all uploads.
sub upload {
my $self = shift;
my $uploads = $self->req->uploads;
# Now $uploads is a hashref to all uploads
For Kelp::Less, then you can use the
req reserved word:
get '/upload' => sub {
my $uploads = req->uploads;
Delayed responses
To send a delayed response, have your route return a subroutine.
sub delayed {
my $self = shift;
return sub {
my $responder = shift;
$self->res->text->body("Better late than never.");
See the PSGI pod for more information and examples.
Pluggable modules
Kelp can be extended using custom modules. Each new module must be a subclass
of the
Kelp::Module namespace. Modules' job is to initialize and register new
methods into the web application class. The following is the full code of the
Kelp::Module::JSON for example:
package Kelp::Module::JSON;
use Kelp::Base 'Kelp::Module';
use JSON;
sub build {
my ( $self, %args ) = @_;
my $json = JSON->new;
$json->property( $_ => $args{$_} ) for keys %args;
$self->register( json => $json );
What is happening here?
- First we create a class
Kelp::Module::JSONwhich inherits
- Then, we override the
buildmethod (of
Kelp::Module), create a new JSON object and register it into the web application via the
If we instruct our web application to load the
JSON module, it will have a
new method
json which will be a link to the
JSON object initialized in the
See more examples and POD at Kelp::Module.
How to load modules using the config
There are two modules that are always loaded by each application instance.
Those are
Config and
Routes. The reason behind this is that each and every
application always needs a router and configuration.
All other modules must be loaded either using the "load_module" method, or
using the
modules key in the configuration. The default configuration already
loads these modules:
Logger and
JSON. Your configuration can
remove some and/or add others. The configuration key
modules_init may contain
hashes with initialization arguments. See Kelp::Module for configuration
Gets the current hostname.
sub some_route {
my $self = shift;
if ( $self->hostname eq 'prod-host' ) {
Sets or gets the current mode. The mode is important for the app to know what configuration file to merge into the main configuration. See Kelp::Module::Config for more information.
my $app = MyApp->new( mode => 'development' );
# conf/config.pl and conf/development.pl are merged with priority
# given to the second one.
Proide a custom package name to define the global ::Request object. Defaults to Kelp::Request.
Proide a custom package name to define the global ::Response object. Defaults to Kelp::Response.
Sets of gets the class of the configuration module to be loaded on startup. The
default value is
Config, which will cause the
Kelp::Module::Config to get
loaded. See the documentation for Kelp::Module::Config for more information
and for an example of how to create and use other config modules.
A hashref containing the names and instances of all loaded modules. For example,
if you have these two modules loaded: Template and JSON, then a dump of
loaded_modules hash will look like this:
Template => Kelp::Module::Template=HASH(0x208f6e8),
JSON => Kelp::Module::JSON=HASH(0x209d454)
This can come in handy if your module does more than just registering a new method into the application. Then, you can use its object instance to access that additional functionality.
Gets the current path of the application. That would be the path to
Gets or sets the name of the application. If not set, the name of the main class will be used.
my $app = MyApp->new( name => 'Twittar' );
Sets of gets the encoding charset of the app. It will be
UTF-8, if not set to
anything else. The charset could also be changed in the config files.
When a route dies, Kelp will by default display a short error message. Set this
attribute to a true value if you need to see a full stack trace of the error.
KELP_LONG_ERROR environment variable can also set this attribute.
This attribute only makes sense if called within a route definition. It will contain a reference to the current Kelp::Request instance.
sub some_route {
my $self = shift;
if ( $self->req->is_json ) {
This attribute only makes sense if called within a route definition. It will contain a reference to the current Kelp::Response instance.
sub some_route {
my $self = shift;
$self->res->json->render( { success => 1 } );
On its own, the
build method doesn't do anything. It is called by the
constructor, so it can be overridden to add route destinations and
package MyApp;
sub build {
my $self = shift;
my $r = $self->routes;
# Load some modules
# Add all route destinations
$r->add("/one", "one");
load_module($name, %options)
Used to load a module. All modules must be under the
$self->load_module("Redis", server => '127.0.0.1');
# Will look for and load Kelp::Module::Redis
Options for the module may be specified after its name, or in the
modules_init hash in the config. Precedence is given to the
inline options.
See Kelp::Module for more information on making and using modules.
This method is used to create the request object for each HTTP request. It returns an instance of the class defined in the request_obj attribute (defaults to Kelp::Request), initialized with the current request's environment. You can override this method to use a custom request module if you need to do something interesting. Though there is a provided attribute that can be used to overide the class of the object used.
package MyApp;
use MyApp::Request;
sub build_request {
my ( $self, $env ) = @_;
return MyApp::Request->new( app => $app, env => $env );
# Now each request will be handled by MyApp::Request
Override this method to modify the response object just before it gets finalized.
package MyApp;
sub before_finalize {
my $self = shift;
$self->res->set_header("X-App-Name", "MyApp");
The above is an example of how to insert a custom header into the response of every route.
This method creates the response object, e.g. what an HTTP request will return. By default the object created is Kelp::Response though this can be overwritten via the respone_obj attribute. Much like "build_request", the response can also be overridden to use a custom response object if you need something completely custom.
This method builds and returns the PSGI app. You can override it in order to include middleware. See "Adding middleware" for an example.
A shortcut to
sub some_route {
my $self = shift;
if ( $self->param('age') > 18 ) {
See Kelp::Request for more information and examples.
A shortcut to
$self->req->session. Take a look at "session" in Kelp::Request
for more information and examples.
Provides safe access to
$self->req->stash. When called without
arguments, it will return the stash hash. If called with a single argument, it
will return the value of the corresponding key in the stash.
See "stash" in Kelp::Request for more information and examples.
Provides safe access to
$self->req->named. When called without
arguments, it will return the named hash. If called with a single argument, it
will return the value of the corresponding key in the named hash.
See "named" in Kelp::Request for more information and examples.
A safe shortcut to
$self->routes->url. Builds a URL from path and
sub build {
my $self = shift;
$self->routes->add("/:name/:id", { name => 'name', to => sub {
sub check {
my $self = shift;
my $url_for_name = $self->url_for('name', name => 'jake', id => 1003);
$self->res->redirect_to( $url_for_name );
- GitHub: https://github.com/naturalist/kelp
- Mailing list: https://groups.google.com/forum/?fromgroups#!forum/perl-kelp
Stefan Geneshky - minimal <at> cpan.org
In no particular order:
Julio Fraire
Maurice Aubrey
David Steinbrunner
Gurunandan Bhat
Ruslan Zakirov
Christian Froemmel (senfomat)
Ivan Baidakou (basiliscos)
Konstantin Yakunin (twinhooker)
Benjamin Hengst (notbenh)
Nikolay Mishin (@mishin)
This module and all the modules in this package are governed by the same license as Perl itself.


text:
Your browser does not support iframes.
Editor's Note: Below is a guest editorial in response to a Dec. 25 editorial by Jason Bailey with the Kentucky Center for Economic Policy.
It's been said that we all have a story to tell. Well, my story is changing, and, in a few days, I will begin a new chapter in my life.
After nearly 12 years at the CKNJ, tomorrow will be my last day here.
The decision to accept another job in the community wasn't an easy one for me. The CKNJ has been part of my life since the day I was born.
It's that time of year again, when most of us will make a New Year's resolution or two, promising ourselves that we're going to do this, or stop doing that, when the new year begins.
Usually, we look at it with excitement and determination. The first week, maybe even the first month, we're on the path to our goal. After that, many resolutions sadly fall short, and we're back into our old ways.
From triumphs to tragedies, Taylor Countians made headlines in 2014.
While compiling the News-Journal's annual Year In Review stories, CKNJ staff members have spent time reliving the past year.
And what a year it's been. We read about city and county business, the economy, retirements and hires, political changes, crime, death and much more.
Read about the Top 10 stories of 2014 on today's front page. The year in sports will be in Thursday's issue.
I would like to thank all the following for your help and support in any way for the 50th anniversary Vietnam veterans welcome home.
First and foremost, a special thank you to each of the Vietnam veterans that came out for the parade.
Next, I would like to thank the committee, State Rep. John "Bam" Carney, R-Campbellsville, Taylor County Judge/Executive Eddie Rogers, Campbellsville Mayor Tony Young, Charlie Shaw, Larry Smith and Calen McKinney.
By the time this newspaper hits the stands, those neatly wrapped packages will have been opened and I'm sure one of my cats will have eaten a bit of the paper. Seems like a lot of work just to rip it open in the end.
I finished my Christmas shopping last weekend. Stores were crammed with shoppers, so it seems everyone else had the same idea.
Most of my shopping this year was done online, but I had to pick up a few items in Elizabethtown.
Next year, I will have been in journalism for five years, but I'm still in unfamiliar terrain with my newest assignment as a staff writer for the Central Kentucky News-Journal.
When I first enrolled at Lindsey Wilson College, I only knew one thing about what I wanted to do: it had to be in sports. It was the one thing that I had been passionate about for my whole life.
Copyright © 2019
The Central Kentucky News-Journal is your source for local news, sports, events, and information in Campbellsville, KY and the surrounding area.

subset: commoncrawl


text:
FAYETTEVILLE — Arkansas recognized the possibility as soon as the National Invitation Tournament bracket was revealed last Sunday night.
They didn't want to talk about it then. There was a first-round game with Indiana State to take care of first. But sophomore Anthlon Bell made it clear a rematch with California — which beat the Razorbacks 85-78 in the Maui Invitational — was in Arkansas' mind as it began postseason play last week.
"Of course you want another shot," Bell said. "It's just a natural instinct. But we didn't want to look ahead. So we've got them now. So we're ready to play."
Arkansas (22-11) will get its chance to make amends for the early-season loss to the Golden Bears (20-13) at Cal's Haas Pavilion in Berkeley, Calif., tonight.
This time, the season will be at stake for both teams. The winner advances to play a third-round game against either Southern Methodist or LSU, moving closer to a spot in the NIT Final Four in New York City. The Razorbacks will try to take the next step by winning their first NIT road game on Cal's home court.
"We want to get revenge," Bell said.
Arkansas will need a better performance on the boards to accomplish it.
The Golden Bears – who were led by big men David Kravish and Richard Solomon — opened the Maui Invitational last November by outrebounding Arkansas 48-32. They collected 19 offensive rebounds, outscored the Razorbacks 24-10 on second-chance points and handed Arkansas its first loss of the season.
Kravish had 19 points and 15 rebounds in the win. Solomon added 11 points and 7 rebounds. Meanwhile, Arkansas freshman Bobby Portis had 5 points and 1 rebound, enduring his first frustrating performance as a Razorback.
Portis said he sat on the beach alone after the loss. He also met with Anderson one-on-one in hopes of finding ways to improve after the difficult game.
"They did a really good job of dominating the boards, and I thought that was the difference," Arkansas coach Mike Anderson said. "They attacked us on the glass, got to the free-throw line and got some easy buckets, and got second and third efforts. We have to negate that by putting body on body."
Portis and the Hogs will see a significant change to Cal's lineup in the rematch.
Solomon, who is averaging 11 points a game and a team-high 10.2 rebounds, won't play for the second straight game because of a concussion. The Golden Bears didn't struggle in their first game without the Pac-12's top rebound — a 77-64 win against Utah Valley — but faces a bigger test in the Arkansas frontcourt tonight.
Portis, who said after the Indiana State win he was eager for the second chance at Cal, will get an opportunity to show his progress since November. So will freshman Moses Kingsley, who didn't play in the first meeting, but has been key off the bench.
"Our guys are a little bit more seasoned," Anderson said. "They have got a little more experience. You take that game and you build on it with the nonconference schedule and then go through with one of the more athletic leagues in the country such as the SEC. So (Portis) has been against (LSU's Johnny O'Bryant). He has been against the kids at Kentucky. He has played against some pretty good players.
"So hopefully that experience will help us as we move on into this tournament."
But Anderson stressed the task can't fall on Portis and the frontcourt alone.
It's no secret Arkansas' rebounding — from all positions — has been an issue most of the season. The Razorbacks have typically enjoyed success when they make shots, get out in transition and harass opponents with their pressure. But rebounding woes have cost them at times, even when they were successful in other areas.
So guard Ky Madden said the Razorbacks can't afford another bad performance.
"We've got to rebound together as a team," Madden said. "Us guards don't put it on the bigs. We've got to go down there and help those guys rebound."
Bell showed it can be done in the backcourt against Indiana State win, collecting a career-high 6 rebounds. The Hogs dominated the smaller Sycamores throughout the first-round win, finishing with one of its biggest advantages of the year (46-32).
There's no doubt Arkansas faces a much bigger test in its second-round game.
But the Hogs are determined to take advantage of their second chance at Cal.
"We have to do our jobs and we didn't do it very well," Anderson said looking back at the November loss. "We have some things we have got to get better at and this game will give us an opportunity. We played Indiana State and did what we are supposed to do in terms of rebounding the basketball. Now let's see if there is some carryover to get ready to play a much better basketball team."


text:
Saved Search Name:
HouseTrack™ Email Updates - email me when new listings match this saved search.
Save Search
or cancel
Meet Our Owner, Billy Studstill
Victory Realty
4322 Harding Pike Ste 417, PMB 79
Nashville, TN 37205
Office: 615-288-4151
Fax: 615-288-4152
Owner: 615-497-6222
Email Us
To pay your rent click pay now
Home | Our Listings | Open Houses | Lease / Rentals | Lots & Land | Commercial Listings | New Construction | All Active Listings | Mortgage Rates | Buyers & Sellers | Newsletter | Real Estate News | Community Info / Links | Local Phone Numbers | Commercial Real Estate | About Us | See Our Office | Office Documents | Search MLS | Advanced Search | Map Search | Foreclosures | Our Agents
Privacy Policy |
© 2019 RealTracs Solutions. All rights reserved. The data relating to real estate for sale on this website comes in part from the Internet Data Exchange Program of RealTracs Solutions. Real estate listings held by brokerage firms other than Victory Realty are marked with the IDX logo and detailed information about them includes the name of the listing broker. The information provided is for the consumer's personal, non-commercial use and may not be used for any purpose other than to identify prospective properties that the consumer may be interested in purchasing. Information is believed to be accurate, but not guaranteed. Listing broker has attempted to offer accurate data, but buyers are advised to confirm all items. Information last updated on 2019-09-15


text:
|Join hundreds of InfoSec professionals at our upcoming
[Global AppSec DC, September 9-13] and [Global AppSec Amsterdam, September 23-27]
Undefined Behavior
This is a Vulnerability. To view all vulnerabilities, please see the Vulnerability Category page.
Last revision (mm/dd/yy): 05/27/2009
Vulnerabilities Table of Contents
The behavior of this function is undefined unless its control parameter is set to a specific value.
The Linux Standard Base Specification 2.0.1 for libc places constraints on the arguments to some internal functions [1]. If the constraints are not met, the behavior of the functions is not defined.
It is unusual for this function to be called directly. It is almost always invoked through a macro defined in a system header file, and the macro ensures that the following constraints are met:
The value 1 must be passed to the third parameter (the version number) of the following file system function:
The value 2 must be passed to the third parameter (the group argument) of the following wide character string functions:
__wcstod_internal __wcstof_internal __wcstol_internal __wcstold_internal __wcstoul_internal
The value 3 must be passed as the first parameter (the version number) of the following file system functions:
__xstat __lxstat __fxstat __xstat64 __lxstat64 __fxstat64
Risk Factors
Short example name
- A short example description, small picture, or sample code with links
Short example name
- A short example description, small picture, or sample code with links
Related Attacks
Related Vulnerabilities
Related Controls
Related Technical Impacts
- [1] The Linux Standard Base Specification 2.0.1, Interfaces Definitions for libc. http://www.linuxbase.org/spec/refspecs/LSB_1.2.0/gLSB/libcman.html.


text:
CHAPEL HILL � North Carolina State entered the Smith Center with a supposed size advantage against North Carolina�s new lineup.
That edge evaporated with the futile play of C.J. Leslie in what turned out to be one of the worst games of the season for the Wolfpack junior forward.
Leslie committed five turnovers in the first eight minutes of N.C. State�s 76-65 defeat at the hands of North Carolina. He had another turnover in the first half and finished with six points, matching his season-low in league play this season.
Leslie was unavailable for comment after the game, but N.C. State coach Mark Gottfried had enough to say about the lack of impact for the Atlantic Coast Conference preseason Player of the Year.
�I�m not concerned, but he�s a great player and great players gotta step up and play. Period,� Gottfried said. �I love him as much as anybody, but when you�re a good player � then you have to play better.�
Scoring wasn�t the only part of Leslie�s game that was lacking.
The 6-foot-9 forward also had just four rebounds. Fellow frontcourt starters Richard Howell (13 points, 17 rebounds) and T.J. Warren (10 points, 10 rebounds) fared much better against the Tar Heels� undersized lineup.
�Richard gets 17 rebounds (Saturday). Are we expecting Richard to get 30 rebounds? Holy mackerel, somebody else has to rebound the ball,� Gottfried said.
North Carolina used 6-5 guard P.J. Hairston to guard Leslie for most of the game. While Leslie had a four-inch height advantage, Hairston (220 pounds) held the edge in the bulk department against Leslie�s 200-pound frame.
�I tried to get him off the block and make him catch the ball toward the 3-point line,� Hairston said. �Then that way he had to create himself if he wanted a shot.�
Hairston guessed what the Wolfpack players and coaches told Leslie about the matchup, but had his own take on the matter.
�I�m pretty sure they told him it was a mismatch. I didn�t really see a mismatch at all,� Hairston said. �It was just a matter of me staying in front of him and me being able to contain him and keep him from getting to the rim.�
Maybe Saturday�s disappearing act by Leslie was more surprising because he�s had such a prolonged stretch of superb play.
Entering the Saturday�s game, the junior had reached double figure-scoring in 21 of his last 22 games. He leads N.C. State in scoring (15.7 points per game) and had averaged more than 10 rebounds in his last seven games.
Whatever the reason, Leslie relapsed � if for one game or an extended period, who knows � to levels of ineptitude seldom seen this season.
And for Gottfried, whose team now sits at 8-6 and fifth place in the Atlantic Coast Conference, he made it clear that the Wolfpack can�t afford many performances like that in the future.
�Calvin has to step up, period.�


text:
Correct, Travel Expert!
Japan claims a total of 796 Michelin-starred restaurants, compared to France's 609. This includes 656 one-star restaurants, 113 two-star, and 27 three-star. No matter how you compare them, Japan is clearly the fine dining capital of the world. Should you find yourself in Kyoto, you can try the world's most expensive restaurant, Kitcho Arashiyama. At an average of $600 USD per person, Kitcho offers expertly crafted meals made from the finest ingredients.
If fine dining is one of the reasons you love to travel, then take a look at our Asia voyages. Wherever you go, you'll be able to find some of the best food in the world.


text:
Equity LifeStyle Properties (ELS) is the leading operator of Manufactured Home Communities, RV Resorts, and Campgrounds in North America. ELS consists of nearly 400 resorts in 32 states and British Columbia and a team of over 4,000 employees. Our beautiful communities and parks are located in the most desirable regions of the country and we offer a variety of homes and camping options to meet a wide range of customers' needs. Our guests and residents enjoy rich vacation and lifestyle experiences in our various resorts.
We are seeking qualified candidates for the position of Housekeeper at our property in (Job Location). The successful candidates will conduct and participate in the regular housekeeping of the resort for the betterment of the guests' experience.
Job Duties include:
Requirements include:
In return for your excellent skills and abilities, you may be eligible for our benefits package including: medical, dental, and vision plans, a generous 401k employer match, and paid vacations, holidays, and sick time.
We invite you to visit our web site at www.equitylifestyleproperties.com for additional information regarding our exceptional resort communities.
As an Equal Opportunity Employer, we welcome and thank all applicants.


text:
Harness the elements of artistic expression to create emotive drawings that captivate the viewer!
Learn how to use composition, placement and movement to create expressive figure drawings as award-winning artist Richard T. Scott guides you through the design principles behind some of history's most celebrated masterworks. Transform a simple line into an expression of weight, shadow and gravity, and create a compelling visual narrative using gesture, rhythm and repetition. Use triangulation to easily and accurately map proportions as you create a lifelike contour drawing of a plaster cast. Then, use charcoal and an eraser for a reductive cast rendering with atmospheric depth and sculptural form. Learn the visual language of mood and emotion, and translate your expressive intent into a striking work of art!
If you're not delighted with your Bluprint experience, we'll make it right or give you a full refund.


text:
Pope is MWC Pitcher of the Week
Grinnell College's Ben Pope, a 6-3, 175-pound sophomore from Maryville, Tenn. (Alcoa HS), has been named the Midwest Conference Pitcher of the Week.
Through the team's first 11 games, Pope had a spotless 0.00 earned average in four appearances and 13 1/3 innings pitched. He had struck out six batters and owned a 1-0 record in a season that has included two starts, one a complete game, and two relief appearances.
Nate Paul of Ripon was named Performer of the Week.


text:
Daiken Medical Co Ltd (7775) - Financial and Strategic SWOT Analysis Review
Market Research Report Summary
Daiken Medical Co Ltd (7775) - Financial and Strategic SWOT Analysis Review report is published on June 14, 2019 and has 25 pages in it. This market research report provides information about Company Reports (Pharma & Healthcare), Pharma & Healthcare industry. It covers Japan regional market data and forecasts. It is priced starting at USD 300.00 for Single User License (PDF) which allows one person to use this report.
Please read the description and table of contents of this research report given below to check whether it meets your research requirements. If not, then please do not hesitate to contact us using "Report Enquiry" form given below. We can customize this research report or a suggest a brand new custom market research report to match your requirements.


text:
We've detected a problem with your browser settings.
in your browser settings to successfully view our site.
Service Area : Oklahoma Change
Sign In | Register
To serve you better please select from the list of service areas below to see relevant CenterPoint Energy information.
Why wait to save? Check out this energy-saving advice so you can begin saving energy and money for your business today.


text:
Comment posted on Palm Islands in Dubai by Accommodation Korcula Lumbarda
Very cool blog i like theme you used.
powered by SEO Super Comments
Hi, this is a comment.
To delete a comment, just log in and view the post's comments. There you will have the option to edit or delete them.
I have started saving my money..:-D
Dear admin, thnx for sharing this blog post. I found it wonderful. Best regards, Victoria…
How about…Ah… I dont' remember what I want to say…
Worth reading post, I want to read your posts when it is posted, how can I do that? Thank you very much!
Good post!As i was passing by here and i read your post.
Thank you very much for this great post; this is the kind of post that keeps me going through the day. I've been looking around for your blog after I heard about them from a mate and was thrilled when I was able to find it after looking for some time. Being an avid blogger, I'm pleased to see others taking initiative and contributing to the community. I just wanted to comment to show my appreciation for your work as it's very encouraging, and many writers do not get the credit they deserve. I'm sure I'll be back and will send some of my friends.
Here's a comment. Great advice Thanks
Noul Suzuki Grand Vitara
Its pleasant here. good research. I\\\'ve been searched this kind of information for a time. thanks
I recently decided to create a simple movie about this, I would be pleased if you could possibly take a second to check it and possibly leave a comment about what you think, I left the video url in the "website" field, hopefully you can get to it, thank you greatly
I'm currently blogging for a (poor) living for someone else… but I like it. You've inspired me to keep doing it, and look to doing it for myself soon
I just needed to say that I found your blog via Goolge and I am glad I did. Keep up the very good work and I will make certain to bookmark you for when I have far more free time away from the books. Thanks!
Hello webmaster I like your post ….
Grazie nello scopo di questo blog , il dispositivo argomento mi ha veramente sensibilmente interessato.
Merci pour ce site, ce sujet m'a réellement beaucoup accroché. Grace à cette colonne j'ai beaucoup appris des nouveaux élements que j'ignorais.
We are so greatful that those miners in Chile are on their way out of the mine. How long were they trapped, sixty seven days? Truly a wonder they are alive.
Very cool blog i like theme you used.
Wo …Nice Blog, Nice tips, Great article!, I have recently started a blog, the information you provide on this site has helped me tremendously. Thank you for all of your time & work.
I really dont know, but that Knoxville power washing company is all over the place in this town.
I've recently started a blog, the information you provide on this site has helped me tremendously. Thank you for all of your time and work.
I enjoyed reading & I must say that I was very impressed with your writing skills. Keep up the good work it's very refreshing to see someone like you
Dude, you you must be a writer. Your article is really amazing. You should do it professionaly


text:
History of Godiva
Immerse yourself in Godiva's rich history and learn how exquisite craftmanship and popular legend blended to make the story of Godiva truly unique.
Beginnings in Brussels
Over 75 years ago, Godiva began as a small praline-making business run by the Draps family out of their home in Brussels, Belgium. The company was called Chocolaterie Draps until Joseph Draps decided he wanted to produce a more exclusive chocolate and open up a chocolate shop. One of the first Godiva shops still stands in the beautiful, historic Grand Place in Brussels.
What's in a name?
Draps selected the name Godiva for his chocolate company. His inspiration came from the well-known Saxon legend of Lady Godiva who rode unclothed through the streets of Coventry to entreat her husband, Leofric the Dane, to lower taxes. Her courage prevailed, and in Europe she was celebrated in countless works of art. Little did Joseph Draps realize that over time his chocolate would become as legendary as the lady herself.
Coming to America
In 1966, the Draps family came into contact with the American company Campbell Soup Company, which acquired one-third of a stake in Godiva that year. Thus, the American operation of the company was the first to introduce premium chocolate to the American palate. By 1968, Godiva Chocolatier, Inc., had begun domestic production, using the exclusive Belgian recipes.
Godiva today
The company has continued to grow and expand over the years. The U.S. plant in Reading, PA, now produces the same amount of chocolate for the U.S. market as the Belgian plant produces for the rest of the world. There are now over 270 Retail locations as well as over 2000 Wholesale doors. In addition to retail and production, Godiva runs a direct business ( www.godiva.com and 1-800-9-Godiva) and a wholesale merchandising sales force across the country. Godiva's world headquarters are located in Midtown Manhattan.


text:
I was listening to NPR's story on Ann Romney. She was talking about her and Mitt's early lives. Her role was to stay at home with the kids and be the all-American housewife. So much so, a friend said, that they avoided hiring nannies and house help because they believed in her important role in the family. It was quite inspiring to hear about a young couple living out their family values.
The most inspiring line however was Ann's comment about their early struggles. They were so poor, she said, that they actually had to sell some of their stock to make ends meet. How inspiring is that?
I felt privileged coming out to Colorado for graduate school having had a father who could pay for my college education. I knew I was one of the few in our country to have such a gift. The next $60,000 in student loans for graduate school, however, was on me. As a young married couple, I now realize that I should have sold some of my stock like most Americans do to help us get started! But wait, I didn't have any stock to sell. Does that mean that my experience was sub-par compared to most Americans?
If the Romneys want to identify with middle-class and lower-class voters, they may want to stay away from discussions of wealth and privilege.


text:
exhibit-E is the leading provider of websites for the art world.
New: Joseph Bellows Gallery
Joseph Bellows Gallery
Joseph Bellows Gallery was established in 1998. The gallery maintains a significant inventory of vintage and contemporary photographs. Check out the gallery's new website.
Pictured: Steve Banks, "Nitro, Drag Racing In Southern California", 1964-1966, gelatin silver print.
New: Night Gallery
Night Gallery
The new Night Gallery website reflects the gallery's artist-driven program, which was the initial impulse for opening in 2010, and continues to be central to its identity as it has expanded internationally.
Pictured: Mira Dancy, Installation view, "Cardinal Red", 2018
New: Independent
Independent is a unique model for an art fair, more aligned with a curated forum or curated platform. When they asked exhibit-E to implement a new look for the fair, with a new website and new graphic standards, of course we went all out!
Manage Your Inventory
galleryManager is the simplest way to manage your artworks and contacts online. Accessible from any computer or mobile device, galleryManager brings the future of inventory and collections management to the art world today.
New From exhibit-E
Template Sites
Sophisticated and functionally robust, our new "responsive design" collageTemplate™ website's are built on our new Collage platform—designed for leaner budgets and the fast pace of the art world.
Our Book: The Art World and the World Wide Web
212 page publication, with essays on the World Wide Web and the Art World; Mobile Responsive Design websites; Web-Based Gallery Management; and interviews with gallerists, and artists. Published by exhibit-E ©2014.
The Studio
exhibit-E is a unique design and technology firm that has taken a leadership role in providing websites for the art world. exhibit-E websites are designed for in-house maintenance, so your gallery staff can make all on-going content revisions to all areas of your website without having to understand HTML. All of our clients experience exhibit-E as freedom. Freedom to make changes, revisions and additions anytime. There are no limitations to how much information you can put into your exhibit-E website. With exhibit-E you control time and cost. With an infrastructure that is easy to navigate and appropriate to the day-to-day business needs of galleries, exhibit-E is the perfect complement to your gallery promotional objectives and daily administrative needs. All this with a design that can match your existing gallery identity—or we can create a custom design to your specifications.
The studio at 601 West 26th Street, New York, NY in the heart of the Chelsea art district
Our Work
New York
Acquavella Galleries
California / Florida / New York
New York / London
Ariadne Galleries
New York
Arman Studio
San Francisco
New York
Marianne Boesky Gallery
New York
Tanya Bonakdar Gallery
Bronx, New York
The Bronx Museum of the Arts
New York
Peter Cain
Cheim & Read
New York
James Cohan
Washington DC
New York
Danziger Gallery
New York
The Willem de Kooning Foundation
New York
DeLorenzo Gallery
Galerie Forsblom
New York
Friedman Benda
Zurich / St. Moritz / Zug
Galerie Gmurzynska
Chicago/New York
Richard Gray Gallery
Dubai, UAE
Green Art Gallery
New York
Howard Greenberg Gallery
New York
Greene Naftali
New York
Hall Art Foundation
New York
Hammer Galleries
New York
Helen Frankenthaler Foundation
New York / Geneva
Marc Jancou
New York
Ray Johnson Estate
Los Angeles
Kayne Griffin Corcoran
Kerlin Gallery
Mexico City
New York
David LaChapelle Studio
New York
Lehmann Maupin
New York
Galerie Lelong
Locks Gallery
Galeria Javier Lopez
New York
Luhring Augustine
New York
Robert Mapplethorpe Foundation
San Francisco
Anthony Meier Fine Arts
New York
Meislin Projects
New York
Metro Pictures
New York
Mnuchin Gallery
New York
Nahmad Contemporary
New York
David Nolan Gallery
Pleasantville, New York
Gordon Parks Foundation
New York
Petzel Gallery
Los Angeles
Regen Projects
New York
Andrea Rosen Gallery
New York
Conner Rosencranz
New York
Clifford Ross
Santa Monica, CA
Leslie Sacks Gallery
New York / St. Moritz
Vito Schnabel
New York
Hiroshi Senju
New York
Bruce Silverstein
New York
Tony Smith
New York
Hollis Taggart
New York
Sperone Westwater
New York
Anne Truitt
New York
Two Palms
Other Notable Sites
New York
Maison Gerard
New York
Hostler Burrows
New York
Roman Thomas
Singapore / Shanghai / New York
SCDA Architects
Oakville, California
Harlan Estate
St. Helena, California
The Restaurant at Meadowood
St. Helena, California
The Napa Valley Reserve
Andalucía, Spain
Finca Cortesin
St. Helena, California
Meadowood Napa Valley
A gallery's website should provide a host of capabilities and content designed to strengthen the bond between the art-loving public and gallery, including utilizing social media activities to create bigger networks and channel the gallery's influence to a broader audience.
Case Studies
Case Study
Sperone Westwater
The gallery opened its first space at 142 Greene Street, SoHo, in 1975. In September 2010, Sperone Westwater inaugurated a new Foster + Partners designed building at 257 Bowery in New York.
Case Study
Richard Prince
Unique to this website, Prince has included glimpses of his own extensive collection of art, books and stuff in general, lending the site the air of a work in progress.
Case Study
Matthew Marks Gallery
When the gallery approached exhibit-E about creating a new website, they had firm views about the kind of user experience they were after.
Case Study
With over 15 locations, Gagosian Gallery is unique among its peers in terms of scale, history, and complexity. Translating this online, and presenting the true depths of its content and archives, required a high level of website design expertise.
What We Do
Web Design
Websites for the art world
We believe great design has lasting value and builds equity over time. With over 25 years of experience in the art world, exhibit-E has established unique expertise, which has been a great advantage for successfully filtering client 'need' into intelligent design. Guided by a rigorous pursuit of design excellence, our goal is to integrate two great impulses: the impulse to make things work and the impulse to make them beautiful.
Best Practices
Our development team brings a vast depth of experience to all aspects of web-application architecture and development, and forward thinking architecture practices. Our experience working with galleries, dealers, collectors and artists for over 16 years, has given us insider knowledge of what galleries expect from a web development partner, what galleries need, and how they use their website. Rational and precise development processes help us apply that knowledge back into the product.
Secure and redundant
Hosting is essential to our on-going commitment to delivering not only the best designed websites, but the most reliable and secure websites. Client databases are encrypted and backed up in multiple locations to prevent corruption and data-loss. We provide secure login for all our website administration and products, and our hosting includes access to our exhibit-E software, which allows our clients to update and maintain their website in-house from anywhere online.
Tools and Features
The business of art has gone digital and websites are at the center of every gallery's online strategy. From Mobile Responsive Design websites, e-nnouncements, and custom e-Newsletters, e-commerce, Search Engine Optimization, Private Client Rooms, and Google Analytics Site Traffic Reports, we have the tools to support the galleries online strategy and keep our clients future facing. Don't hesitate to contact us to see how we can help you.
Tel (212) 625-9910
[email protected]
Inventory Management
Web-based gallery Inventory management
galleryManager™ by exhibit-E developed from the idea that we could reduce the headaches that we found many of our clients experienced with existing gallery inventory management software. Designed to replace those systems, galleryManager is a web-based solution for tracking everything from your contacts and transactions to artwork, invoices and purchase orders. Checking the ownership history or provenance. Instantly updating appraisals and cataloguing. Knowing the cost of photographing, framing, hanging, restoration, shipping and insurance from anywhere online. And, galleryManager integrates with our websites so you can push artworks to your website seamlessly, and manage both systems from the same dashboard. For more information don't hesitate to contact us or visit our website:
Tel (212) 625-9910
Tools and Templates
Sophisticated and functionally robust, our new Collage template websites are designed for leaner budgets and the fast pace of the art world. Now we can design and launch a great looking gallery website quickly and cost effectively. Also our websites integrate with galleryManager, our web based inventory management system, so you can manage both systems from the same dashboard. Here are a few samples of exhibit-E's new Collage template websites:
Elizabeth Dee
Morgan Lehman Gallery
Allan Stone Projects
Diana Al-Hadid
Printed Matter
Publications and Systems Design for galleries
When tasked with creating a gallery identity system concurrent with a gallery website, we work with our sister firm, Dan Miller Design. DMD has over 25 years experience in the art world creating award winning catalogs, books and broad-based design solutions for a range of clients including Gagosian Gallery, Marian Goodman Gallery, The Brant Foundation, Metro Pictures, Paul Kasmin Gallery to name a few. Don't hesitate to contact DMD for print design estimates or to further discuss your needs.
Tel (212) 966-4064
[email protected]
The Art World and the World Wide Web
Written for art world insiders, this book is meant to be a guide to using the World Wide Web as an essential tool for doing business in the global art market. It is a 212 page publication, with essays on the World Wide Web and the Art World; Mobile Responsive Design websites, and the Tablet; Web-Based Gallery Management; and interviews with gallerists, and artists. Published by exhibit-E ©2014.
Buy Now
Click to view online version


text:
- Who We Are
- What's ON
- The Waterfront
- Learning
- Support Us
What's On Calendar
February 27 – March 4, 2012
LECTURE / Mieke Bal on Stan Douglas
Wednesday, February 29, 2012
Bal will speak on Stan Douglass work (currently on view at The Power Plant), examining how he practices a re-examination of cultural history that actualizes the relevance today of both media and stories the one through the other.
SUNDAY SCENE / Leila Pourtavaf
Sunday, March 4, 2012
Leila Pourtavaf is a doctoral candidate in History at the University of Toronto. Her writing has appeared in C Magazine, Fuse and No More Potlucks.
LIVE / Jonathan VanDyke: Obstructed View
Sunday, March 4, 2012
3:00pm 6:00pm
A durational performance for two figures by New York-based artist Jonathan VanDyke, part of his contribution to the exhibition Coming After.
For details, inquire at the Info Desk or call 416 973 4000.


text:
Buylandingpagedesign launch special discount offer
Buy any landing page design you want at flat 20% discounted price from https://www.buylandingpagedesign.com/
Coupon code : BLPLA20
Offer valid till 25th March, 2014, so hurry up!
* You can use your existing log in details of semanticlp.com on buylandingpagedesign.com and take the offer and if you are a new customer then please create a new account to take the offer.
1000+ design for your marketing campaign
Below are some most decent landing page design templates for your business conversion in your marketing campaign. We have 1000+ converting landing page design of various category like auto insurance landing pages, debt landing pages, credit repair landing pages, weight loss landing pages, make money online landing pages, work from home landing pages, lead capture landing pages, male enhancement landing pages, e-cigarette landing pages, government grants landing pages, mortgage landing pages, payday loan landing pages, video landing pages etc.
Anti snoring landing page design templates
Boost sale of your anti snoring product by capturing quality lead for your anti snoring product through our responsive anti snoring lead capture landing page design templates. Example of creative and flat anti snoring landing page design below –
Auto insurance lead capture landing pages
Capture quality leads for your auto insurance business with our clean, creative and effective auto insurance lead capture landing page design templates. Example of clean responsive auto insurance landing page design templates below:


text:
This thread is a continuation of the January 26 post, "How we know a guide on counseling children about Sandy Hook predated the massacre."
For the back story of this, see "Guide on how to talk to children about Sandy Hook 4 days BEFORE massacre," Jan. 16, 2013.
Peter, the author of "How we know a guide….," continuea to make his case with "Exhibits" on some highly technical aspects of "How we know…." I will be adding to this post, so please check back for updated material.
If you write a comment, please refer to the particular Exhibit to which you're addressing, as in "re. Exhibit #1" or "re. Exhibit #2."
Peter will present his case as a prosecutor at a criminal trial. Let's call it "The People v. Crisis Management Institute-Arlington Red Devils." Below is his "Opening Statement." I will be adding his Exhibits, as he writes them.
The People v. Crisis Management Institute-Arlington Red Devils
So that I can place all the information I have for you to consider here in an orderly fashion I will present it in the fashion of a prosecutor in a criminal trial.
At the start of a Criminal Trial the Prosecutor makes a statement explaining what the Crime consists of, who he thinks is the criminal, and outlines how he intends to provide evidence showing that his case is accurate.
On December 14, 2012 there was a School Shooting Incident at the Sandy Hook School. Some days after the actual shootings, Documents 1, 2 & 3 in "How we know a guide on counseling children about Sandy Hook predated the massacre" were found on the Internet. We will examine all 3 very closely to determine how they came to exist.
Documents 1 & 2 were found in Google's Webcache, a place that records all public documents Google finds on the Internet.
Document 3 was found using the Google search engine.
The published dates displayed on all three documents predate the events of Dec 14, 2012.
Document 1 shows Dec 10, 2012, Documents 2 & 3 show December 13, 2012.
Our task here is to examine and present all the evidence available to us in order to determine whether the documents originated before or after Dec 14th, 2012.
The process will have 3 stages.
1. Determine if there is enough evidence to proceed with this investigation. If there is not enough evidence stop here. If there is enough evidence go on to stage 2.
2. Determine the date the documents were created. If the document are shown to originate after the events stop here. If the documents are shown to predate the actual event proceed to Stage 3
3. Determine who is responsible for creating Documents 1, 2 & 3 as they appear within Google's servers.
If it is proven the documents did originate before Dec 14, 2012, it means that someone had foreknowledge and it was likely a massive preplanned event rather than a random shooting caused by a deranged individual.
Determining who falsified the documents will point to the guilty party by determining who had the access required to change them and also who had a motive to change them.
EXHIBIT 1: Who Had Access?
The Arlington Schools, not school Website functions within computer software called SpireCMS, the developer of this software and most likely the designer of the website is present here as commenter Jeremy.
I owe him an apology for something I had written in public on this thread. [Note from Eowyn: I've since deleted Peter's accusatory comments about Jeremy, and have apologized to Jeremy.] I said what I said in public because my communication with the staff here is limited. I am only a guest here as Jeremy is. I am ALWAYS open to changing my opinion if I discover I have been wrong.
Jeremy could provide much valuable information about the site in question if he chooses to do so. I hope he does.
I am going to place many urls / weblinks in this thread which will allow you to go to the actual sites being discussed whenever possible.
The first website is: https://www.arlingtonlocalschools.com/
To go to the site, copy and paste the url above into another window of your browser.
Visting the site shows us the schools are located in Ohio. The website shows an address of 336 South Main Street, Arlington, Ohio 45814; phone: 419-365-5121; fax: 419-365-1282. I assume this is their School District's Office.
There is an Internet Tool called Whois which when used in conjunction with a search engine such as Google will return detailed information about websites.
To find out where the computers that hold the Arlington Schools Website are located, I did a whois and checked two different databases.
1. https://www.ip-adress.com/whois/arlingtonlocalschools.com
The results are:
This report on Arlingtonlocalschools was run on January, 01, 2013.
Arlingtonlocalschools.com Server Details
IP address:
Server Location:
San Antonio, TX in United States
Rackspace Hosting
- https://whois.domaintools.com/arlingtonlocalschool.com
The results are:
25 other sites hosted on this server. Remember this it will be important.
IP Address:
IP Location:
United States – New York – New York City
Domain Status:
Registered And Active Website
I have not included all the information available, only what is relevant here. You can verify what is here is accurate by using the url's.
I won't explain what everything here means, just tell you what it tells me in plain English. Other techies are welcome to comment if they feel I am wrong.
The Arlington School's Website is not physically located in Ohio where the schools are. Until at least Jan 1, 2013, they were on a server located in Houston, Texas. The site was recently moved (Jan 1, 2013) to a server located in New York City.
The above means that when staff at the Arlington Schools' Office sit down at a computer to manage the website, they are not working on a Website hosted locally on a computer in their offices. Until Jan 1, 2013 they were managing their website on a server located in Texas and from that date to the present on a server in New York.
Jeremy's SpireCMS is what easily, without technical skills, allows them to do this.
SpireCMS, that's used by Arlington Schools, is an example of Content Management Systems (CMS). So is WordPress, that's used to create and manage this blog, FOTM. Content Management Systems easily allow owners with very minimal technical computer skills to make available to the public whatever information they like.
The staff person at the school in Arlington who maintains the website, could as easily be sitting here beside me in Ocean Falls and do everything they could from their office. Neither location is where the Website server computer is.
All that is required to do this is for the staff person to have a username and password with authorization as an administrator.
Obviously you don't want everyone who uses the site to have administrator rights as anyone could then possibly do serious damage or steal confidential information.
CMS systems commonly allow a number of different levels of access, such as (I won't mention all of them here, only enough to illustrate what is needed):
- End Users: such as parents or children who can only comment as we guests on FOTM can. They can also possibly access areas of the site not open to the public.
- Authors: Authors are allowed more privileges than End Users but not all the privileges of an administrator. They cannot change the site layout or functioning, they can only create documents and place them where needed. While creating documents they are allowed to upload files from their own local computer to add to the document they create. The uploaded documents can be pretty much anything, a picture, a video, a song, a pdf file.
- Administrator: An admin can do everything an author can plus tweak all the controls on the site.
The link below is live and can be clicked directly to see how authority is set:
It will show the section of the WordPress control panel on one of the sites I manage which allows an administrator to authorize each member with their own unique privileges.
All that the staff person at Arlington Schools would need to do to authorize a trusted person to upload and create content on the site is to go to that member's profile record, partially shown above, open the dropbox as illustrated, and decide what they will allow that person to do.
That person could then access the School's website — Arlington Red Devils — from any Internet connection in the world.
Giving such a person any privilege from author up, would allow them to do everything required to create and place the Documents 1, 2, & 3 we are discussing, without the intervention from anyone directly associated with the school.
If Jeremy would be so kind as to confirm spireCMS works similarly to this and has the same capability, it would prove someone could place the documents without anyone at the school knowing about it.
If Jeremy won't confirm this, I will ask Eowyn, the owner of this site, to temporarily elevate my privileges so I can demonstrate how it is done.
The above proves to me conclusively that the possibility that someone not directly associated with the school could have uploaded and created the content we are discussing.
If we all agree with my conclusion we can continue on and next try to determine if anyone outside the school had opportunity to create the material by being given such authority.
Update (Feb. 8, 2013):
Peter continues to make his case by examining two Google cache documents. See "A computer forensics analysis of 2 Sandy Hook documents," Feb. 8, 2013.